馬哥教育網絡班21期+第三周課程練習

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

[root@localhost ~]# who
root     pts/0        2016-07-29 07:51 (192.168.0.15)
root     pts/1        2016-07-29 07:54 (192.168.0.15)
centos   pts/2        2016-07-29 07:55 (192.168.0.15)
[root@localhost ~]# who | cut -d' ' -f1 | sort -u
centos
root

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

[root@localhost ~]# who | tail -1
centos   pts/2        2016-07-29 07:55 (192.168.0.15)

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

[root@localhost ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
avahi-autoipd:x:170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
libstoragemgmt:x:998:997:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
chrony:x:997:996::/var/lib/chrony:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
centos:x:1000:1000:centos:/home/centos:/bin/bash
[root@localhost ~]# cut -d: -f7 /etc/passwd |sort |  uniq -cd | tail -1
     20 /sbin/nologin

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

[root@localhost ~]# sort -t: -k3 -n /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
avahi-autoipd:x:170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
chrony:x:997:996::/var/lib/chrony:/sbin/nologin
libstoragemgmt:x:998:997:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
centos:x:1000:1000:centos:/home/centos:/bin/bash
[root@localhost ~]# sort -t: -k3 -n /etc/passwd | tail -n 10 | tr 'a-z' 'A-z' >/tmp/etc.conf
[root@localhost ~]# cat /tmp/etc.conf
SSHD:X:74:74:PRIVILEGE-SEPARATED SSH:/VAR/EMPTY/SSHD:/SBIN/NOLOGIN
DBUS:X:81:81:SYSTEM MESSAGE BUS:/:/SBIN/NOLOGIN
POSTFIX:X:89:89::/VAR/SPOOL/POSTFIX:/SBIN/NOLOGIN
NOBODY:X:99:99:NOBODY:/:/SBIN/NOLOGIN
AVAHI-AUTOIPD:X:170:170:AVAHI IPV4LL STACK:/VAR/LIB/AVAHI-AUTOIPD:/SBIN/NOLOGIN
ABRT:X:173:173::/ETC/ABRT:/SBIN/NOLOGIN
CHRONY:X:997:996::/VAR/LIB/CHRONY:/SBIN/NOLOGIN
LIBSTORAGEMGMT:X:998:997:DAEMON ACCOUNT FOR LIBSTORAGEMGMT:/VAR/RUN/LSM:/SBIN/NOLOGIN
POLKITD:X:999:998:USER FOR POLKITD:/:/SBIN/NOLOGIN
CENTOS:X:1000:1000:CENTOS:/HOME/CENTOS:/BIN/BASH
[root@localhost ~]#

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

[root@localhost ~]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.78  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::20c:29ff:fe7a:f237  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:7a:f2:37  txqueuelen 1000  (Ethernet)
        RX packets 25750  bytes 1924827 (1.8 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2063  bytes 238959 (233.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 139  bytes 12224 (11.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 139  bytes 12224 (11.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@localhost ~]# ifconfig | head -n2 |tail -n1 | cut -d' ' -f10
192.168.0.78

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

[root@localhost ~]# ls /etc/*.conf
/etc/asound.conf   /etc/krb5.conf       /etc/nsswitch.conf   /etc/sysctl.conf
/etc/chrony.conf   /etc/ld.so.conf      /etc/resolv.conf     /etc/tcsd.conf
/etc/dnsmasq.conf  /etc/libaudit.conf   /etc/rsyncd.conf     /etc/updatedb.conf
/etc/dracut.conf   /etc/libuser.conf    /etc/rsyslog.conf    /etc/usb_modeswitch.conf
/etc/e2fsck.conf   /etc/locale.conf     /etc/sestatus.conf   /etc/vconsole.conf
/etc/fprintd.conf  /etc/logrotate.conf  /etc/sos.conf        /etc/yum.conf
/etc/host.conf     /etc/man_db.conf     /etc/sudo.conf
/etc/kdump.conf    /etc/mke2fs.conf     /etc/sudo-ldap.conf
[root@localhost ~]# ls /etc/*.conf | cut -d'/' -f3 | tr 'a-z' 'A-Z' >> /tmp/etc.conf
[root@localhost ~]# cat /tmp/etc.conf
SSHD:X:74:74:PRIVILEGE-SEPARATED SSH:/VAR/EMPTY/SSHD:/SBIN/NOLOGIN
DBUS:X:81:81:SYSTEM MESSAGE BUS:/:/SBIN/NOLOGIN
POSTFIX:X:89:89::/VAR/SPOOL/POSTFIX:/SBIN/NOLOGIN
NOBODY:X:99:99:NOBODY:/:/SBIN/NOLOGIN
AVAHI-AUTOIPD:X:170:170:AVAHI IPV4LL STACK:/VAR/LIB/AVAHI-AUTOIPD:/SBIN/NOLOGIN
ABRT:X:173:173::/ETC/ABRT:/SBIN/NOLOGIN
CHRONY:X:997:996::/VAR/LIB/CHRONY:/SBIN/NOLOGIN
LIBSTORAGEMGMT:X:998:997:DAEMON ACCOUNT FOR LIBSTORAGEMGMT:/VAR/RUN/LSM:/SBIN/NOLOGIN
POLKITD:X:999:998:USER FOR POLKITD:/:/SBIN/NOLOGIN
CENTOS:X:1000:1000:CENTOS:/HOME/CENTOS:/BIN/BASH



ASOUND.CONF
CHRONY.CONF
DNSMASQ.CONF
DRACUT.CONF
E2FSCK.CONF
FPRINTD.CONF
HOST.CONF
KDUMP.CONF
KRB5.CONF
LD.SO.CONF
LIBAUDIT.CONF
LIBUSER.CONF
LOCALE.CONF
LOGROTATE.CONF
MAN_DB.CONF
MKE2FS.CONF
NSSWITCH.CONF
RESOLV.CONF
RSYNCD.CONF
RSYSLOG.CONF
SESTATUS.CONF
SOS.CONF
SUDO.CONF
SUDO-LDAP.CONF
SYSCTL.CONF
TCSD.CONF
UPDATEDB.CONF
USB_MODESWITCH.CONF
VCONSOLE.CONF
YUM.CONF
[root@localhost ~]#

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

[root@localhost ~]# ls /var
123s       account  crash  games     lib    log       nis       run        tmp
12bn       adm      db     gopher    local  mail      opt       sdf34ds.d  var
4321331.d  cache    empty  kerberos  lock   mwrf34sd  preserve  spool      yp
[root@localhost ~]# ls /var | wc -w
27

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

[root@localhost ~]# sort -t':' -k3  -n /etc/group
root:x:0:
bin:x:1:
daemon:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mem:x:8:
kmem:x:9:
wheel:x:10:
cdrom:x:11:
mail:x:12:postfix
man:x:15:
dialout:x:18:
floppy:x:19:
games:x:20:
slocate:x:21:
utmp:x:22:
tape:x:30:
utempter:x:35:
ntp:x:38:
video:x:39:
dip:x:40:
ftp:x:50:
lock:x:54:
tss:x:59:
audio:x:63:
tcpdump:x:72:
sshd:x:74:
dbus:x:81:
postfix:x:89:
postdrop:x:90:
nobody:x:99:
users:x:100:
stapusr:x:156:
stapsys:x:157:
stapdev:x:158:
avahi-autoipd:x:170:
abrt:x:173:
systemd-journal:x:190:
chrony:x:996:
libstoragemgmt:x:997:
polkitd:x:998:
ssh_keys:x:999:
centos:x:1000:centos
[root@localhost ~]# sort -t':' -k3  -n /etc/group | head -n 10
root:x:0:
bin:x:1:
daemon:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mem:x:8:
kmem:x:9:
[root@localhost ~]#

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

[root@localhost ~]# cat /etc/{fstab,issue}

#
# /etc/fstab
# Created by anaconda on Tue Jul 19 09:04:53 2016
#
# 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/centos-root /                       xfs     defaults        0 0
UUID=ea625619-a0c9-4173-9636-7edc34495127 /boot                   xfs     defaults        0 0
/dev/mapper/centos-home /home                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0
\S
Kernel \r on an \m

[root@localhost ~]# cat /etc/{fstab,issue} > /tmp/etc.test
[root@localhost ~]# cat /tmp/etc.test

#
# /etc/fstab
# Created by anaconda on Tue Jul 19 09:04:53 2016
#
# 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/centos-root /                       xfs     defaults        0 0
UUID=ea625619-a0c9-4173-9636-7edc34495127 /boot                   xfs     defaults        0 0
/dev/mapper/centos-home /home                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0
\S
Kernel \r on an \m

[root@localhost ~]#

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

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

[root@localhost ~]# groupadd -g 2016 distro
[root@localhost ~]# tail -1 /etc/group
distro:x:2016:
[root@localhost ~]#

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

[root@localhost ~]# useradd -u 1005 -g distro mandriva
[root@localhost ~]# id mandriva
uid=1005(mandriva) gid=2016(distro) 組=2016(distro)
[root@localhost ~]#

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

[root@localhost ~]# useradd -u 1100 -d /home/linux mageia
[root@localhost ~]# tail -1 /etc/passwd
mageia:x:1100:1100::/home/linux:/bin/bash

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

[root@localhost ~]# echo "mageedu" | passwd --stdin mageia
更改用戶 mageia 的密碼 。
passwd:所有的身份驗證令牌已經成功更新。
[root@localhost ~]# tail -1  /etc/shadow
mageia:$6$u0zShA1C$I3QmD4888nubVFZOiXn5.3YyuPlHo6uwJhrJ4SzdONP9ylR5gfjrRVSmWZ5ggTUkdg3FbJuSABqlcuSaN3I78/:17011:0:99999:7:::
[root@localhost ~]#

   

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

[root@localhost ~]# userdel mandriva | ls /home
centos  linux  mandriva  user1

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

[root@localhost ~]# groupadd peguin
[root@localhost ~]# useradd -u 2002 -g distro -G peguin slackware
[root@localhost ~]# id slackware
uid=2002(slackware) gid=2016(distro) 組=2016(distro),2017(peguin)
[root@localhost ~]#

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

[root@localhost ~]# usermod -s /bin/tcsh slackware
[root@localhost ~]# tail -1 /etc/passwd
slackware:x:2002:2016::/home/slackware:/bin/tcsh
[root@localhost ~]#

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

[root@localhost ~]# groupadd admins
[root@localhost ~]# usermod -a -G admins slackware
[root@localhost ~]# id slackware
uid=2002(slackware) gid=2016(distro) 組=2016(distro),2017(peguin),2018(admins)
[root@localhost ~]#

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

[root@localhost ~]# echo "slackware1" | passwd --stdin slackware
更改用戶 slackware 的密碼 。
passwd:所有的身份驗證令牌已經成功更新。
[root@localhost ~]# passwd -n3 -x180 -w3 slackware
調整用戶密碼老化數據slackware。
passwd: 操作成功
[root@localhost ~]# tail -1 /etc/shadow
slackware:$6$o513PfmL$0BCpZ7aDNiOkD/0Nmh1tiYtqTmpsrxLgfQBuH71OkUSr2347r7sUcmLOe4C1/RBnymiJpCbqKuXu6gpfwr.VC0:17011:3:180:3:::

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

[root@localhost ~]# useradd -u 3003 -g clouds -G peguin,nova openstack
[root@localhost ~]# id openstack
uid=3003(openstack) gid=2019(clouds) 組=2019(clouds),2017(peguin),2020(nova)
[root@localhost ~]#

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

[root@localhost ~]# useradd -s /sbin/nologin mysql
[root@localhost ~]# tail -1 /etc/passwd
mysql:x:2003:2003::/home/mysql:/sbin/nologin
[root@localhost ~]#

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

[root@localhost ~]# echo "openstack" | passwd --stdin openstack
更改用戶 openstack 的密碼 。
passwd:所有的身份驗證令牌已經成功更新。
[root@localhost ~]# tail -1 /etc/shadow
openstack:$6$NvniyGpF$lAM7m7UiOv7k5uwpAkOqqJ.BHkCSO9FffWP3Vx5jHV2Z6afZzl7YrXii1Eq1UyTGsPgpfY/q/wj57QOCPQPnE0:17012:0:99999:7:::
[root@localhost ~]#

原創文章,作者:N21-3分之1,如若轉載,請注明出處:http://www.www58058.com/26446

(0)
N21-3分之1N21-3分之1
上一篇 2016-08-02
下一篇 2016-08-02

相關推薦

  • Linux的發展史和Linux的終端類型

    Linux的發展史和Linux的終端類型 前言:    隨著時代的發展,Linux所占的市場份額越來越大,目前幾乎百分之九十的服務器市場都被Linux占據。接下來我們來聊聊Linux的發展史。 簡單的說:Linux操作系統是1998年的8月芬蘭的一個叫Linus Torvalds的大學生寫出來的一個類minix的系統。 具體分析: Lin…

    Linux干貨 2016-10-17
  • 馬哥教育網絡班21期+第五周課程練習

    第五周作業 1、顯示/boot/grub/grub.conf中以至少一個空白字符開頭的行; cat /boot/grub/grub.conf  | grep "^[[:space:]]\+" 2、顯示/etc/rc.d/rc.sysinit文件中以#開頭,后面跟至少一個空白字符,而后又有至…

    Linux干貨 2016-10-17
  • 進程和計劃任務

    進程概念: 進程與程序的區別:進程是一個動態的概念,具有生命期,而程序是靜態的表現為一個文件,一個程序可對應多個進程 內核的功用:進程管理、文件系統、網絡功能、內存管理、驅動程序、安全功能等 Process: 運行中的程序的一個副本,是被載入內存的一個指令集合 進程ID(Process ID,PID)號碼被用來標記各個進程 UID、GID、和SELinux語…

    2018-05-10
  • 文件管理

    compress:壓縮命令 -d:解壓縮(=uncompress) -c:結果輸出到標準輸出,不刪除原文件 -v:顯示詳情 zcat:不解壓文件查看內容   gzip:壓縮命令 -d:解壓縮 -c:結果輸出到標準輸出,不刪除原文件 -#:1-9代表壓縮比,默認為6 zcat:不解壓文件查看內容   bzip2:壓縮命令 -k:保留原文件 …

    Linux干貨 2016-08-18
  • linux命令格式及基礎命令

    linux命令格式及基礎命令介紹 命令格式 command [options] [arguments] * command:命令 * options: –單詞 或 -單字 * argument:參數(檔案名稱或其他) 基礎命令介紹 ifconfig 用于顯示或設置網絡設備 語法 ifconfig [網絡設備][down up -allmulti -arp …

    Linux干貨 2017-12-03
  • Linux的哲學思想和文件系統

    Linux的哲學思想 Linux是一個自由的操作系統,其內部也有著自己獨特的一些特定的規則,就是我們所說的關于Linux的哲學思想。 Linux系統的哲學思想 1.一切皆文件:Linux系統把幾乎所有的系統資源全部都抽象為文件形式,包括硬件設備,甚至通信的接口都是以文件形式存在的。 2.Linux系統是由許許多多的小程序組成的,這些小程序的功能性單一,組合這…

    Linux干貨 2016-11-01

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-02 11:53

    寫的很好,排版也很棒,加油

欧美性久久久久