馬哥教育網絡班22期第3周課程作業

1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。

[root@MyCloudServer ~]# who | cut -d " " -f1 |sort -u
root

2、取出最后登錄到當前系統的用戶的相關信息。

[root@MyCloudServer ~]# id `last|head -1|cut -d" " -f1`
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)

3、取出當前系統上被用戶當作其默認shell的最多的那個shell。

[root@MyCloudServer ~]# cat /etc/passwd | cut -d: -f7 | uniq -c |sort -n |tail -1
     11 /sbin/nologin

4、將/etc/passwd中的第三個字段數值最大的后10個用戶的信息全部改為大寫后保存至/tmp/maxusers.txt文件中。

[root@MyCloudServer ~]# cat /etc/passwd |sort -t ":" -k3 -n | tail -10 |tr [a-z] [A-Z] > /tmp/maxusers.txt
[root@MyCloudServer ~]# cat /tmp/maxusers.txt 
FTP:X:14:50:FTP USER:/VAR/FTP:/SBIN/NOLOGIN
VCSA:X:69:69:VIRTUAL CONSOLE MEMORY OWNER:/DEV:/SBIN/NOLOGIN
SSHD:X:74:74:PRIVILEGE-SEPARATED SSH:/VAR/EMPTY/SSHD:/SBIN/NOLOGIN
POSTFIX:X:89:89::/VAR/SPOOL/POSTFIX:/SBIN/NOLOGIN
NOBODY:X:99:99:NOBODY:/:/SBIN/NOLOGIN
SASLAUTH:X:499:499:"SASLAUTHD USER":/VAR/EMPTY/SASLAUTH:/SBIN/NOLOGIN
MAGEIA:X:1100:1100::/HOME/LINUX:/BIN/BASH
SLACKWARE:X:2002:2016::/HOME/SLACKWARE:/BIN/TCSH
OPENSTACK:X:3003:2019::/HOME/OPENSTACK:/BIN/BASH
MYSQL:X:3004:3004::/HOME/MYSQL:/SBIN/NOLOGIN

5、取出當前主機的IP地址,提示:對ifconfig命令的結果進行切分。

[root@MyCloudServer ~]# ifconfig eth0 | sed -n 2p | cut -d: -f2 | grep -o "^[1-9].*[0-9]\>"
103.242.134.158

6、列出/etc目錄下所有以.conf結尾的文件的文件名,并將其名字轉換為大寫后保存至/tmp/etc.conf文件中。

[root@MyCloudServer ~]# ll /etc/*.conf | tr [a-z] [A-Z] >/tmp/etc..conf
[root@MyCloudServer ~]# cat /tmp/etc.conf 
-RW-R--R--  1 ROOT ROOT  519 FEB 22  2013 /ETC/DRACUT.CONF
-RW-R--R--  1 ROOT ROOT    0 FEB 21  2013 /ETC/GAI.CONF
LRWXRWXRWX. 1 ROOT ROOT   22 DEC 21  2011 /ETC/GRUB.CONF -> ../BOOT/GRUB/GRUB.CONF
-RW-R--R--  1 ROOT ROOT    9 OCT 15  2012 /ETC/HOST.CONF
-RW-R--R--  1 ROOT ROOT  449 APR 10  2013 /ETC/KRB5.CONF
-RW-R--R--  1 ROOT ROOT   28 MAY  5  2010 /ETC/LD.SO.CONF
-RW-R-----  1 ROOT ROOT  191 MAR  2  2012 /ETC/LIBAUDIT.CONF
-RW-R--R--  1 ROOT ROOT 2293 APR  5  2012 /ETC/LIBUSER.CONF
-RW-R--R--  1 ROOT ROOT  662 AUG 29  2007 /ETC/LOGROTATE.CONF
-RW-R--R--  1 ROOT ROOT  801 SEP  8  2009 /ETC/MKE2FS.CONF
-RW-R--R--  1 ROOT ROOT 1688 MAY  5  2010 /ETC/NSSWITCH.CONF
-RW-R--R--. 1 ROOT ROOT   38 DEC 21  2011 /ETC/RESOLV.CONF
-RW-R--R--  1 ROOT ROOT 2875 JAN 10  2013 /ETC/RSYSLOG.CONF
-RW-R--R--  1 ROOT ROOT  216 FEB 22  2013 /ETC/SESTATUS.CONF
-RW-R-----  1 ROOT ROOT 1786 SEP 25  2012 /ETC/SUDO.CONF
-RW-R-----  1 ROOT ROOT 3181 JAN 24  2013 /ETC/SUDO-LDAP.CONF
-RW-R--R--. 1 ROOT ROOT 1221 DEC 21  2011 /ETC/SYSCTL.CONF
-RW-R--R--  1 ROOT ROOT  969 FEB 22  2013 /ETC/YUM.CONF

7、顯示/var目錄下一級子目錄或文件的總個數。

[root@MyCloudServer ~]# ll /var/ | wc -l
18

8、取出/etc/group文件中第三個字段數值最小的10個組的名字。

[root@MyCloudServer ~]# cat /etc/group | sort -t ":" -k3 -n | head -10 |cut -d: -f1
root
bin
daemon
sys
adm
tty
disk
lp
mem
kmem

9、將/etc/fstab和/etc/issue文件的內容合并為同一個內容后保存至/tmp/etc.test文件中。

[root@MyCloudServer ~]# cat /etc/fstab /etc/issue > /tmp/etc.test 
[root@MyCloudServer ~]# cat /tmp/etc.test 

#
# /etc/fstab
# Created by anaconda on Wed Dec 21 10:14:22 2011
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/vg_have-lv_root /                       ext4    defaults        1 1
UUID=89b3bd9c-4dd9-4be8-ac92-96f3724db816 /boot                   ext4    defaults        1 2
/dev/mapper/vg_have-lv_swap swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
CentOS release 6.4 (Final)
Kernel \r on an \m

10、請總結描述用戶和組管理類命令的使用方法并完成以下練習:

  1. 用戶管理

    1. 添加用戶

      1. useradd +參數

        1. -u UID 指定用戶的UID

        2. -g GID 指定用戶的基本組,可以是組名也可以是組ID

        3. -G 指定附加組

        4. -d 指定用戶的家目錄

        5. -s 指定shell

        6. -c 指定用戶的注釋信息

        7. -r 創建系統用戶

    2. 修改用戶

      1. usermod+參數

        1. -u 修改UID

        2. -g 修改基本組

        3. -G 修改附加組,會清楚原先的附加組,需要加上-a選項可保留

        4. -s 修改shell

        5. -c 修改用戶的默認注釋信息

        6. -d 修改用戶家目錄

        7. -l 變更用戶名

        8. -L 鎖定指定的用戶

        9. -U解鎖用戶

        10. -e YYYY-MM-DD 設定用戶賬號過期時間

        11. -f 設置賬號的非活動期限

    3. 刪除用戶

      1. userdel 

        1. userdel 刪除用戶

        2. userdel -r 刪除用戶連同家目錄

  2. 組管理

    1. 添加組

      1. groupadd

        1. -g 指定組id

        2. -r 常見系統組

    2. 修改組

      1. groupmod

        1. -n 修改組名

        2. -g 更改組的GID

    3. 刪除組

      1. groupdel刪除指定組

   (1)、創建組distro,其GID為2016;

groupdd -g 2016 distro

   (2)、創建用戶mandriva, 其ID號為1005;基本組為distro;

useradd -u 1005 -g distro mandriva

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

useradd -u 1100 -d /home/linux mageia

   (4)、給用戶mageia添加密碼,密碼為mageedu;

echo "mageedu" | passwd --stdin mageia

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

userdel mandriva

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

useradd -u 2002 -g distro -G peguin /slackware

   (7)、修改slackware的默認shell為/bin/tcsh;

usermod -s /bin/tcsh slackware

   (8)、為用戶slackware新增附加組admins;

usermod -aG admins slackware

   (9)、為slackware添加密碼,且要求密碼最短使用期限為3天,最長為180天,警告為3天;

passwd -n 3 -x 180 -w 3 slackware

   (10)、添加用戶openstack,其ID號為3003, 基本組為clouds,附加組為peguin和nova;

useradd -u 3003 -g clouds -G peguin,nova openstack

   (11)、添加系統用戶mysql,要求其shell為/sbin/nologin;

useradd mysql -s /sbin/nologin

   (12)、使用echo命令,非交互式為openstack添加密碼。

echo "passwd" | passwd --stdin openstack

原創文章,作者:杜邱,如若轉載,請注明出處:http://www.www58058.com/42738

(0)
杜邱杜邱
上一篇 2016-09-19 13:48
下一篇 2016-09-19 13:48

相關推薦

  • Shell——Linux基本命令(2)

    1.Shell Shell是Linux系統的用戶界面,提供了用戶與內核進行交互操作的一種接口。它接收用戶輸入的命令并把它送入內核去執行. shell也被稱為LINUX的命令解釋器(commandinterpreter). vshell是一種高級程序設計語言. 2.bash shell GNUBourne-AgainShell(bash)是GNU計劃中重要的工…

    2017-07-13
  • 第二周練習與作業

    第二周作業 1、Linux上的文件管理類命令有哪些,其常用的使用方法及其相關示例演示          文件管理類命令:cp,mv,rm cp: 源文件;目標文件          [root@loc…

    Linux干貨 2017-08-09
  • ?awk

    awk

    Linux干貨 2016-09-24
  • 解決線上服務器httpd無法反向代理resin的解決方法

    一、簡述   前兩天有后端的小伙伴跟我反映說使用httpd反向代理resin時遇到的問題,在做網站管理后臺的時候,發起的http的put,delete的請求無法經由resin傳遞到后面的dbserver。當時的第一反應就是httpd的反向代理設置出現的問題,但是關于httpd反代resin的內容在網上機會搜索不到。于是,查看httpd反代tomca…

    Linux干貨 2017-01-11
  • ansible 入門與進階

    ansible 入門與進階 Configuration、Command and Control 是什么 ? SSH-based configuration management, deployment, and task execution system 運維工具的分類: agent:基于專用的agent程序完成管理功能,puppet, func, zabb…

    2016-11-09
  • linux 中的 文本處理工具

    文本處理工具  在linux系統中 文本工具有很多 現在具體介紹幾款 如 抽取文本的工具 和文件三劍客  文件內容:less和 cat   文件截?。篽ead和tail   按列抽取:cut   按關鍵字抽?。篻rep egrep 首先 有 查看文件的cat tac  cat [OPTION]&#8…

    Linux干貨 2016-08-11

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-19 18:25

    有的命令可以畫圖來總結一下,那樣會更棒

欧美性久久久久