經(jīng)常在不同系統(tǒng)間復(fù)制文件的童鞋相信對(duì)移動(dòng)硬盤和U盤的分區(qū)格式頭痛不已, 特別是windows, Linux, Mac三個(gè)系統(tǒng)之間互相傳東西, 真要跪了.選用哪種格式就很頭疼.!(╯‵□′)╯︵┻━┻..
為了照顧其他同學(xué),萬惡的 windows是要支持的, 自己用Mac, Linux, 當(dāng)然也要支持. 這樣NTFS,fat32, exfat
就是僅有的幾個(gè)選擇了. 當(dāng)然,你可以讓windows 支持 ext 或者 HFS, 但是別人沒有裝專門軟件的情況, 的確是個(gè)問題. exfat 不考慮. fat32 不支持大文件, 只能選擇NTFS了.
linux 對(duì) ntfs 的支持還不錯(cuò), 但是 Mac 默認(rèn)只能以只讀方式掛載分區(qū). 為了支持對(duì)其寫入, 我們可以使用 Paragon NTFS, 但是僅僅為了這一點(diǎn)功能卻花費(fèi)幾十刀, 想想就心疼. 或者可以使用開源的 ntfs-3g
, 不過使用體驗(yàn)不好.
其實(shí) Mac 本身的 mount_ntfs
是支持可讀寫掛載分區(qū)的. 只是被隱藏了而已.(難道 APPLE 你非要這么傲嬌嘛,凸(艸皿艸 ).
開始之前, 先對(duì)mount_ntfs
作備份.
sudo cp /sbin/mount_ntfs /sbin/mount_ntfs.old
我們?cè)賹懸粋€(gè)腳本 mount_ntfs
看看 mac 是如何掛載分區(qū)的.
#!/bin/bash -
echo $0 $* >/Users/dark/mount.log
然后 復(fù)制到 原文件所在.
sudo cp mount_ntfs /sbin/mount_ntfs
插入一個(gè)ntfs分區(qū)的u盤, (這里好像會(huì)出現(xiàn)bug, 不用管它, ╮( ̄▽ ̄")╭),大致會(huì)在 mount.log
中看到如下的東東:
mount_ntfs -o nodev -o noowners -o nosuid /dev/disk2s1 /Volumes/DATA
其中, DATA
是你分區(qū)的 label (這里是我的), disk2s1
就是你分區(qū)所在. 這兩個(gè)就是主要的參數(shù). 好了, 然后我們寫個(gè)有用的盜版 mount_ntfs
, 體換掉剛才的:
#!/bin/bash -
disk=$7
volume="$8"
mount_ntfs.old -o rw,auto,nobrowse $disk "$volume"
open "$volume"
### remember that go to /Volumes to umount disk by yourself.╮( ̄▽ ̄")╭
恩. 是的, 需要你自己進(jìn)到 /Volumes
去卸載分區(qū). 因?yàn)檫@個(gè)是不顯示在Finder
側(cè)邊欄的. (兩者好像是沖突的... 也真是不省心(╮( ̄▽ ̄")╭ 沒辦法~)
一個(gè)簡(jiǎn)潔版的mount_ntfs
就成了. 這樣就可以自動(dòng)掛載了, 可以盡情地調(diào)教你的分區(qū)了.o( ̄▽ ̄)o
卸載就手動(dòng)進(jìn)到/Volumes
卸載. 嗯~, 加上下面的函數(shù)你的 .bash_profile
或者.bashrc
中:
function untfs(){
if [[ $# -ne 1 ]]; then
echo "Usage: untfs Volume"
return 1
fi
volume="$1"
old=`pwd`
cd /Volumes
sudo umount "$volume"
if [[ $? -ne 0 ]]; then
echo "Error when umount "$volume"
open .
return 1
fi
cd "$old"
}
然后在終端運(yùn)行:
untfs DATA
卸載NTFS分區(qū). 沒有卸載成功時(shí), 便打開 /Volumes
讓你手動(dòng)卸載.
水水更健康╭(′▽`)╭(′▽`)╯.