1.14 救援模式
1.15 克隆虚拟机
1.16 Linux机器相互登录
1.13 单用户模式
单用户模式类似windows的安全模式。比如忘记root密码的时候可以进入单用户模式。
首先重启linux,有三个命令可以用(reboot ,init 6,shutdown -r now),关机使用init 0或poweroff。
选择第一个,按e进入编辑界面
这个界面就是grub界面(启动工具)。然后按方向键把光标定位到Linux16这一行 再到ro //(read only 只读)
把ro改成rw(读写),再添加一个字符串init=/sysroot/bin/sh //(sysroot是系统所在的目录,原系统所在的路劲)
按ctrl+X开始
到了这个界面,就可以运行一些命令了。相当是一个安全模式,还没到系统里去。可以查看一些系统文件啊,还有cat一下原先的密钥设置
执行chroot /sysroot/ //(切换到原系统环境去,现在用的ls并不是系统里的命令相当于一个内存操作系统)
然后再cat /root/.ssh/authorized_keys
现在的cat命令和刚刚的命令是有区别的,这时候就可以用原来系统的命令了。这时候 执行passwd root 发现有乱码ctrl+c退出命令,执行LANG=en//(定义语言为英语,vm的终端是不支持显示中文的)
设置一下新密码
然后执行touch /.autorelabel //(不执行这个命令可能会进不去系统),完事电源重新启动客户机。然后就可以用新密码去登陆了。单用户模式用在主机上。
1.14 救援模式
这里说以下运行级别0-6 7个级别,0就是关机 1是单用户(进入到grub) 234是多用户模式(没安装图形进入的就是3级别)5有图形的界面 6就是重启 这些都是centos6之前的概念 7就没了。
可以用 ls -1 /usr/lib/systemd/system/runlevel*target来看一下
可以看到对应的七个级别。rescue就是但用户模式
前面的单用户模式的前提是需要知道grub的密码或者grub没有加密,才能编辑grub。如果grub密码不知道进不去但用户莫。所以还有一种方法就是通过系统U盘或光盘重新进入到装系统的界面下。
init 0关机,编辑虚拟机设置,点击cd/dvd(光驱设置),注意这里启动时连接的钩一定要打上 还有镜像文件,否则是不会加载的。
右键启动时进入bios,把光驱设置成第一启动对象(默认不是)。
选择boot,看右边的说明 把cd-rom放到第一行,然后按F10保存并退出。
这时候又进入到光驱启动界面了。
第一项是安装操作系统,第一项是测试光驱,第三项就是我们要使用的模式选第三项确实,然后再选第二项resu
有几个选项,选continue 继续。
/mnt/sy..这才是原系统 对比但用户模式发生了一些变化 ,老样子ls cat一下
切换到原系统
可以看到前缀有变化sh变成了bash
接下来passwd root改密码和单用户模式一样, 然后去bios里设置一下第一启动对象,或者把光驱断电即可。
重启 登陆 完成。我们把这种模式叫作救援模式。
1.15 克隆虚拟机
关闭虚拟机,右键管理克隆,创建链接克隆即可。
正常开机启动,首先要改一下ip,因为和原来相同的话两台会冲突 vi /etc/sysconfig/network-..(多用tab补全路径)
原来苏hi192.168.226.131 那改成192.168.226.132,删掉uuid前面一样会出错(按dd删一行),退出保存。
重启一下网络服务,这里记录一下一个常常出现的问题,就是重启网络服务的时候出现这个错误
原因
ether与编辑配置里的HWADDR对不上号(相当于硬件的×××),修改成一样的就可以了
ok,检测一下IP是不是对的 没问题
然后设置一下主机名。hostname //查看主机名命令
用hostnamectl set-hostname //更改主机名字 来更改主机名字
退出再重新进就可以看到主机名生效了
原虚拟机也登陆 也改下主机名,可以用cat看一下主机名的文件
用xhell将两个机器远程连接。
创建一个,或复制原来的 改一下名字和ip
然后给克隆的虚拟机做一个快照,结束下一章进行连接
1.16 Linux机器相互登录
首先用原本的虚拟机去连克隆机
ssh 192.168.226.132(标准写法是ssh root@192.168.226.132) 可以用w命令看一下
再用克隆去连01
然后再再01用w看一下
然后ctrl+d退出来
如果要指定端口 用指令ssh -p 22 root@192.168.133.130(22是所对应的端口)
接下来用密钥认证 用克隆机去连原机。那克隆机就要一个私钥,原机需要一个公钥
首先shh-keygen生成密钥对,第一个是指定路径(回车默认路径就可以了),第二个是设置密码(回车密码为空),再回车生成密钥对
这个就是私钥这个是公钥
id_rsa就是私钥 id..pub就是公钥。那如果这个机器登陆另外一个机器,就要把这个机器的公钥放到另外一个机器上去
然后cat /root/.ssh/id_rsa.pub,把这个公钥复制到原机上去
vi /root/.ssh/authorized_keys
ok 保存并退出。然后用命令getenfoce
如果是enforcing说明selinux是打开的,临时关闭用setenforce 0,再看状态就是permissive就是关闭状态,(如果再重启又会变成enfocing)
这里提一下selinux 这是一款提高系统安全性的软件。对系统服务,文件权限,网络端口访问有极其严格的限制,例如:如果对一个文件没有正确安全上下文配置,甚至你是root用户,也不能启动某服务。所以我们一般都将他关掉。
这个时候再去原机器连一下ssh
就不用再输入密码了。 这个就是密钥
原文地址:http://blog.51cto.com/13646170/2090004