Mount external usb hdd with rw on FreeBSD

FreeBSD-8 ေပာ္မွာ ကိုယ့္ရဲ့ external usb hdd ကို read/write access ရေအာင္ mount တာေလးပါ။ Linux မွာ usb hdd ကို plug လုပ္လိုက္တာနဲ့ auto mount ေပးေပမယ့္ FreeBSD မွာ ပံုမွန္အားျဖင့္ default အေနနဲ့ manually mount ေပးရပါတယ္။ ဆိုင္ကေန external usb hdd ကိုဝယ္လာရင္ ကိုယ့္ရဲ့ Windows Machine မွာဆိုရင္ properties နဲ့ စစ္ျကည့္ပါ fat32 filesystem ျဖင့္မ်ားေသာအားျဖင့္လာတက္ပါတယ္။ Linux မွာဆိုရင္ fdisk -l နဲ့ စစ္ျကည့္ပါ။ တခ်ုိ့ external usb hdd က်ျပန္ေတာ့ ntfs file system နဲ့လာတက္ပါတယ္။ ကိုယ့္အေန့နဲ့ ျကိုက္နွစ္သက္ရာ file system ကိုျပန္ေျပာင္းနိုင္ပါတယ္။ ခုက်ေနာ္ mount မွာက fat32 နဲ့ ntfs file system နွစ္မ်ုိးကိုပါ။ က်န္တဲ့ဖိုင္စနစ္ကိုလဲ ဒီက နမူနာယူျပီးလိုအပ္တဲ့ options ေပးျပီး mount နိုင္ပါတယ္။
က်ေနာ္တို့ fat32 ကို အရင္ mount ျကည့္ရေအာင္ ..

For 1, 2, 4, 8, 16 GB usb flash disks

# mount -a -t msdosfs /dev/da0s1 /mnt

/dev/da0s1 ဆိုတာက ကိုယ့္ရဲ့ usb stick device ပါ။
/mnt ဆိုတာက mount point ပါ။ mount point ကို ျကုိက္တဲ့ folder ထားနိုင္ပါတယ္။ ဥပမာ က်ေနာ့္မွာ Gnome ကိုသံုးတယ္ဆိုေတာ့ mount point ကို /media/ ေအာက္မွာလုပ္ထားတယ္။ ဥပမာ

# mkdir -p /media/usb
# chmod 777 /media/usb
# mount -a -t msdosfs /devda0s1 /media/usb

အဲဒါဆို Gnome Desktop ေပာ္မွာ nautilus file manager က အဲဒီ usb ကို auto ဖြင့္ေပးမွာပါ။ ကိုယ့္ mount point က /media/ ေအာက္မွာ မရွိဘူးဆိုရင္ တျခားေနရာမွာရွိမယ္ဆိုရင္ ဥပမာ /mnt/usb လိုေအာက္မွာရွိမယ္ဆိုရင္ အဲဒီ folder ကို manually ဖြင့္ျပီးေတာ့ access လုပ္နိုင္ပါတယ္။ အကယ္လို့ ကိုယ့္ usb hdd က GB ပမာဏ ျကီးေနမယ္ဆိုရင္ mount options ေလးထည့္ေပးပါ။ ဥပမာ 80 GB နဲ့ အထက္ ( 120, 160, 320, 500, etc .. ) usb hdd ေတြအတြက္ …

# mount -o large -t msdosfs /dev/da0s1 /media/usb

အကယ္၍ ကိုယ့္ external usb hdd က ntfs file system ျဖစ္ခဲ့မယ္ဆိုရင္ ntfs-3g နဲ့ mount ေပးရပါမယ္။ ntfs-3g သံုးနိုင္ေအာင္ လိုအပ္တဲ့ဟာေလးေတြ လုပ္ေပးရေအာင္ ေအာက္ကလို conf ဖိုင္ေတြထဲမွာ configuration ေတြလုပ္ေပးပါ။

Add fuse_load=”YES” to /boot/loader.conf

# echo 'fuse_load="YES"' >> /boot/loader.conf

Add fusefs_enable=”YES” to /etc/rc.conf
# echo 'fusefs_enable="YES"' >> /etc/rc.conf

Install sysutils/fusefs-ntfs port
# cd /usr/ports/sysutils/fusefs-ntfs
# make install clean

ဒါဆိုရင္ installation နဲ့ configuration ျပီးေလာက္ျပီး၊ စက္ကို reboot လုပ္ရေအာင္ …

# shutdown -r now

ဒါမွမဟုတ္

# reboot

စက္ျပန္တက္လာျပီးရင္ က်ေနာ္တို့ ntfs file system ကို mount ျကည့္လို့ရပါျပီ။

# ntfs-3g /dev/da0s1 /media/usb

ဒါဆိုရင္ က်ေနာ္တို့ရဲ့ usb hdd ေတြကို ပံုမွန္ user တစ္ေယာက္အေနနဲ့ read/write အသံုးျပုလို့ရပါျပီ။

အကယ္၍ unmount လုပ္ခ်င္တဲ့အခါ ..

# umount /media/usb

References:
Disk Organization
Mounting and Unmounting File Systems

Enjoy!

2 thoughts on “Mount external usb hdd with rw on FreeBSD

  1. ကိုေဘာက္စ္ ၊ FreeBSD မွာ fuse က kernel native အေနနဲ႕ပါလာတာလား သပ္သပ္သြင္းရေသးလားဗ် ?

  2. fuse kernel က native ပဲ ကိုdiv .. ဒါေပမယ့္ ntfs-3g ကေတာ့ sysutils/fusefs-ntfs port မွာပါတယ္ဆိုေပမယ့္ native ေတာ့မဟုတ္ဘူးထင္တယ္။ ဒါေပမယ့္ FreeBSD မွာ native mount_ntfs ရွိတယ္ အဲဒါက read access ပဲရေသးတယ္။

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s