資料消失的隨身碟 - Linux

Eden avatar
By Eden
at 2008-08-22T10:16

Table of Contents

切記一件事, 拔除隨身碟之前, 一定要先 umount,
否則部份仍在主記憶體中尚未寫回隨身碟的資料就會消失了,
而且這很有可能造成隨身碟的檔案系統損毀.

An application is preventing the volume '???' from being unmounted.

以上錯誤訊息表示, 某個應用程式佔據了隨身碟的某些資源,
這有可能是隨身碟中的某個檔案被打開來編輯尚未關閉,
或者某個程式是以隨身碟之中的某個子目錄做為 current working directory,
你必需結束這些佔用隨身碟的程式, 之後才能 umount 隨身碟.
那麼要如何知道哪些程式佔用隨身碟資源呢? 假設隨身碟是掛在 /media/usbdisk

find /media/usbdisk -exec lsof {} \;

接下來還有一個問題, 萬一隨身碟是掛在一個打不出名字的路徑呢?
隨身碟既然是在不同的作業系統之間交換檔案, 分別使用 CP950 或者 UTF8
不同的編碼系統, 這樣子怪怪無法辨認的 disk volume label 是常常發生的.

以下看一個例子, 如何指定一個怪怪的檔名, 首先故意造出一個怪怪的目錄:

install -d "$(echo '大五碼' | iconv -f utf8 -t cp950)/萬國碼"

ls 只會看到一串問號, 類似像這樣: ?j???X
ls -b 可以看到以八進位數字表示的實際名稱: \244j\244\255\275X

知道檔名的八進位編碼之後, 就可以八進位編碼去指定這個檔案了:

find "$(echo -e '\0244j\0244\0255\0275X')"

最後再補充一點, 如果你忘記了以上這些步驟, 無論如何就是 umount 不了,
記得拔下隨身碟之前, 就算不能 umount 也要先執行 sync

--
How shall my heart be unsealed unless it is broken?
By Kahlil Gibran

--
Tags: Linux

All Comments

Re: ntpdate from cron -- DON'T DO THAT!

Anonymous avatar
By Anonymous
at 2008-08-22T09:02
※ 引述《depository (dreamer)》之銘言: : 標題: ntpdate from cron -- DONand#39;T DO THAT! : 時間: Thu Aug 21 22:02:58 2008 ^^^^2008 : http:/ ...

virtualbox不能重開fedora

Madame avatar
By Madame
at 2008-08-22T04:53
昨天新安裝的.. 今天用 virtualbox重開出現error PIIX3 cannot attach drive to the Secondary Master. VBox status code: -2 (VERR_INVALID_PARAMETER). 結果代碼: E_FAIL (0x800 ...

資料消失的隨身碟

Emma avatar
By Emma
at 2008-08-22T04:16
今天把筆電裝了ubuntu 8.04 也裝了lazyubuntu 之後用我的隨身碟傳了一些實驗資料到筆電裡 重開機後 不知怎麼地 我的隨身碟裡面的資料都看不見了 不過用df去看仍然可以看到裡面是有資料佔了空間的 而且ubuntu自己抓到這隨身跌的名稱是亂碼 這是要卸載的時候出現的錯誤訊息 左上是 ...

UNIX下如何安裝SAMBA?

Valerie avatar
By Valerie
at 2008-08-22T00:36
找不到UNIX專版,只好上UNIX-LIKE的LINUX版問了… 請問版上的高手,該如何在UNIX上安裝SAMBA呢? 小弟下載了SAMBA.tar.gz,解壓縮後進source 下了 configure make make install 但要執行時還是會出錯… (執行檔是/usr/local/sbin/s ...

請問如何偵測使用者登入在本機?

Xanthe avatar
By Xanthe
at 2008-08-21T22:42
※ 引述《chiucs (ChiuCS)》之銘言: : if [ and#34;`/sbin/consoletype`and#34; = and#34;vtand#34; ]; then : unset LANG : else : LANG=zh_TW.Big5 : fi : ...