第四周作業

Linux系統文件管理使用案例

1、 復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。

首先,利用cp命令將/etc/skel目錄復制為/home/tuser1:

[root@localhost ~]# cp -r /etc/skel /home/tuser1

隨后通過chmod命令對/home/tuser1的權限進行調整:

[root@localhost ~]# chmod go-rwx /home/tuser1/
[root@localhost ~]# ll /home/ | grep tuser1
drwx------.  3 root     root       74 225 17:16 tuser1

2、編輯/etc/group文件,添加組hadoop。

使用vim編輯/etc/group文件,并在最后一行添加相關的組信息,最后再使用groupadd測試hadoop是否已經添加成功:

[root@localhost ~]# vim /etc/group
....
nologin:x:1104:
hadoop:x:1200:
:wq
[root@localhost ~]# groupadd hadoop
groupadd:“hadoop”組已存在

3、手動編輯/etc/passwd文件新增一行,添加用戶hadoop,其基本組ID為hadoop組的id號;其家目錄為/home/hadoop。

使用vim編輯/etc/passwd/,并在最后一行添加相應的用戶信息:

[root@localhost ~]# vim /etc/passwd
hadoop:x:1200:1200::/home/hadoop:/bin/bash
:wq
[root@localhost ~]# id hadoop
uid=1200(hadoop) gid=1200(hadoop) 組=1200(hadoop)

4、復制/etc/skel目錄為/home/hadoop,要求修改hadoop目錄的屬組和其它用戶沒有任何訪問權限。

依舊使用cp命令完成復制操作:

[root@localhost ~]# cp -r /etc/skel/ /home/hadoop
[root@localhost ~]# ll /home/ | grep hadoop
drwxr-xr-x.  3 root     root       74 225 22:46 hadoop

使用chmod命令修改/home/hadoop目錄的權限:

[root@localhost ~]# chmod go-rwx /home/hadoop
[root@localhost ~]# ll -d /home/hadoop
drwx------. 3 root root 74 225 22:46 /home/hadoop

5、修改/home/hadoop目錄及其內部所有文件的屬主為hadoop,屬組為hadoop。

使用chown命令遞歸修改/home/hadoop目錄的屬主和屬組:

[root@localhost ~]# chown -R hadoop:hadoop /home/hadoop
[root@localhost ~]# ll -a /home/hadoop
總用量 16
drwx------.  3 hadoop hadoop   87 225 23:03 .
drwxr-xr-x. 10 root   root   4096 225 22:46 ..
-rw-r--r--.  1 hadoop hadoop   18 225 22:46 .bash_logout
-rw-r--r--.  1 hadoop hadoop  193 225 22:46 .bash_profile
-rw-r--r--.  1 hadoop hadoop  231 225 22:46 .bashrc
-rw-r--r--.  1 hadoop hadoop    0 225 23:03 hadoop
drwxr-xr-x.  4 hadoop hadoop   37 225 22:46 .mozilla

6、顯示/proc/meminfo文件中以大寫或小寫S開頭的行。(多種方式)

第一種方式:

[root@localhost ~]# cat /proc/meminfo | grep -o "^[S|s].*$"
SwapCached:            0 kB
SwapTotal:       3145720 kB
SwapFree:        3145720 kB
Shmem:             10060 kB
Slab:             115384 kB
SReclaimable:      57680 kB
SUnreclaim:        57704 kB

第二種方式:

[root@localhost ~]# grep -i "^s" /proc/meminfo
SwapCached:            0 kB
SwapTotal:       3145720 kB
SwapFree:        3145720 kB
Shmem:             10060 kB
Slab:             115376 kB
SReclaimable:      57680 kB
SUnreclaim:        57696 kB

第三種方式:

[root@localhost ~]# grep "^[sS]" /proc/meminfo
SwapCached:            0 kB
SwapTotal:       3145720 kB
SwapFree:        3145720 kB
Shmem:             10060 kB
Slab:             115376 kB
SReclaimable:      57680 kB
SUnreclaim:        57696 kB

7、顯示/etc/passwd文件中其默認shell為非/sbin/nologin的用戶;

使用grep命令并利用錨定行尾的特性和-v選項找出對應的行,最后用cut命令切割分段:

[root@localhost ~]# grep -v "/sbin/nologin$" /etc/passwd | cut -d':' -f1
root
sync
shutdown
halt
charlie
gentoo
fedora
charlie3
bash
testbash
basher
hadoop

8、顯示/etc/passwd文件中其默認shell為/bin/bash的用戶;

[root@localhost ~]# grep "/bin/bash$" /etc/passwd | cut -d':' -f1
root
charlie
gentoo
fedora
charlie3
bash
testbash
basher
hadoop

9、找出/etc/passwd文件中的一位數或兩位數;

[root@localhost ~]# grep -o "\<[[:digit:]]\{1,2\}\>" /etc/passwd | uniq
0
1
2
3
4
....
42
29
70
72

10、顯示/boot/grub/grub.conf中以至少一個空白字符開頭的行;

root@localhost ~]# grep "^[[:space:]].*" /boot/grub2/grub.cfg
  load_env
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
   set default="${saved_entry}"
  menuentry_id_option="--id"
  menuentry_id_option=""
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
  if [ -z "${boot_once}" ]; then
    saved_entry="${ch
...

11、顯示/etc/rc.d/rc.sysinit文件中以#開頭,后面跟至少一個空白字符,而后又有至少一個非空白字符的行;

[root@localhost ~]# grep "^#[[:space:]]\+[^[:space:]]\+" /etc/rc.d/init.d/functions
# -*-Shell-script-*-
# functions This file contains functions to be used by most or all
#       shell scripts in the /etc/init.d directory.
# Make sure umask is sane
# Set up a default search path.
# Get a sane screen width
# Read in our configuration
# Check if any of $pid (could be plural) are running
# __proc_pids {program} [pidfile]

12、打出netstat -tan命令執行結果中以‘LISTEN’,后或跟空白字符結尾的行;

[root@localhost ~]# netstat -tan | grep "LISTEN[[:space:]]*$"
tcp        0      0 0.0.0.0:139             0.0.0.0:*               LISTEN     
tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:445             0.0.0.0:*               LISTEN     
tcp6       0      0 :::139                  :::*                    LISTEN     
tcp6       0      0 :::21                   :::*                    LISTEN     
tcp6       0      0 :::22                   :::*                    LISTEN     
tcp6       0      0 ::1:631                 :::*                    LISTEN     
tcp6       0      0 ::1:25                  :::*                    LISTEN     
tcp6       0      0 :::445                  :::*                    LISTEN    

13、添加用戶bash, testbash, basher, nologin (此一個用戶的shell為/sbin/nologin),而后找出當前系統上其用戶名和默認shell相同的用戶的信息;

首先使用useradd命令添加相應的用戶:

[root@localhost ~]# useradd bash
[root@localhost ~]# useradd testbash
[root@localhost ~]# useradd basher
[root@localhost ~]# useradd -s /sbin/nologin nologin

然后通過命令找出/etc/passwd中用戶名與默認shell名稱相同的用戶信息:

[root@localhost ~]# grep "^\([[:alpha:]]\+\):.*\1$" /etc/passwd
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
bash:x:2003:2003::/home/bash:/bin/bash
nologin:x:2006:2006::/home/nologin:/sbin/nologin

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

(0)
酒粒酒粒
上一篇 2018-03-23
下一篇 2018-03-24

相關推薦

  • CetnOS6啟動流程以及LVM下的fstab及boot恢復實驗

    centos6啟動流程 主動讀取BIOS,通過CMOS加載硬件信息 ,并進行POST,指定第一個可啟動的設備 ROM:BIOS,Basic Input and Output System,保存著計算機系統最重要的基本輸入輸出程序,系統信息設置,開機加電自檢程序RAM:保存各項參數的設定 讀取第一個可啟動設備MBR的引導加載程序(grub)的啟動信息 MBR:…

    Linux干貨 2017-05-13
  • 文本處理工具

    1.cat 主要三大功能: 1.一次顯示整個文件:cat filename 2.從鍵盤創建一個文件:cat > filename << EOF ….>EOF (只能創建新文件,不能編輯已有文件);cat向已經存在的文件追加內容:cat >> file <<EOF…>EOF 3.將幾…

    2017-07-29
  • 第5周

    1, ~]# grep "^root\>" /etc/passwd | cut -d: -f7 4,~]# ifconfig | grep "\<[0-9][0-9][0-9]\>" 7, ~]# find /var -user root -group mail 8,~]# fin…

    Linux干貨 2016-09-15
  • Linux發展史

    獨白:    先來說說我對Linux的認識吧,用一個成語形容:狗屁不通,想了一下,文明社會還是和諧點比較好,算是聞所未聞吧。15年初從朋友那得知Linxu,沖著他那十幾K的工資還是挺心動的,說實在很仰慕他,有點計算機基礎,自學兩個月出山,當時月薪8k;而我還是拿著3,4k的工資,也沒什么本領,于是找他要了些有關視頻資料,也開始了自學之路,…

    Linux干貨 2017-04-08
  • 緩存需知

    Edit Web緩存核心技術點需知 5.1 HTTP首部控制 5.2 基于新鮮度檢測機制: 2.1 特征1:時間局部性 2.2 特征2:空間局部性 2.3 緩存的優點 2.4 哪類數據應該被緩存 2.5 哪類數據可緩存但不應該被緩存 2.6 緩存命中率決定緩存有效性 2.7 緩存數據生命周期 2.8 緩存處理步驟 2.9 緩存和普通數據讀取的區別 1. 完整…

    Linux干貨 2017-06-01
  • CentOS計劃任務詳解

    一、計劃任務應用場景:        需要每天對服務器上的數據進行備份,但是白天服務器的訪問量較大,服務器承受著較大的壓力,備份任務只能在夜晚服務器較空閑時才能進行?;蛘咝枰R時在某時間點執行一個任務等,都需要用到計劃任務的功能。 二、計劃任務分類:    &…

    Linux干貨 2016-09-09

評論列表(1條)

  • 酒粒
    酒粒 2018-03-24 17:56

    我的天,代碼怎么變成這樣了

欧美性久久久久