N28-第三周博客作業

1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。
2、取出最后登錄到當前系統的用戶的相關信息。
3、取出當前系統上被用戶當作其默認shell的最多的那個shell。
4、將/etc/passwd中的第三個字段數值最大的后10個用戶的信息全部改為大寫后保存至/tmp/maxusers.txt文件中。
5、取出當前主機的IP地址,提示:對ifconfig命令的結果進行切分。
6、列出/etc目錄下所有以.conf結尾的文件的文件名,并將其名字轉換為大寫后保存至/tmp/etc.conf文件中。
7、顯示/var目錄下一級子目錄或文件的總個數。
8、取出/etc/group文件中第三個字段數值最小的10個組的名字。
9、將/etc/fstab和/etc/issue文件的內容合并為同一個內容后保存至/tmp/etc.test文件中。
10、請總結描述用戶和組管理類命令的使用方法并完成以下練習:
(1)、創建組distro,其GID為2016;
(2)、創建用戶mandriva, 其ID號為1005;基本組為distro;
(3)、創建用戶mageia,其ID號為1100,家目錄為/home/linux;
(4)、給用戶mageia添加密碼,密碼為mageedu;
(5)、刪除mandriva,但保留其家目錄;
(6)、創建用戶slackware,其ID號為2002,基本組為distro,附加組peguin;
(7)、修改slackware的默認shell為/bin/tcsh;
(8)、為用戶slackware新增附加組admins;

1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。
[root@magedu ~]# who | cut -d’ ‘ -f1 | sort -u
root

2、取出最后登錄到當前系統的用戶的相關信息。
[root@magedu ~]# who | tail -1
root pts/3 2017-12-18 09:12 (192.168.10.1)

3、取出當前系統上被用戶當作其默認shell的最多的那個shell。
[root@magedu ~]# cut -d’:’ -f7 /etc/passwd | uniq -c | sort -n | tail -1
32 /sbin/nologin

4、將/etc/passwd中的第三個字段數值最大的后10個用戶的信息全部改為大寫后保存至/tmp/maxusers.txt文件中。
[root@magedu tmp]# cat passwd |sort -n -k 3 -t:| tail -n 10 | tr ‘a-z’ ‘A-Z’ >> ./maxuser.txt

5、取出當前主機的IP地址,提示:對ifconfig命令的結果進行切分。
[root@magedu tmp]# ifconfig | grep “inet ” | awk ‘{print $2}’
10.0.2.4
192.168.10.3
127.0.0.1
192.168.122.1

6、列出/etc目錄下所有以.conf結尾的文件的文件名,并將其名字轉換為大寫后保存至/tmp/etc.conf文件中。
[root@magedu ~]# ls /etc/ | grep -E “.conf$” |tr ‘a-z’ ‘A-Z’> /tmp/etc.conf

7、顯示/var目錄下一級子目錄或文件的總個數。
[root@magedu ~]# ls -l /var/ | grep “^d” | wc -l
19

8、取出/etc/group文件中第三個字段數值最小的10個組的名字。
[root@magedu ~]# sort -t”:” -k3 /etc/group | head -10 | awk -F ‘:’ ‘{print $1}’
root
bin
wheel
users
yinqiang
hadoop
qemu
cdrom
usbmuxd
mail

9、將/etc/fstab和/etc/issue文件的內容合并為同一個內容后保存至/tmp/etc.test文件中。
[root@magedu tmp]# cat ./{fstab,issue} > ./etc.test

10、請總結描述用戶和組管理類命令的使用方法并完成以下練習:
命令包括useradd、userdel、usemod、chfn、chsh、chage、passwd、groupadd、groupmod、groupdel、gpasswd、su

創建用戶
useradd等同于adduser,
命令格式:
useradd [options] UserName
命令參數:
-u UID:指定用戶的UID,如果不指定的話,就在最后一個用戶的基礎上+1,useradd創建的第一個賬號的UID為500;
-g GID:指定用戶的GID,即用戶的基本組ID,但是GID要實現存在才可以,也可以直接使用組名
-G GID:指定用戶的額外組,當時GID要實現存在才可以,也可以直接使用組名
-d 目錄:指定用戶的家目錄,這個家目錄最好是不要存在的文件夾,如果目錄已經存在,會出現shell環境變量錯誤
-c 備注:為用戶添加備注信息
-s shell:指定用戶的默認shell,應該指定使用/etc/shells文件中出現的shell類型
-m:創建用戶時,強制給用戶創建家目錄,默認情況下會在/home目錄下創建一個跟用戶名同名的文件夾來作為用戶的家目錄
-M:創建用戶時,不創建用戶家目錄

刪除用戶
userdel:用于刪除用戶,默認情況下會保留用戶的家目錄,如果想連家目錄一起刪除的話,應該使用-r選項
命令格式:
userdel [options] UserName

修改用戶的屬性信息
chsh:修改用戶的默認shell
chfn:修改用戶的備注信息,會依次輸入用戶的名稱、辦公地址、辦公電話、家庭電話

修改用戶的屬性信息
usermod:
命令格式
usermod [options] UserName
命令參數
-a :追加
-u UID:修改用戶的UID
-g GID:修改用戶基本組的GID,也可以直接使用基本組的組名
-G GID:修改用戶的額外組的GID,也可以直接使用基本組的組名,默認狀態下會覆蓋原有的附加組,如果想要添加附加組,請在該選項前加-a選項
-c string:修改用戶的備注信息
-d 目錄:默認不會遷移用戶的家目錄,如果要遷移,請以-m選項一起使用
-s shell:修改用戶的默認shell ,應該指定使用/etc/shells文件中出現的shell類型
-l 名稱:修改用戶的登陸名稱,但是不修改用的UID,GID
-e 時間:修改用戶的過期時間
-f 時間:修改用戶的非活動時間。
-L 用戶名:鎖定用戶賬號
-U 用戶名:將鎖定的用戶賬號進行解鎖

chage:修改用戶的日期屬性
-E:距離1970-1-1號的時間天數,過了這個時間,賬號不可訪問
-I: 設置非活動期限
-m:修改密碼最小使用時間
-M:修改密碼最長使用時間
-W:修改密碼警告時間

查看用戶的相關信息
id 查看用戶的id號
命令格式:
id [options] UserName
命令參數:
-n:只顯示名稱
-u:只顯示用戶的UID
-g:顯示用戶的基本在GID
-G:顯示用戶的額外組的GID

修改用戶密碼

密碼安全性策略:

1、足夠復雜

2、足夠長、盡量交叉使用數字、大寫字母、小寫字母和特殊字符

3、盡量避免使用易猜測的密碼:

4、定期更換

passwd 修改用戶的密碼

命令格式:
passwd [options] 用戶名

說明:普通用戶只能修改自身的密碼,管理員可以設定自身和所有普通用戶的密碼,在設定其他用戶密碼是直接使用passwd 用戶名即可
命令參數:
-l:鎖定用戶
-u:解鎖用戶
-n:設定用戶密碼的最少使用時間
-x:設定用戶密碼的最長使用時間
-w:設定用戶密碼的警告時間
-i:設定用戶密碼的非活動時間
/etc/passwd中的格式
用戶名:密碼占位符:UID:GID(基本組ID):用戶備注信息(多個以,隔開):家目錄:默認shell
/etc/shadow中的格式
用戶名:密碼:最近的一次密碼修改時間距離1970-1-1的時間:最短使用期限:最長使用期限:警告時間:非活動時間(登陸就要修改密碼):賬號的過期期限:預留段

組的管理:
用戶組分為普通組和管理員組,在用戶看來,組可以分為兩類:基本組和額外組,額外組也叫附加組,組的管理和用戶的管理基本類似。

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

[root@magedu tmp]# groupadd –gid 2016 distro

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

[root@magedu home]# useradd -u 1005 -g distro mandriva
[root@magedu home]#
[root@magedu home]#
[root@magedu home]# ls
hadoop mandriva yinqiang
[root@magedu home]# id mandriva
uid=1005(mandriva) gid=2016(distro) groups=2016(distro)

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

[root@magedu home]# useradd -u 1100 -d /home/linux mageia
[root@magedu home]# ls
hadoop linux mandriva yinqiang
[root@magedu home]# id mageia
uid=1100(mageia) gid=1100(mageia) groups=1100(mageia)
[root@magedu home]# cat /etc/passwd | grep mageia
mageia:x:1100:1100::/home/linux:/bin/bash

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

[root@magedu home]# passwd mageia
Changing password for user mageia.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
[root@magedu home]#
[root@magedu ~]# ssh mageia@192.168.10.3

(5)、刪除mandriva,但保留其家目錄;
[root@magedu home]# userdel mandriva

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

[root@magedu ~]# groupadd peguin
[root@magedu ~]# useradd slackware -u 2002 -g distro
[root@magedu ~]# usermod -aG peguin

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

[root@magedu ~]# usermod -s /bin/tcsh slackware

(8)、為用戶slackware新增附加組admins;”
[root@magedu ~]# groupadd admins
[root@magedu ~]# usermod -aG admins slackware
[root@magedu ~]# id slackware
uid=2002(slackware) gid=2016(distro) groups=2016(distro),2017(peguin),2018(admins)

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

(0)
王銀強王銀強
上一篇 2017-12-19 09:21
下一篇 2017-12-19 12:02

相關推薦

  • Puppet基于Master/Agent模式實現LNMP平臺部署

    前言 隨著IT行業的迅猛發展,傳統的運維方式靠大量人力比較吃力,運維人員面對日益增長的服務器和運維工作,不得不把很多重復的、繁瑣的工作利用自動化處理。前期我們介紹了運維自動化工具ansible的簡單應用,本期帶來的是運維自動化神器puppet基于Master/Agent模式實現LNMP平臺部署。 Puppet 簡介 Puppet是基于ruby語言開發的一種L…

    Linux干貨 2015-07-13
  • 數據分析≠Hadoop+NoSQL,不妨先看完善現有技術的10條捷徑

    讓業務搭乘大數據技術確實是件非常有吸引力的事情,而Apache Hadoop讓這個誘惑來的更加的猛烈。Hadoop是個大規??蓴U展數據存儲平臺,構成了大多數大數據項目基礎。Hadoop是強大的,然而卻需要公司投入大量的學習精力及其它的資源。 如果得到正確的應用,Hadoop確實能從根本上提升你公司的業務,然而這條Hadoop的應用之路卻充滿了荊棘。另一個方面…

    Linux干貨 2015-02-25
  • 基礎指令的使用篇3 Linux版

    / /boot /bin /sbin /lib.modules /lib64 /etc/redhat-release /etc/centos-release /home/zczx /mnt /media /misc /proc/meminfo /proc/cpuinfo /proc/partition /sya /opt /tmp /usr/local/ /…

    Linux干貨 2016-08-04
  • MySQL存儲過程中IN、OUT、INOUT參數使用

    MySQL存儲過程中IN、OUT、INOUT參數使用 MySQL存儲過程的參數用在存儲過程的定義,共有三種參數類型,IN、OUT、INOUT形式如:CREATE PROCEDURE([IN|OUT|INOUT] 參數名 數據類型,…) IN 輸入參數:表示該參數的值必須在調用存儲過程時指定,在存儲過程中修改該參數的值不能被返回,為默認值。| 意思…

    Linux干貨 2017-05-08
  • Linux軟件包管理(YUM)及編譯安裝

    YUM 一、yum安裝使用: 1、Yum:rpm的前端程序,用來解決軟件包相關依賴性,可以在多個庫之間定位軟件包,up2date的替代工具 2、yum repository:yum repo,存儲了眾多rpm包,以及包的相關的元數據文件(放置于特定目錄repodata下) 3、yum客戶端配置文件: /etc/yum.conf:為所有倉庫提供公共配置 /et…

    Linux干貨 2016-08-26
  • linux基礎學習-(磁盤管理、分區掛載、SWAP)

    1、磁盤結構 2、分區類型 3、管理分區、文件系統以及掛載設備 4、管理虛擬內存SWAP 一、磁盤結構(機械硬盤) CHS尋址模式將硬盤劃分為磁頭(Heads)、柱面(Cylinder)、扇區(Sector)。 ?heads:磁頭 ?tracks:磁道 ?cylinder: 柱面 ?sector: 扇區,512bytes(最小的存儲單位) 1、其中:每個盤面…

    Linux干貨 2016-09-01

評論列表(1條)

  • 馬哥教育
    馬哥教育 2018-01-02 21:36

    linux用戶的創建和管理很簡單,相反用戶的組管理是值得深入了解了,這個在多文件權限管理的場景中非常重要。

欧美性久久久久