我遇到了一个奇怪的问题。我正在使用Ubuntu 14.04
NFS 主文件夹,目前如果我尝试登录,我会被跳回到登录屏幕
我有一台 NAS,home
目录就在那里。我通过 NFS 在 fstab 上挂载 NAS,如下所示:
157.181.240.65:/dlab /dlab nfs defaults 0 0
之后我修改了我的/etc/passwd
文件以将home
目录指向我安装的 NAS 上的文件夹,如下所示:
gerdos:x:1003:1020:Erdos Gabor,,,:/dlab/home/gerdos:/bin/bash
我使用相同的 1003 USERID 和 1020 GRPID 在 NAS 上创建了每个文件
现在,通过最近更新后,apt-get
我无法登录图形用户界面(gnome flashback compiz)。
我认为某些权限不好。我无法真正使用sudo
主目录中的文件,即使我明确拥有权限。
举一个奇怪的例子:
nano ~/asd # --> No problem, can nano it perfectly,
sudo nano ~/asd # --> Error reading /dlab/home/gerdos/.nano_history: Permission denied
奇怪。~/.nano_history 的权限:
-rw------- 1 gerdos dlab 39 Feb 23 10:51 .nano_history
很明显我有读写权限,但是sudo
却没有。我猜问题可能出在这里,我无法登录。
如果我将权限更改为 755,sudo 仍然无法读取它。在 777 上可以。我想避免将所有文件都放到 777 上。
我该如何解决这个问题?我该如何将 NAS 和 CPU 上的 sudo “结合”起来一起工作?这会导致我无法登录吗?
答案1
那是一个特征的NFS
。由于NFS
数据包未经过身份验证(他们只是说UID=x,GID=y
,相信我),任何声称来自root
(UID=0, GID=0
)的 NFS 数据包都会重新映射到nobody
,即没有权限的用户 ID/组 ID:
$ grep nobody /etc/passwd
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
另一个选择(非常糟糕的想法)是相信来自其他系统的 NFS 数据包中的 UID=0,并授予其root
对 NFS 服务器/NAS 的访问权限。请勿这样做。