linux--9week

1、编写脚本,接受二个位置参数,magedu和/www,判断系统是否有magedu,如果没有则自动创建magedu用户,并自动设置家目录为/www
-->首先建立脚本;vim /data/user.sh
linux--9week
;判断id是否为true,结果为0则已经建立;

2、使用expect实现自动登录系统。
-->rpm -ql expect 确认是否安装expect,yum -y install expect
-->编写脚本;vim /data/expect2
linux--9week
-->增加执行权限;chmod +x /data/expect2
-->登录;./expect2
linux--9week
登录成功。

3、简述linux操作系统启动流程
-->具体流程如下;
1)按下POST电源键,开机自检BIOS检查相对应的硬件设备(cpu,硬盘,内存条等)

2)设备硬件通过检查后,然后由MBR进行主引导,也就是Bootloader。

3)MBR结束后进行安装系统的grub,来引导系统内核及驱动镜像,centos7中安装的是grub2和centos6的grub作用一致,只不过文件名不同而已。 grub是bootloader中的一种,就grub来说,为了打破在MBR中只有446Bytes用于存放bootloader这一限制,所以这一步的实现是这样的:grub是通过分成三个阶段来实现加载内核这一功能的,这三个阶段分别是:stage1, stage1.5以及stage2。其中:
--1:stage1-存放于MBR的前446Bytes,用于加载stage1.5阶段,目的是为了识别并驱动/boot所在分区的文件系统;
--2:stage1.5-存放于MBR之后的扇区;
--3:stage2-存放于磁盘分区之上,具体存放于/boot/grub目录之下,主要用于加载内核文件(vmlinuz-VERSION-RELEASE)以及临时根文件系统(initrd-VERSION-RELEASE.img或initramfs-VERSION-RELEASE.img)。

4)grub安装成功后,开始交给内核kernel进行系统的部署,调用grub中安装的内核及镜像文件,通过grub.config文件进行切根部署。
--1:获取/etc/inittab中系统的用户级别
--2:通过/etc/rc.sysinit,进行初始化服务部署;
--3:加载系统服务,包括用户自定的服务
注;CentOS 6来说,初始化程序init是upstart,其配置文件为:/etc/inittab, /etc/init/.conf就是upstart将配置文件拆分成多个,在/etc/init/目录下以conf结尾的都是upstart风格的配置文件,而/etc/inittab仅用于设置默认运行级别;
CentOS 7来说,初始化程序init是systemd,其配置文件为:/usr/lib/system/systemd/, /etc/systemd/system/;

5)启动终端,验证密码账号登录。

4、破解centos7 密码;
-->方法1;开机启动按任意键,停在选择内核的界面。
linux--9week
按e进入;找到linux16行,在行尾输入rd.break,按ctrl+x进入;
linux--9week
linux--9week
查看mount信息,此时为虚拟根目录;只有读的权限,需要改密码好要有写的权限;
linux--9week
重新挂载真实根目录路径,并添加rw权限;并切根
linux--9week
linux--9week
提示密码修改成功,退出并重启;

-->方法2;
开机启动按任意键,停在选择内核的界面。
linux--9week
按e进入;找到linux16行,在行尾输入rw init=/sysroot/bin/sh,按ctrl+x进入;
linux--9week
查看mount信息,此时读写权限都有,可以直接更改密码,并保存退出重启;
linux--9week
提示密码修改成功;

注;防止有人破解密码,可以在CTL下输入以下代码;grub2-setpassword
linux--9week
设置成功后,会在/boot/grub2/下生成一个user.cfg文件。

上一篇:windows下引导双系统卸载Linux


下一篇:Linux系统管理 - 操作入门