Raspberry Pi_Kor_14.1.3 block device


Published Book on Amazon


All of IOT

Starting with the Latest Raspberry Pi from Beginner to Advanced – Volume 1

All of IOT

Starting with the Latest Raspberry Pi from Beginner to Advanced – Volume 2


출판된 한글판 도서


최신 라즈베리파이(Raspberry Pi)로 시작하는 사

물인터넷(IOT)의 모든 것 – 초보에서 고급까지 (상)

최신 라즈베리파이(Raspberry Pi)로 시작하는 사

물인터넷(IOT)의 모든 것 – 초보에서 고급까지 (하)


Original Book Contents


14.1.3  block device

 

14.1.3.1    block device 특징

 

block device device에서 자료를 처리할 때 block 단위로 자료를 입출력하며, 중간에 buffer를 두어 처리성능을 높인다.

 

/dev 파일은 mknod 명령으로 만들어지며, 일단 만들어진 후에는 실제 device의 존재와는 무관하게 계속 유지된다. 따라서 실제로 존재하지 않는 device인 경우도 /dev 파일이 생성되어 있을 수 있다. Linux는 다른 프로그램에서 이러한 block device에 대해서 하나의 파일인 것처럼 표준 시스템 기능을 이용하여 open, read, write 처리를 할 수 있다.

 

 

14.1.3.2    block device 종류

 

block device의 대표적인 장치가 hard disk이다. 현재 Linux에서 많이 사용되는 disk에는 IDE(Integrated Disk Electronics) 방식과 SCSI(Small Computer System Interface)방식이 있다.

 

USB flash memory block device형태의 disk인데, 통상 SCSI 방식의 disk이다.

 


 

14.1.3.3    disk device 이름 규칙

 

Linux에서 disk 장치가 설치되면 다음과 같이 일정한 규칙을 가진 이름으로 가진다.

    disk            -- disk 유형  + disk 번호     

    파티션        -- disk 유형  + disk 번호   + 파티션 번호

 

시스템에 설치된 모든 디스크는 "/dev" directory에 하나의 파일처럼 연결된다.

 

 

   disk유형

 

disk 유형에 따라 다음과 같은 코드를 부여한다.

    IDE type disk                      -- hd

    SCSI type disk          -- sd

    Virtual type disk       -- vd

    SD card                 -- mmcblk

 

 

   disk 번호

 

디스크 번호는 동일 disk 유형별로 설치순서에 따라 이름이 부여된다. disk 번호만 있고 파티션 번호가 없는 것은 특정 디스크 장치 전체를 의미한다. disk device 전체를 지칭할 때는 이 이름을 사용해야 한다.

    hard disk     -- a, b, c .. 순서로 이름이 부여된다.

    SD card       -- 0, 1, 2 .. 순서로 이름이 부여된다.

 

다음은 device에 대한 사례이다.

sda                  -- SCSI type       - disk a            - 전체

sda                  -- SCSI type       - disk a            - 전체

mmcblk0           -- SD card type - disk 0            - 전체

 


 

   Partition 번호

 

특정 디스크 번호에서 파티션이 분할되면 장치 별로 순서에 따라 이름이 부여된다. 특정 파티션을 지정할 때는 이 이름을 사용해야 한다.

    hard disk     -- 1, 2, 3 .. 순서로 이름이 부여된다.

    SD card       -- p1, p2, p3 .. 순서로 이름이 부여된다.

 

다음은 device별로 partition에 대한 사례이다.

/dev/hda1                    -- IDE type        - disk a - 파티션 1

/dev/sdb2                     -- SCSI type       - disk b - 파티션 2

/dev/ mmcblk0p1           -- SD card type - disk 0 - 파티션 1

 

 

   /dev 등록 파일 

 

/dev directory에는 disk 자체도 파일로 등록되고, 파티션도 하나의 파일로 등록이 된다. 파티션 번호가 없는 것이 disk 자체를 의미한다.

 

다음은 disk에 대해서 /dev directory에 등록되는 device 파일 이름의 예이다.

 

/dev/hdb                      -- IDE type - disk b - 전체

/dev/hdb1                    -- IDE type - disk b - 파티션 1

/dev/hdb2                    -- IDE type - disk b - 파티션 2

 

/dev/sda                                 -- SCSI type - disk a - 전체

/dev/sda1                     -- SCSI type - disk a - 파티션 1

/dev/sda2                     -- SCSI type - disk a - 파티션 2

 

/dev/mmcblk0               -- SD card type - disk 0 - 전체

/dev/mmcblk0p1           -- SD card type - disk 0 – 파티션 1

/dev/mmcblk0p2           -- SD card type - disk 0 – 파티션 2

/dev/mmcblk0p3           -- SD card type - disk 0 – 파티션 3

 


 

14.1.3.4    "blkid" 명령 - block device 정보 확인

 

시스템에 있는 block device에 대한 정보를 확인하고자 할 때 사용하는 명령이 "blkid"이다.

 

[명령 형식]

blkid  [ options ]   device

 

[명령 개요]

    시스템에 있는 block device에 대한 여러 가지 정보를 확인할 수 있다.

    user 권한    -- super user.

                                      

[상세 설명]

    이 명령은 시스템에 있는 block device를 검색하거나 block deviceattributes를 확인할 수 있다. 이 명령은 block device에 대해서 filesystem type, LABEL, UUID와 같은 정보를 보여준다.

    이 명령은 실제로 설치되어 있는 block device만 보여 준다. 따라서 "/dev" directory에 정의되어 있더라도 실제로 존재하지 않는 경우는 표시되지 않는다.

 

[주요 option]

-h

Display a usage message and exit.

-l

Look up only one device that matches the search parameter specified with -t.

-t NAME=value

 

Search for block devices with tokens named NAME that have the value, and display any devices which are found.  Common values for NAME include TYPE, LABEL,  and UUID.   If  there  are  no devices specified on the Shell, all block devices will be searched; otherwise only the specified devices are searched.

-L label

 

Look up the device that uses this label (equal to: -l -o device -t LABEL= <label>). This lookup method is able to reliably use /dev/disk/by-label udev symlinks (dependent  on  a  setting in /etc/blkid.conf).  Avoid using the symlinks directly; it isnot reliable to use the symlinks without verification.  The -L option works on systems with and without udev.

 


 

[사용 Example]

다음은 SD card USB flash memory가 설치되어 있는 상태에서 명령을 실행한 사례이다.

 

pi@raspberrypi ~ $ sudo blkid

/dev/mmcblk0p1: LABEL="RECOVERY" UUID="5019-0CBC" TYPE="vfat"

/dev/mmcblk0p3: LABEL="SETTINGS" UUID="fbc9f2d1-837b-4b3b-8efc-62e04052534a" TYPE="ext4"

/dev/mmcblk0p5: LABEL="boot0" UUID="0501-A21E" TYPE="vfat"

/dev/mmcblk0p6: LABEL="root" UUID="6f5f8ed3-8603-4468-969b-964be078e131" TYPE="ext4"

/dev/mmcblk0p7: LABEL="boot" UUID="5E6B-94DB" TYPE="vfat"

/dev/mmcblk0p8: LABEL="root0" UUID="6af8520e-9e0b-4197-a848-b5fec5d09136" TYPE="ext4"

/dev/sda1: LABEL="REAL USB" UUID="FEF225C2F2257FCF" TYPE="ntfs"

 

 

 


 

Leave a Reply