重新安装时保留 /home 数据和权限

重新安装时保留 /home 数据和权限

我已将 /home 安装在单独的磁盘上。

我想在具有根分区的另一张磁盘上重新安装(或者尝试 Kubuntu)。我认为最安全的做法是直接拔下 /home 磁盘,重新安装,然后使用新的 fstab 重新挂载?

如果我重新安装并创建完全相同的用户 - “roger” - 权限是否仍然完整?

或者有更好的办法吗?目前是 22.04 LTS。

答案1

您的问题实际上是关于身份和家的。
术语:fs 表示文件系统,即用来在其上写入数据的分区/磁盘和格式。(ext3、btrfs、xfs 等……)
所有给定的命令都有一个手册页,请阅读它。

  1. 身份

您通过一个数字被系统识别为“roger”用户:UID。用户 roger 是主组(可能是 roger 或用户)的成员,该组由一个数字 GUID 识别。
您可以通过以下命令找到 UID 和 GUID:id roger
这些数字与您编写的文件相关联,您可以使用以下命令查看:ls -n(您获得的是实际数字,而不是名称)

从一个系统到另一个系统,其数字可能会发生变化,但如果您从另一个系统挂载 fs,uid/guid 会保留,但会转换为本地系统标识。
即:

系统 A,用户 A1 uid=500/guid=500 A2 uid=501/guid=501
系统 B,用户 B1 uid=501/guid=500 B2 uid=500/guid=501

将系统 A 上的文件系统挂载到系统 B 上,
所有文件 A1 都将成为 B2,而文件 A2 将成为 B1
,但组会混乱。
要匹配,您需要创建具有相同 uid/guid 的用户:useradd 允许您这样做。或者使用 chown 和/或 chgrp 更改文件所有权。

好消息是,在 ubuntu 中,从一个安装到另一个安装时,创建的用户数或多或少相同,并且“主”用户通常在从一个安装到另一个安装时获得相同的 uid/guid(但需要检查)。因此,您不会在将系统 A fs 安装到系统 A+、B 等时遇到麻烦。

这里事情变得更加棘手。
您的主页包含许多隐藏的配置文件。
如果您更改系统上的桌面或窗口管理器,安装脚本通常会使用适当的文件更新主页。在这里,您可能最终没有配置或配置为空,并且结果很奇怪。准备好将用户骨架与您的主页进行比较。

我确实有一段时间的家庭数据,下面是我的做法:
如果可能的话,我用我的 uid/guid 创建用户,如果不行的话,我会使用 chown 覆盖我的历史数据磁盘 (raid) 上的文件。
我使用本地系统的家庭数据,但我将所有用户数据目录链接到实际包含我的历史数据的挂载点。
我的家庭数据如下:

文档 -> /mnt/historicaldata/user/Document
图像 -> /mnt/historicaldata/user/Image
等...

提示:我模拟链接了 Firefox 配置目录,但您也可以与 Mozilla Cloud 同步。
这样,所有“技术”配置文件都是本地系统,并且用户历史数据仍可访问。
这需要纪律,不要将文件放在主目录的根目录中。

相关内容