Rumah >Tutorial sistem >LINUX >Penjelasan terperinci tentang perintah Linux lsscsi
Untuk memahami arahan lsscsi
, mula-mula kita perlu memahami apa itu SCSI dan antara muka cakera keras biasa serta parameter cakera keras biasa.
SCSI (Antara Muka Sistem Komputer Kecil) ialah protokol pemindahan data yang lengkap, yang digunakan terutamanya untuk memindahkan arahan, status dan menyekat data antara hos dan peranti storan. Di antara pelbagai teknologi storan, teknologi SCSI adalah tiang yang paling penting.
Protokol SCSI terletak di antara sistem pengendalian dan sumber luaran, dan ia mempunyai satu siri komponen berfungsi. Operasi I/O sistem pengendalian pada peranti luaran (seperti cakera, pita, cakera optik, pencetak, dll.) boleh dilaksanakan melalui protokol SCSI. Biasanya, protokol SCSI dibenamkan dalam pemacu peranti atau dalam logik onboard penyesuai hos.
IDE mewakili sejenis cakera keras, tetapi dalam aplikasi sebenar, orang ramai juga biasa menggunakan IDE untuk merujuk kepada pemacu keras jenis IDE yang terawal, ATA-1 Jenis antara muka ini telah dihapuskan dengan pembangunan teknologi antara muka, dan Kemudian, pembangunan itu bercabang kepada lebih banyak jenis antara muka cakera keras, seperti ATA, Ultra ATA, DMA, Ultra DMA dan antara muka lain, yang kesemuanya merupakan cakera keras IDE.
Ciri-cirinya ialah: harga rendah, keserasian kukuh, prestasi kos tinggi, penghantaran data perlahan, tidak menyokong pertukaran panas, dsb.
2. Pemacu keras antara muka SCSIAntara muka SCSI mempunyai kelebihan dalam julat aplikasi yang luas, berbilang tugas, lebar jalur yang besar, penggunaan CPU yang rendah dan kebolehtukaran panas Walau bagaimanapun, harga yang lebih tinggi menjadikannya sukar untuk menjadi popular seperti pemacu keras IDE, jadi pemacu keras SCSI digunakan terutamanya dalam pertengahan hingga tinggi dalam pelayan dan stesen kerja mewah.
Ciri-cirinya ialah: kadar penghantaran yang tinggi, prestasi membaca dan menulis yang baik, boleh menyambung ke berbilang peranti, dan boleh menyokong pertukaran panas, tetapi harganya agak mahal.
3. Jenis antara muka SATASerial ATA menggunakan kaedah sambungan bersiri Bas Serial ATA menggunakan isyarat jam terbenam dan mempunyai keupayaan pembetulan ralat yang lebih kuat Berbanding dengan masa lalu, perbezaan terbesarnya ialah ia boleh menyemak arahan penghantaran (bukan hanya data). didapati, ia akan diperbetulkan secara automatik, yang sangat meningkatkan kebolehpercayaan penghantaran data.
Antara muka bersiri juga mempunyai kelebihan struktur ringkas dan sokongan untuk pertukaran panas.
-bash: lsscsi command not found #Debian apt-get install lsscsi #Ubuntu apt-get install lsscsi #Alpine apk add lsscsi #Arch Linux pacman -S lsscsi #Kali Linux apt-get install lsscsi #CentOS yum install lsscsi #Fedora dnf install lsscsi #Raspbian apt-get install lsscsi #Docker docker run cmd.cat/lsscsi lsscsi
Alamat penerangan arahan terperinci
https://sg.danny.cz/scsi/lsscsi.html
sintaks arahan lsscsi:
lsscsi [选项] [H:C:T:L]
Pilihan arahan lsscsi:
Pilihan | Maksudnya |
---|---|
-g | Paparkan nama fail peranti biasa SCSI |
-k | Tunjukkan nama kernel dan bukannya nama nod peranti |
-d | Menunjukkan nombor utama dan nombor kedua nod peranti |
-H | Senaraikan hos SCSI yang sedang disambungkan kepada sistem dan bukannya peranti SCSI |
-l | Paparkan maklumat tambahan untuk setiap peranti SCSI (hos) |
-c | Berbanding dengan output melaksanakan perintah cat /proc/scsi/scsi |
-p | Tunjukkan maklumat integriti (perlindungan) data tambahan |
-t | Tunjukkan maklumat pemindahan |
-L | Paparkan maklumat tambahan dalam bentuk "nama atribut=nilai" |
-v | Output nama direktori apabila maklumat ditemui |
-y | Anggap sysfs dipasang pada laluan yang ditentukan dan bukannya "/sys" lalai |
-s | Tunjukkan saiz kapasiti. |
-c | Tunjukkan maklumat lalai dengan nama penuh. |
-d | Paparkan nombor peranti utama dan kedua peranti. |
-g | Paparkan nama peranti sg yang sepadan. |
-H | Paparkan senarai pengawal hos, -Hl, -Hlv. |
-l | Tunjukkan atribut yang berkaitan, -ll,-llll=-L. |
-v | Paparkan direktori di mana sifat peranti berada. |
-x | Paparkan nombor lun dalam perenambelasan. |
-p | Output DIF, jenis perlindungan DIX. |
-P | Keluarkan maklumat mod perlindungan yang sah. |
-i | Tunjukkan atribut berkaitan udev |
-w | Tunjukkan WWN |
-t | Paparkan maklumat penghantaran yang sepadan (ATA, FC, SBP, ISCSI, SPI, SAS, SATA, USB), -Ht, -tl (termasuk alamat sas) |
lsscsi 列出所有 SCSI 设备:
peng@ubuntu:~$ lsscsi [3:0:0:0] cd/dvd NECVMWar VMware SATA CD01 1.00 /dev/sr0 [32:0:0:0] disk VMware, VMware Virtual S 1.0 /dev/sda
lsscsi -L列出所有具有详细属性的 SCSI 设备:
peng@ubuntu:~$ lsscsi -L [3:0:0:0] cd/dvd NECVMWar VMware SATA CD01 1.00 /dev/sr0 device_blocked=0 iocounterbits=32 iodone_cnt=0x229 ioerr_cnt=0x4 iorequest_cnt=0x23a queue_depth=1 queue_type=none scsi_level=6 state=running timeout=30 type=5 [32:0:0:0] disk VMware, VMware Virtual S 1.0 /dev/sda device_blocked=0 iocounterbits=32 iodone_cnt=0x37370 ioerr_cnt=0x3 iorequest_cnt=0x37370 queue_depth=32 queue_type=simple scsi_level=3 state=running timeout=180 type=0
lsscsi -s列出所有具有人类可读磁盘容量的 SCSI 设备:
peng@ubuntu:~$ lsscsi -s [3:0:0:0] cd/dvd NECVMWar VMware SATA CD01 1.00 /dev/sr0 - [32:0:0:0] disk VMware, VMware Virtual S 1.0 /dev/sda 536GB
/proc/scsi/
peng@ubuntu:~$ cd /proc/scsi/ peng@ubuntu:/proc/scsi$ ls device_info mptspi scsi sg peng@ubuntu:/proc/scsi$ cat scsi Attached devices: Host: scsi32 Channel: 00 Id: 00 Lun: 00 Vendor: VMware, Model: VMware Virtual S Rev: 1.0 Type: Direct-Access ANSI SCSI revision: 02 Host: scsi3 Channel: 00 Id: 00 Lun: 00 Vendor: NECVMWar Model: VMware SATA CD01 Rev: 1.00 Type: CD-ROM ANSI SCSI revision: 05
/sys/class/scsi_host
peng@ubuntu:/sys/class/scsi_host$ ls host0 host12 host16 host2 host23 host27 host30 host5 host9 host1 host13 host17 host20 host24 host28 host31 host6 host10 host14 host18 host21 host25 host29 host32 host7 host11 host15 host19 host22 host26 host3 host4 host8
/sys/class/scsi_device
peng@ubuntu:/sys/class/scsi_device$ ls 3:0:0:0 32:0:0:0
/sys/class/scsi_disk
peng@ubuntu:/sys/class/scsi_disk$ ls 32:0:0:0
/sys/class/scsi_generic
peng@ubuntu:/sys/class/scsi_generic$ ls sg0 sg1
/sys/bus/scsi
peng@ubuntu:/sys/bus/scsi$ ls devices drivers drivers_autoprobe drivers_probe uevent peng@ubuntu:/sys/bus/scsi/devices$ ls 3:0:0:0 host11 host16 host20 host25 host3 host5 target3:0:0 32:0:0:0 host12 host17 host21 host26 host30 host6 target32:0:0 host0 host13 host18 host22 host27 host31 host7 host1 host14 host19 host23 host28 host32 host8 host10 host15 host2 host24 host29 host4 host9
其中target3:0:0
对应
host:bus:id:lun
drivers/scsi/Kconfig:213 config SCSI_LOGGING bool "SCSI logging facility" depends on SCSI ---help--- This turns on a logging facility that can be used to debug a number of SCSI related problems. If you say Y here, no logging output will appear by default, but you can enable logging by saying Y to "/proc file system support" and "Sysctl support" below and executing the command echo > /proc/sys/dev/scsi/logging_level where is a four byte value representing the logging type and logging level for each type of logging selected. There are a number of logging types and you can find them in the source at . The logging levels are also described in that file and they determine the verbosity of the logging for each logging type. If you say N here, it may be harder to track down some types of SCSI problems. If you say Y here your kernel will be somewhat larger, but there should be no noticeable performance impact as long as you have logging turned off.
-> drivers\scsi\scsi_logging.h
/* * Note - the initial logging level can be set here to log events at boot time. * After the system is up, you may enable logging via the /proc interface. */ unsigned int scsi_logging_level; #if defined(CONFIG_SCSI_LOGGING) EXPORT_SYMBOL(scsi_logging_level); #endif
scsi_logging_level 被定义成int类型(32bit),该机制使用了30个bit,从低位到高位每3bit为一个logging level从SCSI_LOG_ERROR_SHIFT到SCSI_LOG_IOCTL_SHIFT(SCSI_LOG_XXX_SHIFT为不同level的移位数),每个level使用的bit数都是3,所以 SCSI_LOG_XXX_BITS 均为3
-1 - Enable scsi events to syslog. // 开启所有scsi log 0 - Disable scsi events to syslog. // 关闭所有scsi log
命令:
echo 0/-1 > /proc/sys/dev/scsi/logging_level
Atas ialah kandungan terperinci Penjelasan terperinci tentang perintah Linux lsscsi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!