使用“sudo cp -r”而不是“sudo nautilus”,如果不使用“sudo”则无法访问文件。我如何复制它们而忽略权限?

使用“sudo cp -r”而不是“sudo nautilus”,如果不使用“sudo”则无法访问文件。我如何复制它们而忽略权限?

我是一个相对较新的 Linux 用户,正在转移到一台新计算机,因此我决定将一些文件(一些配置、下载和主文件)复制到硬盘驱动器(从以前的笔记本电脑)。sudo nautilus我没有使用而是使用了sudo cp -r相反的方法,因为我认为它会更快。但是,当我将这些文件传输到新电脑时,除非我使用,否则我无法对它们执行任何操作sudo(注意:两个设备的密码不同)。有没有一种方法可以“真正”复制这些文件而忽略这些权限。命令或技术可以使用sudo,只要我不需要sudo再次使用来访问这些文件。

我拥有从中获取这些文件的旧计算机,但我目前无法访问它,因此我正在寻找可以在新计算机上完成的方法。

例如,我复制了一些使用 的项目make,当我使用make/时make clean,它说权限被拒绝,即使该文件夹位于我的主文件夹中。因此,我需要传递sudo每个命令才能使其正常工作。

任何形式的帮助,包括任何形式的指南,我们将不胜感激。谢谢!

答案1

正如您所使用的,sudo cp -r新文件属于 root 用户。如果要在保留原始权限的同时复制文件,请使用sudo cp -p -r.

要立即“修复”您的文件,请尝试sudo chown -R yourusername filepath,其中您的用户名应该是文件的正确所有者,而不是 root,而 filepath 是这些文件所在的根文件夹。

请注意,某些文件系统(主要是旧文件系统)可能缺乏对此类权限的支持。

尝试阅读有关 Linux 中的文件权限和文件所有权的内容。一旦您了解了如何操作,您就会发现可以执行更复杂的许可操作。

相关内容