修復 Linux 上的文件權限錯誤 | Linux 中國

語言: CN / TW / HK

不要讓文件權限拖你後腿。以下是在 Linux 和 macOS 上管理它們的方法。

(本文字數:1133,閲讀時長大約:1 分鐘)

不要讓文件權限拖你後腿。以下是在 Linux 和 macOS 上管理它們的方法。

如果你通過網絡或“跑腿網絡”(將文件保存到硬盤,以將其複製到一台計算機)在兩個用户之間共享文件,那麼在嘗試讀取或寫入文件時可能會遇到權限錯誤。即使你瞭解它的概念,你也可能不知道該如何診斷或解決問題。我曾經將數據遷移作為一項服務執行,因此我遇到了相當多的權限錯誤和所有權衝突。這是我快速修復它們的方法。

1、確定正確的用户

在修復權限錯誤之前,你必須確定需要權限的人是誰。你可能認為你已經知道這一點,但你可能沒有意識到 用户名 並不是用户身份的最確定屬性。你的計算機不會將你視為一個人,而是將你視為一個數字。要了解你的號碼,請查看你的用户 ID:

$ id --user
1005

2、獲取當前所有者

接下來,確定你無法與之交互的文件的所有者。由於發生了文件權限問題,你可能需要使用 sudo 命令查看有關文件的信息:

$ sudo ls --numeric-uid-gid
-rw------- 1 1000 100  23041 Aug  2 05:26 bar
-rw------- 1 1000 100  54281 Aug  2 04:58 baz
-rw------- 1 1000 100    822 Aug  2 08:19 foo

在此示例中,擁有文件的用户被標識為用户 ID 1000,這就是用户 ID 1005 無法與它們交互的原因。更糟糕的是,這些文件標記為僅由擁有它們的用户可讀和可寫,因此即使是同一組的成員也不能與這些文件進行交互。

3、更改權限以匹配

你知道需要權限的用户,因此你可以更改當前所有者以匹配你當前的用户:

$ sudo chown 1005 foo

你還可以通過更改文件模式授予你的組成員以及系統上可能的其他用户對文件的訪問權限。例如,在向組和任何其他用户授予讀取權限(4)的同時保持讀取和寫入權限(7):

$ sudo chmod 744 foo

瞭解更多

當你對文件權限不熟悉時,它們似乎很棘手。有關文件所有權如何工作的更多信息,請閲讀chown 簡介。

via: http:// opensource.com/article/ 22/8/fix-file-permission-errors-linux

作者:Seth Kenlon 選題: lkxed 譯者: geekpi 校對: wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出