
我花了好幾天的時間試圖解決這個問題,但仍然無法解決。我想我已經閱讀了關於此的每一篇文章並嘗試了所有嘗試,但我仍然無法從我的 mac 格式的 hfs+ 外部驅動器複製任何文件。抱歉,如果我還錯過了一篇文章。收到此訊息:“無法處理資料夾 xxx,因為您無權讀取其內容。”然後我找到了一篇關於透過終端複製檔案來解決此問題的文章。當嘗試使用外部磁碟機路徑在終端機中執行 sudo cp -r 命令時,我總是得到「沒有這樣的檔案或目錄」。先致謝!
答案1
當舊的 imac ppc g5 邏輯板出現在我身上時,我遇到了類似的問題。我無法存取該硬碟上的大量數據,因此我將硬碟拉出並將其連接到硬碟外殼。當我嘗試將檔案從它複製到我的 Ubuntu 盒子時,出現權限錯誤。我嘗試了很多不同的方法來糾正,但都無濟於事。唉..以下內容應該可以幫助您擺脫困境。
打開終端機並輸入:
sudo nautilus
使用圖形使用者介面打開的視窗。導航到文件所在的目錄並複製所需的文件使用相同的 nautilus GUI 視窗導航到要將它們複製到的目錄並貼上到該目錄。沖洗並重複。
答案2
答案是bindfs。它將獲取一個已安裝的檔案系統,並使用您想要的任何 uid 提供它的視圖:
sudo apt-get install bindfs
mkdir ~/myUIDdiskFoo
sudo bindfs -u $(id -u) -g $(id -g) /media/diskFoo ~/myUIDdiskFoo
答案3
我知道自從你問這個問題以來已經過去了幾個月,但我剛剛成功完成了它,我將在這裡發布給其他人。除了首先完全關閉日記功能,將UID和GUI大寫相等;在 MacO 中,您的使用者是 501/20;在 Ubuntu 上,您的使用者是 1001/99 或更高版本。請小心,因為您必須讓 Ubuntu 顯示使用者 ID < 1000 - 如下所述 - 否則在下次啟動時您的使用者將不會出現!
完整的指南位於這兩個連結中:
預設情況下,OS X 中的第一個使用者的 UID 為 501,但您可以透過進入 OS X 中的系統偏好設定、右鍵單擊您的使用者並點擊進階選項來仔細檢查這一點。如果您的使用者 ID 與 501 不同,請在下方的終端命令中將 501 替換為您的其他 UID。
啟動 Linux(本例中我們使用 Ubuntu)並啟動終端機。首先,我們將新增一個臨時用戶,因為我們不想編輯目前登入的用戶。因此,在終端機中執行以下命令,並在每個命令後按 Enter 鍵:
sudo useradd -d /home/tempuser -m -s /bin/bash -G admin tempuser
sudo passwd tempuser
出現提示時,輸入臨時使用者的新密碼。重新啟動並以 tempuser 登入。然後,打開終端機並輸入以下命令,在每個命令後再次按 Enter 鍵(並將您的使用者名稱替換為您的 Linux 用戶的使用者名稱):
sudo usermod --uid 501 yourusername
sudo chown -R 501:yourusername /home/yourusername
這會將您的 Linux 用戶的 UID 更改為 501 並修復您的主資料夾權限,以便您仍然擁有它們。現在,無論您登入哪個作業系統,您都應該能夠讀取和寫入 Mac 和 Linux 用戶的主資料夾。
您可能還想修復登入畫面,因為預設情況下 Ubuntu 不會列出 UID 小於 1000 的用戶。將該值從 1000 變更為 501,當您重新啟動時,您的使用者將列在登入畫面中。
若要從 Linux 端存取 OSX 分割區,UID 和 GID 必須與 OSX UID 和 GID 相符。在 OSX 安裝過程中,第一個使用者和 OSX 管理員被指派 UID 501 和 GID 20。若要在 Mac 端驗證我們的 UID 和 GID,請登入、開啟終端機並輸入 – id。響應將顯示所需的資訊。 登入用戶的 UID 和 GID 無法更改。“Temp”用戶將使用 sudo -i 更改為 root 使用者。以下過程是為具有「Root」使用者功能的系統編寫的,nano 是編輯器。
1.在登入畫面上,按鍵 – control+alt+F1。觀察我們已經進入控制台模式。
2. 以 root 或 Temp 使用者登入。
編輯檔案/etc/login.defs。類型:
nano /etc/login.defs
查找值 UID_MIN。將其從 1000 變更為 501。鍵 – Control+x。鍵 – y。按-返回。編輯檔案 /etc/group.conf類型 -
nano /etc/group
找到顯示 dialout:20username 的行);將值 20 變更為 99。鍵 – ctrl-x 退出 nano。鍵 – y。按-返回。
編輯檔案/etc/passwd。類型:
nano /etc/passwd
找到顯示(用戶名):1000:1000真實姓名),,,,/home/(用戶名):/bin/bash的行,將其更改為(用戶名):501:20真實姓名),,, ,/home/ (用戶名):/bin/bash 儲存檔案並退出。鍵 – Control+x 退出 nano。鍵 – y。按-返回。更改主資料夾的檔案權限。類型:
cd /home
chown -R 501:20 (username)
退出控制台模式。鍵 – control+alt+F7 重新啟動。
如果這不起作用,並且您收到一條訊息,指出其中一個檔案無法更改,則您可能仍然以(使用者名稱)身分登入系統上的某個位置。嘗試重新啟動並在登入畫面上以臨時身份記錄。