SCSI 장치가 제거 가능한지 어떻게 알 수 있나요?

SCSI 장치가 제거 가능한지 어떻게 알 수 있나요?

DMESG에는 다음이 표시됩니다.

[sdb] Attached SCSI removable disk

  1. Linux는 제거 가능한 것과 그렇지 않은 것을 어떻게 결정합니까?
  2. 장치가 "제거 가능"한지 또는 /sys 또는 /proc에 있는 것과 같은 로그 이외의 장치인지 확인할 수 있는 방법이 있습니까?

답변1

무엇보다도 모든 블록 장치에는 removable속성이 있습니다.블록 장치 속성. 이러한 속성은 사용자 영역에서 읽을 수 있습니다.시스템 파일 시스템예를 들어./sys/block/DEVICE/ATTRIBUTE/sys/block/sdb/removable

ATTR{removable}=="0"udev 규칙을 사용하거나 이 속성에서 이 속성을 쿼리할 수 있습니다 ATTR{removable}=="1".

이동식(장치는 존재하지만 미디어가 없을 수 있음)은 핫 스왑 가능(장치가 왔다 갔다 할 수 있음)과 다릅니다. 예를 들어, CD 드라이브는 분리 가능하지만 일반적으로 핫스왑이 불가능합니다. USB 플래시 드라이브는 둘 다이지만 외부 인클로저의 하드 드라이브는 일반적으로 핫스왑이 가능하지만 제거할 수는 없습니다.

장치가 분리 가능한 것으로 간주되는 구체적인 세부 사항을 알고 싶다면 더 자세히 살펴봐야 합니다.커널 소스 코드. 검색 removable– 잘못된 클릭이 너무 많지 않습니다. SCSI 장치의 경우 이 removable비트는 장치에서 읽혀집니다.scsi_add_lunSCSI 쿼리 명령.

답변2

열심히 노력한 끝에 두 번째 질문에 대한 답을 찾았습니다.

cat /sys/block/sda/removable

관련 정보