第三周課堂練習

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

[root@myserver ~]# whoami 
root 
[root@myserver ~]# who | cut -d' ' -f1 | sort -u
root

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

[root@myserver ~]# last | head -n 1
root     pts/1        172.16.100.1     Fri Sep  9 21:35   still logged in   
[root@myserver ~]#

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

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

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

[root@myserver ~]# sort -t: -k3 -n /etc/passwd | tail -n 10 | tr 'a-z' 'A-Z' > /tmp/maxusers.txt
[root@myserver ~]# cat /tmp/maxusers.txt 
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
CHRONY:X:996:994::/VAR/LIB/CHRONY:/SBIN/NOLOGIN
SYSTEMD-NETWORK:X:997:995:SYSTEMD NETWORK MANAGEMENT:/:/SBIN/NOLOGIN
SYSTEMD-BUS-PROXY:X:998:996:SYSTEMD BUS PROXY:/:/SBIN/NOLOGIN
POLKITD:X:999:998:USER FOR POLKITD:/:/SBIN/NOLOGIN
KI:X:1001:1001::/HOME/KI:/BIN/BASH
TEST:X:1002:1002::/HOME/TEST:/BIN/BASH

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

[root@myserver ~]# ifconfig | head -n 2 | tail -n 1 
inet 192.168.100.119  netmask 255.255.255.0  broadcast 192.168.100.25

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

[root@myserver ~]# ls /etc/*.conf | tr 'a-z' 'A-Z' > /tmp/etc.conf
[root@myserver ~]# cat /tmp/etc.conf 
/ETC/ASOUND.CONF
/ETC/CHRONY.CONF
/ETC/DNSMASQ.CONF
/ETC/DRACUT.CONF
/ETC/E2FSCK.CONF
/ETC/HOST.CONF
/ETC/KDUMP.CONF
/ETC/KRB5.CONF
/ETC/LD.SO.CONF
/ETC/LIBAUDIT.CONF
/ETC/LIBUSER.CONF
/ETC/LOCALE.CONF
/ETC/LOGROTATE.CONF
/ETC/MAN_DB.CONF
/ETC/MKE2FS.CONF
/ETC/NSSWITCH.CONF
/ETC/NTP.CONF
/ETC/RESOLV.CONF
/ETC/RSYSLOG.CONF
/ETC/SESTATUS.CONF
/ETC/SUDO.CONF
/ETC/SUDO-LDAP.CONF
/ETC/SYSCTL.CONF
/ETC/TCSD.CONF
/ETC/VCONSOLE.CONF
/ETC/YUM.CONF

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

[root@myserver ~]# ls /var/ | wc -l
22

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

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

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

cat /etc/fstab /etc/issue > /tmp/etc.test

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

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

[root@myserver ~]# groupadd -g 2016 distro
[root@myserver ~]# cat /etc/group | tail -n 1
distro:x:2016:

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

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

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

[root@myserver ~]# useradd -d /home/linux -u 1100 mageia
[root@myserver ~]# id mageia
uid=1100(mageia) gid=1100(mageia) groups=1100(mageia)
[root@myserver ~]# ls -l /home/
total 0
drwx------ 2 mageia    mageia 59 Sep 10 00:13 linux

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

[root@myserver ~]# echo "mageedu" | passwd --stdin mageia
Changing password for user mageia.
passwd: all authentication tokens updated successfully.

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

[root@myserver ~]# userdel mandiriva

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

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

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

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

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

[root@myserver ~]# groupadd admins
[root@myserver ~]# usermod -aG admins slackware
[root@myserver ~]# id slackware
uid=2002(slackware) gid=2016(distro) groups=2016(distro),2017(peguin),2018(admins)

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

[root@myserver ~]# passwd -n 3 -x 180 -w 3  slackware
Adjusting aging data for user slackware.
passwd: Success
[root@myserver ~]# !cat
cat /etc/shadow | grep slackware
slackware:!!:17053:3:180:3:::

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

[root@myserver ~]# groupadd clouds
[root@myserver ~]# groupadd nova
[root@myserver ~]# useradd -u 3003 -g clouds -G peguin,nova openstack

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

[root@myserver ~]# useradd -s /bin/nologin mysql
[root@myserver ~]# cat /etc/passwd | tail -n 1
mysql:x:3004:3004::/home/mysql:/bin/nologin

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

[root@myserver ~]# echo "openstack" | passwd --stdin openstack 
Changing password for user openstack.
passwd: all authentication tokens updated successfully.

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

(0)
kirin_13kirin_13
上一篇 2016-09-19 13:47
下一篇 2016-09-19 13:47

相關推薦

  • 批量創建用戶(8月1日作業)

    1、創建用戶gentoo,附加組為bin和root,默認shell為/bin/csh,注釋信息為"Gentoo Distribution" 2、創建下面的用戶、組和組成員關系 名字為admins的組;  用戶natasha,使用admins作為附屬組;  用戶harry,也使用admins作為附屬組 &nbs…

    Linux干貨 2016-08-04
  • PXE

    BootStraping 系統提供 PXE 簡介 PXE(preboot execute environment,預啟動執行環境)是由Intel公司開發的最新技術,工作于Client/Server的網絡模式,支持工作站通過網絡從遠端服務器下載映像,并由此支持通過網絡啟動操作系統,在啟動過程中,終端要求服務器分配IP地址,再用TFTP(trivial file…

    Linux干貨 2016-11-05
  • 權限管理練習題

    權限管理練習題:     1、當用戶xiaoming對/testdir 目錄無執行權限時,意味著無法做哪些操作?         不能cd到該目錄下,不能ls -l訪問目錄里面文件元數據的信息    &nbsp…

    Linux干貨 2016-08-04
  • Leetcode 編程訓練

    Leetcode這個網站上的題都是一些經典的公司用來面試應聘者的面試題,很多人通過刷這些題來應聘一些喜歡面試算法的公司,比如:Google、微軟、Facebook、Amazon之類的這些公司,基本上是應試教育的功利主義。 我做這些題目的不是為了要去應聘這些公司,而是為了鍛煉一下自己的算法和編程能力。因為我開始工作的時候基本沒有這樣的訓練算法和編程的網站,除了…

    Linux干貨 2016-08-15
  • 軟鏈接和硬鏈接的區別

    軟鏈接和硬鏈接的區別 什么是鏈接: 文件都是文件名和數據組成的,在linux中被分成兩部分:數據和元數據。數據是記錄文件的真實內容的地方;元數據是記錄文件屬性的地方:創建者、大小、創建時間等信息。元數據中的inode號這是唯一標識文件身份的屬性。在linux中,文件的inode號可以通過ls –i命令查看。在linux中為了解決文件共享使用,引入了兩種鏈接:…

    Linux干貨 2016-10-20
  • httpd配置

    httpd配置 修改監聽的IP和端口(port) 持久連接 MPM DSO(Dynamic Shared Object) main server的文檔頁面路徑 站點訪問控制 定義站點主頁面 定義路徑別名 設定默認字符集 日志 基于用戶的訪問控制 虛擬主機 httpd狀態頁面 使用壓縮模塊mod_daflate優化速度 基于IP 為每個虛擬主機至少準備一個IP…

    Linux干貨 2016-12-21

評論列表(1條)

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

    位置選錯了,應該選擇網絡22期

欧美性久久久久