Linux를 실행하는 물리적 시스템 (특히 CentOS 6.3)이 있는데 현재 사용되지 않는 SATA 포트 수 (즉, 아무것도 연결되어 있지 않음)를 알고 싶습니다. 물론 기계를 열 수는 있지만 물리적으로 접근 할 수 없다고 가정 해 봅시다. 사용되지 않은 SATA 포트를 표시하는 데 사용할 수있는 명령이 있습니까?
이미 lshw
명령 에 대해 알고 있지만, 알 수있는 한, 사용 된 SATA 포트만 나열하고 사용 가능한 포트는 표시하지 않습니다.
답변
사용되지 않은 SATA 포트를 표시하는 데 사용할 수있는 명령이 있습니까?
아니요, 그러나 반대의 경우도 가능합니다. 사용중인 포트를 나열 할 수 있습니다. 그런 다음 (수동으로) 마더 보드에 몇 개의 포트가 있는지 찾고, 이미 사용중인 포트 수를 빼고 나머지 포트 수를 얻습니다.
이것은 SATA 커넥터 당 하나의 SATA 드라이브가 연결되어 있다고 가정합니다 (예 : 포트 승수 없음 ).
여기에는 여러 가지 방법이 있습니다.
모든 SATA 컨트롤러에 드라이버가로드 된 경우 (정상적으로 정상이면) fdisk -l
모든 디스크를 가장 쉬운 방법으로 나열합니다.
더 이상 fdisk가 없으면 (gpart와 같은 최신 변종을 대체하고 있음) 부트 로그를 읽을 수 있습니다. 일부 인터넷 검색은 CentOS에 dmesg 를 통해 사용할 수 있음을 보여 주지만 로그 파일을 직접 읽을 수도 있습니다. /var/log/dmesg.log, /var/run/dmesg.boot 또는 / var / log / boot에있을 수 있습니다. (CentOS를 사용하지 않는 사람들을 위해 이것을 일반적으로 유지하십시오).
다음이 있습니다 lspci
. SATA 컨트롤러를 포함한 모든 PCI 및 PCI-e 장치가 나열됩니다. -v
읽기 쉬운 출력을 얻으려면 추가하십시오 .
또는을 사용하십시오 dmidecode
. BIOS에 정보를 요청합니다. 이 명령의 출력이 압도적으로 보이면 -t NR
옵션으로 제한하십시오 .
답변
3 년이 지났지 만 누군가 Google을 통해 온다면 여기로갑니다 .EPEL을 활성화 한 다음 lsscsi 를 설치 하면 연결된 장치에 대한 정보를 제공하지만 -H 매개 변수는 필요한 것입니다.
–hosts | -H는 scsi 장치가 아닌 scsi 호스트를 나열합니다.
다른 출력 모드와 비교하면 차이점이 있습니다.
root@server1:~# lsscsi -H
[0] ata_piix
[1] ata_piix
[2] ata_piix
[3] ata_piix
[4] usb-storage
root@server1:~# lsscsi -g
[0:0:0:0] disk ATA WDC WD2004FBYZ-0 RR03 /dev/sda /dev/sg0
[0:0:1:0] disk ATA WDC WD2004FBYZ-0 RR04 /dev/sdb /dev/sg1
[1:0:0:0] disk ATA WDC WD2004FBYZ-0 RR03 /dev/sdc /dev/sg2
[4:0:0:0] disk Seagate Backup+ Desk 0342 /dev/sdd /dev/sg3
업데이트 : 아무것도 설치하지 않고 무시하십시오.
dmesg | grep 'SATA link down'
사용하지 않는 포트가 표시됩니다.