主目录文件权限搞砸了,如何“重新开始”?

主目录文件权限搞砸了,如何“重新开始”?

我使用 rsync 备份了整个主目录,并将备份移至新安装的 Linux 中。不知何故,我的文件权限完全搞砸了(所有文件均由用户“999”拥有,文件权限设置为777)。

我跑得很快sudo chown -R username:username ~/我跑得修复了我的音频遇到的一些问题,但现在我所有的纯文本文件(甚至电影和音乐)都被标记为可执行文件,其他用户可以查看我的文件等。

如何将我的文件权限恢复到“正常”状态?从备份恢复是不可能的,因为备份也破坏了权限。我总是可以重新安装操作系统并从备份中清除配置文件,只留下个人文档,然后我可以递归地设置权限,但是我应该将权限设置为什么呢?例如,sudo chmod -R 660 ~/Music即使我是所有者,我也无法听我的音乐。

答案1

以下内容可能有助于快速清理文件和文件夹权限,但不会修复具有不同设置的任何内容。

sudo chown -R <login>:<login> /home/<login>
find /home/<login> -type f -print0 | xargs -0 chmod 664
find /home/<login> -type d -print0 | xargs -0 chmod 775

<login>当然是您的登录名。如果您愿意,请更改为660和。770

有一些特殊情况需要更严格的权限。无论如何,这个列表并不完整,但可以帮助您快速恢复。

邮件和 ssh 的更正:

find /home/<login>/Mail -type d -print0 | xargs -0 chmod 700
find /home/<login>/.ssh -type d -print0 | xargs -0 chmod 700
find /home/<login>/Mail -type f -print0 | xargs -0 chmod 600
find /home/<login>/.ssh -type f -print0 | xargs -0 chmod 600

注意:其中的某些文件~/Mail可能需要640644.这将取决于您的邮件客户端。

其他一些需要与上述相同权限的常见文件是:

.gnome, .gnome2_private, .bash_history, .lesshst, .viminfo

编辑:包含.ssh来自 Ulrich Schwarz 评论的信息,并扩展到包括一些更常见的目录和权限。为了完整起见,还包括chown -ROP 已经运行的命令。

编辑2:正如 saurabheights 在评论中指出的那样,您可能需要运行find /home/<login> -type d -print0 | xargs -0 chmod 775多次,直到所有子目录都可以访问。

答案2

目录中/etc/skel有主目录的模板。您可以尝试根据/etc/skel.conf中的文件夹恢复基本文件夹的权限。

将来使用 rsync/cp/scp 和 -p 开关来保留权限。

相关内容