如果我启动一个新发行版(例如LFS):
- 如何更改目录结构?
- 准备好后我应该期待什么?(可能无法在不修改的情况下安装大部分软件包,对吧?
但是,在你投反对票之前:我被要求为他们需要(实际上,想要)一个新的目录结构并进行一些更改的特定项目制作一个新发行版,例如删除var
和bin
目录,但不会停止系统. 这个发行版的应用非常有限,所以我认为这应该没什么大不了的,因为他们只需要安装几个包。
如果我启动一个新发行版(例如LFS):
但是,在你投反对票之前:我被要求为他们需要(实际上,想要)一个新的目录结构并进行一些更改的特定项目制作一个新发行版,例如删除var
和bin
目录,但不会停止系统. 这个发行版的应用非常有限,所以我认为这应该没什么大不了的,因为他们只需要安装几个包。
这些是我想到的几个指针,绝对是不完整的:
PATH
应该在启动脚本中进行更新,例如~/.bashrc
、/etc/profile.d
等,以反映更新后的目录。/var
经常使用。( /var/log
, /var/tmp
) 您需要修改所有这些位置引用。/sbin/init
时启动初始化。/etc/rc.d
如果您开始跟踪在这些启动脚本中调用的所有脚本和服务,我相信您应该能够捕获您需要修改路径名的所有位置。您可以创建一个名为 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 。整个系统已重新组织并保持兼容性,他们创建了符号链接,以便在移植应用程序时不必重新编程应用程序。