全面剖析Linux操作系统单用户方式

做为一个Linux爱好者,每天都渴望得到新的知识 , 同时每天也把Linux的各个部分翻来覆去的进行着探索 , 在这个过程难免会让Linux无法启动 。在Windows中有一个保护模式 , 可以以保护模式进入到Windows之中 , 对系统进行修复 。在Linux中也有类似保护模式的启动方式 , 可以用它对系统进行修复 。
Linux下的启动方式常用的到的有单用户方式、普通多用户方式、完全多用户方式和XWin方式 。单用户方式下 , 系统并没有完全运行进来 , 只是部分程序运行 , 这时也不能进行远程登录到Linux系统 。进入单用户方式进行系统维护由是ROOT用户来进行完成 , 而且是由ROOT直接的进入 , 没有密码检验 。这时的ROOT用户对系统有完全的操作权限 , 可以修复系统的同时 , 也能随时的对系统进行破坏 。在此对单用户的一些管理进行说明:
一、进行单用户的方法
由于引导Linux系统的方式很多 , 常见的软盘引导 , LILO引导 , GRUB引导 , 我对这几种方式分别进行说明:
1、软盘引导
在软盘启动之后出现“BOOT:”时 , 可以对启动的参数进行设置 , 在这里键入“Linux single"之后启动系统即可以进行单用户方式 。
2、LILO方式
在LILO方式启动时 , 出现LILO提示之后 , 应该快速的输入kernel/boot/vmlinuz-2.4.7-10 single roo=/dev/hda3,在这里我使用的REDHAT7.2 , 内核为2.4.7-10,在使用时一般文件名为vmlinuz , 可以在系统正常时对这个内核文件进行复制 , 或建立联接 。single 为单用方式 。root=/dev/hda3为Linux系统根所在的分别 , 我的计算机装有98 , 如果只有Linux 。可能是/dev/hda1,在第二个硬盘上时 , 就是/dev/hdb1 。这里是Linux对分区进行标识方法 。
3、GRUB方式
这种方式进行引导就复杂一些 , 进入GRUB启动画面时按“C”进入GRUB命令行 , 有密码时按“P”之后输入密码之后再进行GRUB命令行 。
在命令行中输入以下命令可以进行单用户 , 我仍以REDHAT7.2为例进行说明kernel /boot/vmlinuz-2.4.7-10 single root=/dev/hda3initrd/boot/initrd-2.4.7-10.img boot (hd0,2)第一二句是指明内核文件 , 单用户的关键字仍为single,系统的不同 , 可能文件名有所不同 。boot (hd0,2)的含义为以
第一个硬盘的第3个分区进行引导 。
【全面剖析Linux操作系统单用户方式】二、防止进入单用户的方法
由于单用户对系统有完全的控制权限 , 如果操作不当或被他人进入 , 那么后果将不堪设想 , 如何防止入行单用户了 , 有以下几个注意的方面 。
1、对/etc/inittab文件进行保护 , 如果把id:3:initdefault中的3改为成1 , 就可以每次启动直接进入到单用户方式 。对/etc/inittab文件 , 以root身份进入通过chown700 /etc/inittab把属性设为其它用户不能修改就行了 。
2、如果是使用的lilo方式进行引导 , 可能通过Linuxconf或直接修改lilo.conf把引导时等待输入时间设置为0或最短时行 。这种情况下 , 如果进入单用户方式 , 可以用软盘进行引导 。
3、如果使用是GRUB方式进行引导 , 最简单的方法是使用GRUB密码 , 对启动选项进行保护 。
4、为了防止他人远程进行破坏 , 使系统重启 , 除了对ROOT的密码和/etc目录下的文件进行有效管理之外 , 还应当对CMOS进行密码设置 , 这样即使把系统改成单用户方式了,也无法直接的启动计算机进行操作 。

    推荐阅读