centos7重置密碼、單用戶模式、救援模式、ls命令、chmod命令

在工做當中若是咱們錯誤的配置了文件使服務器不能正常啓動或者忘記密碼不能登陸系統,如何解決這些問題呢?重裝系統是能夠實現的,可是每每不能輕易重裝系統的,下面用忘記密碼做爲例子講解如何在不重裝系統的狀況下解決這些問題。node

centos7重置密碼

單用戶模式重置密碼

單用戶模式:單用戶模式是一個運行級別,在系統中能夠運行一個命令來查看系統的運行級別有哪些: ls -l /usr/lib/systemd/system/runlevel.target*shell

[root@localhost ~]# ls -l /usr/lib/systemd/system/runlevel*.target
lrwxrwxrwx. 1 root root 15 Jan 21 05:36 /usr/lib/systemd/system/runlevel0.target -> poweroff.target
lrwxrwxrwx. 1 root root 13 Jan 21 05:36 /usr/lib/systemd/system/runlevel1.target -> rescue.target
lrwxrwxrwx. 1 root root 17 Jan 21 05:36 /usr/lib/systemd/system/runlevel2.target -> multi-user.target
lrwxrwxrwx. 1 root root 17 Jan 21 05:36 /usr/lib/systemd/system/runlevel3.target -> multi-user.target
lrwxrwxrwx. 1 root root 17 Jan 21 05:36 /usr/lib/systemd/system/runlevel4.target -> multi-user.target
lrwxrwxrwx. 1 root root 16 Jan 21 05:36 /usr/lib/systemd/system/runlevel5.target -> graphical.target
lrwxrwxrwx. 1 root root 13 Jan 21 05:36 /usr/lib/systemd/system/runlevel6.target -> reboot.target

能夠看到centos7有0-6,7個運行級別centos

  1. 0表示關機。
  2. 1表示單用戶模式(字面意思是救援模式,咱們習慣稱之爲單用戶)
  3. 2-4三個運行級別均表示多用戶模式
  4. 5表示圖形界面
  5. 6重啓

如何進入單用戶模式

  1. 要進入單用戶模式,須要重啓機器,可使用init 6 或reboot命令來重啓。在機器啓動到grub界面時按上下箭頭(只有幾秒的時間,須要快速按下,不然系統會正常啓動)
  2. 選中第一條,按下「e」鍵來編輯grub,而後利用箭頭將光標定位到下圖所示的ro處。
  3. 而後將ro修改成rw init=/sysroot/bin/sh 。按ctrl+x來啓動。
  4. 接下來機器會啓動到一個內存系統下(相似於Windows的winpe同樣),也會有一個文本的交互界面

重置root密碼

  1. 運行chroot /sysroot/ 命令來進入咱們真正的系統。而後就可使用passwd root命令來重置密碼了
  2. 若是原來的系統裝的是中文版的,須要敲LANG=en ,防止由於在這個界面不能正常顯示中文而出現亂碼。
  3. 運行touch /.autorelabel ,再運行exit退出當前shell 。最後一步 reboot 重啓。

救援模式

咱們通常說的救援模式是須要藉助系統盤(光盤或者u盤)這種工具來進入的。服務器

  1. 若是是物理機,咱們首先須要將光盤插入光驅,而後重啓機器。(虛擬機同樣的步驟)
  2. 在機器啓動的時候按下F2(不一樣品牌的服務器按鍵不同,能夠根據提示操做)進入BIOS
  3. 選中boot選項卡,將CD-ROM Drive選項調整到第一項(按+、— 按鍵調整)
  4. 按下F10保存退出,選擇yes。
  5. 在下面這個界面中選中Troubleshooting ,敲回車
  6. 接下來的界面,選擇rescue a centos system,敲回車。而後再敲回車。
  7. 而後出現一個交互界面,輸入1,回車
  8. 在這個界面敲回車得到一個shell,真正的系統倒是在/mnt/sysimage/下
  9. 運行chroot /mnt/sysimage
  10. 正常修密碼就能夠了,修改完以後,退出當前shell ,重啓系統就能夠了。

ls 命令

在centos中有一個man命令,這個man是用來查看其它命令的文檔的,好比要查看ls命令的文檔: man ls ls 命令經常搭配一些參數來使用,以達到咱們想要的輸出結果。工具

  • ls -a 查看文件的隱藏權限
  • ls -l 查看文件的詳細信息(時間,大小,權限,屬主屬組,文件的屬性)
  • ls -d 只查看命令後面跟的目錄的信息,而不查看該目錄下其餘文件的信息。
  • ls -lt 按時間排序時間越早的排的越下面
  • ls -i 查看文件的Inode號
[root@localhost ~]# ls -l /tmp
total 4
 -rwx------. 1 root root 836 Jan 21 05:45 ks-script-ob6xOy
 drwx------. 3 root root  17 Jan 22 12:35 systemd-private-5f7ab756ffe94541891075d943c5de58-chronyd.service-eOAzQl
 -rw-------. 1 root root   0 Jan 21 05:34 yum.log

chmod命令。

文件權限

如上面所示,當使用ll列出一個文件的信息時,最前面有10個字符。centos7

  1. 第一個字符表示的是文件的類型
  • d表示目錄,
  • -表示普通文件,
  • s表示套接口文件
  • b表示塊設備文件
  • c表示字符設備文件
  1. 後面9位表示權限,前3位表示屬主對該文件的權限,中間3位表示屬組對該文件的權限,後3位表示其餘用戶對該文件的權限。
  2. 權限的表示rwxrwxrwx ,r=讀權限,用數字表示爲4,w=寫權限,數字表示爲2,x=執行權限,數字表示爲1。因此一個文件的權限若是是644表示屬主對該文件有讀寫權限,屬組和其餘用戶對該文件只有讀的權限。

chmod命令是用來更改文件權限的

[root@localhost tmp]# ls -la test.txt 
-rw-r--r--. 1 root root 846 Jan 22 12:57 test.txt
[root@localhost tmp]# chmod 666 test.txt 
[root@localhost tmp]# ls -la test.txt 
-rw-rw-rw-. 1 root root 846 Jan 22 12:57 test.txt

這是一個比較簡單的用法,直接更改文件的權限。 還能夠這樣使用chmod u=rwx,g=r,o=r filname。這條命令當中,u 表示全部者,g 表示所屬組,o表示其餘用戶。3d

[root@localhost tmp]# chmod u=rw,g=r,o-rw test.txt 
[root@localhost tmp]# ls -la test.txt 
-rw-r-----. 1 root root 846 Jan 22 12:57 test.txt
相關文章
相關標籤/搜索