第三周作業

作業

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

 [root@localhost ~]# who |cut -d" " -f1|sort -u
 root

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

 [gentoo@localhost ~]$ who |tail -1
 root     pts/2        2018-04-04 14:35 (noxx-pc.lan)

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

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

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

  [root@localhost ~]# sort -t : -k 3 -n  /etc/passwd |tail -10 |tr "a-z" "A-Z" > /tmp/maxusers.txt
  [root@localhost ~]# cat /tmp/maxusers.txt
  MARIADB:X:998:997::/HOME/MARIADB:/SBIN/NOLOGIN
  POLKITD:X:999:998:USER FOR POLKITD:/:/SBIN/NOLOGIN
  SLACKWARE:X:1001:1001::/HOME/SLACKWARE:/BIN/TCSH
  FRDORA:X:4002:4002:FEDORA CORE:/HOME/FRDORA:/BIN/SH
  GENTOO:X:4003:5000::/USERS/GENTOO:/BIN/BASH
  FEDORA:X:4004:4004::/USERS/FEDORA:/BIN/BASH
  IEE:X:4005:4005::/HOME/IEE:/BIN/BASH
  EEE:X:4006:4006::/HOME/EEE:/BIN/BASH
  IIE:X:4007:4007::/HOME/IIE:/BIN/BASH
  HADOOP:X:4008:4008::/HOME/HADOOP:/BIN/BASH

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

  [root@localhost ~]# ifconfig eno16777736 | grep "\<inet\>" |cut -d " " -f10
  192.168.9.152

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

  [root@localhost ~]# ls /etc/*.conf |tr "a-z" "A-Z" > /tmp/etc.conf
  [root@localhost ~]# cat /tmp/etc.conf
  /ETC/ASOUND.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/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@localhost ~]# ls -a /var/  |wc -l
   25

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

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

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

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

  #
  # /etc/fstab
  # Created by anaconda on Thu Mar 15 17:27:10 2018
  #
  # 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
  #
  UUID=eb80bf14-5716-4e08-a581-273374986ae5 /                       xfs     defaults        0 0
  UUID=29eda4e7-0b4a-4fc1-a4d0-504e40c73817 /boot                   xfs     defaults        0 0
  UUID=1af2b421-8858-4975-8134-314e7281b937 /home                   xfs     defaults        0 0
  UUID=0d939bb2-1a74-4662-910a-4599cc6c0ded swap                    swap    defaults        0 0
  \S
  Kernel \r on an \m

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

用戶與組管理類命令

  • groupadd:添加組

-g: 指定GID;默認是上一個組加1;

-r: 創建系統組;

  • groupmod:修改組屬性

groupmod [選項] GROUP

  • groupdel:刪除組
  • useradd;- 創建一個新用戶或更新默認新用戶信息
          -u, --uid UID :
          -g, --gid GROUP:指定基本組ID,此組應該事先存在
          -G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:指明用戶所屬的附加組,多個組之間用逗號隔開
          -c, --comment COMMENT:指明注釋信息
          -d, --home HOME_DIR: 以指定的路徑為用戶的家目錄,通過復制/etc/skel此目錄并重命名實現,如果指定的家目錄事先存在,則不會為用戶創建家目錄文件
          -s, --shell SHELL: 用戶的登錄 shell 名,存在的shell保存在/etc/shells
    
          useradd -D :顯示創建用戶的默認配置
    
  • usermod:修改用戶屬性
  • -G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:修改用戶所屬的附加組,原來的附加組會被覆蓋
    -a, --append 與-G一同使用,用于為用戶追加新的附加組;
    -d, --home HOME_DIR:修改用戶的家目錄,原有文件不會轉移到新位置
    -m, --move-home : 只能與-d一同使用,用于將原來的家目錄移動為新的家目錄
    -L, --lock : 鎖定用戶密碼
    -U, --unlock : 解鎖用戶的密碼
    
  • userdel:刪除用戶

    -r: 刪除用戶時一并刪除用戶家目錄

  • passwd:update user’s authentication tokens
     (1) passwd :修改用戶自己的密碼(2)passwd USERNAME: 修改指定用戶的密碼,僅root有此權限    -l, -u :鎖定和解鎖用戶    -d : 清除用戶密碼串        -e DATE: 過期期限,日期        -i DAYS: 非活動期限    --stdin :          echo "PASSWORD" | passwd --stdin USERNAME
  • gpasswd:
     組密碼文件:/etc/gshadow gpasswd [選項] group     -a USERNAME: 向組中添加用戶     -d USERNAME: 從組中移除用戶
  • id: 顯示用戶的真實和有效ID
    -u : 僅顯示有效的UID-g : 僅顯示用戶的基本組ID-G : 僅顯示用戶所屬的所有組的ID-n : 顯示名稱而非ID
  • su 命令:
    登錄式切換:會通過讀取目標用戶的配置文件來重新初始化   su - USERNAME   su -l USERNAME非登錄式切換:   su USERNAME

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

   [root@localhost ~]# groupadd -g 2016 distro

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

   root@localhost ~]# useradd -u 1005 -g distro mandriva

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

   [root@localhost ~]# useradd -u 1100 -d /home/linux mageia

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

   [root@localhost ~]# echo "mageedu" |passwd --stdin mageia

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

   [root@localhost ~]# userdel mandriva

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

   [root@localhost ~]# useradd -u 2002 -g distro -G peguin slackware

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

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

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

 [root@localhost ~]# groupadd admins   ##新建組 [root@localhost ~]# usermod -a -G admins slackware 

 

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

(0)
nininini
上一篇 2018-04-05 11:42
下一篇 2018-04-05 14:41

相關推薦

  • 腳本練習題

    1.使用腳本打印出如下圖形 ************答案一:#!/bin/bash#1.接受一個參數為星星的個數。num=$1 #2.求出總共要打印的行數let lines=num*2 #3.for 循環處理每一行的數據for i in `seq $lines`;do#4.前半個星星處理邏輯if [ $i -le $num ];thenfor j in `s…

    Linux筆記 2018-03-26
  • Week01

    第一周作業

    2018-05-12
  • VM虛擬機克隆中的網絡問題

    使用VM中的虛擬機克隆,可以很方便的搭建一些實驗或生成環境,但在克隆時應注意幾個問題: 1、網絡 一般在克隆后,配置好的網絡地址都會保留,需要重新對克隆的機器更改IP地址和hostname 具體更改方法為: IP地址:使用vi編輯 /etc/sysconfig/network-scripts/ifcfg-eno16777736文件,將ip地址更改為需要的ip…

    Linux筆記 2018-05-08
  • scripts/sign-file.c:25:30: fatal error: openssl/opensslv.h: No such file or directory #include

    scripts/sign-file.c:25:30: fatal error: openssl/opensslv.h: No such file or directory #include

    Linux筆記 2018-05-13
  • Linux命令之date

    語法,選項,參數

    Linux筆記 2018-07-22
  • 加密與安全

    加密與安全 SSH端口轉發 SSH 會自動加密和解密所有 SSH 客戶端與服務端之間的網絡數據。但是,SSH 還能夠將其他 TCP 端口的網絡數據通過 SSH 鏈接來轉發,并且自動提供了相應的加密及解密服務。這一過程也被叫做“隧道”(tunneling),這是因為 SSH 為其他 TCP 鏈接提供了一個安全的通道來進行傳輸而得名。例如,Telnet,SMTP…

    Linux筆記 2018-06-11
欧美性久久久久