chattr 設置隱藏權限linux
lsattr 查看隱藏權限shell
lsattr -R 能夠把目錄和目錄下面的文件和子目錄的隱藏權限顯示出來。數據庫
向文件添加了隱藏 i 權限後即便咱們查看該文件時,出現有rwx權限可是也不能操做,甚至編輯文件,添加內容也會出錯windows
隱藏 i權限 是文件不能刪,重命名,設定連接,寫入和新增數據ui
格式:chattr [+-=][隱藏屬性][文件名或目錄名].net
+:增長 、-:減小 、=:設定debug
減小 i 屬性 chattr -i 1.txt3d
利用chattr +i是否是能夠鎖掉一些關鍵目錄blog
lsattr 查看的是一個目錄下的子目錄和子文件隱藏文件ip
lsattr -d 目錄名 加上-d 就能夠查看目錄自己隱藏權限
chattr +a 文件名 只能追加、能夠touch更改時間,不能刪除,不能更名,不能更改文件內容
chattr +i 目標目錄 在這個目錄下咱們自己有一個問價(12.txt文件)這樣咱們在這個原有的文件下增長、追加內容都是能夠的。可是不是針對原有文件操做則不行。
每次vi時其實是在swap文件裏編輯而後由swap覆蓋原來的1.txt,若是+a則1.txt不能消失因此就多了一個swap文件
那這樣1.txt是否是沒有修改爲功,由於說不能覆蓋
特殊權限set_uid
set_uid能夠使普通用戶臨時擁有root用戶的權限,給普通用戶設置set_uid,前提是文件是一個二進制的文件,並且是一個可執行的文件,
/usr/bin/passwd這個文件默認擁有set_uid的權限。沒有x權限s會顯示成大寫的
給普通用戶設置執行ls命令的權限:chmod u+s /usr/bin/ls
給普通用戶去掉執行ls命令的權限:chmod u-s /usr/bin/ls
特殊權限set_gid
權限位做用在組權限位上面,一樣也是一個小s,使普通用戶臨時擁有所屬組的身份。做用在文件上和set_uid的做用差很少。
給ls加上一個set_gid權限: chmod g+s /usr/bin/ls
特殊權限stick_bit
stick_bit 防刪除位,防止其餘用戶刪除本身的文件。
文件是否能夠被某個用戶刪除,主要取決於該文件在這個目錄是否對該用戶具備寫權限。有寫功能便可刪除,不然反之!
stick_bit 防止別人刪除咱們本身的文件
rwt 也是具備x權限的
當咱們的目錄添加了一個 stick_bit權限,則咱們在其餘用戶 的時候就不能刪除這個文件和目錄,可是能夠修改。
find命令
find是用來搜索文件的命令,此外,which、whereis,locate(yum install -y mlocate 安裝後收到手動生成相應數據庫 updatedb)都是用來搜索文件的命令。
格式:find 路徑 +具體的條件
經過文件類型查找文件
find 【路徑】-type 【類型f/b/c/d/l/s】-name filename
格式:find 【路徑】文件類型
類型:-type -name -atime -ctime-mtime
用stat查看文件的具體信息
查找在150分鐘發生更改的文件 find /root/ -type f -mmin -150
# find /root/ -type f -mmin -150 -exec ls -l {} \; ls -l出在150分鐘內發生修改的文件
find /root/ -type f -mmin -150 -exec mv{} {}.bak \;
工做中可用到:
查找文件大小(k,M,G)
find /root/ -size +10k 查找大於10K的文件
find /root/ -size -10M 查找小於10M的文件
檢驗:大於10K
find /root/ -type f -size +10k -exec ls -lh {} \;
文件名後綴
在linux系統中,文件的後綴名沒有具體意義,加或者不加都無所謂。(爲了區分,咱們都加一個後綴名)
1.sh ==表明shell腳本
2.tar.gz ==表明壓縮包
3.my.cnf ==表明配置文件
4.test.zip ==表明壓縮文件
5. .txt == 表明普通文檔文件
linux和windows互傳文件(只能在xshell上面執行)
首先要安裝一個互傳的包lrzsz, rz表示把windows上的文件傳到linux上面(傳到當前目錄);sz+文件名,把linux上的文件傳到windows上面
find ./表示在當前路徑下查找,
find /etc 表示在etc文件下查找
find -type f 表示查找文件
find -type d 表示查找目錄
find -name 1.txt 表示查找文件名稱是1.txt 的文件
find -size 500M 表示查找大小爲500兆的文件
find -perm 644 表示查找文件或目錄權限是644/rw-r--r--
stat 1.txt 表示查看當前文件修改的時間,屬性修改的時間
查找/var目錄下屬主是root而且屬組是mail的全部文件
[root@localhost ~]# find /var -type f -user root -group mail
/var/spool/mail/root
[root@localhost ~]#
查找/usr/目錄下不屬於root,bin的文件
[root@localhost ~]# find /usr -type f -not -user root -a -not -user bin
/usr/libexec/abrt-action-install-debuginfo-to-abrt-cache
[root@localhost ~]#
atime,amin,ctime,cmin,mtime,mmin
atime,amin:文件被查看時間
ctime,cmin:文件內容被修改的時間
mtime,mmin:文件屬性被修改的時間
查找/etc目錄下最近一週內容修改過且不屬於root用戶的文件
[root@localhost ~]# find /etc -type f -mtime -7 -not -user root
[root@localhost ~]#
find -ctime +1 表示1天以上
find -ctime -1 表示1天之內
find -ctime 1 恰好一天
find -nouser 沒有屬主
find -nogroup 每一屬組
查找當前系統上沒有屬主或屬組且最近一天內訪問的過的文件並將屬主和屬組都改成root
find / -type f -nouser -a nogroup -atime -1|xargs chown root.root
查找/etc目錄下大於1M的文件,並將文件名寫入到/tmp/test文件中
find /etc -size +1M -type f >>/tmp/test
查找/etc目錄下全部用戶沒有寫權限的文件並列出詳細信息
find /etc -type -f -not -perm /222
先找出全部有寫權限的文件再取反就找到結果。
多個文件個併爲一個
find /tmp -name "*.sh"|xargs cat 2>&1 1>>cc.txt