如果我开始新的发行版(例如LFS):
但是,在您投票之前:我被要求为特定项目创建一个新的发行版,他们需要(实际上,想要)一个带有一些更改的新目录结构,例如删除var
和bin
目录,但不停止系统。这个发行版的应用是如此有限,所以我认为它不应该是一个大问题,因为他们只需要安装几个包。
答案 0 :(得分:2)
这些是我想到的几个指针,但肯定不完整:
PATH
应在~/.bashrc
,/etc/profile.d
等启动脚本中更新,以反映更新后的目录。/var
。 (/var/log
,/var/tmp
)您需要修改所有这些位置参考。/sbin/init
,它将开始/etc/rc.d
或等效的初始化。如果您开始跟踪在这些启动脚本中调用的所有脚本和服务,我相信您应该能够捕获修改路径名所需的所有位置。答案 1 :(得分:2)
您可以创建一个名为system的文件夹,并将所有文件移动到/system
文件夹中。然后创建符号链接,这样系统仍然可以使用。例如:
su -i
cd /
mkdir system
mv /usr /system/usr
ln -s /system/usr /usr
我刚刚做到了........它破坏了我的系统XD(我认为这是因为我将所有文件移动到/system
,包括GRUB使用的/boot
女巫
如果您没有背景知识,破解系统的可能性很大。例如,如果将/bin
移至/system/bin
,则之后您将无法创建符号链接,因为ln
命令(程序)位于/bin
中}文件夹因此移动它将最终出错。
另外,请查看基于我刚才所做的gobolinux.org。整个系统经过重新组织并保持兼容性,他们创建了符号链接,以便在移植应用程序时不必重新编程应用程序。