1. 程式人生 > >2018-3-22

2018-3-22

單用戶與救援模式。克隆相互登陸

1.13 單用戶模式

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 [email protected]) 可以用w命令看一下

技術分享圖片技術分享圖片

再用克隆去連01

技術分享圖片技術分享圖片

然後再再01用w看一下

技術分享圖片技術分享圖片

然後ctrl+d退出來技術分享圖片

技術分享圖片技術分享圖片

如果要指定端口 用指令ssh -p 22 [email protected](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

技術分享圖片技術分享圖片

就不用再輸入密碼了。 這個就是密鑰


2018-3-22