【问题标题】:Changing the default directory structure更改默认目录结构
【发布时间】:2024-01-08 00:22:02
【问题描述】:

如果我开始一个新发行版(例如LFS):

  1. 如何更改目录结构?
  2. 准备就绪后我应该期待什么? (可能不修改就无法安装大部分包吧?

但是,在您投反对票之前:我被要求为他们需要(实际上,想要)一个新的目录结构并进行一些更改的特定项目制作一个新发行版,例如删除 var 和 @ 987654323@ 目录,但不会停止系统。这个发行版的应用非常有限,所以我认为这应该没什么大不了的,因为他们只需要安装几个包。

【问题讨论】:

    标签: linux unix directory-structure linux-from-scratch distro


    【解决方案1】:

    这些是我想到的几个指针,肯定是不完整的:

    1. 您的PATH 应在~/.bashrc/etc/profile.d 等启动脚本中更新,以反映更新后的目录。
    2. 配置文件经常使用/var。 (/var/log, /var/tmp) 您需要修改所有这些位置引用。
    3. 基本上,您的内核将启动/sbin/init,它将在/etc/rc.d 或同等位置启动初始化。如果您开始跟踪这些启动脚本中调用的所有脚本和服务,我相信您应该能够捕获所有需要修改路径名的地方。

    【讨论】:

    • 感谢您的回答并指出/sbin/init/etc/rc.d,这应该是一个不错的开始! :)
    【解决方案2】:

    您可以创建一个名为 system 的文件夹并将所有文件移动到 /system 文件夹中。然后创建符号链接,这样系统仍然可以使用。示例:

    su -i

    cd /

    mkdir system

    mv /usr /system/usr

    ln -s /system/usr /usr

    我刚刚做到了........它破坏了我的系统 XD(我认为这是因为我将所有文件移动到 /system ,包括/boot GRUB 使用女巫)

    如果您没有背景知识,则破坏系统的机会很大。例如,如果您将/bin 移动到/system/bin,那么之后您将无法创建符号链接,因为ln 命令(这是一个程序)位于/bin 文件夹中,因此移动它会结束出错了。

    另外,请查看gobolinux.org,它基于我刚刚所做的。整个系统已重新组织并保持兼容性,他们创建了符号链接,以便在移植应用程序时不必重新编程应用程序。

    【讨论】: