方法 1:提取文件,然后以 Root 身份复制

方法 1:提取文件,然后以 Root 身份复制

我安装了 jupiter 并使用了 radiance 主题,所以图标看起来不太对,所以我找到了这个关于如何更改它的答案我如何更改木星的图标?。它提到需要超级用户访问权限,我认为在终端中使用 sudo 比启用 root 或我需要做的任何事情都更容易,但我找不到任何解释如何将 tar.bz 文件提取到终端目录中的内容。

答案1

方法 1:提取文件,然后以 Root 身份复制

在终端中导航到文件所在的位置。例如,如果它位于Downloads主文件夹内的文件夹中,请运行以下命令:

cd ~/Downloads

此上下文中的字符~是您的主文件夹全名的缩写。(例如,如果您的用户名是jeff,它就是 的缩写/home/jeff。)

现在使用 提取档案tar。由于该文件是.gz档案,因此您将使用z标志来表示tar这一点:

tar xvzf Jupiter_Radiance_theme_icons.tar.gz

x表示提取。v表示在提取文件时列出文件(如果愿意,可以省略)。z表示对它进行gunzip提取(因为.tar存档本身是用gzip-- 压缩的,这是.gz扩展名所指定的)。f表示在此文件系统中提取它(并且需要它是一种较旧的常用用法tar,用于创建和提取磁带档案)。

您刚刚提取的存档包含三个文件(如果您v在命令中保留了标志,则可以看到它们的文件名)。它们的名称分别为bolt1.pngbolt2.pngbolt4.png。现在,将这些文件复制到/usr/share/pixmaps。这是需要权限的部分root,因此您应该在此处使用sudo

sudo cp --no-preserve=ownership bolt1.png bolt2.png bolt4.png /usr/share/pixmaps

您已将它们提取为您自己的(非root)用户,这赋予了您对它们的所有权。但root应该拥有 中的文件/usr/share/pixmaps,这就是为什么您应该使用 的--no-preserve=ownership参数cp。由于您正在复制root拥有的目录中的文件root,因此您制作的副本将由 拥有,root这是正确的。

方法 2:以 Root 身份复制并提取档案

您可能会发现按照 进行操作更简单root。然后root将最初拥有这些文件,因为root将提取它们。执行此操作的最简单方法是将存档放在目标文件夹中(如果它还不在那里)。

假设文件位于Downloads

cd ~/Downloads
sudo cp Jupiter_Radiance_theme_icons.tar.gz /usr/share/pixmaps

请注意,您可以使用而mv不是cp来移动它而不是复制它(前提是源文件夹和目标文件夹位于同一分区)。

现在转到目标文件夹并提取档案:

cd /usr/share/pixmaps
sudo tar xzvf Jupiter_Radiance_theme_icons.tar.gz

您可能应该删除存档,因为其中包含无关的文件是不好的/usr/share/pixmaps

sudo rm Jupiter_Radiance_theme_icons.tar.gz

方法 3:以 Root 身份提取档案

如果你愿意,你可以将档案保存在你下载的任何地方,然后将其提取为/usr/share/pixmapsroot(感谢阿德姆沃尔夫建议我提出这个方法。

cd /usr/share/pixmaps
sudo tar xzvf ~/Downloads/Jupiter_Radiance_theme_icons.tar.gz

这是有效的tar,因为默认情况下会将档案提取到任何文件夹你在,而不是档案所在的文件夹(如果它们不同)。

其他方法

你可以很容易地做出变化方法 1您可以使用存档管理器以图形方式提取文件,然后使用 将它们复制到终端中sudo。但您也可以root通过 以 运行 Nautilus(文件浏览器)来同时执行这两项操作root。如果您这样做,您可以使用 Nautilus 执行任何文件管理任务,并且您启动的任何程序Nautilus 还将以 的身份运行root。您必须小心谨慎,因为您可能会因犯错而损坏系统(就像您使用 运行错误的命令一样),并且如果忘记此 Nautilus 窗口是以而不是正常sudo运行的,那就更糟糕了。root

要以 形式运行图形程序root,请不要sudo直接使用。而是使用gksu。因此,要以 形式运行 Nautilus root,您可以按Alt+F2并运行:

gksu nautilus

如果你这样做,完成后请务必关闭 Nautilus 窗口,并且只将其用于您知道需要执行的任务root(例如对的内容进行更改/usr/share/pixmaps)。

你甚至可以做以下变化方法 2或者方法 3您无需复制任何内容root,而是以图形方式提取存档root,方法是以 的形式运行存档管理器root。为此,请按Alt+F2并运行:

gksu file-roller

但是,大多数用户发现,通过从 Nautilus 内部启动存档管理器来提取文件更加容易,因为这样它就可以知道您希望它使用哪个存档。(您可以将存档的名称作为命令的一部分传递file-roller……但此时,您开始失去 GUI 相对于命令行的易用性优势。)

推荐资源

要了解有关使用提取文件的更多信息tar,请参阅man tar

如果存档是.tar.bz2,则应使用j而不是z。如果存档是.xz,则应使用J。有关所有其他信息,请参阅该手册页。

要了解有关在 Ubuntu 中执行管理任务的更多信息,请参阅社区文档sudoroot,并且man sudoman gksu(或者man kdesudo如果您使用 Kubuntu)。

有关文件压缩的​​社区文档值得一读,以了解有关档案和文件压缩的​​更多信息。(从技术上讲,这是两个相关且重叠但不同的东西。例如:文件.tar是档案。.gz文件是压缩的。)

大多数情况下,您tar可能不会使用它来创建和恢复备份,但它对此很有用,此外,了解它的工作原理可以增强您对tar可以做什么和不能做什么以及如何使用它的理解。如果您对此感兴趣,请参阅社区文档使用以下方式备份您的系统tar

相关内容