리눅스에는 블록 장치 외에도 캐릭터 장치, 네트워크 장치도 있습니다. 문자 장치는 바이트 스트림처럼 액세스할 수 있는 장치입니다. 문자 장치에 읽기 또는 쓰기 요청이 발생하면 해당 IO 작업이 즉시 발생하며 네트워크 장치는 Linux 네트워크 하위 시스템에 의해 구동됩니다. 데이터 패킷 전송 및 수신. 스트림 장치를 지향하는 대신 네트워크 장치에는 Linux 시스템 파일 시스템에 노드가 없습니다.
이 튜토리얼의 운영 환경: linux7.3 시스템, Dell G3 컴퓨터.
리눅스에는 블록 장치 외에도 캐릭터 장치, 네트워크 장치도 있습니다.
Linux 시스템의 장치는 문자 장치, 블록 장치 및 네트워크 장치의 세 가지 범주로 나눌 수 있습니다.
(1) 문자 장치
문자 장치는 바이트 스트림처럼 접근할 수 있는 장치입니다. 문자 장치에 읽기 또는 쓰기 요청이 발생하면 해당 IO 작업이 즉시 발생합니다. Linux 시스템의 많은 장치는 문자 터미널, 직렬 포트, 키보드, 마우스 등과 같은 문자 장치입니다. 임베디드 Linux 개발에서 가장 일반적인 것은 문자 장치와 드라이버입니다.
(2) 블록 장치
블록 장치는 Linux 시스템에서 TO 작업을 수행할 때 블록 단위로 접근해야 하는 장치입니다. 블록 장치 드라이버는 시스템 메모리의 일부를 버퍼로 사용하므로 블록 장치에 대한 읽기 및 쓰기 액세스를 실행한다고 해서 반드시 하드웨어 I/O 작업이 즉시 발생하지는 않습니다. Linux 시스템의 일반적인 블록 장치에는 하드 디스크, 플로피 드라이브 등이 포함됩니다.
(3) 네트워크 장비
네트워크 장비는 네트워크 카드와 같은 하드웨어 장치일 수도 있고 루프백 장치와 같은 순수 소프트웨어 장치일 수도 있습니다. 네트워크 장치는 Linux 네트워크 하위 시스템에 의해 구동되며 스트림 장치가 아닌 데이터 패킷 전송 및 수신을 담당합니다. 따라서 네트워크 장치에는 Linux 시스템 파일 시스템에 노드가 없습니다. 네트워크 장치에 대한 액세스는 열기/닫기 및 읽기/쓰기와 같은 일반적인 파일 작업이 아닌 소켓 호출을 통해 생성됩니다.
Linux에서 블록 장치 정보 보기
Linux에서는 lsblk 명령을 사용하여 블록 장치 정보를 볼 수 있습니다.
lsblk 명령의 영어 이름은 "list block"으로, 사용 가능한 모든 블록 장치의 정보를 나열하는 데 사용되며 이들 사이의 종속성을 표시할 수도 있지만 RAM 디스크 정보는 나열하지 않습니다. 블록 장치에는 하드 드라이브, 플래시 드라이브, CD-ROM 등이 포함됩니다. lsblk 명령은 이제 util-linux로 이름이 변경된 util-linux-ng 패키지에 포함되어 있습니다.
lsblk 명령에는 여러 가지 옵션이 있습니다.
기본 옵션
lsblk 명령은 기본적으로 모든 블록 장치를 트리 보기에 나열합니다. 터미널을 열고 다음 명령을 입력합니다.
$ lsblk
출력은 다음과 같습니다.
lsblk default lsblk default
7개의 열 이름은 다음과 같습니다.
NAME : 这是块设备名。 MAJ:MIN : 本栏显示主要和次要设备号。 RM : 本栏显示设备是否可移动设备。注意,在本例中设备sdb和sr0的RM值等于1,这说明他们是可移动设备。 SIZE : 本栏列出设备的容量大小信息。例如298.1G表明该设备大小为298.1GB,而1K表明该设备大小为1KB。 RO : 该项表明设备是否为只读。在本案例中,所有设备的RO值为0,表明他们不是只读的。 TYPE :本栏显示块设备是否是磁盘或磁盘上的一个分区。在本例中,sda和sdb是磁盘,而sr0是只读存储(rom)。(LCTT译注,此处sr0的RO项没有标记为1,可能存在一些错误?) MOUNTPOINT : 本栏指出设备挂载的挂载点。
모든 장치 나열:
기본 옵션은 빈 장치를 모두 나열하지 않습니다. 이러한 빈 장치를 보려면 다음 명령을 사용하십시오.
$ lsblk -a
이 옵션은 빈 장치를 포함한 모든 장치를 나열합니다.
lsblk 바이트 sda
lsblk 바이트 sda
장치 권한 및 소유자 나열:
lsblk 명령은 특정 장치의 소유권을 나열하는 데에도 사용할 수 있으며 그룹 및 모드도 나열할 수 있습니다. 이 정보는 다음 명령을 통해 얻을 수 있습니다.
$ lsblk -m lsblk permissions lsblk permissions
지정된 장치 나열:
이 명령은 지정된 장치의 정보만 얻을 수도 있습니다. 이는 lsblk 명령에 제공된 옵션 뒤에 장치 이름을 지정하여 수행됩니다. 예를 들어, 다음 명령을 실행하여 디스크 드라이브의 크기를 바이트 단위로 알고 싶을 수 있습니다.
$ lsblk -b /dev/sda
또는 다음 명령도 동일합니다.
$ lsblk --bytes /dev/sda
헤더가 없는 목록 장치:
여러 옵션을 결합하여 지정된 출력을 얻을 수도 있습니다. 예를 들어 기본 트리 형식 대신 목록 형식으로 장치를 나열할 수 있습니다. 다른 열 이름의 헤더를 제거하는 데 관심이 있을 수도 있습니다. 두 가지 다른 옵션을 결합하여 다음 명령을 사용하여 원하는 출력을 얻을 수 있습니다.
$ lsblk -nl
또는 아래의 긴 옵션을 사용하여 동일한 출력을 제공할 수도 있습니다.
$ lsblk --noheadings --list lsblk no header and list lsblk no header and list
SCSI 장치 목록:
SCSI 장치 목록을 얻으려면 -S 옵션만 사용할 수 있습니다. 이 옵션은 대문자 S이므로 종속성을 역순으로 인쇄하는 -s 옵션과 혼동해서는 안 됩니다.
$ lsblk -S
lsblk는 SCSI 장치를 나열하고 -s는 역순 옵션(LCTT 주석: 표시할 장치 및 파티션의 조직 관계를 역전)이며 다음과 같은 출력을 제공합니다.
$ lsblk -s
또는
$ lsblk --inverse
명령을 입력하세요. lsblk를 사용하여 블록 장치에 대한 자세한 정보를 얻을 수 있습니다. 직접 표시해 보세요.
관련 권장 사항: "Linux 비디오 튜토리얼"
위 내용은 블록 장치 외에 Linux에는 어떤 장치가 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!