忘记虚拟机密码的处理方式及Linux机器相互登录1.13-1.16


忘记虚拟机密码的处理方式:


1.13 单用户模式(rescue.target,适用于可以直接操作虚拟机所在物理机的情况,并且grub没有设置密码)
虚拟机菜单-重新启动客户机-重启后系统会进启动项选择,当启动界面出现时,按一下方向键,可以上下选择,我们选第一项,并按下“e”键,并进入grub界面,我们用上下键,找到"linux 16 /vmlinuz-.....UTF-8"开头的一行,把光标定位到"ro",将“ro”改为“rw init=/sysroot/bin/sh“改完后,按提示的同时按下Ctrl+x键,进入类似于安全模式的单用户模式状态,我们需要在这里切换到原系统里去并更改原系统里存放密码的文件,
chroot /sysroot/#切换到原系统里去#
cat /root/.ssh/authorized_keys#查看authorized_keys里的内容#
LANG=en#定义语言为英语#
passwd root#更改root密码#
输入新的密码,再确认输入,会提示重置成功,继续
touch /.autorelabel
点击虚拟机-重新启动客户机,即可


1.14救援模式(grub设置密码的情况下)
用加载光驱或系统U盘的方式来设置:
1.先关机,然后编辑虚拟机设置,确保CD/DVD一项里的启动时连接有勾上,还有iso镜像文件的路径是正确的,然后关闭虚拟机设置,之后右键虚拟机选择电源-点击启动时进入bios。然后就开机进入了bios,之后我们用方向键选择boot目录,利用+-号将cd-rom移动到第一位,然后按F10,选yes回车重启。


2.之后就到了光驱启动界面了,第一项是安装操作系统,第二项是测试你的光驱,我们选择第三项,Troubleshooting,回车,然后选择第二项Rescue a Centos Linux system,回车,然后在出现的界面再回车一次,稍等片刻,期间会有跳转。


然后会有1-4的选项,
1Continue继续
2Read-only moun只读
3Skip to shell跳过SHELL
4Quit(Reboot)
我们选择1回车。


之后稍等片刻
会看到提示:"chroot /mnt/sysimage
Please press (return) to get a shell"
这时,我们回车,输入“chroot /mnt/sysimage”然后我们使用“passwd root”改密码,输入新的密码,再确认输入,会提示重置成功,然后编辑-虚拟机设置,确保CD/DVD一项里的,把“已连接”和“启动时连接”勾取消掉(也可以点击编辑区下方的小光盘来设置),然后确定要断开连接,之后电源-重新启动客户机就好了。


1.15 克隆虚拟机
先关机(用命令行init 0关),然后右键虚拟机,点“管理”再点“克隆”,然后在弹出的窗口点下一步,然后再下一步,选择“创建链接克隆”再点下一步,虚拟机名称设置后,然后完成。


我们把克隆出来的系统开机,然后修改ip地址,使用 vi /etc/sysconfig/network-scripts/ifcfg-网卡名"按"i",改掉IPADDR中的最后一组数字,避免IP冲突,然后把UUID一行删掉。


然后重启网络服务,


使用“systemctl restart network.service”启完之后,再查看一下主机名用"hostname"可以看到默认主机名是“localhost.localdomain”
此时,我们需要改一下主机名,用命令“hostnamectl set-hostname XXXX”改一下主机名,(XXXX填你刚刚给自己起的主机名),然后退出再登录就会发现主机名变了,然后把另外一台机器开启,也改一下主机名。


然后我们用xshell再创建一个克隆机的连接,直接点之前创建好连接上做复制,然后改下名字,改对应克隆机的ip。

最后在虚拟机界面把克隆机做一个快照。


1.16 Linux机器相互登录


把两台机器都打开,然后在一台机器上用命令“ssh XXX.XXX.XXX.XXX”连接另外一台机器,(XXX为另外一台机器的ip)有密码则输入密码,如果端口不是22。而是其他的话,那就用“ssh -p 端口号 XXX.XXX.XXX.XXX”(例如ssh -p 22 192.168.20.153)。




如果你要在两个机器之间设置密钥登录的话,就使用命令“ssh-keygen”回车,然后弹出的Enter file in which to save the key意思是密钥想要放在哪里和叫什么名字,默认直接回车就可以了,之后弹出Enter passphrase意思是让你给密钥设一个密码,不想设可以直接回车再回车,然后就生成了密钥对,其中“Your identification has been saved in /toor .ssh/id_rsa” /toor .ssh/id_rsa是私钥文件,另一个"Your public key has been saved in /root/.ssh/id_rsa.pub"中/root/.ssh/id_rsa.pub是公钥文件。


然后我们用“cat /root/.ssh/id_rsa.pub”打开公钥,将里面的内容复制到另一台机器的authorized_keys文件里。


然后我们关闭selinux防火墙,用命令“setenforce 0”,然后在另一台机器上连接这台机器就不需要密码了。


tips:
1.Centos6及之前的版本存在运行级别,分0-6共7个级别,
0关机
1单用户,不需要用户认证
2命令行下的多用户模式
3命令行下的多用户模式(启动系统之后没安装图形界面之前所进入的级别是3级
4命令行下的多用户模式
5图形操作界面
6reboot重启


2.命令重启:reboot,init 6,shutdown -r now
3.命令关机:init 0,poweroff


4.grub是一个启动工具,可以找到系统引导盘
5.ro表示只读,rw表示读写,sysroot是原系统所在的目录


6.单用户和救援模式还可应用于,当改错了系统配置文件,系统出错时,也可以在此模式下,把系统文件改回原来的设置


7.查看主机名用:cat /etc/hostname


8正常连接另一台机器用ssh username@ip,如果没写用户名,就默认使用当前系统登陆用户,用whoami可以看当前系统登陆用户


9.检验SELinux是否打开,用命令getenforce,如果显示Enforcing表示是打开的;想临时关掉的话用setenforce 0,显示Permissive;


你可能感兴趣的:(Linux学习笔记)