USB disk csatolása

Arra lenne szükségem, hogy egy debian szerveren az usb diskek a bedugás sorrendjétől függően a /dev/sda, /dev/sdb, /dev/sdc és így tovább mountoljanak fel. Elméletileg ez így is történt eddig, aztán egy alkalommal az egyik disk lecsatlakozott a /dev/sdb-ről és /dev/sdd-ként lehetett csak felmountolni. Az nem megoldás, hogy disk id alapján csatolom fel, mert a diskek változhatnak.

Hozzászólások

Nem teljesen értem a problémát. Ha az a gond, hogy a disk /dev/sdb helyett /dev/sdd-nek látszik, arra nincs ötletem.

Ha azt szeretnéd, hogy ha rádugsz egy usb disket és az automatikusan kerüljön fel a helyére, akkor vagy írsz egy scriptet ami megcsinálja (a blkid-vel lehet látni az eszközöket, pl.:

blkid -g ; blkid | grep -vE '/dev/sda|/dev/dm'
/dev/sdb: LABEL="PRETEC" UUID="3029-4862" TYPE="vfat"

Vagy haszálod az udev-et: http://www.debianhelp.org/node/9937

Mindkét esetben vicces lehet az umount :)

Én amúgy automountert és a disk/pendrive labeljét használom, talán az is jó lehet neked.

Az a gond, hogy a Windows simán tudja, hogy ha bedugok egy usb disket, az mondjuk F: legyen, a következő G: lesz és így tovább. De hogyan mondjam ezt meg linux alatt? A lényeg a következő: samba megosztás és windowsos gépek egy hálózatban. A szerverre van rátéve 4 db usb disk, ezekre ment egy speciális windowsos program a kliensekről. Amikor ezek betelnek, akkor cserélik őket. Na most ha teljesen ad-hoc módon mountolnak fel csere után, akkor a mentésnek annyi, hiszen a samba nem mutatja a /dev/sdd-t a /dev/sdb helyén.

Vmi custom udev szabály kéne, nézz utána, hogy lehet megadni az eszközneveket, ill. majd megnézem kicsit részletesebben (most nem érek rá).

Köszönöm, én ezt találtam:

KERNEL=="sd*", SUBSYSTEMS=="scsi", ATTRS{model}=="USB 2.0 Storage Device", SYMLINK+="usbhd%n"

This rule creates symlinks such as:

* /dev/usbhd - The fdiskable node
* /dev/usbhd1 - The first partition (mountable)
* /dev/usbhd2 - The second partition (mountable)

Ki fogom próbálni.

Na most 1 hulyeseget kerdezek:

Adott 1 uj lcd tv, usb-rol jatszik le avi-t, mkv-t.
Az usb portja csak mass storage -ot tamogat. Ott van mellette egy pc.
Mikent lehetne ugy osszekotni a kettot hogy a pc merevlemezerol jatsza le a tartalmat? Amugy olvastam sima usb-usb nincs, hiszen a pc-s usb csak hostkent viselekedik. Viszont nincs olyan usb-s kutyu ami a ketto kozott elne es tenne a dolgat?

kollegám írta pár napja unalmában, pár sor átírása után használhatod nyugodtan:

#!/bin/bash

fdisk -l | grep GB | cut -d: -f2 | cut -d, -f1 | cut -d' ' -f2 > lista.txt
fdisk -l | grep GB | cut -d: -f1 | cut -d/ -f3 > lista2.txt
paste -d':' lista.txt lista2.txt > vegleges.txt

echo "umounting devices..."
umount /dev/sdb1
umount /dev/sdc1
umount /dev/sdd1

echo "mounting devices..."
for i in $(cat vegleges.txt); do
a=`echo $i | cut -d':' -f1`
b=`echo $i | cut -d':' -f2`
case $a in
1000.2)
mount -t ntfs /dev/$b\1 /mnt/Toshiba1/
echo "Toshiba1 mounted"
;;
1500.3)
mount -t ntfs /dev/$b\1 /mnt/Toshiba2/
echo "Toshiba2 mounted"
;;
750.2)
mount -t ntfs /dev/$b\1 /mnt/OneTouch4/
echo "OneTouch4 mounted"

;;
16.1)
echo "16.1 GB already mounted"
;;
esac
done

rm lista.txt
rm lista2.txt
rm vegleges.txt

-
Debian Lenny