linux學習兩週總結

linux兩週學習總結

兩週學習的基礎內容比較多,在這裏就挑一些重難點簡單說一下,網上linux基礎學習的資料也比較多,就不講那麼詳細了,算是對自己一個小的總結吧。 另外跑步堅持的還可以,希望能成爲習慣,最後就是在學習中經常會有開小差的毛病,希望能改掉吧

一、第一個重難點就是權限問題,簡單終結一下

如:-rwxrw-r--. 1 root root 30 Mar 14 13:41 f1
1.第一個字符代表文件(-)、目錄(d),鏈接(l)
2其餘字符每3個一組(rwx),讀(r)、寫(w)、執行(x)
3第一組rwx:文件所有者的權限是讀、寫和執行
4第二組rw-:與文件所有者同一組的用戶的權限是讀、寫但不能執行
3第三組r--:不與文件所有者同組的其他用戶的權限是讀不能寫和執行
也可用數字表示爲:r=4,w=2,x=1 因此rwx=4+2+1=7
root 表示用戶
root表示用戶所在的組
30表示文件大小(字節)
Mar 14 13:41表示最後修改日期
f1表示文件名

修改文件權限
chmod [OPTION]... OCTAL-MODE FILE...
-R: 遞歸修改權限
chmod [OPTION]... MODE[,MODE]... FILE...
MODE:
修改一類用戶的所有權限
u= g= o= ug= a= u=,g=
修改一類用戶某位或某些位權限
u+ u- g+ g- o+ o- a+ a- + -
chmod [OPTION]... --reference=RFILE FILE...
參考RFILE文件的權限,將FILE的修改爲同RFILE

這是一些簡單的權限問題,不難理解,然後說一說acl權限
作用是爲了防止權限不夠用的情況,一般的權限有所有者、所屬組、其他人這三種,當這三種滿足不了我們的需求的時候就可以使用ACL權限
ACL:Access Control List,實現靈活的權限管理

除了文件的所有者,所屬組和其它人,可以對更多的用戶設置權限

CentOS7 默認創建的xfs和ext4文件系統具有ACL功能

CentOS7 之前版本,默認手工創建的ext4文件系統無ACL功能,需手動增加

tune2fs –o acl /dev/sdb1

mount –o acl /dev/sdb1 /mnt/test

ACL生效順序:所有者,自定義用戶,自定義組,其他人
用法:

爲多用戶或者組的文件和目錄賦予訪問權限

setfacl 選項 文件名
-m 設定ACL權限
-x 刪除指定的ACL權限
-b 刪除所有的ACL權限
-d 設定默認ACL權限
-k 刪除默認ACL權限
-R 遞歸設定ACL權限

設定文件特定屬性
chattr +i 不能刪除,改名,更改
chattr +a 只能追加內容
lsattr 顯示特定屬性

實驗過程比較多,就不做演示了

二、第二個重難點就是正則表達式,同樣簡單說一下

正則表達式就是爲了處理大量的文本|字符串而定義的一套規則和方法
通過定義的這些特殊符號的輔助,系統管理員就可以快速過濾,替換或輸出需要的字符串。Linux正則表達式一般以行爲單位處理。
簡單說爲處理大量文本|字符串而定義的一套規則和方法
以行爲單位出來,一次處理一行

REGEXP: Regular Expressions,由一類特殊字符及文本字符所編寫的模式,
其中有些字符(元字符)不表示字符字面意義,而表示控制或通配的功能
程序支持:grep,sed,awk,vim, less,nginx,varnish等
分兩類:
1基本正則表達式:BRE
2擴展正則表達式:ERE
grep -E, egrep
正則表達式引擎:
採用不同算法,檢查處理正則表達式的軟件模塊
PCRE(Perl Compatible Regular Expressions)
元字符分類:字符匹配、匹配次數、位置錨定、分組
man 7 regex

字符匹配:
. 匹配任意單個字符
[] 匹配指定範圍內的任意單個字符,示例:[wang] [0-9] [a-z] [a-zA-Z]
[^] 匹配指定範圍外的任意單個字符
[:alnum:] 字母和數字
[:alpha:] 代表任何英文大小寫字符,亦即 A-Z, a-z
[:lower:] 小寫字母 [:upper:] 大寫字母
[:blank:] 空白字符(空格和製表符)
[:space:] 水平和垂直的空白字符(比[:blank:]包含的範圍廣)
[:cntrl:] 不可打印的控制字符(退格、刪除、警鈴...)
[:digit:] 十進制數字 [:xdigit:]十六進制數字
[:graph:] 可打印的非空白字符
[:print:] 可打印字符
[:punct:] 標點符號

匹配次數:用在要指定次數的字符後面,用於指定前面的字符要出現的次數
匹配前面的字符任意次,包括0次
貪婪模式:儘可能長的匹配
.* 任意長度的任意字符
\? 匹配其前面的字符0或1次
+ 匹配其前面的字符至少1次
{n} 匹配前面的字符n次
{m,n} 匹配前面的字符至少m次,至多n次
{,n} 匹配前面的字符至多n次
{n,} 匹配前面的字符至少n次

位置錨定:定位出現的位置
^ 行首錨定,用於模式的最左側
$ 行尾錨定,用於模式的最右側
^PATTERN$ 用於模式匹配整行
^$ 空行
^[[:space:]]*$ 空白行
\< 或 \b 詞首錨定,用於單詞模式的左側
\> 或 \b 詞尾錨定,用於單詞模式的右側
\<PATTERN\> 匹配整個單詞

同樣的,例子在網上有很多,不一一舉了

第三就是vim的使用,也是重點中的重點,會在接下來的一週多學多練,shell腳本編程也是運維人員必會技能,多加練習

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章