我正在使用 Ubuntu 透過 USB 將資料從 XFS 格式的磁碟機傳輸到 HFS+ 格式的磁碟機。問題是無論我做什麼,這些文件都會受到寫入保護,並且我無法更改它們的權限。
我知道 Ubuntu 的預設 UID 是 1000,而 Mac 上的預設 UID 是 501,所以我將 Ubuntu UID 更改為 501如本指南所述。
現在權限似乎是正確的,當我執行 a 時ls -n
,我被告知 UID 是 501,群組是 20,權限是rwxrwxrwx
,這與我的另一個運行良好的 USB 驅動器上的完全相同。
但由於某種原因我仍然無法編輯這些文件。我被告知要進行身份驗證,但當我這樣做時,什麼也沒有發生。
如果我將文件複製到 Finder 中的其他卷,它們將不再受寫保護,這讓我認為我複製到的 USB 驅動器可能存在可疑之處。我必須將其格式化為 HFS+(非日誌式),Ubuntu 才能對其進行寫入。
這可能意味著什麼嗎?從 Mac 上的 Finder 複製到磁碟區的檔案不會被鎖定,但透過 Ubuntu 複製的檔案會被鎖定。
只是做了一些進一步的測試,並意識到我複製的文件夾之一的子文件夾包含一些我可以毫無問題地寫入的圖片,但與原始文件夾處於同一級別的視頻文件全部被鎖定. .....視訊檔案和圖片的所有權/群組為 501/20。另外,一些鎖定的檔案實際上帶有「鎖定」徽章,我能夠刪除檔案屬性中的複選標記,但什麼也沒有發生,當我再次檢查屬性時,它仍然存在。但話又說回來,其他被鎖定的視訊檔案一開始就沒有徽章……這裡真的有些混亂? ?
順便提一句。我定期在另一台運行 Snow Leopard Server 的 Mac 上測試所有內容,問題都是一樣的。
最後更新:
嘗試按照下面的建議透過 ssh 進行 rsync,嘗試在 ubuntu 中重命名用戶,以便用戶名、「長名稱」和 UID 都與 OSX 匹配 - 沒有任何進展。
花了過去 14 個小時試圖解決這個問題 - 累了,現在去睡覺了。最後的手段是複製 ubuntu 磁碟的所有內容,然後將其從 Mac 複製到另一個 USB 驅動器(當我在桌面之間來回複製時,問題似乎已解決)。唯一的缺點是我需要去購買另一個硬碟來複製 ubuntu 盒子上的 1.5TB 硬碟,並再花 2 天複製檔案:-/
最終解決方案:
由於這裡提出的建議都無法解決問題,所以我最終購買了另一個 2TB 硬碟,將檔案從 ubuntu 複製到 HFS 格式的磁碟,將 2 個磁碟機連接到我的 mac,然後再次從HFS 格式的磁碟到HFS (日誌式)格式的磁碟。問題解決了。我發現解決這個問題的唯一方法是在 mac 環境中複製檔案。一旦文件被複製一次,權限問題就解決了。
答案1
我懷疑Ubuntu將UID<1000的檔案視為系統檔案。
我將使用 rsync 透過 ssh 以 root 身分傳輸檔案:
rsync -avp -e ssh root@srcmachine:/path/to/src/files destination/dir
如果使用者名稱和群組名稱相同,則 uid 將重新映射。 uids 可以使用 --numeric-ids 開關原封不動地傳輸。
rsync 還可以在檔案系統之間工作,而不僅僅是透過網路。
答案2
讓您自己成為文件的擁有者。
sudo chown -R ${LOGNAME}:${GROUPS} /path/to/copied/files