第三周

作業

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

#!/bin/bash
# Version:
# Description:
# Author: jerry<jerry@whitehouse>
# Date: 2017/12/15
who | cut -d' ' -f1 | sort | uniq

 

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

#!/bin/bash
#
last -a -i | head -n 1
-i: 主機名不反解,以IP顯示;
-a: 將主機名顯示在最后一行;

 

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

#!/bin/bash
#
cut -d: -f7 /etc/passwd | sort | uniq -c | sort -t' ' -k 1 -r -n | head -n 1 || awk -F: '{array[$NF]++} END {for (i in array) {print i,array[i]}}' /etc/passwd | sort -t' ' -k2 -r | head -n 1

 

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

#!/bin/bash
#
sort -t':' -k3 -n /etc/passwd | tail -n 10 | tr [a-z] [A-Z] | tee /tmp/maxusers.txt

 

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

#!/bin/bash
#
ifconfig | egrep -o '(\<([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>\.?){4}'

 

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

#!/bin/bash
#
ls -d /etc/*.conf | xargs -I {} basename {} | tr 'a-z' 'A-Z' > /tmp/etc.conf

 

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

#!/bin/bash
#
ls /var | wc -l

 

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

#!/bin/bash
#
sort -t':' -k3 -n /etc/group | head | grep -o '^[^:]\+'

 

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

#!/bin/bash
#
cat /etc/fstab /etc/issue | tee /tmp/etc.test

 

10、請總結描述用戶和組管理類命令的使用方法并完成以下練習:
組管理:groupadd、groupmod、groupdel
用戶管理:useradd、usermod、userdel、passwd、gpasswd、newgrp、change、chsh
其它:id、su、finger、which、where、w、who

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

 # groupadd -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;

 # groupadd peguin
 # useradd -u 2002 -g distro -G peguin slackware

 

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

 # usermod -s /bin/tcsh slackware

 

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

 # groupadd admins
 # usermod -a -G admins slackware

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/90124

(2)
逆神陽逆神陽
上一篇 2017-12-15
下一篇 2017-12-16

相關推薦

  • Linux的啟動流程

    啟動流程 ? POST: Power-On-Self-Test,加電自檢,是BIOS功能的一個主要部分。負責完成對CPU、主板、內存、硬盤子系統、顯示子系統、 串并行接口、鍵盤、 CD-ROM光驅等硬件情況的檢測。 ROM: BIOS, Basic Input and Output System,保存著有關計算機系統最重要的基本輸入輸出程序,系統信息設置、 …

    Linux干貨 2016-09-13
  • 服務器故障的解決方法以及基本腳本的編寫

    1,當開機時一直重新啟動怎么辦? 在開機時就如字符界面后按下a鍵然后進入單用戶模式,通過設置 [root@CentOS6 boot]# vim /etc/inittab 這個文件,將里面的開機啟動項改為多用戶模式就可。 # id:3:initdefault: “/etc/inittab” 26L, 884C 講id這項設置完成后重新啟動就好。 2,忘記roo…

    Linux干貨 2017-05-15
  • 推薦-HA專題: 編譯安裝并配置DRBD

    HA專題: 編譯安裝并配置DRBD 前言 實驗環境 DRBD介紹 安裝前準備工作 獲取并編譯安裝DRBD 配置DRBD 分區 配置文件 啟動并設置DRBD 格式化并掛載 驗證冗余性 總結 前言 上篇我們講到使用corosync+pacemaker實現MySQL高可用, 但是NFS容易成為單點故障從而導致數據丟失等嚴重問題, 我們可以使用drbd來實現MySQ…

    Linux干貨 2016-04-12
  • 網絡基礎

    網絡小白一個,針對網絡的基礎知識無從下手,因此本文引用了鳥哥私房菜中的眾多概念性知識,在此謝過,本文主要從OSI七層協議,TCP協議和一些網絡中專業詞匯進行解析,并通過子網掩碼的劃分,網絡接口的配置、路由配置等實例來加深對網絡的理解。 一、OSI七層協議:     OSI七層協議的由來:   由于網絡鏈接過程…

    Linux干貨 2016-09-07
  • linux文件基本權限講解

    linux文件基本權限講解 Linux系統是一種典型的多用戶系統,不同的用戶處于不同的地位,擁有不同的權限。為了保護系統的安全性,Linux系統對不同的用戶訪問同一文件(包括目錄文件)的權限做了不同的規定。 Linux系統中一切都是文件,文件和目錄的所屬與權限——來分別規定所有者、所有組、其余人的讀,寫,執行權限。 在Linux中我們可以使用ll或者ls –…

    Linux干貨 2016-09-05
  • MariaDB數據類型總結

        數據類型是數據的一種屬性,它決定了數據的存儲格式、有效范圍及其它相應的限制。MariaDB的數據類型包括:字符型、整型、浮點值、日期時間型、布爾型及內建類型。 一、字符型     1、CHAR和VARCHAR類型     &nbsp…

    Linux干貨 2015-06-30

評論列表(1條)

  • 馬哥教育
    馬哥教育 2018-01-07 18:09

    內容上基本上沒什么問題~文章中能體現自己的想法會更好~

欧美性久久久久