otomatis pasang setiap drive eksternal di bawah / media dengan akses baca / tulis ke semua orang

9

Ini masalah saya:

Komputer saya memiliki 4 port USB dan menjalankan Ubuntu 12.10. Saya menerima USB yang berbeda setiap hari, colokkan ke komputer saya, baca / tulis data ke mereka, dan kemudian kirim pergi.

Yang saya inginkan adalah secara otomatis memasang USB apa pun yang saya tancapkan ke komputer saya. USB yang terdeteksi pertama akan pergi ke /media/HDD1, yang kedua akan pergi ke /media/HDD2dan seterusnya. Atau akan lebih bagus jika USB yang terhubung ke port1 akan pergi ke /media/HDD1, USB yang terhubung ke port2 akan pergi ke /media/HDD2, dan seterusnya.

Jalannya /mediatidak penting tapi saya ingin direktori HDD1-4 di satu tempat sehingga saya dapat dengan mudah mengaksesnya.

USB biasanya ext2 tetapi kadang-kadang saya mendapatkan FAT32, NTFS USB juga.

Saya juga ingin USB dipasang tanpa masuk ke Ubuntu karena saya sering mengakses /media/HDD..dari komputer Windows lain.

Bagaimana saya bisa melakukan itu? Apa perubahan udevaturan, yang fstabharus saya lakukan? Setiap saran sangat dihargai.

Kiwi
sumber

Jawaban:

7

Nah, di sini kita bisa menggunakan trik yang sama yang fstabdigunakan untuk media Optik (alias CD dan DVD):

/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0

Kolom pertama menunjukkan sistem file, saya nilai yakin Anda USB akan telah diperbaiki, sehingga memungkinkan anggapan bahwa semuanya setelah sdaadalah USB, dan karena Anda hanya dapat memiliki 4 USB pada saat yang sama, daftar berjalan dari sdb, sdc, sdddan sde.

$ ls /dev/sd*
/dev/sda   /dev/sdb   /dev/sdb3  /dev/sdb6  /dev/sdc  /dev/sdf
/dev/sda1  /dev/sdb1  /dev/sdb4  /dev/sdb7  /dev/sdd
/dev/sda2  /dev/sdb2  /dev/sdb5  /dev/sdb8  /dev/sde

(Dalam kasus saya, saya menggunakan pembaca memori, jadi driver USB saya mulai dari sdgtetapi mari kita lanjutkan.)

Sekarang, kita asumsikan setiap USB memiliki satu dan hanya satu partisi, jadi baris yang kita butuhkan, untuk kita fstab, adalah:

/dev/sdb1
/dev/sdc1
/dev/sdd1
/dev/sde1

Kemudian Anda mengatakan poin mount Anda harus diperbaiki, jadi setelah Anda membuat direktori Anda, mari tambahkan mereka:

/dev/sdb1 /media/HDD1
/dev/sdc1 /media/HDD2
/dev/sdd1 /media/HDD3
/dev/sde1 /media/HDD4

Karena Anda dapat memiliki hampir semua jenis sistem file, mari kita gunakan autojadi fstab tebak jenis file yang akan digunakan:

/dev/sdb1 /media/HDD1 auto
/dev/sdc1 /media/HDD2 auto
/dev/sdd1 /media/HDD3 auto
/dev/sde1 /media/HDD4 auto

Ok, sekarang mari kita lihat opsi-opsi, yang akan sama untuk CD dengan plus izin baca / tulis:

/dev/sdb1 /media/HDD1 auto rw,users,noauto,allow_other,umask=0
/dev/sdc1 /media/HDD2 auto rw,users,noauto,allow_other,umask=0
/dev/sde1 /media/HDD3 auto rw,users,noauto,allow_other,umask=0
/dev/sde1 /media/HDD4 auto rw,users,noauto,allow_other,umask=0

rwmemberi tahu bahwa kita ingin membaca dan menulis izin, usersmemungkinkan pengguna mana pun untuk memasang perangkat, noautomencegah agar driver dipasang secara otomatis ketika mount -adipanggil, seperti halnya saat boot, mencegah boot KESALAHAN dan PERINGATAN, allow_othermengizinkan pengguna lain selain pengguna yang memasang driver untuk memiliki izin yang sama, dan umask=0mencegah penerapan standar umask.

Sekarang hanya 2 bidang yang tersisa yang cukup banyak hanya tentang dumpurutan dan fsckurutan, yang bisa di 0keduanya, meninggalkan kita dengan hasil akhir:

/dev/sdb1 /media/HDD1 auto rw,user,noauto,allow_other 0 0
/dev/sdc1 /media/HDD2 auto rw,user,noauto,allow_other 0 0
/dev/sdd1 /media/HDD3 auto rw,user,noauto,allow_other 0 0
/dev/sde1 /media/HDD4 auto rw,user,noauto,allow_other 0 0

Dengan ini, setiap kali Anda mencolokkan perangkat USB, perangkat itu akan dipasang secara otomatis di titik pemasangan tanpa campur tangan pengguna. Anda harus memodifikasi sesuai kebutuhan Anda.

Braiam
sumber
terima kasih Braiam. Saya tidak yakin apakah mengubah fstab dapat secara otomatis me-mount USB tanpa perlu reboot atau menggunakan perintah "mount". Saya menemukan solusi sederhana menggunakan autofs. Tidak hanya automount tetapi juga mendukung auto-unmount setelah waktu tanpa tindakan yang ditentukan sebelumnya, yang sangat berguna dalam kasus saya
Kiwi
Tidak, tidak. Seperti yang saya katakan di awal, saya menggunakan menggunakan trik fstab yang sama untuk CD / DVD yang tidak memerlukan penggunaan rootatau mountatau restart.
Braiam
3

Inilah solusi yang saya temukan:

Pertama saya menginstal autofs di PC linux saya:

sudo apt-get install autofs

Ini akan membuat file auto.master di bawah /etc/auto.master

Tambahkan baris berikut di akhir file itu:

/media/mount /etc/auto.mount --timeout=10 --ghost

/media/mountadalah direktori tempat saya ingin memasang semua drive eksternal. /etc/auto.mountadalah file untuk dimasukkan ke dalam aturan pemasangan. --timeout=10berarti itu akan secara otomatis melepas drive setelah 10 detik tidak aktif. --ghostberarti masih meninggalkan gambar konten saat tidak di-mount. Ubah baris ini sesuai dengan kebutuhan Anda.

Edit /etc/auto.mountfile dan tambahkan baris berikut:

disk1  -fstype=auto,sync  :/dev/sdc1
disk2  -fstype=auto,sync  :/dev/sdd1
disk3  -fstype=auto,sync  :/dev/sde1
disk4  -fstype=auto,sync  :/dev/sdf1
disk5  -fstype=auto,sync  :/dev/sdg1
disk6  -fstype=auto,sync  :/dev/sdh1
disk7  -fstype=auto,sync  :/dev/sdi1
disk8  -fstype=auto,sync  :/dev/sdj1
DVD    -fstype=iso9660,ro :/dev/sr0

Untuk drive normal seperti USB atau set eSATA -fstype=auto,sync. Saya memiliki 8 port USB + eSATA jadi saya menyatakan 8 titik pemasangan di sini. PC saya sudah memiliki sdadan sdbsebagai disk lokal jadi saya meletakkan sdc1-> sdj1untuk perangkat eksternal. Mereka sebenarnya adalah node perangkat /devsaat Anda mencolokkan drive. Pengecualian aturan pemasangan adalah pemasangan DVD seperti yang Anda lihat di atas.

Ketika saya memasukkan drive apa pun, drive tersebut akan muncul sebagai disk1, disk2, ... di bawah /media/mountdirektori, dan akan dilepas secara otomatis setelah 10 detik. Saya tidak perlu menyentuh PC saya dan dapat mengaksesnya dari tempat lain (seperti mesin Virtual)

Kiwi
sumber