小编spa*_*awn的帖子

设置后取消共享 --map-root-user 切换到原始 uid/用户名

我正在使用 unshare 来创建每个进程的挂载,它运行得非常好

unshare -m --map-root-user
Run Code Online (Sandbox Code Playgroud)

但是,在创建了我的绑定安装之后

mount --bind src dst
Run Code Online (Sandbox Code Playgroud)

我想将 UID 更改为我的原始用户,以便whoami(和其他人)像echo $USER这样响应我的用户名。

我已经尝试过Simulate chroot with unshare的答案

但是,在做su – user1之后chroot /,我得到

su: Authentication failure
(Ignored)
setgid: Invalid argument
Run Code Online (Sandbox Code Playgroud)

我已经在 Ubuntu 18.04 Beta、Debian stretch、openSUSE-Leap-42.3 上测试过这个。全部都是一样。我猜自从这个答案起作用以来,内核中发生了一些变化。

什么是可行且正确的方法来做到这一点(当然没有真正的根)?

linux users root namespace unshare

9
推荐指数
1
解决办法
1877
查看次数

标签 统计

linux ×1

namespace ×1

root ×1

unshare ×1

users ×1