linu 这个系统可以在有空并且有兴趣的时候研究一下。顺便学习学习系统的精髓。
这个类unix系统很大一部分有它特有的风格,就比 cli 界面, 进入shell后无论什么系统。只要是类似的系统,那么熟悉其中一个。在另外一个系统下上手起来也相当的容易。
从 linux启动部分 了解到 当系统加载内核 并从内核执行到最后吧控制权交给一个 xinit 的程序去接手。
xinit 又根据 启动等级 加载 合适的脚本完成最后的启动。 这个过程可能做很多事。
当系统出现以外情况的时候, 可以在内核启动中传递参数 跳过 xinit 这个程序,换作另外一个程序接管启动过程 来完成紧急情况的紧急出来。
那么我产生疑问的地方出现了。
你们的系统中 有没有合适的 shell 来让系统最终能进入 shell 环境 并帮助最终修复系统的过程呢。
linux 采用 目录存放文件, 并且把不同功能和用途的文件 存放的不同的目录里。
这个是基础篇。 任何有介绍系统的文字中可以得到验证。
/bin 通用基本的实用程序。普通用户都可访问
/sbin 基本的管理类实用程序。 通常归管理员使用。用以做系统管理用。
/lib 基本系统要用到的库文件。 很多启动部分以及刚开始启动过程中的程序要用到的库,系统类基本库。
/etc 系统的配置文件, 相当重要。 包含了系统大部分的配置文件。其他地方存放的配置文件 很多在这里都有个连接以方便使用。
/boot 系统的启动部分 kernel initrd 还有启动管理器就在里面。有时候里面还包括一些配置文件。不过不是必须的,还有一些硬盘特定扇区的备份。
/dev 特殊的设备文件都放在这里。 特殊指的是非一般文件。
/proc 这个我不知道如何说
/var 一般用来存放经常变化的文件。
/tmp 临时文件存放的地方。 这个很重要。
/usr 用户主要使用的部分。
/mnt 通常作为设备挂在点。
其他还有好多。。
这里 /usr 很多哦时候用用户主要使用部分。 很多时候会作为单独分区来加载进系统。
当 /usr 丢失的时候。 你能顺利进入shell 环境吗?
我 用虚拟机 开了个 deli linux
因为它速度快。
它主要 用 uclib 作为基础库。
启动系统 可能用到的程序
/sbin/init
/bin/login
/bin/sh
很显然 在没有 /usr 的情况下 /bin/login 和 /bin/sh 都将无法运行
因为他们需要两个文件 libinitl.so.8 和 libiconv.so.2 ,而这两个文件事安装在 /usr/lib 里的。
我想 这也许事 deli 系统在库文件打包时候有一些疏忽, 本应该放在 /lib 下面更好点。因为我发现 /bin 下有好多使用程序同样需要这两个文件。 看来这两个文件事系统所必须的。 应该归为基本库一类 放在 /lib 更合适。
请大家 把你们 系统吓这几个重要文件 所依赖的 库文件列出来。 看看我遇见的问题事 deli 特有的还是所有的系统都是如此。
这个系统没有 /bin/sh, /bin/sh 其实事 /bin/bash 的一个连接。 |