我决定将我的/home
目录移动到一个单独的分区。但是,由于我使用多个 Linux 发行版,因此我想/home
按如下方式分隔目录:
/dev/sdax/ubuntu
/dev/sdax/debian
/dev/sdax/suse
将所有必需的文件复制到此文件夹后,我将其更改为/etc/fstab
将新位置安装/home
为默认主驱动器
/dev/sdax /homedrive ext4 nodev,nosuid 0 2
/homedrive/debian /home bind default,bind 0 0
现在,据我所知,在启动 debian 时,它正在正确安装该文件夹,但是当我尝试登录时,它会出现错误:
无法更新 ICEauthority 文件 /home/user-name/.ICEauthority
关闭该消息后我得到:
配置服务器有问题(/usr/libexec/gconf-sanity-check-2 ...
出了什么问题?
答案1
系统启动后,您可以按 [Ctrl]+[Alt]+[F1] 以 root 身份登录终端(在 Debian 上,您应该在安装时设置 root 密码)。然后您可以使用此命令检查权限是否正确
ls -ld /home/user/
和
ls -l /home/user/.ICEauthority
改变所有权
chown user: /home/user
和权限
chmod mode /home/user/file
主文件夹的权限应为 755 或 750,.ICEauthority 文件的权限应为 600。
答案2
我跟着这个教程。编写了以下命令并且有效。
chown -R username:username /home/username
chmod 644 /home/username/.dmrc
chmod 644 /home/username/.ICEauthority
答案3
您似乎复制了主目录,但没有正确保留文件/文件夹的所有权。从info cpio
:
`--无保留所有者' 不改变文件的所有权;让它们归 用户提取它们。这是非 root 用户的默认设置,因此 System V 上的用户不会无意中泄露文件。这 选项可用于copy-in模式和copy-pass模式
所以你应该重复这个操作作为根用户- 要么采用与您相同的方式,要么使用更简单的cp -a
命令。
编辑:我看到你刚刚解决了它。因此它确认问题出在所有权上。
答案4
/dev/sdax/ubuntu
/dev/sdax/debian
/dev/sdax/suse
我真诚地希望您不要在开发文件系统上创建数据目录!
/dev/sdax /homedrive ext4 nodev,nosuid 0 2
/homedrive/debian /home bind default,bind 0 0
好吧,看来你不是——但这仍然是一种奇怪的设置文件系统的方式。我假设你在同一个文件系统上设置了 3 个不同的目录......
解决这个问题的更好方法是在每个发行版中使用不同的符号链接到 /home 的位置
mount /dev/sdax /homedrives
cp -R -p /home /homedrives/${currentdistro}
rm -r -f /home
ln -s /homedrives/${currentdistro} /home