我正在运行双启动 Linux 系统,最近在计算机上安装了 Debian Jessie。我挂载了现有/home
分区,但当计算机启动登录时,我的用户帐户不见了。安装过程中创建的默认帐户存在,但现有帐户(在同一台计算机上使用 Ubuntu 创建)不存在。
当我启动 Ubuntu 时,发生了相反的情况:我的现有帐户存在,但 Debian 默认帐户不存在。
最奇怪的是,它dir /home
显示了两个帐户文件夹,文件资源管理器显示了所有文件。我不知道是什么导致了错误。
答案1
用户是在/etc/passwd
文件中定义的,而不是通过/home/*/
目录定义的。您的假设似乎是:一个操作系统应该自动添加在另一个操作系统中创建的用户——这是错误的。
每个操作系统都有单独的/etc/
(所以/etc/passwd
也一样)。制作一个通用的/etc/
不是一个好主意。制作一个通用的/home/
可以做到,但有陷阱。这里讨论了这个主题:不同的 Linux 发行版共享同一个/home
文件夹。主要关注点(来自那里的各种答案)是:
对于特定用户,每个发行版上的 UID 和 GID 必须相同。
同一程序的两个版本读取和写入相同的配置文件可能会导致问题,例如,如果新版本写入了旧版本无法理解的内容。
与所有事情一样,了解自己在做什么是件好事。有用的命令和主题可以让你获得一些见解:
man 5 passwd
man adduser
man vigr
- 什么是 UID?
- 什么是 GID?
- Linux 中的所有权和权限。