su命令,sudo命令,限制root遠程登陸,df命令,du命令,磁盤分區

su命令

  • su命令能夠切換用戶
  • su - aming 就能夠切換到aming用戶
  • 使用 su aming 也能夠切換用戶,可是不加 - 的話切換就不完全
  • 若是不加 - 切換的話,並不會切換到aming用戶的家目錄下面,也不會加載aming用戶的相關配置
  • 要加 - 纔會切換到aming的家目錄下,加載全部aming用戶的配置
  • su - -c "touch /tmp/aming.111" aming 能夠在不切換用戶的狀況下,以用戶aming的身份,執行touch命令
  • su - 表明切換aming的全部配置,- 表明shell環境,不加 - shell環境就不會切換到新用戶的shell
  • 這條命令裏面,-c 參數就可使用這樣的功能,-c後面接須要執行的指令,用雙引號括起來
  • 這樣就能夠不切換到aming用戶的狀況下,用aming用戶的身份執行 touch指令
  • 切換到user5用戶,發現user5用戶的shell不正常,以前建立這個用戶的時候沒有建立家目錄,因此才這樣
  • 如今手動建立user5的家目錄
  • 首先建立一個/home/user5目錄
  • 而後使用 chown 將/home/user5/的全部者跟所屬組改爲user5跟user5組
  • 這個時候仍是沒有成功,由於,/home/user5目錄內沒有相關的配置文件
  • 系統內部有一個模板目錄,找到裏面的模板並複製到user5目錄裏面去
  • 如圖,/etc/skel/就是系統的模板目錄,查看裏面的文件
  • 發現有三個 .bash 開頭的文件,使用命令 cp /etc/skel/.bash* /home/user5/
  • 這樣就把三個.bash文件複製到user5目錄了, .bash* 表明.bash+任意字符
  • 因此,.bash* 就表明了三個 .bash文件,使用這種寫法,就能夠把全部.bash開頭的文件一塊兒複製
  • 而後用chown修改user5目錄,加上-R參數,這樣user5目錄裏的子文件子目錄就跟user5的全部者和所屬組一致了
  • 符號 !$ 表明上一條命令的最後一個參數,chown上一條命令的最後一個參數是 /home/user5/
  • 而後再切換到user5用戶,就能夠看到,user5的shell和家目錄正常了
  • 使用 su - 就能夠從其餘用戶切換到root,可是要輸入root密碼

sudo命令

  • sudo能夠臨時給普通用戶受權root用戶的身份,去執行命令
  • 可使用 visudo 打開sudo的配置文件
  • 打開sudu配置文件後,往下翻頁,找到如圖所示的這一行,能夠在這裏配置其它用戶使用sudo命令時的權限
  • 在root行下面能夠寫入新的用戶信息,這裏添加aming用戶
  • 第二列信息,ALL=(ALL)是固定寫法,就照這樣寫就行了
  • 第三列是命令信息,表明臨時受權可使用哪些命令,若是寫ALL就表明可使用全部命令
  • 這裏寫三個命令,分別是ls,mv,cat三個命令,這裏必須寫三個命令文件的絕對路徑,不能簡寫
  • 這樣使用sudo命令的時候,其它用戶能夠用root的身份使用ls,mv,cat三個命令了
  • 而後 :wq 保存退出
  • 上圖 sudo /usr/bin/ls /root/ 也能夠寫 sudo ls /root/
  • 第一次使用須要輸入用戶密碼,之後就不須要輸入密碼了
  • 如圖所示,也能夠在命令前面加上 NOPASSWD: 而後空格再寫入命令文件的路徑
  • 這樣使用sudo的時候,就不須要輸入用戶密碼了
  • 找到如圖所示的位置,這裏能夠設置命令組合的別名
  • 如圖 Cmnd_Alias 是固定開頭格式,AMING_CMD是自定義的別名,等號後面是命令文件路徑
  • 這樣寫了以後,AMING_CMD 就能夠表明這三條命令
  • 再回到下面寫入用戶權限那裏,就能夠把三條命令的路徑信息刪除,只寫AMING_CMD就好了
  • 由於AMING_CMD就包含了三條命令的路徑信息,因此在這裏寫AMING_CMD和寫路徑信息時同樣的效果

限制root遠程登陸

  • 由於root權限太大,root密碼有被人盜取的風險,
  • 因此直接用root密碼遠程登陸的話,一旦密碼被人盜取,別人就能夠直接以root的身份遠程登陸主機,這樣會有很大的風險
  • 爲了防止別人得到root密碼直接遠程登陸主機,就須要限制root遠程登陸
  • 這樣就算別人得到密碼,也不能遠程登陸主機
  • 限制了root遠程登陸之後,爲了可以以root身份遠程操做主機
  • 先要以普通用戶身份遠程登陸,而後使用sudo切換到root用戶去
  • 這樣就先要在sudo配置文件裏面對普通用戶設置切換到root用戶的權限
  • 使用visudo打開配置文件,找到User Aliases 行
  • 而後在下面設置一個user aliases 也就是用戶別名,能夠把幾個不一樣的用戶設置進去
  • 這樣只要使用這個別名,就同時表明了設置進入的用戶自己
  • 如圖所示,User_Alias 這是固定格式開頭,而後 AMINGS是自定義別名
  • 等號後面的 aming,user5,user6 就是設置進入這個別名的用戶名稱
  • 而後找到添加用戶權限的行,添加新的用戶AMINGS,也就是說上面設置的用戶別名
  • 這個別名包含了三個真實用戶,寫在這裏,就能夠同時賦予這三個用戶權限
  • ALL=(ALL) 括號裏面的ALL表明全部用戶,固然也包括root用戶
  • 而後第三列,NOPASSWD: 設置無密碼使用sudo,而後是 /usr/bin/su 文件路徑
  • 這樣就賦予了AMINGS別名中包含的三個用戶以root身份使用su命令的權限
  • 也就是說,這三個用戶在可使用su命令無需密碼切換到root用戶
  • 由於在使用su命令時,這三個用戶臨時得到了root用戶權限,因此切換root用戶是不須要密碼的
  • 如今登陸這三個普通用戶後,就可使用 sudo su - 來登陸root用戶了
  • 可是普通用戶這樣登陸root用戶後,權限太大,能夠直接修改root密碼
  • 因此須要作一些限制
  • 修改上面這個配置文件就能夠限制root遠程登陸
  • 進入配置文件後,輸入 /Root 搜索Root關鍵字,而後就找到下面的行
  • 上面顯示的 PermitRootLogin yes 這一行就能夠限制root遠程登陸
  • 能夠看到這一行前面有一個井號 # ,這表示這一行是註釋,不起做用
  • 因此須要刪除井號 # ,這樣這一行就再也不是註釋了,能夠產生做用
  • 而後把原來的 yes 改爲 no , 這樣就不容許root遠程鏈接了
  • 而後保存退出,改完配置文件後須要重啓網絡服務 systemctl restart sshd.service
  • 遠程鏈接服務器,能夠看到輸入密碼後,仍是登錄不了
  • 如圖,先用aming用戶遠程登陸,而後使用sudo su - root 就能夠登陸root用戶了

df命令

  • df 能夠查看文件系統磁盤空間信息
  • 運行df後,出現上圖信息
  • 第一列是磁盤分區名稱,第二列是磁盤總大小,單位是kb
  • 第三列是已經使用的空間,單位是kb,第四列是還有多少剩餘空間,單位也是kb
  • 第五列是已用百分比,就是已經使用到的空間佔總空間的百分比,須要重點關注
  • 第六列是掛載點,linux不能直接訪問磁盤,須要有掛載點,經過掛載點才能進入磁盤
  • df -h 參數 -h 可使磁盤單位更好的顯示,會顯示MB,GB等單位
  • 第一列文件系統,名稱帶 tmpfs 的說明是臨時文件系統,在臨時文件系統裏面的文件重啓後就會消失
  • 掛載點,/dev/shm 表明內存,大小是物理內存的一半,若是想在內存寫文件,能夠放到這個目錄裏面
  • 主要仍是關注名稱爲 /dev/ 的文件系統,臨時文件系統通常不須要關注
  • df 沒法看到 swap 文件系統,須要使用 free 查看
  • df -i 能夠查看分區有多少個 inode 還有 inode 的使用狀況
  • inode 在格式化磁盤的時候,系統就會預先分配好
  • inode 若是使用完了,即便磁盤還有空間,也是沒法寫入數據的
  • df -m 參數 -m 可使磁盤單位顯示爲 MB
  • 因此df經常使用參數主要是 -h,-i,-m

du命令

  • du 能夠查看文件大小
  • du -sh 能夠查看文件大小
  • 若是隻使用 du,如圖 du /root/
  • 那麼會顯示root還有root下面的子目錄子文件的大小,並且不顯示單位,默認單位是kb
  • du -s /root 參數 -s 就能夠只顯示目錄自己,不顯示子文件子目錄
  • du -sh /root 參數 h 就能夠顯示單位大小,有 kb,MB,GB等
  • du -sh /etc/passwd 和 ls -lh /etc/passwd 同一個文件大小不一致
  • 由於du顯示的是passwd文件佔硬盤大小,單位是塊,ls顯示的是文件實際大小,單位是bit
  • 有些文件數據就算不滿一個塊,也會佔有一個塊的位置,塊的單位比bit大一些
  • 因此一個文件佔硬盤大小有時候會比實際文件大小大一些

磁盤分區

  • 添加一個新的磁盤
  • 虛擬機右鍵,點設置
  • 點擊添加
  • 選擇硬盤,而後下一步
  • 保持默認設置,而後下一步
  • 保持默認設置,而後下一步
  • 磁盤大小設置爲10GB,而後下一步
  • 而後就點完成
  • fdisk -l 顯示目前系統內存在的磁盤
  • 圖片只顯示了一塊32.2GB 的磁盤,並無顯示剛纔建立的磁盤
  • 須要reboot 重啓一下
  • 重啓以後,再使用 fdisk -l 查看一下系統有沒有識別新硬盤
  • 能夠看到,系統已經識別了新硬盤
  • fdisk除了查看系統磁盤有哪些,還能夠對磁盤進行分區
  • 新硬盤的名稱叫作 /dev/sdb,對新硬盤進行操做就須要用到這個名稱
  • 執行 fdisk /dev/sdb , 而後輸入m獲取幫助信息,以下圖
  • 其中比較經常使用的有:n , p , w , d 這四個命令
  • n 是增長新分區,p 是列出來,w 是保存,d 是刪除
  • 使用 p 命令列出磁盤信息,發現沒有任何分區
  • 使用 n 命令新增一個分區
  • 出現兩個選擇,選擇分區類型,p表明主分區類型,e表明擴展分區類型,須要選擇一個類型
  • 用fdisk劃分分區,用一種叫作 MBR 的格式來分區,MBR分區特色,最多支持2TB
  • 超過2TB就不可使用fdisk來劃分分區,MBR只能劃分4個主分區(p分區),不能超過4個
  • 若是想使用超過4個分區的話
  • 能夠劃分3個p分區,劃分一個e分區(擴展分區),而後在e分區裏面劃分邏輯分區,能夠劃分不少
  • 總之,主分區加擴展分區數量之和,不能大於4
  • 先建立一個主分區,輸入 p 回車
  • 選擇分區號,能夠從1-4裏面選擇一個號碼,這裏選擇1
  • 起始扇區默認從 2048 開始,直接回車就好了,2048就是硬盤上的位置
  • 表示從硬盤上的 2048 位置開始分區
  • Last扇區輸入 +2G 而後回車
  • 輸入2G系統會自動計算,從2048位置開始日後增長位置,直到達到2GB硬盤空間爲止
  • 能夠看到,大小爲2G的分區就被建立了
  • 輸入p列出磁盤信息
  • 能夠看到,多出一行分區信息,名稱sdb1,起始位置2048,id 83
  • 刪除分區可使用 d 命令,輸入 d 回車
  • 而後要求輸入分區號碼,想刪除哪一個分區,就輸入那個分區的分區號碼,這裏輸入4
  • 而後4號分區就被刪除了
  • 建立了四個分區,三個主分區,1個擴展分區
  • 能夠看到,主分區的id都是83,擴展分區的id是5,全部主分區id都固定是83,擴展分區固定爲5
  • 分區大小看 blocks 那一列,好比4號分區,大小是 4194304
  • 後三位304的單位是kb,4194的單位是MB,若是從最前面的4開始計算,單位就是GB
  • 已經滿了4個分區,這時候再使用 n 命令,能夠看到,只能添加邏輯分區
  • 使用默認的起始扇區,直接回車
  • last扇區輸入 +1G 回車
  • 使用p命令查看磁盤分區
  • 能夠看到多了一個分區,/dev/sdb5 id也是83
  • 可使用 w 保存退出,也可使用 q 直接退出
  • 區別是,q 直接退出的話,剛纔全部的分區操做都不會保存
  • 從新查看磁盤會發現磁盤沒有被分區,若是使用 w 保存退出,分區操做才能夠被保存
  • 上圖,sdb分了六個分區,從sdb1到sdb6
  • 其中 sdb1,sdb2,sdb3是主分區,sdb4是擴展分區,sdb5,sdb6是邏輯分區
  • 如圖,先刪除1號分區,分區號就是sdb後面跟的數字,1號分區就是sdb1
  • 而後查看分區,發現sdb1被刪除了
  • 而後再刪除一個邏輯分區,5號分區
  • 而後再查看分區
  • 發現6號分區不見了,5號分區還在
  • 其實原來的5號分區已經刪除,而原來的6號分區變成了5號分區
  • 能夠看 Start列 和 End列,這兩列顯示分區在硬盤上的開始和結束的位置
  • 對面上面的圖能夠發現,如今分區5的開始和結束的位置與原來的分區6是同樣的
  • 這就證實如今的分區5就是原來的分區6
  • 若是硬盤沒有主分區,只有一個擴展分區的時候
  • 使用 n 命令新建分區,能夠看到,下面的兩個選項改變了
  • 原本是 p分區 和 e分區的,如今變成了 p分區 和 l分區(邏輯分區)了
  • 若是創建主分區,分區號能夠在1到4之間任意選擇,相互不會有影響
  • 若是創建邏輯分區,如圖,分區號就會從5開始,1-4是屬於p分區和e分區的
  • 邏輯分區必定是從5號開始,並且是連續的
  • 如圖,擴展分區號是1號,主分區號是3號,互相不影響
  • 可是邏輯分區從5號日後必定是連續的,中間不會留空
  • 好比有 5,6,7 三個邏輯分區,而後把6號分區刪除,那麼7號分區會自動填補6號的位置變成6號分區
  • 7號分區變成6號分區雖然名稱變了,可是在硬盤的起始位置是不會變的
  • 擴展分區只有分區號,是不能寫入數據的,只有邏輯分區才佔有真實的空間,才能夠寫入數據
  • 因此創建擴展分區後,並不能直接在擴展分區裏面存放文件
  • 須要先在擴展分區裏面創建邏輯分區,而後才能夠在邏輯分區裏面讀寫文件
相關文章
相關標籤/搜索