1. 程式人生 > 其它 >Linux學習歷程(2)

Linux學習歷程(2)

·請總結描述使用者和組管理類命令的使用方法並完成以下練習:

  • 新增賬號:

  useradd 選項 使用者名稱

    • -c comment 指定一段註釋性描述

    • -d 目錄 指定使用者主目錄,如果此目錄不存在,則同時使用-m選項,可以建立主目錄

    • -g 使用者組 指定使用者所屬的使用者組

    • -s Shell檔案 指定使用者的登入Shell

    • -u 使用者號 指定使用者的使用者號,如果同時有-o選項,則可以重複使用其他使用者的標識號

  • 刪除賬號:

    userdel 選項 使用者名稱

    • -f, --force 強制刪除

    • -r, --remove 刪除使用者家目錄和郵箱

 

  • 修改賬號:

usermod 選項 使用者名稱

    • -u UID: 新UID-g GID: 新主組
    • -G GROUP1[,GROUP2,...[,GROUPN]]]:新附加組,原來的附加組將會被覆蓋;若保留原有,則要同時使用-a選項
    • -s SHELL:新的預設SHELL
    • -c 'COMMENT':新的註釋資訊
    • -d HOME: 新家目錄不會自動建立;若要建立新家目錄並移動原家資料,同時使用-m選項
    • -l login_name: 新的名字
    • -L: lock指定使用者,在/etc/shadow 密碼欄的增加 !
    • -U: unlock指定使用者,將 /etc/shadow 密碼欄的 ! 拿掉
    • -e YYYY-MM-DD: 指明使用者賬號過期日期
    • -f INACTIVE: 設定非活動期限,即寬限期
  • 使用者口令管理:

passwd 選項 使用者名稱

    • -l 鎖定口令,即禁用賬號
    • -u 口令解鎖
    • -d 使賬號無口令
    • -f 強迫使用者下次登入時修改口令
    • -x 天數:設定該使用者的密碼有效期

 

  • 新增使用者組:

groupadd 選項 組名

    • -g GID 指定新使用者組的組標識號(GID)。
    • -o 一般與-g選項同時使用,表示新使用者組的GID可以與系統已有使用者組的GID相同。
  • 修改使用者組:

    groupmod 選項 組名

    • -g GID 為使用者組指定新的組標識號。
    • -o 與-g選項同時使用,使用者組的新GID可以與系統已有使用者組的GID相同。
    • -n新使用者組 將使用者組的名字改為新名字
  • 刪除使用者組:
groupdel [options] GROUP
    • -f, --force 強制刪除,即使是使用者的主組也強制刪除組,但會導致無主組的使用者不可用無法登入

 

(1)、建立組distro,其GID為2019;

 

 

(2)、建立使用者mandriva, 其ID號為1005;基本組為distro;

 

(3)、建立使用者mageia,其ID號為1100,家目錄為/home/linux;

 

(4)、給使用者mageia新增密碼,密碼為mageedu,並設定使用者密碼7天后過期

 

 

(5)、刪除mandriva,但保留其家目錄;

 

(6)、建立使用者slackware,其ID號為2002,基本組為distro,附加組peguin;

 

(7)、修改slackware的預設shell為/bin/tcsh;

 

 

(8)、為使用者slackware新增附加組admins,並設定不可登陸。

 


 

·建立使用者user1、user2、user3。在/data/下建立目錄test

(1)、目錄/data/test屬主、屬組為user1

 

(2)、在目錄屬主、屬組不變的情況下,user2對檔案有讀寫許可權

 

(3)、user1在/data/test目錄下建立檔案a1.sh, a2.sh, a3.sh, a4.sh,設定所有使用者都不可刪除1.sh,2.sh檔案,除了user1及root之外,所有使用者都不可刪除a3.sh, a4.sh

 

(4)、user3增加附加組user1,同時要求user1不能訪問/data/test目錄及其下所有檔案

 

(5)、清理/data/test目錄及其下所有檔案的acl許可權

 


 

·統計出/etc/passwd檔案中其預設shell為非/sbin/nologin的使用者個數,並將使用者都顯示出來

 

 

·查出使用者UID最大值的使用者名稱、UID及shell型別

 

·統計當前連線本機的每個遠端主機IP的連線數,並按從大到小排序

 

·編寫指令碼disk.sh,顯示當前硬碟分割槽中空間利用率最大的值

 

·編寫指令碼 systeminfo.sh,顯示當前主機系統資訊,包括:主機名,IPv4地址,作業系統版本,核心版本,CPU型號,記憶體大小,硬碟大小