1. 程式人生 > >Day04 文本和文件查找&賬戶管理&歸檔(ADMIN04-2)

Day04 文本和文件查找&賬戶管理&歸檔(ADMIN04-2)

有時 最短 echo col str su - network 9.4 use

7.7 find -iname

根據文件名稱查找,忽略大小寫字符,查找條件可用通配符

7.8 find -inum

根據文件的inode查找

7.9 find -maxdepth

限制目錄查找的深度

7.10 find -ok

對每個文件的操作都需要確認

八、用戶賬戶和用戶組賬戶管理

8.1 用戶賬戶的作用

-可以登陸操作系統
-可以進行訪問控制,不同的用戶權限不同

8.2 用戶組賬戶的作用

方便管理賬戶,可以批量對用戶進行相同的權限分配。屬於同一個用戶組的用戶,默認會繼承用戶組的權限。

8.3 用戶賬戶唯一標識

用戶賬戶用uid來表示
註意!root的uid永遠為0 或者換個說法,uid為0的用戶,linux系統就認為它是root

8.4 用戶組賬戶唯一標識

用戶組賬戶用gid來表示

8.5 用戶組賬戶的分類

在linux中,用戶賬戶必須要屬於至少一個組!
基本組(主組):linux自動創建的,和用戶賬戶同名的組
附加組(公共組、從屬組):管理員後來為用戶添加的組

8.6 useradd

創建用戶,uid等於/etc/passwd最後一個普通用戶的uid數值+1
useradd username

8.6.1 useradd -u

指定uid
useradd nsd03 -u 1100 #創建nsd03用戶,指定uid為1100

8.6.2 useradd -s

指定解釋器
useradd nsd04 -s /sbin/nologin #創建nsd04用戶,該用戶不允許登陸系統

8.6.3 useradd -d

指定家目錄
useradd nsd05 -d /home/hehe #創建nsd05用戶時指定用戶家目錄為/home/hehe

8.6.4 useradd -M

不創建家目錄
useradd nsd07 -M

8.6.5 useradd -g

指定基本組
useradd nsd02 -g admin

8.6.6 useradd -G

指定附加組
useradd nsd01 -G nsd08

8.7 id

查看用戶賬戶基本信息
id nsd04 #查看nsd04的基本信息

8.7.1 id -ru

查看當前用戶的UID

8.8 /etc/passwd

用戶賬戶配置文件,記錄系統中的所有用戶
head -1 /etc/passwd

nsd01:x:1001:1001::/home/nsd01:/bin/bash
用戶名:密碼占位符:uid:gid:用戶描述信息:用戶家目錄:解釋器

8.9 passwd

修改密碼
passwd nsd01#修改nsd01用戶的密碼

8.9.1 /etc/shadow

用戶密碼信息配置文件
head -1 /etc/shadow
root:password_hash:16261:0:99999:7:::
用戶名:加密後的密碼:上次修改密碼的時間(16261天,自1970/1/1~當前日期):最短使用時間:最長使用時間:提前7天提醒:::永不失效

8.9.2 passwd --stdin username

非交互式修改密碼
echo 123 | passwd --stdin nsd01#非交互式設置nsd01的密碼為123

8.10 su -

臨時切換用戶身份
su - nsd01

8.11 usermod

修改用戶信息,選項和useradd相同
-u、-g、-G、-s、-d

8.12 userdel

刪除用戶

8.12.1 userdel -r

遞歸刪除,刪除用戶賬戶及用戶家目錄

8.13 /etc/group

用戶組賬戶配置文件
head -1 /etc/group
root:x:0:
組賬戶名:密碼占位符:gid:組成員

8.14 groupadd

創建組賬戶

8.15 gpasswd

把用戶添加到指定組

8.15.1 gpasswd -a

把用戶添加到指定組
gpasswd -a username groupname
gpasswd -a kenji tarena#把kenji加入到tarena組

8.15.2 gpasswd -d

刪除指定組裏面用戶
gpasswd -d kenji tarena

8.15.3 gpasswd -M ‘user1,user2‘ groupname

gpasswd -M ‘kaka,henter‘ tarena
替換組成員

8.16 groupdel

刪除組

九、tar

集成備份工具
優勢:
-節約空間
-方便對零散文檔的管理

9.1 創建壓縮包

tar -zcvf package.tar.gz file1 [file2] [file3]#創建gzip壓縮歸檔包,壓縮速度最快,壓縮比最小
tar -zcvf 筐 蘿蔔 蘋果 香蕉
tar -jcvf package.tar.bz file1 [file2] [file3]#創建bz2壓縮歸檔包,壓縮速度一般,壓縮比一般
tar -Jcvf package.tar.xz file1 [file2] [file3]#創建xz壓縮歸檔包,壓縮速度最慢,壓縮比最大
tar -Pjcf /root/backup.tar.bz2 /usr/local/#創建backup.tar.bz2壓縮包,把/user/local的內容全部放進去,而且保持前面的“/”符號

9.2 解壓縮

tar -xf package.tar.gz -C directory
解壓歸檔文件包到-C指定的目錄內
tar -Pxf package.tar.gz -C directory
保持絕對路徑解壓縮到指定目錄

9.3 查看壓縮包內容

tar -tf package.tar.gz#查看壓縮包裏面的內容
tar -tf package.tar.gz#查看壓縮包裏文件的詳細信息(包括讀寫權限、所有者等)

9.4 添加文件到tar包

tar -rf /mnt/pass.tar.gz haha.txt#添加haha.txt到tar包

9.5 刪除tar包裏面的文件

tar --delete -f mysql.tar minimal.rpm

9.6 解壓單獨文件

tar tf /mnt/pass.tar.gz
tar zxf /mnt/pass.tar.gz haha.txt

十、NTP時間同步

集群節點中經常使用,極其重要
服務端:Linux系統上的一款軟件,提供服務
客戶端:瀏覽器

10.1 簡介

NTP(Network Time Protocol, 網絡時間協議)是由 RFC 1305 定義的時間同步協議,用來在分布式時間服務器和客戶端之間進行時間同步,NTP基於UDP 報文進行傳輸,使用 UDP端口號為 123。
使用 NTP 的目的是對網絡內所有具有時鐘的設備進行時鐘同步,使網絡內所有設備的時鐘保持一致,從而使設備能夠提供基於統一時間的多種應用。
對於運行 NTP 的本地系統,既可以接受來自其他時鐘源的同步,又可以作為時鐘源同步其
他的時鐘,並且可以和其他設備互相同步。

10.1.1 原理

NTP 的基本工作原理如圖 1-1 所示。Device A 和 Device B 通過網絡相連,他們都有自己獨立的系統時鐘,需要通過 NTP 實現各自系統時鐘的自動同步。為便於理解,作如下假設:
在 Device A 和 Device B 的系統時鐘同步之前,DeviceA 的時鐘設定為 10:00:00am,DeviceB 的時鐘設定為 11:00:00am。
設備 B 作為 NTP 時間服務器,即設備 A 將使自己的時鐘與設備 B的時鐘同步。
報文在設備 A 和設備 B 之間單向傳輸所需要的時間是 1 秒
技術分享圖片
系統時鐘同步過程如下:
設備 A 發送一個 NTP 報文給設備 B,該報文帶有它離開設備 A 時的
時間戳,該時間戳為 10:00:00am(T 1 )。
當此 NTP 報文到達設備 B 時,設備 B 加上自己的時間戳,該時間戳
為 11:00:01am(T 2 )。
當此 NTP 報文離開設備 B 時,設備 B 再加上自己的時間戳,改時間戳為 11:00:02(T 3 )。
當設備 A 接收到該響應報文時,設備 A 的本地時間為
10:00:03am(T 4 )。
至此,設備 A 已經擁有足夠的信息來計算兩個重要的參數:
報文的往返時延 Delay=(T 4 -T 1 )-(T 3 -T 2 )=2 秒。
設備 A 相對設備 B 的時間差 offset=((T 2 -T 1 )+(T 3 -T 4 ))/2=1
小時。
這樣,設備 A 就能夠根據這些信息來設定自己的時鐘,使之與設備 B 的時鐘同步。
以上內容只是對 NTP 工作原理的一個粗略描述,更詳細的資料可以參閱 RFC 1305。

10.1.2工作模式

客戶端/服務端模式
對等體模式
廣播模式
組播模式

10.2 chrony

RHEL7客戶端的校時服務軟件包

10.3 /etc/chrony.conf

chrony配置文件
修改配置文件中的服務器地址
server 172.25.254.254 iburst#設置為教學環境的機器
systemctl restart chronyd#重啟chronyd
systemctl enable chronyd#設置chronyd為開機自啟動

10.4 chronyd

chrony系統服務

10.5 timedatectl

查看時間同步狀態

10.5.1 timedatectl set-ntp true

設置啟用ntp同步

10.5.2 timedatectl set-timezone Asia/Shanghai

設置時區為亞洲/上海

十一、cron計劃任務

11.1 用途

按照設置的時間間隔為用戶反復執行某一項固定的系統任務。
軟件包:cronie、contabs

11.2 crond

系統服務名稱

11.3 /var/log/cron

cron的日誌文件

11.4 管理計劃任務命令

11.4.1 crontab -l [-u username]

顯示計劃任務

11.4.2 crontab -e [-u username]

編輯計劃任務

11.4.3 crontab -r [-u username]

刪除計劃任務

11.5 systemctl status 服務名稱

查看服務名稱的狀態

11.5.1 systemctl is-enabled 服務名稱

查看服務是否已經啟動

11.6 crontab字段解釋

          • (‘*‘:匹配任意時間 ‘,‘:不連續的時間 ‘-‘:連續的時間 ‘/n‘:時間頻率;0,7代表周日)
            分 時 日 月 周
            案例:為natasha用戶創建計劃任務,每分鐘把系統當前時間寫入/home/natasha/abc.txt文件裏面
            步驟如下:

            11.6.1 創建natasha用戶

            useradd natasha
            id natasha

            11.6.2 創建/home/natasha/abc.txt,修改用戶owner

            touch /home/natasha/abc.txt
            chown natasha: /home/natasha/abc.txt

            11.6.3 查看命令的絕對路徑

            which date
            /usr/bin/date

            11.6.4 創建計劃任務

            crontab -e -u natasha
            /1 * /usr/bin/date >>/home/natasha/abc.txt

            11.6.5 檢查計劃任務是否成功創建

            crontab -l -u natasha

            11.6.6.測試任務是否執行成功

            watch -n 1 cat /home/natasha/abc.txt

            11.7 watch -n 1 command

            每隔1秒執行command

            11.8 zip -r 壓縮包 被壓縮的文件

            跨平臺壓縮軟件,win和linux都兼容。-r表示把目錄遞歸

            11.9 unzip *.zip [-d]

            解壓zip文件,-d是指定目錄

Day04 文本和文件查找&賬戶管理&歸檔(ADMIN04-2)