linux运维初学作业,Linux运维班第二次作业(示例代码)
一、列出當前系統上所有已經登錄的用戶的用戶名(同用戶登錄多次只顯示一次)。
題目并沒有說明取出的用戶名是否允許排序處理,所以可寫成:
# who | cut -d‘ ‘ -f1 | sort -u
二、取出當前系統上被用戶當作其默認shell的最多的那個shell
統計/etc/passwd文件中默認shell出現最多的shell的次數再取出
# cat /etc/passwd | cut -d: -f7 | uniq -c |sort -nr | head -n 1
三、將/etc/passwd中的第三個字段數值最大的后10個用戶的信息全部改寫為大寫后保存至/tmp/maxusers.txt文件中
# cat/etc/passwd | sort -nr -t: -k3 | head -n 10 | tr ‘a-z‘ ‘A-Z‘
> /tmp/maxusers.txt
四、取出當前主機的IP地址,提示:對ifconfig命令的結果進行切分
先取出IP地址的所在行再進行切分
#ifconfig | grep ‘inet[[:space:]].*‘ | cut -d‘ ‘ -f10 | head -n 1
五、顯示/var目錄下一級子目錄或文件的總個數
# tree -L 1 /var |tail -n 1
六、取出/etc/group文件中第三個字段數值最小的10個組的名字
# cat /etc/group | sort -n -t: -k3 | head -n 10 | cut-d‘:‘ -f1
七、將/etc/fstab和/etc/issue文件的內容合并為同一個內容后保存至/tmp/etc.test文件中
# cat /etc/issue >> /tmp/etc.test | cat/etc/fstab >> /tmp/etc.test
八、請總結描述用戶和組管理類命令的使用方法并完成以下練習:
(1)創建組distro,其GID為2016
創建組命令:groupadd
其用法:groupadd [options]... groupname
參數:-g GID,表示指明創建組的組號;
# groupadd -g 2016 distro
(2)創建用戶mandriva,其ID號為1005;基本組為distro
創建用戶命令:useradd
其用法:useradd [options]... username
參數:-u UID,表示指明創建用戶的ID號;
-g GID,表示指明創建用戶的基本組,可為組號或組名;
# useradd -g distro -u 1005 mandriva
(3)創建用戶mageia,其ID號為1100,家目錄為/home/linux;
同使用命令:useradd
參數:-d /path_to_homedir,指定特定路徑為用戶的家目錄;
# useradd -u 1100 -d /home/linux mageia
(4)給用戶mageia添加密碼,密碼為mageedu;
添加或修改用戶密碼命令:passwd
其用法:passwd [options] username
參數:--stdin:從標準輸入接收用戶密碼;
一般通過passwd命令直接跟用戶名(mageia),然后手動輸入兩次密碼以啟用該用
戶的密碼登錄認證;但是這里也可以從標準輸入一次性給用戶設定好密碼:
# echo "mageedu" | passwd--stdin mageia
(5)刪除mandriva,但保留其家目錄;
刪除用戶命令:userdel
其用法:userdel [option]... username
參數:-r:刪除用戶家目錄,不添加該參數默認不刪除;
# userdel mandriva
(6)創建用戶slackware,其ID號為2002,基本組為distro,附加組peguin;
同使用命令:useradd
參數:-u UID:指定用戶ID;
-g GID:指定用戶基本組;
-G GROUP1[,GROUP2,...]:指定用戶附加組;
# useradd -u 2002 -g distro -G peguinslackware
(7)修改slackware的默認shell為/bin/tcsh;
修改用戶屬性命令:usermod
用法:usermod [option] username
參數:-s SHELL,修改用戶的默認shell;
# usermod -s /bin/tcsh slackware
(8)為用戶slackware新增附加組admins;
同使用命令:usermod
參數:-G GROUP1[,GROUP2,...]:給用戶指定新附加組,配合"-a"參數表示
給用戶添加新附加組,原有附加組不會被覆蓋;
# usermod -a -G admins slackware
(9)為slackware添加密碼,且要求密碼最短使用期限為3天,最長為180天,警
告為3天;
設置用戶密碼屬性使用命令:chage
用法:chage [option]... username
參數:-m:表示設定密碼的最小使用天數;
-M:表示設定密碼的最大使用天數;
-W:表示設定密碼失效前提前多少天提示警告信息;
# chage -m 3 -M 180 -W 3 slackware
(10)添加用戶openstack,其ID號為3003,基本組為clouds,附加組為peguin
和nova;
添加用戶使用命令:useradd,與(6)小題類似;
# useradd -u 3003 -g clouds -Gpeguin,nova openstack
(11)添加系統用戶mysql,要求其shell為/sbin/nologin;
使用命令:useradd
參數:-r:表示添加的是系統用戶;
-s SHELL:指明創建用戶的默認shell;
# useradd -s /sbin/nologin -r mysql
(12)使用echo命令,非交互式為openstack添加密碼;
使用命令:passwd,與(4)小題類似;
# echo "open" | passwd--stdin openstack
九、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其他用戶均沒有任何訪問權限
# cp -arf /etc/skel/*/home/tuser1
# chmod -R 600 /home/tuser1
十、顯示/proc/meminfo文件中以大寫或小寫S開頭的行,用兩種方式;
第一種方式:匹配錨定行首為小寫或大寫S開頭的行;
# cat /proc/meminfo | grep ‘^[s,S].*‘
第二種方式:匹配詞首字母為小寫或大寫S開頭的行;
# cat /proc/meminfo | grep ‘\b[s,S].*‘
十一、顯示/etc/passwd文件中其默認shell為非/sbin/nologin的用戶;
# cat /etc/passwd | grep -v‘.*nologin$‘ | cut -d‘:‘ -f1
十二、顯示/etc/passwd文件中默認shell為/bin/bash的用戶;
# cat /etc/passwd | grep ‘.*bash$‘| cut -d‘:‘ -f1
十三、找出/etc/passwd文件中的一位數或兩位數;
# cat /etc/passwd | grep‘\b[0-9]\{1,2\}\b‘
十四、顯示/etc/rc.d/rc.sysinit文件中以#開頭,后面跟至少一個空白字符,而后又有至少一個非空白字符的行;
# cat /etc/rc.d/rc.sysinit |grep ‘^#[[:space:]]\+[^[:space:]]\+‘
十五、打出netstat-tan命令執行結果中以‘LISTEN‘,后或跟空白字符結尾的行;
# netstat -tan | grep‘.*LISTEN\b‘
十六、添加用戶bash,testbash,basher,nologin(此一個用戶的shell為/sbin/nologin),而后找出當前系統上其用戶名和默認shell相同的用戶的信息;
思路:取出行首用戶名和行尾bash名同名的行,將整個錨定行首的關鍵字再在行尾錨定一次即可
# useradd bash
# useradd testbash
# useradd basher
# useradd -s /sbin/nologin nologin
# cat /etc/passwd | grep‘\(^[a-z][^:]\+\).*\1$‘
總結
以上是生活随笔為你收集整理的linux运维初学作业,Linux运维班第二次作业(示例代码)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux星期六字符,linux she
- 下一篇: linux shell顺序执行,shel