馬哥Linux第三周作業

正則表達式 用戶和組管理

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

~]# who | cut -d” ” -f1 | uniq

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

~]# who | tail -1 | cut -d” ” -f1 | id

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

~]# cut -d: -f7 /etc/passwd | uniq -c | sort -n | tail -1

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

~]# sort -t: -k3 -n /etc/passwd | tail -10 | tr “a-z” “A-Z” > /tmp/maxusers.txt

5.取出當前主機的ip地址

~]# ifconfig eno16777728 | egrep -o “inet \<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>”

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

~]# ls /etc/*.conf | tr “a-z” “A-Z” > /tmp/etc.conf

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

~]# ll -d /var/* | wc -l

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

~]# sort -t: -k3 -n /etc/group | head -10 | cut -d: -f1

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

~]# cat fstab issue > /tmp/etc.test

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

groupadd:創建一個新組
格式:groupadd [選項] GROUPNAME
-g GID:指定GID
-r:創建系統組
groupmod:修改組屬性
格式:groupmod [選項] GROUPNAME
-g GID:修改GID
-n NEWNAME:修改組名
groupdel:刪除用戶組
格式:groupdel [選項] GROUPNAME

useradd:創建一個新用戶或更新默認新用戶信息
格式:
useradd [選項] 用戶名
-u UID:指定UID
-g group:指定基本組,此組得事先存在
-c COMMENT:指定注釋信息
-G GROUP1[,GROUP2,…[,GROUPN]]]:指定用戶所屬的附加組,多個組之間用逗號分隔
-d HOMEDIR:以指定作為用戶家目錄,通過復制/etc/skel并重命名實現的;指定的家目錄路徑如果事先存在,則不會為用戶復制環境配置文件,最終家目錄的父目錄必須事先存在
-s SHELL:指定用戶SHELL,可用的所有shell列表為/etc/shells
-r:創建系統用戶
-M:不創建家目錄
-p:設置密碼
注意:創建用戶時的諸多默認設定的配置文件為/etc/login.defs

useradd -D:顯示創建用戶的默認配置
useradd -D [選項]:修改默認選項值
修改的結果保存于/etc/default/useradd

usermod:修改用戶屬性
格式:usermod [選項] 用戶名
-u UID:修改用戶的UID
-g group:修改用戶所屬的基本組,此組得事先存在
-G GROUP1[,GROUP2,…[,GROUPN]]]:修改用戶的附加組,原來的附加組會被覆蓋
-a:將用戶添加到附加組。只能和 -G 選項一起使用,-a在-G前
-c COMMENT:修改注釋信息
-d HOMEDIR:修改用戶的家目錄,用戶原有的文件不會被轉移至新目錄
-m:只能與-d一起使用,用于將原來的家目錄移動為新的家目錄
是將原有的家目錄移動到新的路徑下,新的家目錄路勁不能事先存在
-l NEWNAME:修改用戶名
-s SHELL:修改SHELL
-L:鎖定用戶的密碼,即在文件/etc/shadow中用戶原來的密碼字符串前添加一個“!”
-U:解鎖用戶密碼

userdel:刪除用戶
格式:userdel [選項] 用戶名
-r:刪除用戶時一并刪除其家目錄

passwd:update user’s authentication tokens
格式:passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S] [–stdin] [username]
passwd:修改執行此命令的用戶自己的密碼
passwd USERNAME:修改指定用戶的密碼,但僅root有此權限
-l,-u:鎖定和解鎖用戶
-d:刪除用戶密碼
-e DATE:過期期限,日期
-i DAYS:非活動期限
-n DAYS:密碼的最短使用期限
-x DAYS:密碼的最長使用期限
-w DAYS:警告期限
–stdin:
echo “PASSWORD” | passwd –stdin USERNAME

gpasswd:設置組密碼
組密碼文件為/etc/gshadow
格式:gpasswd [選項] group
-a USERNAME:向組中添加用戶,以此組為附加組
-d USERNAME:從組中移除用戶

newgrp GROUP:臨時切換指定的組為基本組,該組須為此用戶的附加組,如果不是,此組必須有組密碼,否則無法切換;exit切換回來
格式:newgrp [-] [group]
-:會模擬用戶重新登錄以實現重新初始化其工作環境

⑴創建組distro,其GID為2016

~]# groupadd -g 2016 distro

⑵創建用戶mandriva,其ID號為1005,基本組為distro

~]# useradd -u 1005 -g distro mandriva

⑶創建用戶mageia,其ID號為1100,家目錄為/home/linux

~]# useradd -u 1100 -d /home/linux mageia

⑷給用戶mageia添加密碼,密碼為mageedu

~]# echo “mageedu” | passwd –stdin mageia

⑸刪除mandriva,但保留其家目錄

~]# userdel mandriva

⑹創建用戶slackware,其ID號為2002,基本組為distro,附加組為peguin

~]# groupadd peguin;useradd -u 2002 -g distro -G peguin slackware

⑺修改slackware的默認shell為/bin/tcsh

~]# usermod -s /bin/tcsh slackware

⑻為用戶slackware新增附加組admins

方法一:~]# groupadd admins;usermod -a -G admins slackware

方法二:~]# groupadd admins;gpasswd -a slackware admins

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

(0)
歐陽歐陽
上一篇 2017-12-30
下一篇 2017-12-31

相關推薦

  • 學習宣言

     學習計劃:參考N24學習時間與線路圖,盡最大努力完成。 目標:學習好Linux,提升自我價值,找一份待遇好的工作。 宣言:每一次輕易的放棄,都是人生的一處敗筆,為了夢想,加油!

    Linux資訊 2016-10-26
  • 關于 進程和性能監控

            Linux系統狀態的查看及管理工具:     pstree, ps, pidof, pgrep, top, htop, glance,pmap, vmstat, dstat, kill, pkill, job, bg, fg, nohup pstree命…

    系統運維 2016-09-11
  • 第二十一周作業

    1、回顧并詳細總結MySQL的存儲引擎、索引; 常用存儲引擎的對比: 特點 MyISAM InnoDB MEMORY MERGE NDB 存儲限制 有 64TB 有 沒有 有 事務安全 支持 鎖機制 表鎖 行鎖 表鎖 表鎖 行鎖 B樹索引 支持 支持 支持 支持 支持 哈希索引 支持 全文索引 支持 集群索引 支持 數據緩存 支持 支持 支持 索引緩存 支持…

    2017-07-19
  • 周期性計劃任務Cron詳解

    概述 cron 是Linux 或者類 Unix 系統的作業調度程序。利用它,我們可以配置某些命令或者腳本,讓命令和腳本在某個設定的時間內周期性地運行。本文主要以描述了 CentOS 6的cron命令的詳細知識。 了解cron組件 cron程序由程序包cronie提供,我們可以通過rpm -qi cronie查看cronie的信息。 cron 的組件包括: 1…

    Linux干貨 2016-09-18
  • 邏輯卷管理

    邏輯卷管理 一 創建邏輯卷 1 準備分區或硬盤 這里使用/dev/sdb、/dev/sdc兩塊硬盤和/dev/sda9、/dev/sda10兩個分區,大小都為1G,磁盤有限,我也不想這么摳的。 添加分區/dev/sda9、 /dev/sda10 [root@centos7 ~]# fdisk /dev/sda Welcome to fdisk (u…

    Linux干貨 2017-05-02
  • bash特性

    一、命令歷史     概念:shell進程能夠將之前執行過的命令保存記錄下來     存儲位置:         1、命令歷史的文件             使用以下環境變量查看相關參數:     &…

    Linux干貨 2016-09-19
欧美性久久久久