Linux 基礎學習訓練教材 - CentOS 8.x

課程問題參考解答

單純提供一個相對的解答,並不是標準答案!

最近更新時間: 2020/06/11

單純就是個解答的參考,寫完之後再來這邊查查看答案跟你想的一樣不一樣!?

第 10 堂課

  • 例題 10.1.1-1:
    # A. 建立教材說到的,最大的 UID 號碼的帳號
    [root@station5-237 ~]# useradd -u 4294967294  maxuser1
    [root@station5-237 ~]# id maxuser1
    uid=4294967294(maxuser1) gid=1010(maxuser1) groups=1010(maxuser1)
    
    # B. 測試更大的 ID 號碼
    [root@station5-237 ~]# useradd -u 4294967295  maxuser2
    useradd: invalid user ID '4294967295'
    
    # C. 趕緊刪除這個帳號
    [root@station5-237 ~]# userdel -r maxuser1
    
    所以,最大的帳號其實是 4294967294 才對!教材寫的可能是指引~
  • 例題 10.1.1-2:
    1. 先處理強迫使用者修改密碼的手段,其實就是:『讓使用者變更密碼的時間成為史前時代 (1970-01-01之前)』即可!
      # a. 建立一個新的帳號
      [root@station5-237 ~]# useradd check
      [root@station5-237 ~]# echo check123 | passwd --stdin check
      更改使用者 check 的密碼。
      passwd:所有核對代符都已成功更新。
      
      [root@station5-237 ~]# grep check /etc/shadow
      check:$6$PgqI4tYyBNaoTt......k5s6OVYQ1rWj2rfYNrsM1zp.:18393:0:99999:7:::
      
      [root@station5-237 ~]# date +%s
      1589176493
      [root@station5-237 ~]# echo $(( $(date +%s) /(60*60*24) ))
      18393  <==果然就是今天的日期啊!
      
      # b. 修改一下目前 check 這個帳號的密碼修訂時間,變成 1970-01-01 之前的日子!
      
      [root@station5-237 ~]# chage -d 0 check
      [root@station5-237 ~]# grep check /etc/shadow
      check:$6$PgqI4tYyBNaoTt......k5s6OVYQ1rWj2rfYNrsM1zp.:0:0:99999:7:::
      
      # c. 嘗試從 student 變成 check,看看需要輸入密碼的情況變怎樣?
      [student@station5-237 13:59 1 ~]$ su - check
      密碼:  <==這裡輸入 check123 喔!
      You are required to change your password immediately (administrator enforced)  <==提示 root 要求的!
      Current password:  <==舊的密碼
      新 密碼:          <==新的密碼
      再次輸入新的 密碼:<==新的密碼
      
      [check@station5-237 ~]$ exit
      
      透過這個練習,你就知道怎麼強迫用戶變更他自己的密碼的方式了!
    2. 處理無歸屬檔案的方式:
      # a. 用比較『保守』,不會刪除用戶家目錄的方法刪除 check 這個用戶:
      [root@station5-237 ~]# userdel check
      
      [root@station5-237 ~]# ll -d /home/check /var/spool/mail/check
      drwx------. 3 1008 1010 99  5月 11 14:03 /home/check
      -rw-rw----. 1 1008 mail  0  5月 11 13:53 /var/spool/mail/check
      # 果然有無歸屬的檔案檔名存在!
      
      # b. 用 find 找出來無歸屬的檔名與屬性
      [root@station5-237 ~]# man find
      ......
             -nouser
                    No user corresponds to file's numeric user ID.
      
      [root@station5-237 ~]# find /var /home -nouser
      [root@station5-237 ~]# ll -d $(find /var /home -nouser)
      drwx------. 3 1008 1010  99  5月 11 14:03 /home/check
      -rw-------. 1 1008 1010   5  5月 11 14:03 /home/check/.bash_history
      -rw-r--r--. 1 1008 1010  18 11月  9  2019 /home/check/.bash_logout
      -rw-r--r--. 1 1008 1010 141 11月  9  2019 /home/check/.bash_profile
      -rw-r--r--. 1 1008 1010 312 11月  9  2019 /home/check/.bashrc
      drwxr-xr-x. 4 1008 1010  39  2月 26 09:02 /home/check/.mozilla
      drwxr-xr-x. 2 1008 1010   6  5月 14  2019 /home/check/.mozilla/extensions
      drwxr-xr-x. 2 1008 1010   6  5月 14  2019 /home/check/.mozilla/plugins
      -rw-rw----. 1 1008 mail   0  5月 11 13:53 /var/spool/mail/check
      
      # c. 請刪除這幾個無歸屬檔案:
      [root@station5-237 ~]# rm -r $(find /var /home -nouser)
      
    3. 嘗試回答許多問題:
      student:$6$3iq4VYrt$Hg62ID...RVbE/:16849:5:180:7:::
      
      1. 最近修改時間為 16849 這個日期,由日期可以計算出總秒數,再從總秒數去推出日期喔!
        # student:$6$3iq4VYrt$Hg62ID...RVbE/:16849:5:180:7:::
        
        [root@station5-237 ~]# echo $((16849*60*60*24))
        1455753600
        [root@station5-237 ~]# date --date="@$(echo $((16849*60*60*24)))"
        四  2月 18 08:00:00 CST 2016
        
        所以,差不多是 2016 年 2 月 18 日前後!
      2. 那一個日期之前不能修改?這個與後續欄位有關!
        # student:$6$3iq4VYrt$Hg62ID...RVbE/:16849:5:180:7:::
        
        所以是 2/18 之後的 5 日內不能修改,應該是 2016/02/22 (含)之前無法修改喔!
      3. 哪個日期之前最好修改?
        # student:$6$3iq4VYrt$Hg62ID...RVbE/:16849:5:180:7:::
        
        [root@station5-237 ~]# date --date="2016/02/18 + 180days"
        二  8月 16 00:00:00 CST 2016
        
        所以,『大概』是在 2016/08/16 前後需要修改比較好!不要等到最後一天啊!
      4. 因為倒數第二個欄位並沒有日期,因此這個帳號不會失效!倒是密碼會過期!記得要更新!否則系統會強迫你更新!
  • 例題 10.1.2-1:
    # A. 使用 passwd 檢查 testuser1 的密碼狀態
    [root@station5-237 ~]# passwd --help
    用法: passwd [OPTION...] 
      -k, --keep-tokens       保留未過期的驗證代符
      -d, --delete            刪除已有命名帳號的密碼(僅限 root 執行);若有的話也移除密碼鎖定
      -l, --lock              鎖住已命名帳號的密碼 (僅限 root 執行)
      -u, --unlock            解開已命名帳號的密碼鎖定 (僅限 root 執行)
      -e, --expire            讓已命名帳號的密碼過期 (僅限 root 執行)
      -f, --force             強制作業
      -x, --maximum=DAYS      最大密碼有效期限 (僅限 root 執行)
      -n, --minimum=DAYS      最小密碼有效期限 (僅限 root 執行)
      -w, --warning=DAYS      使用者在密碼過期前收到警告的天數 (僅限 root 執行)
      -i, --inactive=DAYS     帳號在密碼過期後即將被停用前的天數 (僅限 root 執行)
      -S, --status            回報已命名帳號上的密碼狀態 (僅限 root 執行)
          --stdin             由 stdin 讀取新的代符(僅限 root 執行)
    
    Help options:
      -?, --help              顯示本說明訊息
          --usage             顯示簡短的使用說明
    
    [root@station5-237 ~]# passwd -S testuser1
    testuser1 PS 2020-05-11 0 99999 7 -1 (密碼已設定,SHA512 加密法。)
    
    # B. 調整最大密碼存活時間從 99999 變成 180 天
    [root@station5-237 ~]# passwd -x 180 testuser1
    調整使用者 testuser1 的期限資料。
    passwd: 成功
    [root@station5-237 ~]# passwd -S testuser1
    testuser1 PS 2020-05-11 0 180 7 -1 (密碼已設定,SHA512 加密法。)
    
    # C. 警告期限從 7 天變成 14 天
    [root@station5-237 ~]# passwd -w 14 testuser1
    調整使用者 testuser1 的期限資料。
    passwd: 成功
    [root@station5-237 ~]# passwd -S testuser1
    testuser1 PS 2020-05-11 0 180 14 -1 (密碼已設定,SHA512 加密法。)
    
    # D. 鎖定這個帳號的密碼使用權限
    [root@station5-237 ~]# passwd -l testuser1
    鎖定使用者 testuser1 的密碼。
    passwd: 成功
    [root@station5-237 ~]# passwd -S testuser1
    testuser1 LK 2020-05-11 0 180 14 -1 (密碼已鎖定。)
    [root@station5-237 ~]# grep testuser1 /etc/shadow
    testuser1:!!$6$80dXJbaTImyTNKKd$pSELDyrLl......f8dYmw3oknrTlIZOQSStgJsFdU1:18393:0:180:14:::
    
    鎖定密碼還挺有趣的!因為密碼欄位的『長度』是固定的,所以,只要密碼欄位長度改變,該密碼就完全無用!因此, 暫時在密碼前面加上兩個 !! 就可以讓該帳號失效了!
  • 例題 10.1.2-2:
    # A. 使用 chage 觀察用戶密碼
    [root@station5-237 ~]# chage --help
    Usage: chage [options] LOGIN
    
    Options:
      -d, --lastday LAST_DAY        set date of last password change to LAST_DAY
      -E, --expiredate EXPIRE_DATE  set account expiration date to EXPIRE_DATE
      -h, --help                    display this help message and exit
      -I, --inactive INACTIVE       set password inactive after expiration
                                    to INACTIVE
      -l, --list                    show account aging information
      -m, --mindays MIN_DAYS        set minimum number of days before password
                                    change to MIN_DAYS
      -M, --maxdays MAX_DAYS        set maximum number of days before password
                                    change to MAX_DAYS
      -R, --root CHROOT_DIR         directory to chroot into
      -W, --warndays WARN_DAYS      set expiration warning days to WARN_DAYS
    
    [root@station5-237 ~]# LANG=C chage -l testuser1
    Last password change                                    : May 11, 2020
    Password expires                                        : Nov 07, 2020
    Password inactive                                       : never
    Account expires                                         : never
    Minimum number of days between password change          : 0
    Maximum number of days between password change          : 180
    Number of days of warning before password expires       : 14
    
    # B. 嘗試修改密碼最大存活時間
    [root@station5-237 ~]# chage -M 365 testuser1
    [root@station5-237 ~]# LANG=C chage -l testuser1
    Last password change                                    : May 11, 2020
    Password expires                                        : May 11, 2021
    Password inactive                                       : never
    Account expires                                         : never
    Minimum number of days between password change          : 0
    Maximum number of days between password change          : 365
    Number of days of warning before password expires       : 14
    
    # C. 警告時限則改為 30 天
    [root@station5-237 ~]# chage -W 30 testuser1
    [root@station5-237 ~]# LANG=C chage -l testuser1
    Last password change                                    : May 11, 2020
    Password expires                                        : May 11, 2021
    Password inactive                                       : never
    Account expires                                         : never
    Minimum number of days between password change          : 0
    Maximum number of days between password change          : 365
    Number of days of warning before password expires       : 30
    
    # D. 使用 usermod 解開密碼鎖定的問題
    [root@station5-237 ~]# usermod --help
    Usage: usermod [options] LOGIN
    
    Options:
      -L, --lock                    lock the user account
      -U, --unlock                  unlock the user account
    ......
    
    [root@station5-237 ~]# usermod -U testuser1
    [root@station5-237 ~]# grep testuser1 /etc/shadow
    testuser1:$6$80dXJbaTImyTNKKd$pSELDyrLl.......f8dYmw3oknrTlIZOQSStgJsFdU1:18393:0:365:30:::
    
    [root@station5-237 ~]# passwd -S testuser1
    testuser1 PS 2020-05-11 0 365 30 -1 (密碼已設定,SHA512 加密法。)
    
  • 例題 10.1.3-1:
    [root@station5-237 ~]# cd ~/bin
    [root@station5-237 bin]# cat > users.txt << eof
    > linuxuser1
    > linuxuser2
    > linuxuser3
    > eof
    [root@station5-237 bin]# cat users.txt
    linuxuser1
    linuxuser2
    linuxuser3
    
    [root@station5-237 bin]# vim account.sh
    #!/bin/bash
    
    users=$( cat users.txt )
    for username in ${users}
    do
            useradd ${username}
            echo ${username} | passwd --stdin ${username}
            chage -d 0 ${username}
    done
    
    [root@station5-237 bin]# chmod a+x account.sh
    [root@station5-237 bin]# account.sh
    更改使用者 linuxuser1 的密碼。
    passwd:所有核對代符都已成功更新。
    更改使用者 linuxuser2 的密碼。
    passwd:所有核對代符都已成功更新。
    更改使用者 linuxuser3 的密碼。
    passwd:所有核對代符都已成功更新。
    
  • 例題 10.1.4-1:
    [root@station5-237 ~]# mkdir /dev/shm/mydir
    [root@station5-237 ~]# touch /dev/shm/myfile
    [root@station5-237 ~]# ll -d /dev/shm/my*
    drwxr-xr-x. 2 root root 40  5月 11 15:54 /dev/shm/mydir
    -rw-r--r--. 1 root root  0  5月 11 15:54 /dev/shm/myfile
    
    # 原因是這樣的! umask 代表移除的權限,所以 022 代表減去 ----w--w-
    由於目錄的 x 很重要,因此目錄的預設權限應該是 rwxrwxrwx ,檔案則應該是 rw-rw-rw-,因此:
    目錄: (rwxrwxrwx) - (----w--w-) ==> rwxr-xr-x
    檔案: (rw-rw-rw-) - (----w--w-) ==> rw-r--r--
    
  • 例題 10.2-1:
    1. 使用 root 管理可以使用 sudo 的用戶:
      [root@station5-237 bin]# visudo
      ## Allow root to run any commands anywhere
      root    ALL=(ALL)       ALL
      student ALL=(ALL)       ALL
      # 增加上面這行就可以了!
      
    2. 使用一般帳號,就是 student 來處理一下 sudo 這個指令的用法:
      # a. 初次使用 sudo 時,才會有提示功能。
      #    而且在第一次輸入密碼後的 5 分鐘內,都可以不用再次輸入密碼
      [student@station5-237 16:55 2 ~]$ sudo grep student /etc/shadow
      
      We trust you have received the usual lecture from the local System
      Administrator. It usually boils down to these three things:
      
          #1) Respect the privacy of others.
          #2) Think before you type.
          #3) With great power comes great responsibility.
      
      [sudo] password for student:  <==這裡輸入 student 自己的密碼!不是 root 的!
      student:$6$unA/8Xw1.tQQaGh6$QfDjurdasF.......bVynh5IOEzVSeo/hEqs/:18343:0:99999:7:::
      [student@station5-237 16:55 3 ~]$
      
      # b. 輸入自己的密碼,而且一直用 root 身份操作系統喔!
      [student@station5-237 16:55 3 ~]$ sudo su -
      [root@station5-237 ~]#
      
      只要在最近執行 sudo 的 5 分鐘內再次使用 sudo 時,就無須重新輸入密碼!系統會假設你還是你!如果超過 5 分鐘以上才又操作 sudo, 那就得要重新輸入一次『使用者自己的密碼』了!
  • 例題 10.2-2:
    1. 先測試一下,沒有權限使用 sudo 的夥伴是怎麼回事?
      [linuxuser1@station5-237 ~]$ id linuxuser1
      uid=1008(linuxuser1) gid=1010(linuxuser1) groups=1010(linuxuser1)
      # 確定沒有加入 wheel 群組喔!
      
      [linuxuser1@station5-237 ~]$ sudo tail /etc/shadow
      [sudo] password for linuxuser1:  <==輸入 linuxuser1 自己的密碼
      linuxuser1 is not in the sudoers file.  This incident will be reported.
      # 肯定的說, linuxuser1 並不在 sudoers 的支援檔案內!
      
    2. 開始以系統管理員的身份處理,讓 linuxuser1 支援 wheel 群組來測試看看:
      [root@station5-237 ~]# usermod -a -G wheel linuxuser1
      [root@station5-237 ~]# id linuxuser1
      uid=1008(linuxuser1) gid=1010(linuxuser1) groups=1010(linuxuser1),10(wheel)
      # 有喔!是有支援的喔!
      
    3. 最終再以 linuxuser1 來測試一下!
      [linuxuser1@station5-237 ~]$ id
      uid=1008(linuxuser1) gid=1010(linuxuser1) groups=1010(linuxuser1),10(wheel) 
      # 務必確定自己能看到!否則請登出後再次登入才會生效!
      
      [linuxuser1@station5-237 ~]$ sudo tail /etc/shadow
      [sudo] password for linuxuser1:
      linuxuser3:$6$3pTauo0YPDkSKXl6$o79.xaYl......gQBdQRkAxFzAgxhgsYrODwtgV31:0:0:99999:7:::
      mailuser1:$6$AwPP4xUtWrY/ADC3$Fes4vW/SV......Isp6m/W3Hyz70QqoEu5OjIBaJ1:18393:0:99999:7:::
      # 是的!確定有支援了!
      
  • 例題 10.3.1-1:
    # A. 找出系統支援 EXT4 檔案系統的磁碟
    [root@station5-237 ~]# df -T | grep -v tmpfs
    Filesystem              Type     1K-blocks    Used Available Use% Mounted on
    /dev/mapper/centos-root xfs       10475520 4730196   5745324  46% /
    /dev/vda2               ext4       1998672  149448   1727984   8% /boot
    /dev/mapper/centos-home xfs        3135488   71160   3064328   3% /home
    
    [root@station5-237 ~]# mount | grep /boot
    /dev/vda2 on /boot type ext4 (rw,relatime,seclabel)
    
    # B. 查詢一下掛載參數為何
    [root@station5-237 ~]# dumpe2fs /dev/vda2 | less
    Filesystem volume name:   
    Last mounted on:          /boot
    Filesystem UUID:          73f13e7b-43c4-43c5-93b4-9e65b962752d
    Filesystem magic number:  0xEF53
    Filesystem revision #:    1 (dynamic)
    Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery 
        extent 64bit flex_bg sparse_super large_file huge_file dir_nlink extra_isize metadata_csum
    Filesystem flags:         signed_directory_hash
    Default mount options:    user_xattr acl
    .....
    # 果然掛載預設就支援 ACL 了!基本上,無須觀察 mount 的結果!
    
  • 例題 10.3.2-1:
    1. 先來建立好群組與帳號
      # a. 設計群組,題目要求要使用系統群組而非一般群組
      [root@station5-237 ~]# groupadd -r myteacher
      [root@station5-237 ~]# groupadd -r mystudent
      [root@station5-237 ~]# egrep 'myteacher|mystudent' /etc/group
      myteacher:x:976:
      mystudent:x:975:  <==會發現, GID 都小於 1000 以下!
      
      # b. 開始建立帳號與密碼
      [root@station5-237 ~]# useradd -G myteacher myteacher1
      [root@station5-237 ~]# useradd -G myteacher myteacher2
      [root@station5-237 ~]# useradd -G myteacher myteacher3
      [root@station5-237 ~]# useradd -G mystudent mystudent1
      [root@station5-237 ~]# useradd -G mystudent mystudent2
      [root@station5-237 ~]# useradd -G mystudent mystudent3
      
      # c. 建立密碼
      [root@station5-237 ~]# echo password | passwd --stdin myteacher1
      Changing password for user myteacher1.
      passwd: all authentication tokens updated successfully.
      ....
      
    2. 開始處理共享目錄的功能
      # a. 先建立 mystudent 群組的共享目錄在 /srv/myshare 目錄下
      [root@station5-237 ~]# cd /srv/
      [root@station5-237 srv]# mkdir myshare
      [root@station5-237 srv]# chgrp mystudent myshare
      [root@station5-237 srv]# chmod 2770 myshare/
      [root@station5-237 srv]# ll -d myshare/
      drwxrws---. 2 root mystudent 6 May 11 21:22 myshare/
      
      # b.c. 讓老師擁有查詢權,但是不能修改 (不用給 w 喔!)
      [root@station5-237 srv]# setfacl -m g:myteacher:rx myshare/
      [root@station5-237 srv]# setfacl -m d:g:myteacher:rx myshare/
      [root@station5-237 srv]# setfacl -m u:myteacher3:- myshare/
      [root@station5-237 srv]# getfacl myshare/
      # file: myshare/
      # owner: root
      # group: mystudent
      # flags: -s-
      user::rwx
      user:myteacher3:---
      group::rwx
      group:myteacher:r-x
      mask::rwx
      other::---
      default:user::rwx
      default:group::rwx
      default:group:myteacher:r-x
      default:mask::rwx
      default:other::---
      
  • 例題 10.4 課後練習
    1. 建立各種群組與帳號資訊
      # a. 建立系統群組
      [root@station5-237 ~]# groupadd -r sysgroup
      [root@station5-237 ~]# grep sysgroup /etc/group
      sysgroup:x:974:
      
      # b. 建立系統帳號
      [root@station5-237 ~]# useradd -r -M -G sysgroup mysysuser1
      [root@station5-237 ~]# useradd -r -M -G sysgroup mysysuser2
      [root@station5-237 ~]# useradd -r -M -G sysgroup mysysuser3
      [root@station5-237 ~]# echo mysystem | passwd --stdin mysysuser1
      [root@station5-237 ~]# echo mysystem | passwd --stdin mysysuser2
      [root@station5-237 ~]# echo mysystem | passwd --stdin mysysuser3
      [root@station5-237 ~]# id mysysuser1
      uid=398(mysysuser1) gid=398(mysysuser1) groups=398(mysysuser1),974(sysgroup)
      # UID/GID 都小於 1000,且支援 sysgroup 這樣!
      
      # c. 建立特定用戶
      [root@station5-237 ~]# mkdir /remote
      [root@station5-237 ~]# useradd -d /remote/mysysuser4 mysysuser4
      [root@station5-237 ~]# ll -d /remote/mysysuser4
      drwx------. 4 mysysuser4 mysysuser4 89 May 11 21:45 /remote/mysysuser4
      [root@station5-237 ~]# echo mysysuser4 | passwd --stdin mysysuser4
      
      # d. 刪除一般用戶,但保留家目錄:
      [root@station5-237 ~]# ll -d /home/linuxuser3
      drwx------. 3 1010 1012 78 May 11 15:50 /home/linuxuser3
      
      # e. 依據上述資料,完成用戶的重建。其中,密碼給予之前預設值
      [root@station5-237 ~]# groupadd -g 1012 linuxuser3
      [root@station5-237 ~]# ll -d /home/linuxuser3
      drwx------. 3 1010 linuxuser3 78 May 11 15:50 /home/linuxuser3
      # 因為 UID/GID 並沒有相同,所以系統無法自動給予正確的 gid,所以要先設定原本的 GID
      
      [root@station5-237 ~]# useradd -u 1010 -g linuxuser3 linuxuser3
      useradd: warning: the home directory already exists.
      Not copying any file from skel directory into it.
      Creating mailbox file: File exists
      [root@station5-237 ~]# ll -d /home/linuxuser3
      drwx------. 3 linuxuser3 linuxuser3 78 May 11 15:50 /home/linuxuser3
      [root@station5-237 ~]# id linuxuser3
      uid=1010(linuxuser3) gid=1012(linuxuser3) groups=1012(linuxuser3)
      # 接下來,指定正確的 UID 號碼與 gid 群組名稱,就可以順利建置這個帳號了!
      
      [root@station5-237 ~]# echo linuxuser3 | passwd --stdin linuxuser3
      
    2. 開始處理權限設定
      # a. 建立共享目錄
      [root@station5-237 ~]# cd /opt
      [root@station5-237 opt]# mkdir sysdir
      [root@station5-237 opt]# chgrp sysgroup sysdir
      [root@station5-237 opt]# chmod 2770 sysdir/
      [root@station5-237 opt]# ll
      drwxrws---. 2 root sysgroup 6 May 11 21:52 sysdir
      
      # b. 設定 mysysuser4 的可查閱權限
      [root@station5-237 opt]# setfacl -m u:mysysuser4:rx sysdir/
      [root@station5-237 opt]# setfacl -m d:u:mysysuser4:rx sysdir/
      [root@station5-237 opt]# getfacl sysdir/
      # file: sysdir/
      # owner: root
      # group: sysgroup
      # flags: -s-
      user::rwx
      user:mysysuser4:r-x
      group::rwx
      mask::rwx
      other::---
      default:user::rwx
      default:user:mysysuser4:r-x
      default:group::rwx
      default:mask::rwx
      default:other::---
      
      # c. 拒絕 mysysuser3 的使用
      [root@station5-237 opt]# setfacl -m u:mysysuser3:- sysdir
      [root@station5-237 opt]# getfacl sysdir/
      # file: sysdir/
      # owner: root
      # group: sysgroup
      # flags: -s-
      user::rwx
      user:mysysuser3:---
      user:mysysuser4:r-x
      group::rwx
      mask::rwx
      other::---
      default:user::rwx
      default:user:mysysuser4:r-x
      default:group::rwx
      default:mask::rwx
      default:other::---
      
修改歷史:
  • 2020/02/25:嘗試直接在課程中加入解答,讓大家有個參考依據。不過,沒事不要來看啊!
  • 2020/03/10:加入了第三章的後課練習部份。
2020/03/02 以來統計人數
計數器
其他連結
環境工程模式篇
鳥園討論區
鳥哥舊站

今日 人數統計
昨日 人數統計
本月 人數統計
上月 人數統計