AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 471966
Accepted
eyoung100
eyoung100
Asked: 2018-09-28 17:32:46 +0800 CST2018-09-28 17:32:46 +0800 CST 2018-09-28 17:32:46 +0800 CST

需要澄清:使用 Rsync 移动 /usr

  • 772

语境

我最近将 Windows 10 和 Gentoo 迁移到 2 个单独的 250 GB SSD,并留下我旧的传统 SATA HDD 驱动器用于存储。

  1. 我Users在新安装期间安装了适用于 Windows 的 HDD。
  2. 我使用 GParted LiveCD 缩小我的根文件系统,并将其复制到新驱动器,重新启动,然后删除我要离开的旧根目录/home和我的 HDD 驱动器上的交换分区。这一切都很好,因为我正在使用 UUID 启动。

由于我在 Gentoo 上,我只需要将/usr目录从 SSD 移回我复制它的原始 HDD,这样 Portage Tree 就不会在更新期间占用小 SSD 空间。直到现在我才用 gentoo 标记它(参见更新标题),因为这个问题与正确的命令选项rsync有关 整个存储库在更新之前下载到用户的本地计算机。将其下载到 SSD 会导致不必要的磨损,因为树每天都会更新。

问题

我发现以下两个与我要完成的工作相关的问题:

  1. ServerFault:在不同的分区上挂载 /usr
  2. AskUbuntu:如何将 /usr 移动到新分区?

现在我需要回答我自己的一些问题:

  1. 我可以在 Gentoo 安装时使用rsync命令移动需要移动的位置吗?ServerFault 问题暗示了这一点。/usr/usr
  2. 如果 #1 不可能,并且我使用 GParted Live USB 发出rsync命令,那么由于 LiveUSB 基于 Debian 发行版,文件/目录所有者是否会更改?
  3. rsync除了-a存档之外,还有哪些合适的选项?AskUbuntu 中所选答案中的评论暗示添加-H以确保遵循硬链接,但随后 OP 与他自己的答案中的评论相矛盾。

视觉辅助

我需要将/usr目录从红色方形的分区移动到蓝色方形的空分区,而红色方形的整个分区正在运行,或者使用 LiveCD 这样做,而不会损害或更改当前权限。

/usr 在这个分区 空分区

更新

这道题竟然是一座可以征服的山,但不知道能不能征服:

  1. 我/能够/usr使用rsync -avAHPX /mnt/gentoo/usr /mnt/new_usr. 由于我仍然被卡住,我不能给予部分答案。
  2. 它没有好处,因为 systemd 抱怨根文件系统不包含有效的 init,因为 init 系统位于无法挂载的分区中。你看到这里的问题了吗?(Systemd 位于/usr/lib/systemd)
  3. 我需要提前安装用户空间来解决这个问题,但是为了解决这个问题,我会丢失我的普利茅斯启动屏幕 initramfs 以及/usr提前安装所需的 initramfs。另请参阅自定义 Initramfs和Initramfs/Guide。
  4. 支持和/或其他 Gentoo 用户不抱怨“Systemd Sucks”很难获得(这是原因之一,我开始在这里贡献)。因此,如果我在我们的官方资源中发布问题,我会受到嘘声。

如果有人能告诉我正确的工具来结合普利茅斯引导程序和/usrinitramfs/intramfd 中的早期安装,我会很感激,如果这个问题存在,我正在考虑提供赏金。还要知道,由于 Gentoo 是基于源的,即使我链接了 Gentoo Wiki 文章,我也可以使用其他发行版中的工具。

partition systemd
  • 2 2 个回答
  • 684 Views

2 个回答

  • Voted
  1. Sparhawk
    2018-09-28T23:31:25+08:002018-09-28T23:31:25+08:00
    1. 我可以在 Gentoo 安装时使用rsync命令移动需要移动的位置吗?ServerFault 问题暗示了这一点。/usr/usr

    是的,你当然可以(复制,而不是移动?),但我总是会使用 Live USB 来处理这些事情。在正在使用的系统上,在您复制某个进程时可能会写入某些进程/usr,这可能会导致传输不完整。

    1. 如果 #1 不可能,并且我使用 GParted Live USB 发出rsync命令,那么由于 LiveUSB 基于 Debian 发行版,文件/目录所有者是否会更改?

    不,只要您使用-a,就应该为本地副本保留权限。

    1. rsync除了-a存档之外,还有哪些合适的选项?AskUbuntu 中所选答案中的评论暗示添加-H以确保遵循硬链接,但随后 OP 与他自己的答案中的评论相矛盾。

    正如评论中所讨论的,如果您查找-ain man rsync,它会排除-H,-A和-X. 这些标志保留硬链接、ACL 和扩展属性。我强烈怀疑它是否/usr包含其中的任何一个,但以防万一,使用这些标志并没有什么坏处。如果源不使用它们,那么就没有什么可以保留的,所以rsync就像你没有使用这些标志一样。我也倾向于使用-P,它允许您继续中止传输,并在复制时向您显示进度。

    • 0
  2. Best Answer
    FreeSoftwareServers
    2018-11-07T03:16:37+08:002018-11-07T03:16:37+08:00

    我可以建议一种替代方法吗?

    • 不要尝试移动整个/usr/*树,因为您提到它破坏了 systemd 并且似乎不需要解决密集 RW 和/或大量浪费空间的问题(您可以移动/usr/portage)

    • 通过从 LiveCD 运行的 rsync复制/usr/portage到远程 HDD

    • 在启动时通过 FSTAB 将 HDD 挂载到类似的地方/mnt/hdd
    • 递归删除/usr/portage
    • 符号链接ln -s /mnt/hdd/gentoo/usr/portage /usr/portage

    除非需要,否则我不喜欢修改默认目录(/usr/portage是默认目录,但我相信您可以修改它),如果我希望它们驻留在另一个 HDD 上,我只会对它们进行符号链接。您可以为 just 创建另一个分区/usr/portage并将其直接挂载到/usr/portage,但我更喜欢将我的所有数据挂载到一个大的远程分区下/mnt/data,然后根据需要进行符号链接目录。我很可能也会/home住在这里。

    也许两个单独的分区方案像这样:

    /mnt/os_data
    /mnt/my_data
    

    我想你明白了要点。

    • 0

相关问题

  • 备份 Nand Flash 存储区

  • 如何正确分区 SSD 以进行双启动设置

  • 并行安装多个 linux 发行版

  • fdisk 没有看到 resize2fs 缩小未挂载的分区

  • 使用键盘快捷键启动/停止 systemd 服务 [关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    ssh 无法协商:“找不到匹配的密码”,正在拒绝 cbc

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    如何卸载内核模块“nvidia-drm”?

    • 13 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Wong Jia Hau ssh-add 返回:“连接代理时出错:没有这样的文件或目录” 2018-08-24 23:28:13 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Bagas Sanjaya 为什么 Linux 使用 LF 作为换行符? 2017-12-20 05:48:21 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve