[精讚] [會員登入]
607

檔案無法刪除?!

我的 Server 的作業系統都是 FreeBSD,剛剛在修改某支程式後發現無法儲存, 甚至連刪除都不行,會出現 Ope

分享此文連結 //n.sfs.tw/12112

分享連結 檔案無法刪除?!@杜子的網管筆記
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-23 07:32:58 最後編修
2018-01-08 10:27:57 By 杜子
 

我的 Server 的作業系統都是 FreeBSD,剛剛在修改某支程式後發現無法儲存,

甚至連刪除都不行,會出現

Operation not permitted

的警告訊息!

原來,在 FreeBSD 還有一種特別的權限控制,稱之為「flags」,這些 flags 的設定可以讓我們用來保護特殊的檔案。

我們可以使用 ls 加參數 -o 來顯示:

# ls -ol filename

flags 的設定淩駕於一般的權限設定,我們可以設定的主要 flags 及其所代表的意義如下:

flags 意義
nodump 檔案不可以被 dump。(只有檔案擁有者和 root 可以設定)
sappnd 檔案只可以往後附加,不能刪除。(只有 root 可以設定)
schg 檔案不可以被更動,連 root 都不能刪除。(只有 root 可以設定)
uappnd 檔案只可以往後附加,不能刪除。(檔案擁有者和 root 才可設定)
uchg 檔案不可以被更動。(檔案擁有者和 root 才可設定)

 

如果我們要解除所設定的 flags 只要在上述的 flgs 之前加上 no 即可,例如 nouchg。

用法:

1. 為 filename 加上 schg

# chflags schg filename

2. 除去filename 的 schg

# chflags noschg filename

3. 除去整個目錄 (dirname) 裡所有檔案的 schg

# chflags -R noschg dirname

注意!

flags 的設定只有在 kernel security level 為 -1 或 0 時才可以被更改。如果 security level 為 1 或 2 時就不能更動 flags 了。

END

你可能感興趣的文章

檔案無法刪除?! 我的 Server 的作業系統都是 FreeBSD,剛剛在修改某支程式後發現無法儲存, 甚至連刪除都不行,會出現 Ope

隨機好文

CentOS 各版本安裝 phpMyAdmin 1.取得PHP版本: php -v 2.取得MySQL版本: mysql -V 3.切換到網頁根目錄 #cd /var/

關於在公用電腦中執行題庫系統發生錯誤的問題 以下文章題針對豐南國中的公用電腦執行環境所寫,如果您不是豐南國中成員,請參考即可。 本校的公用電腦都是使用 AD 網域方