您的位置:首页 > 运维架构 > Linux

Linux忘记密码、克隆、Linux机器相互登录

2018-01-01 14:14 274 查看
单用户模式
忘记root密码的第一种方法

救援模式
忘记root密码的第二种方法

克隆虚拟机

Linux机器相互登录

113 单用户模式

忘记root密码的第一种方法:

单用户模式,系统启动那一刻选择,和Windows的安全模式有点像

重启命令

重启命令
reboot
init 6
shutdown -r now
关机
init 0
poweroff


这里我们在VM里面使用的是VM的电源重启,启动的时候需要一直按方向键



进入到这个界面后,选择上面一个



选择好后按E键进入到grub界面,grub是一个启动工具。简单讲grub是找到启动盘,grub找到启动盘引导启动程序。



接下来向下翻到linux16开头的那一行,并向左移动光标到ro(这里ro表示只读),更改 ro 为 rw (rw为读写,read 和 write),然后加上字符串

init=/sysroot/bin/sh(sysroot为原系统位置,这里输入时为了能输入命令改密码)




同时按住Ctrl 和 X,进入命令界面,类似安全模式,此时的命令为内存操作系统为原始系统,不是我们之前的系统



这里我们查看 /root/.ssh/authorized_keys里面的公钥可以看出,我们在目录之前还加上了/sysroot,通过chroot /sysroot 命令我们可以更换成我们之前的系统,这时我们就可以直接访问/root/.ssh/authorized_keys里面的公钥了



passwd root(更改密码)
由于不能显示中文出现方块乱码,我们Ctrl + C取消
LANG=en (更改显示为英文)
passwd root(再更改密码)
touch  /.autorelbel(必须执行者这一步操作)




重启客户机,直接新密码登录就可以了



114 救援模式

忘记root密码的第二种方法:

救援模式

* 0 - 6 七个级别(CentOS6的)

0:关机

1:单用户模式

2、3、4:都是多用户模式(一般我们进入的是三级别)

5:图形界面(和3就差一个图形)

6:reboot(重启)

0 - 6 七个级别(CentOS7的)

与CentOS6的2级别不同的是,称之为救援模式

ls -l /usr/lib/systemd/system/runlevel*target(命令查看)




有时候grub也有密码,也不知道了,这是我们可以通过光盘或者U盘来进入到安装系统的界面来进行密码重置,先关机,然后编辑虚拟机,在CD/DVD选项中药勾选启动时链接,并一定要选中ISO文件



默认的是客户机启动,光驱在这时候不加载,我们选择启动时进入

BIOS就可以让机器首先加载光驱内容



我们通过左右方向键自动到Boot,上下方向键选中CD-ROM Drive,再通过键盘上的+键来让CD-ROM Drive上升到第一位



然后F10保存,回车键保存并退出



选择最后一项 Troubleshooting



我们选择 Rescue a CentOS system 回车,如果忘记grub密码只能进入到这个地方



进入界面,1:继续,2:只读挂载,3:跳过Shell,4:退出重启,这里我们选择1



按回车得到Shell



cat /mnt/sysimage/root/.ssh/authorized_keys(跟之前的单用户模式一样,这里我们查看我们的公钥)
chroot /mnt/sysimage/(更改为原来系统模式)
cat /root/.ssh/authorized_keys(查看公钥,发现和原来一样)




然后更改密码重启就
4000
可以了



关机重新进入BIOS更改启动顺序,F10回车就可以进入系统使用新密码了



115 克隆虚拟机

虚拟机关机过后选择,选择管理克隆



一直下一步到新建名称、选择位置,其中创建完整克隆会拷贝所有的文件,占用空间太大没有必要,最后完成即可。



启动克隆的虚拟机,登录进去后我们需要更改IP地址,不然会和之前的冲突。

vi /etc/sysconfig/network-scripts/ifcfg-ens33(编辑网络配置文件)


我们需要修改IP,

并且删除掉UUID那一项。



systemctl restart network.service(重启网络)
ifconfig(查看IP是否更改)
ping www.baidu.com(是否联网)




我们修改克隆机器的hostname,然后再开启另一台虚拟机并更改hostname

hostname(查看hostaname)
hostnamectl set-hostname Mylinux2(修改hostname为Mylinux2)
exit(退出再重新进就会看到主机名生效了)
同样的方法我们更改另外一台主机
cat /etc/hostname(hostname配置文件)




116 Linux机器相互登录

w(查看在线链接的偶哪些)




ssh 192.168.193.200 (链接克隆机Mylinux2)
输入密码就可以了
ssh username@ip(完整写法)
示例:ssh root@192.168.193.200
这里我们直接使用了ssh 192.168.193.200,链接的是物理机系统当前登录的用户。
ssh默认端口22
ssh -p 22 root@192.168.193.200(ssh指定端口,指定用户远程连接)




Linux秘钥启动,首先生成秘钥

[root@mylinux ~]# ssh-keygen(生成秘钥)
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): (回车默认保存地址)
Enter passphrase (empty for no passphrase): (私钥密码)
Enter same passphrase again: (再次确认私钥密码))
Your identification has been saved in /root/.ssh/id_rsa.(私钥保存位置)
Your public key has been saved in /root/.ssh/id_rsa.pub.(公钥保存位置)
The key fingerprint is:
SHA256:lo1W1uwSAjQ6vbw2CmvdSTeMzpUEI4yMOzFE1wfRWLQ root@mylinux
The key's randomart image is:
+---[RSA 2048]----+
|o= +.+@o         |
|+ + o=o=.  o     |
| +  o.oE. + o    |
|o    o ..B o     |
| .    o+S.o .    |
|      o+*  .     |
|  .. =++ .       |
|  .o.o=.         |
| .. .            |
+----[SHA256]-----+
[root@mylinux ~]#




[root@mylinux ~]# ls /root/.ssh/(查看.ssh下的文件)
authorized_keys  id_rsa  id_rsa.pub  known_hosts
[root@mylinux ~]# cat /root/.ssh/id_rsa.pub (查看公钥)
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDDwz1wAwgd6S7BkMm/z4kSvUWxnNJLx0irnfVE87fjZsveIiJ/k1inEJXywOT3caQbkfeDuVLv81vXr/Tc4CYoWO+kWs7QSPc4LCEcNTvWduPQl48KK1MJBnxKdsD5AkU/sYsRsVefMFUg4zQwq9qhtEvGpnM8gQj9nrXDg3Y8sLn90nf6k9TVsC8YRuxD0rhGUV4rckOfrZtLB6AaPKszlZjrC1+4TQ7Mt7RdvuL3q/hxpewE3Pu+54DdVPu8VSdZT0FWPyQmmZlARcRuL7eEEe3Wtc7YXyRvljhsZSCPTWWF1/V77N/2lY9A1QAgsrRZzUoiExKlFL2NoHOS/8QV root@mylinux




[root@mylinux2 ~]# vi /root/.ssh/authorized_keys (复制公钥到文件)




[root@mylinux ~]# getenforce(查看是否开启防火墙)
Enforcing(开启状态)
[root@mylinux ~]# setenforce 0(临时关闭防火墙,重启过后还是会开启,永久关闭后面讲)
[root@mylinux ~]# getenforce
Permissive(关闭状态)




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐