從 NAS 複製時拼接檔案時出錯

從 NAS 複製時拼接檔案時出錯

這是絕望的轉發這個問題我早在 Ubuntu 論壇上就創建了,但從未修復過。

我在將檔案從 Samba/Cifs NAS 複製到磁碟機時收到此錯誤訊息。我正在使用 Nemo 4.4.2 運行 Ubuntu 20.10

Error while copying 'filename'
There was an error copying the file into '/destination'
Error splicing file: Input/output error

cp 也會產生錯誤

cp /media/NAS\ Storage/file .
cp: error reading '/media/NAS Storage/file': Input/output error

我現在可以報告我剛安裝的第二個磁碟也有同樣的效果

更多資訊和更多奇怪之處:

  • 另一台裝有 Ubuntu & Nautilus 的機器也有同樣的問題
  • 但我的Windows機器沒有
  • 文件被部分複製,但丟失了最後幾 MB。
  • 在適當的程式中開啟 NAS 中的檔案效果很好。
  • FTP 和 rsync 運作正常
  • 這是我的 fstab
# Nas Storage "Volume_1" on 192.168.1.140
//192.168.1.140/Volume_1    /media/NAS\040Storage        cifs    credentials=/root/.smbcredentials,iocharset=utf8,file_mode=0777,dir_mode=0777,vers=1.0 0 0

注意:第二台機器掛載點沒有空格,還是不行

  • 我可以上傳檔案到NAS,從NAS複製到自己就好
  • 小檔案幾乎總是有效,大檔案很少(> 500MB)

從那時起,我瀏覽了手冊中的每個選項,看看是否有更好的安裝方法,包括

  • 塞維裡諾, 無塞維裡諾
  • 軟硬
  • 名詞

我能做些什麼?我怎樣才能至少獲得更詳細的錯誤訊息?

答案1

以下設定為我解決了這個問題。我的客戶機器是Linux Mint 21(基於ubuntu 22.04)系統,核心5.14.21。檔案伺服器是 Apple Time Capsule 第四代,韌體為 7.8.1。我在 Mint 20.3(基於 ubuntu 20.04)、核心 5.4.0.120 也遇到了這個問題。

sudo mount //tc.local/apdata /mnt/tc/apdata -t cifs -o "cred=/home/ganesh/.apcred,domain=WORKGROUP,ip=10.0.1.1,servern=tc,rw,uid=1000,gid=1000,vers=1.0,sec=ntlm,noposix,cache=strict,rwpidforward,noserverino,nosetuids,actimeo=3"

您可能需要將 actimeo= 選項調整為最多 30 秒。它基本上告訴客戶端不要過於頻繁地重新載入元數據,這會使某些複製程式行為不當。

您可能需要檢查“man mount.cifs”以了解上述選項。

另請檢查客戶端電腦的 dmesg 輸出,以確保來源磁碟機不會因讀取 IO 錯誤而失敗。

相關內容