Linux 固定掛載 USB Disk 方式

因為外接式 USB 硬碟很適合拿來當備份碟, 但是每次可能會造成 /dev/sdx 不同, 掛載都需要手動幾個程序才可以判斷, 因此想找出每次掛載上去, 可以確認是哪個 USB Disk 掛上相對應的目錄上.

  • Exp. 以下是主機接上兩個 USB Disk AC233(1TB) / Innostor WD(1TB)
  • lsusb
    [root@xpc-sh67-i7 ~]# lsusb
    :
    :
    Bus 006 Device 002: ID 1005:c004 Apacer Technology, Inc.
    Bus 006 Device 007: ID 1f75:0888 Innostor Technology Corporation IS888 SATA Storage Controller
    usb-devices
    [root@xpc-sh67-i7 ~]# usb-devices
    :
    T:  Bus=06 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=5000 MxCh= 0
    D:  Ver= 3.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs=  1
    P:  Vendor=1005 ProdID=c004 Rev=01.00
    S:  Manufacturer=APACER
    S:  Product=Portable HDD
    S:  SerialNumber=A220130417000000BD
    C:  #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr=36mA
    I:  If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
    
    T:  Bus=06 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#=  7 Spd=5000 MxCh= 0
    D:  Ver= 3.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs=  1
    P:  Vendor=1f75 ProdID=0888 Rev=00.34
    S:  Manufacturer=Archgon
    S:  Product=MH-3507I-U3
    S:  SerialNumber=08881567890000000000000072
    C:  #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr=200mA
    I:  If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
  • 當 USB Disk 格式化後, 每個可被掛載的 Partition 會有一組唯一編號(UUID), 可以透過 blkid 來得知
    blkid
    [root@xpc-sh67-i7 ~]# blkid
    :
    /dev/sdc1: LABEL="AC233" UUID="BC30736230732296" TYPE="ntfs"
    /dev/mapper/35000000000000001p1: LABEL="AC233" UUID="BC30736230732296" TYPE="ntfs"
    /dev/sdd1: UUID="84dab46e-0c23-4d47-88cc-8f74b70fdbc3" TYPE="ext4"
  • sdc1 是 AC233 的 1TB 格式化成一個 NTFS 磁區
  • sdd1 是 Innostor 上一顆 WD 1TB 硬碟, 格式化成一個 ext4 磁區
  • 所以可以寫個簡單的 script 將
    • AC233 掛上 /media/usb → mount_usb1t.sh
      mount UUID="BC30736230732296" /media/usb/
    • Innostor WD 掛上 /backup → mount_bakwd1t.sh
      #!/bin/bash
      fsck UUID="84dab46e-0c23-4d47-88cc-8f74b70fdbc3"
      mount UUID="84dab46e-0c23-4d47-88cc-8f74b70fdbc3" /backup
  • 執行 mount_bakwd1t.sh
    [root@xpc-sh67-i7 ~]# ./mount_bakwd1t.sh
    fsck from util-linux-ng 2.17.2
    e2fsck 1.41.12 (17-May-2010)
    /dev/sdd1: clean, 11/61054976 files, 3883091/244190000 blocks
    [root@xpc-sh67-i7 ~]# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    :
    :
    /dev/mapper/35000000000000001p1
                          932G  558G  374G  60% /media/usb
    /dev/sdd1             917G   72M  871G   1% /backup
  • tech/usbmount.txt
  • 上一次變更: 2016/05/02 22:56
  • jonathan