1.13 单用户模式

1.14 救援模式

1.15 克隆虚拟机

1.16 Linux机器相互登录



1.13 单用户模式

单用户模式类似windows的安全模式。比如忘记root密码的时候可以进入单用户模式。

首先重启linux,有三个命令可以用(reboot ,init 6,shutdown -r now),关机使用init 0或poweroff。

2018-3-22_克隆

选择第一个,按e进入编辑界面

2018-3-22_救援模式_02

这个界面就是grub界面(启动工具)。然后按方向键把光标定位到Linux16这一行 再到ro  //(read only 只读)

2018-3-22_单用户_03

把ro改成rw(读写),再添加一个字符串init=/sysroot/bin/sh //(sysroot是系统所在的目录,原系统所在的路劲)

2018-3-22_单用户_04

按ctrl+X开始

2018-3-22_克隆 _05

到了这个界面,就可以运行一些命令了。相当是一个安全模式,还没到系统里去。可以查看一些系统文件啊,还有cat一下原先的密钥设置

2018-3-22_救援模式_06

执行chroot /sysroot/   //(切换到原系统环境去,现在用的ls并不是系统里的命令相当于一个内存操作系统)

然后再cat /root/.ssh/authorized_keys

2018-3-22_克隆 _07

现在的cat命令和刚刚的命令是有区别的,这时候就可以用原来系统的命令了。这时候 执行passwd root 发现有乱码ctrl+c退出命令,执行LANG=en//(定义语言为英语,vm的终端是不支持显示中文的)

2018-3-22_克隆 _08

设置一下新密码

然后执行touch /.autorelabel //(不执行这个命令可能会进不去系统),完事电源重新启动客户机。然后就可以用新密码去登陆了。单用户模式用在主机上。



1.14 救援模式

这里说以下运行级别0-6 7个级别,0就是关机 1是单用户(进入到grub) 234是多用户模式(没安装图形进入的就是3级别)5有图形的界面 6就是重启 这些都是centos6之前的概念 7就没了。

可以用 ls -1 /usr/lib/systemd/system/runlevel*target来看一下

2018-3-22_克隆 _09

2018-3-22_救援模式_10

可以看到对应的七个级别。rescue就是但用户模式

前面的单用户模式的前提是需要知道grub的密码或者grub没有加密,才能编辑grub。如果grub密码不知道进不去但用户莫。所以还有一种方法就是通过系统U盘或光盘重新进入到装系统的界面下。

init 0关机,编辑虚拟机设置,点击cd/dvd(光驱设置),注意这里启动时连接的钩一定要打上 还有镜像文件,否则是不会加载的。

右键启动时进入bios,把光驱设置成第一启动对象(默认不是)。

2018-3-22_救援模式_112018-3-22_救援模式_122018-3-22_单用户_13

选择boot,看右边的说明 把cd-rom放到第一行,然后按F10保存并退出。

这时候又进入到光驱启动界面了。

第一项是安装操作系统,第一项是测试光驱,第三项就是我们要使用的模式选第三项确实,然后再选第二项resu

2018-3-22_单用户_142018-3-22_救援模式_15

有几个选项,选continue 继续。

2018-3-22_救援模式_16

/mnt/sy..这才是原系统  对比但用户模式发生了一些变化 ,老样子ls cat一下

2018-3-22_单用户_17

切换到原系统2018-3-22_救援模式_18

可以看到前缀有变化sh变成了bash

接下来passwd root改密码和单用户模式一样, 然后去bios里设置一下第一启动对象,或者把光驱断电即可。

2018-3-22_克隆 _192018-3-22_单用户_20

重启 登陆 完成。我们把这种模式叫作救援模式。


1.15 克隆虚拟机

关闭虚拟机,右键管理克隆,创建链接克隆即可。

正常开机启动,首先要改一下ip,因为和原来相同的话两台会冲突 vi /etc/sysconfig/network-..(多用tab补全路径)

2018-3-22_克隆 _192018-3-22_克隆 _22

原来苏hi192.168.226.131 那改成192.168.226.132,删掉uuid前面一样会出错(按dd删一行),退出保存。

重启一下网络服务,这里记录一下一个常常出现的问题,就是重启网络服务的时候出现这个错误

2018-3-22_克隆 _192018-3-22_克隆 _24

原因 2018-3-22_克隆 _192018-3-22_单用户_26

ether与2018-3-22_克隆 _192018-3-22_单用户_28编辑配置里的HWADDR对不上号(相当于硬件的×××),修改成一样的就可以了

ok,检测一下IP是不是对的 没问题 2018-3-22_救援模式_29

2018-3-22_克隆 _19

然后设置一下主机名。hostname //查看主机名命令

2018-3-22_克隆 _19用hostnamectl set-hostname //更改主机名字 来更改主机名字

2018-3-22_克隆 _192018-3-22_救援模式_33

退出再重新进就可以看到主机名生效了

2018-3-22_克隆 _192018-3-22_单用户_35

原虚拟机也登陆 也改下主机名,可以用cat看一下主机名的文件

2018-3-22_克隆 _192018-3-22_单用户_37

用xhell将两个机器远程连接。

创建一个,或复制原来的 改一下名字和ip

2018-3-22_克隆 _192018-3-22_克隆 _39

然后给克隆的虚拟机做一个快照,结束下一章进行连接



1.16 Linux机器相互登录

首先用原本的虚拟机去连克隆机

ssh 192.168.226.132(标准写法是ssh root@192.168.226.132) 可以用w命令看一下

2018-3-22_克隆 _192018-3-22_单用户_41

再用克隆去连01

2018-3-22_克隆 _192018-3-22_克隆 _43

然后再再01用w看一下

2018-3-22_克隆 _192018-3-22_救援模式_45

然后ctrl+d退出来2018-3-22_克隆 _19

2018-3-22_克隆 _192018-3-22_救援模式_48

如果要指定端口 用指令ssh -p 22 root@192.168.133.130(22是所对应的端口)

2018-3-22_克隆 _192018-3-22_克隆 _50

接下来用密钥认证 用克隆机去连原机。那克隆机就要一个私钥,原机需要一个公钥

首先shh-keygen生成密钥对,第一个是指定路径(回车默认路径就可以了),第二个是设置密码(回车密码为空),再回车生成密钥对

2018-3-22_克隆 _192018-3-22_救援模式_52

2018-3-22_克隆 _532018-3-22_克隆 _19这个就是私钥2018-3-22_克隆 _192018-3-22_克隆 _56这个是公钥

2018-3-22_克隆 _192018-3-22_克隆 _58

id_rsa就是私钥 id..pub就是公钥。那如果这个机器登陆另外一个机器,就要把这个机器的公钥放到另外一个机器上去

然后cat /root/.ssh/id_rsa.pub,把这个公钥复制到原机上去

2018-3-22_克隆 _192018-3-22_克隆 _60

vi /root/.ssh/authorized_keys

2018-3-22_克隆 _192018-3-22_单用户_62

ok 保存并退出。然后用命令getenfoce

2018-3-22_克隆 _192018-3-22_单用户_64

如果是enforcing说明selinux是打开的,临时关闭用setenforce 0,再看状态就是permissive就是关闭状态,(如果再重启又会变成enfocing)

这里提一下selinux 这是一款提高系统安全性的软件。对系统服务,文件权限,网络端口访问有极其严格的限制,例如:如果对一个文件没有正确安全上下文配置,甚至你是root用户,也不能启动某服务。所以我们一般都将他关掉。

2018-3-22_克隆 _192018-3-22_单用户_66

这个时候再去原机器连一下ssh

2018-3-22_克隆 _192018-3-22_克隆 _68

就不用再输入密码了。 这个就是密钥