N26-第三周

1、列出當前系統上所有已經登錄的用戶的用戶名,注意;同一個用戶登錄多次,則只顯示一次即可。
[root@localhost ~]# who
root     tty1         2017-03-03 19:28
root     pts/0        2017-03-03 19:26 (10.1.1.1)
centos   pts/1        2017-03-03 19:37 (10.1.1.1)
user1    pts/2        2017-03-03 19:36 (10.1.1.1)
root     pts/3        2017-03-03 19:38 (10.1.1.1)
[root@localhost ~]# who | cut -d’ ‘ -f1 | sort -u
centos
root
user1

2、取出最后登錄到當前系統的用戶的相關信息。
[root@localhost ~]# who
root     tty1         2017-03-03 19:28
root     pts/0        2017-03-03 19:26 (10.1.1.1)
centos   pts/1        2017-03-03 19:37 (10.1.1.1)
user1    pts/2        2017-03-03 19:36 (10.1.1.1)
root     pts/3        2017-03-03 19:38 (10.1.1.1)
[root@localhost ~]# id $(who | sort -t’:’ -k2 -n |tail -1|cut -d’ ‘ -f1)
uid=0(root) gid=0(root) 組=0(root)

3、取出當前系統上被用戶當做其默認shell的最多的那個shell。
[root@localhost ~]# cat /etc/passwd | cut -d’:’ -f7 | uniq -c | sort -t’ ‘ -k2 -n
      1 /bin/bash
      1 /bin/bash
      1 /bin/sync
      1 /bin/tcsh
      1 /sbin/halt
      1 /sbin/shutdown
      1 /usr/sbin/nologin
      4 /sbin/nologin
      6 /bin/bash
      13 /sbin/nologin
[root@localhost ~]# cat /etc/passwd | cut -d’:’ -f7 | uniq -c | sort -t’ ‘ -k2 -n |
tail -1 | cut -d’ ‘ -f7
/sbin/nologin

4、將/etc/passwd中的第三個字段數值最大的后10個用戶的信息全部改為大寫后保存至/tmp/maxusers.txt中。
[root@localhost ~]# cat /etc/passwd | cut -d’:’ -f1,3 | sort -t’:’ -k2 -n| tail -10| cut -d’:’ -f1|tr [a-z] [A-Z] > /tmp/maxusers.txt
[root@localhost ~]# cat /tmp/maxusers.txt 
SYSTEMD-BUS-PROXY
GENTOO
FEDORA
ABC
CENTOS
USER1
BASH
TESTBASH
BASHER
NOLOGIN

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

[root@localhost ~]# ifconfig | grep “inet\b” 
        inet 192.168.1.35  netmask 255.255.255.0  broadcast 192.168.1.255
        inet 10.1.1.2  netmask 255.255.255.0  broadcast 10.1.1.255
        inet 127.0.0.1  netmask 255.0.0.0
[root@localhost ~]# ifconfig | grep “inet\b” |cut -d’ ‘ -f10
192.168.1.35
10.1.1.2
127.0.0.1

6、取出/etc目錄下所有以.conf結尾的文件的文件名,并將其名字轉換為大寫后保存至/tmp/etc.conf文件中。
YUM.CONF
[root@localhost ~]# ls /etc/ | grep “.conf\b$” | tr [a-z] [A-Z] > /tmp/etc.conf
[root@localhost ~]# cat /tmp/etc.conf 
ASOUND.CONF
DNSMASQ.CONF
DRACUT.CONF
E2FSCK.CONF
HOST.CONF
KDUMP.CONF
KRB5.CONF
LD.SO.CONF
LIBAUDIT.CONF
LIBUSER.CONF
LOCALE.CONF
LOGROTATE.CONF
MAN_DB.CONF
MKE2FS.CONF
NSSWITCH.CONF
RESOLV.CONF
RSYSLOG.CONF
SESTATUS.CONF
SUDO.CONF
SUDO-LDAP.CONF
SYSCTL.CONF
TCSD.CONF
VCONSOLE.CONF
YUM.CONF
7、顯示/var目錄下一級子目錄或文件的總個數。
[root@localhost ~]# ls -A /var/ 
adm    crash  empty  gopher    lib    lock  mail  opt       run    tmp       yp
cache  db     games  kerberos  local  log   nis   preserve  spool  .updated
[root@localhost ~]# ls -A /var/ |wc -l
21

8、取出/etc/group文件中第三個字段數值最小的10個組的名字。
[root@localhost ~]# cat /etc/group | sort -t’:’ -k3 -n |head -10
root:x:0:abc
bin:x:1:
daemon:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mem:x:8:
kmem:x:9:
[root@localhost ~]# cat /etc/group | sort -t’:’ -k3 -n | 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/issue /etc/fstab > /tmp/etc.test
[root@localhost ~]# cat /tmp/etc.test 
\S
Kernel \r on an \m

/etc/fstab

Created by anaconda on Fri Dec 30 03:07:19 2016

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

/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=25d15155-5eb2-4df2-b31e-cf9d79916eeb /boot                   xfs     defaults        0 0
/dev/mapper/centos-home /home                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0

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

    (1)groupadd:添加組;
-g GID:指定GID;默認是上一個組的GID+1;
-r:創建系統組;
    (2)useradd:創建用戶

-u, –uid 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文件;
-r,–system:創建系統用戶;
-M:不為用戶創建主目錄;
-f,–inactivate INACTIVE:密碼過期后,賬戶被徹底禁用之前的天數。0表示立即禁用,-1表示禁用這個功能;
注意:創建用戶時的諸多默認設定配置文件為/etc/login.defs
useradd -D:顯示創建用戶的默認配置;
useradd -D 選項:修改默認選項的值;修改的結果保存于/etc/default/useradd

    (3)passwd:密碼命令
      passwd:修改用戶自己的密碼;
               passwd USERNAME :修改指定用戶的密碼,但默認僅root用戶有此權限;
        -l,-u:鎖定和解鎖用戶密碼;
        -d:清除用戶密碼;
      –stdin:
         echo “PASSWORD” | passwd –stdin USERNAME

    (4)userdel:刪除用戶
userdel [選項] 登錄名
-r:刪除用戶時一并刪除家目錄

    (5)usermod:修改用戶屬性
usermod [選項] 登錄名
-u, –uid UID:指定UID,修改用戶的ID為此處指定的新ID
-g,–gid GROUP:修改用戶所屬的基本組;
-G, –groups GROUP1[,GROUP2,…[,GROUPN]]];修改用戶所屬的附加組,原來的附加組會被覆蓋;
-a,–append;與-G一同使用,用于為用戶追加新的附加組;
-c,–comment COMMENT:修改注釋信息;
-d,–home HOME_DIR;修改以指定路徑為用戶的家目錄;用戶原有的文件不會被轉移至新位置;
-m,–move-home:只能與-d選項一同使用,用于將原來的家目錄移動為新的家目錄;原文件會保留
-l,–login NEW_LOGIN:修改用戶名;
-s,–shell SHELL:修改用戶的默認shell;
-L,–lock:鎖定用戶密碼;即在用戶原來的密碼字符串之前添加一個嘆號;
-U,–unlock;解鎖用戶密碼;

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

[root@localhost ~]# groupadd -g 2016 distro
[root@localhost ~]# tail -1 /etc/group
distro:x:2016:

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

[root@localhost ~]# useradd -u 1005 -g distro mandriva
[root@localhost ~]# tail -1 /etc/passwd
mandriva:x:1005:2016::/home/mandriva:/bin/bash
[root@localhost ~]# id mandriva
uid=1005(mandriva) gid=2016(distro) 組=2016(distro)

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

[root@localhost ~]# useradd -u 1100 -d /home/linux mageia
[root@localhost ~]# tail -1 /etc/passwd
mageia:x:1100:1100::/home/linux:/bin/bash

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

[root@localhost ~]# echo ‘mageedu’ | passwd –stdin mageia
更改用戶 mageia 的密碼 。
passwd:所有的身份驗證令牌已經成功更新。

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

[root@localhost ~]# tail -2 /etc/passwd
mandriva:x:1005:2016::/home/mandriva:/bin/bash
mageia:x:1100:1100::/home/linux:/bin/bash
[root@localhost ~]# userdel mandriva
[root@localhost ~]# ll /home/ | grep mandriva
drwx——. 2     1005 distro   59 3月   4 11:03 mandriva

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

[root@localhost ~]# useradd slackware -u 2002 -g distro -G peguin
[root@localhost ~]# id slackware
uid=2002(slackware) gid=2016(distro) 組=2016(distro),5001(peguin)

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

[root@localhost ~]# tail -1 /etc/passwd
slackware:x:2002:2016::/home/slackware:/bin/bash
[root@localhost ~]# usermod -s /bin/tcsh slackware
[root@localhost ~]# tail -1 /etc/passwd           
slackware:x:2002:2016::/home/slackware:/bin/tcsh

    8、為用戶slackware新增附加組admins;
[root@localhost ~]# usermod -aG admins slackware
[root@localhost ~]# id slackware
uid=2002(slackware) gid=2016(distro) 組=2016(distro),5001(peguin),5004(admins)

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

(0)
徐 琦徐 琦
上一篇 2017-03-04 11:39
下一篇 2017-03-04 20:41

相關推薦

  • ?{ 編譯內核;自制linux; }

    編譯內核、自制linux 自制簡單的linux 前提約定 CentOS 6.8 , Kernel-2.6.32-642.el6.x86_64 基于GRUB – 0.97 / 分區與 boot 分區獨立, /boot 分區 100M+ ,/ 根分區看具體需求,此處為 1G Vmware 12.1,新建一個Li…

    Linux干貨 2016-09-15
  • iptables 實現應用層過濾

        在linux環境中,工作于內核空間的netfilter和工作于用戶空間的iptables共同組成了其功能強大且操作靈活的防火墻系統,對進出主機或內外網之間的流量基于IP地址、通信協議、端口以及連接狀態等進行管控,然而,對于一些使用非固定端口或者通信協議的應用程序,默認是沒有辦法做限制的,比如聊天軟件QQ、下載工具迅雷等,不過我們可…

    Linux干貨 2015-07-10
  • MySQL主從復制: MHA

                    MySQL主從復制: MHA 前言 MHA的架構 環境部署 實驗步驟 總結 前言 上篇文章我們實現了MySQL的主從復制, 但是我們之前就說過, 主從復制是有很多問題的…

    Linux干貨 2016-04-28
  • 學習宣言

    失敗是留給不堅持的人·······

    Linux干貨 2016-12-27
  • nfs

    NFS 服務 : Network File system 網絡文件系統效果: 好像在本機硬盤一樣原理: 當用戶去訪問 映射成本地系統 // 原理 掛載屬性: vsftpd 是應用程序,(內核支持) nfs 是一個文件系統應用: 局域網(最多用于) — 依賴網絡 應用層 app httpd 80 vsftpd 傳輸層 tcp/ipinternet層…

    Linux干貨 2018-02-05
  • raid各級別特性

      簡介 RAID是一個我們經常能見到的名詞。但卻因為很少能在實際環境中體驗,所以很難對其原理 能有很清楚的認識和掌握。本文將對RAID技術進行介紹和總結,以期能盡量闡明其概念。 RAID全稱為獨立磁盤冗余陣列(Rdeundant Array of Independent Disks),基本思想就是把 多個相對便宜的硬盤組合起來,成為一個硬盤陣列組…

    Linux干貨 2016-01-19

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-03-07 15:06

    完成的很好,希望能熟練靈活使用這些基礎命令,加油!

欧美性久久久久