1.檔案屬性檢視
ls -l filename
- rw-rw-r-- 1 kiosk kiosk 0 Oct 2 17:05 file
檔案類型 檔案權限 檔案副本個數 檔案所有人 檔案所有組 大小 最後一次被修改的時間 名字
2.檢視目錄屬性
ls -ld directoy
d rwxr-xr-x 3 kiosk kiosk 33 Aug 27 09:47 directory
類型 權限 子目錄個數 目錄所有人 目錄所有組 子檔案屬性大小 目錄中内容變化 目錄名字
3.檔案使用者組的更改
chown 使用者名稱 檔案 ##更改檔案所有人
chgrp 組名稱 檔案 ##更改檔案所有組
chown -R 使用者 目錄 ##更改目錄本身以及目錄中的子檔案的所有人
chgrp -R 組名 目錄 ##更改目錄本身以及目錄中的子檔案的所有組
4.權限種類
chmod ugo+-=rwx ##改權限
u=rwx=7 |g=rwx=7|o=rwx=7
421
u=rw-=6 g=r--=4 o=r--=4 644
r=4
w=2
x=1
-=0
7=rwx,6=rw-,5=r-x,4=r--,3=-wx,2=-w-,1=--x,0=---
r
r權限針對檔案,表示可以檢視檔案内容
r權限針對目錄,表示可以ls 檢視目錄中存在的檔案名稱
w
w權限針對檔案,表示可以更改檔案的内容
w權限針對目錄,表示是否可以删除目錄中的子檔案或者子目錄
x
x權限對于檔案,表示是否可以開啟檔案當中記錄的程式
x權限對于目錄,表示是否可以進入目錄中
當有a/b/c遞歸三個目錄,a有讀寫,ls a可以看到b,但ls a/b看不到c,因為a沒有可執行,而 ls a/b 相當于 cd a;ls b;而a沒有可執行權限,是以看不到c
5、 stat file檢視檔案的狀态屬性
Access: 2016-07-15 16:30:57.769375150+0800
Modify: 2016-07-14 17:27:04.116248622+0800
Change: 2016-07-15 16:30:51.681489283+0800
access 檢視 modify 更改檔案内容 change更改檔案屬性
6、touch -t 199507020911.11 file 設定檔案的時間戳
7、相同磁盤分區的移動是重命名
複制是建立
mkdir -p westos/linux/lee 遞歸建立目錄
cp -r test/ /westos 複制目錄及目錄裡面的内容
cp -a :相當于-pdr,保持檔案的連接配接(d),保持檔案的屬性(p),并作遞歸處理(r)
-p:連同檔案的屬性一起複制過去,而非使用預設屬性(備份常用)
-i:若目标檔案存在會先詢問操作是否進行
-r:遞歸複制,常用于目錄的複制
-u:若目标比源檔案舊才更新
-l:進行硬連接配接檔案的建立而非複制檔案本身
cp是一個很重要的參數,不同身份執行這個指令有不同的結果産生,尤其是-a,-p參數,對于不同參數來數說,差別很大,如密碼檔案以及
一些配置檔案,就不能直接以cp來複制,而必須加上-a,-p來完整複制檔案的參數執行才行
8、 mv test/ /westos (不用加r)
‘’強引用,如果檔案名有特殊符号,把整個檔案用引号括起來,或者用絕對路徑
但是, touch‘-file’ 是錯的。touch ./-file是對的
9、cat、tac、nl(顯示的時候順便輸出行号)、more、less、od(以二進制方式讀取檔案)
10、檔案的預設權限
檢視檔案預設權限:umask或 umask-S
在預設檔案的屬性上,目錄與檔案是不一樣的,因為檔案一般是用于資料的記錄,是以沒有執行權限
若使用者建立檔案則預設權限:-rw-rw-rw-
若使用者建立目錄則預設權限:drwxrwxrwx
要注意的是umask的分數指的是需要減掉的權限
在預設的情況中,root的umask會拿掉比較多的屬性,root的umask預設是022,一般使用者umask為002,這是基于安全的考慮:
則root建立檔案時:(-rw-rw-rw-)減去(-----w--w-)等于-rw-r--r--
root建立目錄時:(drwxrwxrwx)減去(d----w--w-)等于drwxr-xr-x
在指令行 umask 066可以修改預設權限,但當關掉shell之後,又恢複原來的,如果想長期有效
必須更改配置檔案
vim /etc/bashrc 71行是普通使用者的更改,73是超級使用者的更改
vim /etc/profile 60行是普通使用者的更改,62是超級使用者的更改
source /etc/bashrc ##重新整理bash配置
source /etc/profile ##重新整理系統配置
7、檔案的隐藏屬性
chattr
參數:
+:增加某一個特殊參數,其他原本存在參數則不動。
-:删除某一個特殊參數,其他原本存在參數則不動。
=:僅有後面接的參數。
a:當設定a之後,這個檔案隻能增加資料,而不能删除也不能修改資料,隻有root才能設定這個屬性。
i:當設定i之後,它可以讓一個檔案“不能被删除,改名,設定連接配接也無法寫入或删除資料”,隻有root能設定此方法。
chattr +i file
lsattr [-adR] 檔案或目錄
-a:将隐藏檔案的屬性顯示出來
-d:如果接的時目錄,僅列出檔案本身的屬性
-R:連同子目錄的資料也一并列出來
8、檔案的特殊屬性:SUID,SGID,SBIT
stickyBid ###強制位
o+t ###之針對目錄,當一個目錄上有t權限時,這個目錄中的檔案隻能被檔案擁有者與root删除
t=1
chmod o+t directroy
chmod 1777 directory
sgid ###粘制位
g+s ##針對目錄,在目錄中建立的檔案都自動歸屬到目錄所在組,針對二進制檔案,檔案内記錄的程式在執行時和執行者的組身份沒有關系,而是以二進制檔案的所有組的身份執行的
當一個二進制的可執行檔案擁有sgid屬性:
SGID對二進制程式有用
程式執行者對于該程式來說,需要具備x權限
執行者在執行過程中将會獲得該程式使用者組的支援,是以檔案使用者所屬組的身份執行的,和誰發起的沒關系
當一個目錄擁有sgid屬性:
使用者對于該目錄具有r與x權限時,該使用者能夠進入此目錄
使用者在此目錄下的有效使用者,将會變成該目錄的使用者組
若使用者在此目錄下具有w權限,則使用者所建立的新檔案的使用者組與此目錄的使用者組相同,
touch 有了suid和sgid之後,在一個有sgid的目錄下建一個檔案a,a的所屬使用者是root,所屬組是student
chmod g+s file|directory
chmod 2777 file|directory
suid ###冒險位
u+s ###針對檔案,檔案記錄動作在執行時是一檔案所有人身份執行的,與是誰發起的無關
SUID權限功能:
SUID權限僅對于二進制程式有效
執行者對于該程式具有x權限
本權限僅在執行該程式的過程中(run-time)有效
執行者将具有該程式所有者的權限
chmod u+s file
chmod 4777 fileg+s
9、which尋找“執行檔案”
whereis尋找特定的檔案
locate,直接在後面輸入“檔案的部分名稱”後就能得到結果,但是他使用是有限制的,locate在尋找資料的時候特别快,因為
locate時有已建立的資料庫/var/updatedb.conf這個配置檔案裡買年的資料查找到的,是以不用直接去硬碟中通路,有時資料
庫沒有更新可能找不到,更新資料庫updatedb就可以了。