今天sata硬碟底座到貨了,家裡電腦是kali linux系統,打算把家裡的閑置硬碟當做U盤用。但是把硬碟掛載到linux系統後,卻無法在外掛硬碟中寫數據,例如粘貼或刪除文件。研究了一下午,終於找到問題的答案。原來Windows的硬碟是ntfs格式分區,如果在之前的windows系統中,開通了「快速啟動」功能。那麼就會出現把硬碟外掛到Linux系統後,無法寫數據的情況。找到的原因,就對症下藥。重新把這個硬碟重新掛載到windows系統,先在 Windows系統下關閉「快速啟動」,然後再把硬碟掛載到linux系統,果然就可以重新在硬碟里寫數據了。
如果你的Linux系統版本比較古老,採取上述方法無法解決問題的話。可以繼續嘗試著利用以下方法解決問題。
Linux中直接掛載ntfs只能做到讀取文件內容,無法做到讀寫。寫入會提示許可權不足,原因是Linux認為讀取ntfs格式硬碟內容是不安全的。這就要用到ntfs-3g這個工具了,這是一個開源項目,歷經12年已逐漸完善。
一、由於ntfs-3g依賴FUSE的支持,所以先安裝FUSE:
tar -xvzf fuse-***.tar.gz
cd fuse-***
./configure
make
make install
二、然後安裝ntfs-3g這個工具,需要編譯,過程和FUSE一樣,就不再說明了。
使用ntfs-3g自動掛載一定要把Windows的「快速啟動」關閉(如果有的話)。
使用ntfs-3g自動掛載一定要把Windows的「快速啟動」關閉(如果有的話)。
使用ntfs-3g自動掛載一定要把Windows的「快速啟動」關閉(如果有的話)。
重要的事說三次,我是把硬碟外掛到另一台WIN電腦里進行關閉「快速啟動」的操作後,掛載成功的,至於怎麼把Windows的「快速啟動」關閉,請百度。(就是這問題坑了我一下午)
三、掛載的命令如下:
mount -t ntfs-3g /dev/sda1 /mnt/C
mount -t ntfs-3g /dev/sda3 /mnt/D
mount -t ntfs-3g /dev/sda5 /mnt/E
四、設置開機自動掛載,把這三條語句增加到/etc/fstab文件中即可:
/dev/hdb1 /mnt/C ntfs-3g defaults 0 0
/dev/hdb3 /mnt/D ntfs-3g defaults 0 0
/dev/hdb3 /mnt/E ntfs-3g defaults 0 0
或者直接在裡面添加這樣一句:
ntfs-3g silent,umask=0,locale=zh_CN.utf8 0 0