Mount
將文件複製到掛載的 Samba 文件夾時防止更新“修改時間”
在將文件複製到掛載的 Samba 文件夾時,我不希望將“最後修改”屬性更改為目前日期。我怎樣才能做到這一點?
此行為發生在 (K)Ubuntu 12.04 和 Ubuntu 15.10 上。可以使用 GUI 瀏覽器(使用 nautilus 3.4.2 和 dolphin 2.0 測試)和
cp -p
在終端中使用來重現它。Samba 文件夾通過以下方式安裝到本地文件系統:
sudo mount -t smbfs //mynas/folder /mnt/nas/ -o user=username
或者
sudo mount -t cifs //mynas/folder /home/mnt/nas/ -o user=username
.筆記:
- 當使用類似的 URL 連接到同一個 Samba 文件夾(使用 nautilus 或 dolphin)
smb://username@mynas/folder/
時,我可以將文件複製到其中,而無需將“修改時間”替換為目前時間!- 但是掛載 Samba 文件夾更方便,也不是所有工具都支持 smb 協議。這就是為什麼使用 URI
smb://
對我來說不是一種解決方法。
該命令
cp -P
不適用於您的需求。您正在使用大寫參數字母-P
,用於從不遵循符號連結。您要使用小寫來保留時間戳:
cp -p
如問題的評論部分所述,使用正確的 gid 和 uid 解決了問題:
sudo mount -t cifs //mynas/folder /home/mnt/nas/ -o user=username -o gid=1000,uid=1000
還有其他幾個實用程序可用於在不修改其時間戳的情況下複製文件。
rsync
(尤其是使用 ‘-t’ 標誌)和cpio
(使用 ‘-m’ 標誌)都可以在這種情況下使用。查看每個手冊頁,了解其他可能有用的選項。