vps 上 mount 東西

更新日期: 24/1/12

 

介紹

 

在 VPS 內嚴格來講係 mount 唔到仕何 block device 的, 即使它們已存在(比如 /dev/sdb1)

因為 VPS 裡面只支援很少的 File System

cat /proc/filesystems

        ext3
nodev   sysfs
nodev   proc
nodev   tmpfs
nodev   devpts

By Default 連 fuse 都是沒有的, 如果真的沒有, 那真是什麼都不用 mount 了 ........

不過, 如果見到有 fuse, 那我們可以安裝其他 package 去實現 mount block device!!

已知 package 如下:

  • fuseiso9660   <--- CD
  • fuseext2 <-- ext2
  • fusefat <--- vfat

其他常用 package:

  • fusesmb <--- smb
  • ntfs-3g <--- ntfs

 

USB-Stick(fusefat)

 

以下我舉 mount USB-Stick 為例

在 vps 內 mount device 有兩個前提

  1. VPS 可以使用 fuse
  2. Device passthrough 入了 VPS

相對於以上的1,2, 只要在 Host 上的行以下指令即可
(假設 vps 的 id 為1002, usb-stick 的 partiition 在 /dev/sdb1)

  1. vzctl set 1002 --devnodes fuse:rw --save
  2. vzctl set 1002 --devnode sdb1:rw

 

在 VPS 內安裝 fusefat

apt-get install fusefat

 

使用:

fusefat [options] imagefile mountpoint

options:

-o rw+ enable read-write mount

-o ro

Example:

fusefat -o ro /dev/sdb1 /mnt/usb-stick/

fat type: FAT32. Fsi at 1
Fsioff: 512, size: 512
--- nxtfree --- :5
--- freecnt --- :479310
dataclusters :975514
first data byte : 7823360
1st fat off :  18432
2nd fat off :  3920896
fat_eoc_value: 268435448
fat_eoc_value is eoc?: 1