Saya ingin memasang drive USB, dua di antaranya dan saya perlu dua titik pemasangan yang berbeda. Sayangnya, kernel Linux mengalami perubahan nama dan saya tidak tahu yang mana /dev
lokasi adalah yang benar. Apakah ada cara untuk melihat dmesg
atau /proc
atau di tempat lain untuk mengetahui node perangkat mana yang merupakan drive USB.
(Saya menggunakan ArchLinux jika itu membantu ... /dev/sda
adalah hard drive pertama, /dev/sr0
adalah drive dvd, dll.)
sunting: Drive USB terhubung ke hub USB. Saya melihat melalui dmesg
dan dikatakan hub terhubung dan memindai 3 perangkat yang terhubung. Masih tidak dapat melihat di mana drive USB saya.
df
Perintah menunjukkan kepada Anda di mana itu dipasangJawaban:
Cara termudah: Lihatlah output dari
dmesg
setelah menghubungkan perangkat USB. Seharusnya menunjukkan kepada Anda apa/dev
simpul ditugaskan untuk itu.sumber
dmesg
bekerja dengan baik, tapi saya punya kasus di manadmesg
tidak menunjukkan/dev
simpul:[421963.864281] usb 3-6: new high-speed USB device number 32 using xhci_hcd
Apa artinya ini? Bagaimana saya bisa memasang perangkat ini? Perangkat muncul dilsusb
...Selama Anda berlari udev , Anda dapat melakukan ini dengan mudah dengan merujuk / dev / disk / by-id / usb- nama pabrik _ nomor seri . Ini muncul sebagai tautan simbolis yang bisa Anda referensikan langsung di dalam fstab Anda, atau yang bisa Anda gunakan untuk referensi readlink -e untuk menentukan perangkat blok terkait.
Inilah contoh dunia nyata. Di komputer saya, saya memiliki 3 hard drive USB yang terhubung. Ini masing-masing muncul di / dev / disk / by-id dengan nomor seri unik (meskipun mereka berbagi string pabrikan umum). Saya telah membuat tautan simbolis ke masing-masing dari tiga entri unik ini, dan sekarang dapat dengan cepat menentukan drive mana (dan perangkat mana yang dikaitkan dengan setiap drive) dengan menjalankan readlink -e nama tautan . Misalnya berlari readlink -e / root / disk2 di komputer saya saat ini menampilkan " / dev / sde ", sementara readlink -e / root / disk3 tidak menghasilkan output apa pun.
sumber
for devlink in /dev/disk/by-id/usb*; do readlink -f ${devlink}; done
Semua ini adalah saran yang bagus, tetapi metode yang paling cepat dan paling tidak bertele-tele adalah mengetik saja yang berikut di terminal:
yang akan memberikan daftar semua perangkat yang terpasang (ini mengasumsikan drive USB terpasang, yang biasanya terjadi dengan distro Linux modern).
sumber
mount /dev/id /mount/point
, jadi itu tidak berhasil.df
saya kira juga.Coba perintahnya
udevinfo -q all -n /dev/sda
dimana/dev/sda
adalah jalur ke disk Anda. Ini memberi Anda banyak informasi tentang disk yang Anda lihat - ada entri yang memberi tahu Anda tentang bus yang terhubung dengannya.Ini tentu saja menyelamatkan Anda dari keharusan untuk menelusuri dmesg dan / atau log.
Memperbarui
Setidaknya dari Jul 2010 [ 1 ]
udevinfo
diganti di Debian (dan diturunkan) olehudevadm info
dengan sedikit sementara yang ada symlink segera ditinggalkan dan dihapus (Anda masih dapat menemukannya di mesin lama tidak diperbarui). Selalu dari [ 1 ] kita bisa membaca:sumber
udevinfo
diganti namanyaudevadm
.udevadm info --query=all -n /dev/ttyUSB1
udevadm info --query=all -n /dev/ttyUSB
di Fedora juga.metode paling sederhana untuk melihat apa yang terjadi hanyalah mengetik (sebagai root tentu saja):
ini memberi Anda gambaran lengkap tentang semua perangkat blok bahkan jika tidak dipasang
sumber
/dev/disk/by-*
adalah cara termudah dalam hal ini, jika karena alasan tertentu Anda ingin membuat hidup lebih menarik, Anda dapat menggunakan HAL.Untuk membuat daftar semua perangkat yang Anda gunakan:
Untuk mendapatkan properti tertentu yang Anda gunakan (ini akan kembali
/dev/sd*
pada perangkat penyimpanan USB):Ada juga:
Jika Anda ingin membuatnya lebih rumit, Anda bisa relatif mudah menulis sendiri Auto mounter berbasis HAL , Yang bisa sangat berguna jika Anda ingin mengotomatisasi semuanya.
Dan hanya untuk kelengkapan ada juga:
Yang memberikan beberapa informasi umum tentang USB dan perangkat keras Anda secara umum.
sumber
Dan hanya menganalisis hasilnya.
sumber
Menggunakan
Di bawah aturan udev default, itu akan menunjukkan kepada Anda sebagian besar perangkat usb dan itu akan menunjukkan Anda symlink ke nama perangkat blok mereka pada sistem.
Jika itu tidak berhasil, lihat
/dev/disk/by-id/
langsung.sumber
Untuk perangkat USB, Anda cukup melakukannya
sumber
Lihatlah pohon di bawah
/dev/disk
. Ini daftar disk dan partisinya (sistem file) oleh berbagai skema.sumber
/ var / log / message jika dmesg tidak lagi memiliki informasi.
sumber
Jika Anda mencabut USB drive dan menancapkannya kembali, Anda akan melihatnya menginisialisasi dari kernel (dmesg)
sumber
Berdasarkan jawaban yang sangat baik dari stormlash dan dengan ketergantungan pada udev untuk mengisi pohon perangkat "/ dev / disk / by-id / usb", Anda dapat menentukan predikat (Bash) sebagai berikut:
Dan kemudian menggunakannya:
sumber