centos单用户 救援 运行级别 yum,单用户模式,救援模式,inittab :启动级别 e2fsck wetty mingetty 物理终端 /dev/console 虚拟终端 /dev/tty(0,6) 模拟终端 /dev/pts/# grub-md5-crypt 给grub加密码 initrd 第二节课
centos单用户 救援 运行级别 yum,单用户模式,救援模式,inittab :启动级别 e2fsck wetty mingetty 物理终端 /dev/console 虚拟终端 /dev/tty(0,6) 模拟终端 /dev/pts/# grub-md5-crypt 给grub加密码 initrd 第二节课
上半节课
yum
centos6.6的内核
单用户模式
救援模式
给grub加密码
下半节课
Linux启动流程
inittab :启动级别
e2fsck
wetty
mingetty
yum工具在minimal安装级别就已经安装
yum list:列出远程服务器端的所有的包的列表
yum list :列出所有未安装或安装过的软件包
yum grouplist :列出所有未安装或安装过的套件
临时显示英文
LANG=en
centos6.6的内核:2.6.32-504.8.1.el6.i686
passwd:改密码
单用户模式不会开启sshd,network服务
选择2、启动选项,然后按e,加上1或single ,回车,按b
1、hd(0,0)
2、启动选项
3、内核镜像
救援模式(需要安装光盘)
若是真机,需要有安装光盘或者U盘,重启进入bios调成光驱启动,选择 ‘Rescue installed system’
语言我们默认,不要选择中文,键盘类型也默认
Rescue Method 也保持默认
是否在使用rescue模式的时候启用网络,这个根据实际情况,这里选择NO(使用tab键)
三种模式可以选择:
shell 模式会直接进入命令行,可以进行的操作有编辑文件、修改用户密码等;
fakd 是诊断模式;
reboot 会直接重启;
chroot 只改变某个进程的根目录,系统的其他部分依旧运行于旧的root目录。
选择第一个 shell模式,并执行一个命令:chroot /mnt/sysimage
然后exit,退出第一层shell,然后reboot 重启系统
救援模式:Windows的PE系统
单用户模式:Windows安全模式
分两种
设置加密的密码(密文) 用grub命令
grub-crypt --md5 等同于 grub-md5-crypt
[root@steven network-scripts]# grub-crypt --md5
Password: 123
Retype password: 123
$1$K5VbYDgm$n./HW30DDkTt5rzAIOHBe/
grub-crypt --sha-256
$5$ZcO2P08O9fa/imRg$65aA1qpBKN0ty1JHn3hvfLEnPLr9ku89B5CJxubxc.5
grub.conf里面配置 加下面一行 就可以了,启动的时候进入grub菜单需要按p输入密码才能修改
password --md5 $1$47mDgrVd$ICuZyXfD0ooo/Jy0AMxFL0
/etc/passwd 里面 的普通用户密码也是用的sha1算法来加密的
grub-0.97-93.el6.x86_64
设置未加密的密码(明文)
grub.conf里面配置 加下面一行
# grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/sda2 # initrd /initrd-[generic-]version.img #boot=/dev/sda default=0 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz password --md5 $1$47mDgrVd$ICuZyXfD0ooo/Jy0AMxFL0 #全局密码,输入才能用按e编辑启动行 hiddenmenu title CentOS 6 (2.6.32-504.el6.x86_64) #password --md5 $1$47mDgrVd$ICuZyXfD0ooo/Jy0AMxFL0 #菜单密码,输入密码才能启动系统,一般不加菜单密码 root (hd0,0) kernel /vmlinuz-2.6.32-504.el6.x86_64 ro root=UUID=030f1baf-3cea-4c9a-838a-a45eb345e91b rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet initrd /initramfs-2.6.32-504.el6.x86_64.img
安装man手册
yum install -y man
Linux有7个运行级别:0-6
0:关机
1:单用户
2:不带NFS服务的3级别
3:命令行模式,即没有图形服务
4:保留的
5:图形化模式
6:重启
无装图形界面desktop,输入init5不会有反应
init程序的配置文件:/etc/inittab
/etc/grub.conf ->/boot/grub/grub.conf
有两个内核,默认启动第一个内核
BIOS加电自检,找启动介质(软盘、硬盘、光碟、U盘)则找到MBR(512字节)
找到MBR后,则根据bootloader(grub)设置找到内核所在位置
执行Linux内核映像代码,检测和加载硬件驱动
驱动加载完成后,内核把主动权交给了init
init会根据系统设定的运行级别做系统初始化
/etc/init/rcS.conf
exec /etc/rc.d/rc.sysinit -> 激活交换分区swap,检查磁盘,加载硬件模块以及其它一些需要优先执行任务
exec /etc/rc.d/rc $RUNLEVEL ($RUNLEVEL == 3)
/etc/rc.d/rc3.d/
/etc/rc.d/rc.local
建立终端:6个tty[1-6]和1个图形 tty7
用户登录
windows也有本地终端
用户:客户端名 空console
用户:客户端名 xxx rdp-tcp#0
ls -l /etc/rc.d/rc3.d
S开头:启动
K开头:关闭
pts/0:模拟终端
tty1:虚拟终端 虚拟终端切换
Ctrl+alt+F1 tty1
Ctrl+alt+F2 tty2
Ctrl+alt+F3 tty3
Ctrl+alt+F4 tty4
Ctrl+alt+F5 tty5
Ctrl+alt+F6 tty6
Ctrl+alt+F7 tty7 图形
磁盘的检测和修复
http://os.51cto.com/art/201408/449796.htm
通过e2fsck命令使用“bad-blocks.txt”,强迫操作系统不使用这些损坏的区块存储数据。
# sudo e2fsck -l /tmp/bad-blocks.txt /dev/sdb
注意:在运行e2fsck命令前,请保证设备没有被挂载。
# e2fsck /dev/sdc1
e2fsck 1.41.12 (17-May-2010)
/dev/sdc1 is mounted.
e2fsck: 无法继续, 中止.
mingetty 马哥
shell必须与终端关联
红帽使用mingetty程序来建立6个tty虚拟终端
物理终端:系统启动之前的控制台叫物理终端
虚拟终端:由软件虚拟出来的,系统启动之后由程序启动的终端,例如由mingetty程序启动的6个tty叫虚拟终端
模拟终端:远程登录或图形界面(startx)或pts
物理终端 /dev/console 真 串口调试Linux内核
虚拟终端 /dev/tty(0,6) 假 -》login程序 用户名/密码
模拟终端 /dev/pts/# 假上加假 -》sshd程序 用户名/密码
mingetty上面再运行一个shell程序,cli接口的shell
sh-祖宗
》csh
》ksh
》bash
》zsh
当看到命令提示符的时候才算启动了shell
[steven@centos ~]$
查看当前shell在哪个终端下运行:
$ tty /dev/pts/1
wetty简介
http://www.cnblogs.com/lienhua34/p/4862733.html
云主机使用wetty终端程序 网页管理服务器
Wetty是使用Node.js和websockets开发的一个开源Web-based SSH
initrd
Linux系统启动初始化镜像文件
安装桌面套件,安装图形化桌面
CentOS6安装如下包:
yum groupinstall -y "Desktop" yum groupinstall -y "X Window System" yum groupinstall -y "Development tools" yum install -y epel-release
重启系统,然后init5,即可打开图形界面
CentOS6,编辑 /etc/inittab ,3修改为5
reboot ,重启系统
https://www.laozuo.org/15626.html
CentOS7安装如下包(windows的rdp即mstsc连Linux):
Xrdp是Microsoft远程桌面协议(RDP)的开源实现,允许我们以图形方式控制远程系统
yum groupinstall -y "Server with GUI" yum groupinstall -y "GNOME Desktop" yum groupinstall -y "Development Tools" yum groupinstall -y "X Window System" yum install -y gnome-classic-session gnome-terminal nautilus-open-terminal control-center liberation-mono-fonts yum install -y epel-release yum install -y xrdp yum install -y tigervnc-server
设置系统默认启动图形界面,默认/lib/systemd/system/multi-user.target
systemctl set-default graphical.target 或 unlink /etc/systemd/system/default.target ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
也可以用startx来启动
startx
配置Xrdp
Xrdp配置文件位于/ etc / xrdp目录中。 对于常规Xrdp连接,只需将Xrdp设置为使用Gnome。
vi /etc/xrdp/xrdp.ini
在最后一行增加:
exec gnome-session
关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
systemctl enable xrdp
systemctl enable gdm
systemctl start xrdp
systemctl start gdm
重启系统
reboot
打开mstsc来连接,只需要输入ip不用输入用户名密码,连接即可
pivot_root
pivot_root把整个系统切换到一个新的root目录中,然后去掉对之前rootfs的依赖,以便于可…
pivot_root命令用于将根目录替换为指定目录.语法如下:
pivot_root new_root old_root ,其中new_root就是要替换的目标目录,old_root是用来存放原本根目录的地方.
具体例子可以用:
1. mkdir /new-root
2. mount -n -t tmpfs -o size=500M none /new-root
3. cd /new-root
4. mkdir old-root
5. pivot_root . old-root
f