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
15.1.4 특별 device 검토
15.1.4.1 booting SD card
기본 Debian 배포판에서는 SD카드가 두 개의 파티션으로 구성되어 있다. 첫 번째 파티션은 마이크로소프트의 분리 가능 장치들을 위한 포맷인 VFAT 포맷의 75MB 크기로 되어 있으며, Raspberry Pi를 설정하는데 필요한 파일들과 Linux 자체를 load하기 위한 파일들을 가지고 있으며 부팅 후에는 /boot로 mount된다. 두 번째 파티션은 Linux의 고속 접근 및 데이터 안정성을 위한 기본 포맷인 EXT4 포맷으로 훨씬 크기가 크다. 나머지 모든 프로그램, 사용자가 설치한 프로그램, 사용자 데이터가 모두 이 곳에 저장된다. SD 카드의 대부분을 차지한다.
하지만 <NOOBS> Utility를 이용하는 경우는 SD card의 partition이 위와는 많이 다른 형태로 구성되어 있다. 처음 SD card를 FAT 형식으로 format하여 <NOOBS> Utility 파일을 복사할 때는 SD card의 전체 공간을 차지하는 한 개의 partition만 존재한다. 하지만 운영체저를 설치하는 과정에서 설치와 복구과정을 통제하고, 설치가 완료된 운영체제를 관리할 목적으로 SD card에 여러 개의 partition을 만들어 여러가지 용도로 사용하게 된다. 더 상세한 내용은 다음을 참조하기 바란다.
■ https://github.com/raspberrypi/noobs/wiki/NOOBS-partitioning-explained
다음은 <NOOBS> Utility를 이용하여 Raspbian 운영체제를 설치했을 때 booting SD card의 partition과 device 파일에 대한 사례이다. 설치되는 운영체제의 구성 형태에 따라 partition의 구성이 이와는 다를 수 있다는 유념하기 바란다..
■ block device mmcblk0p1 -- Labe "RECOVERY" -- NOOBS Utility file
■ block device mmcblk0p2 -- Any logical partitions
■ block device mmcblk0p5 -- Labe "SETTINGS" -- NOOBS settings
■ block device mmcblk0p6 -- Labe "boot" -- Raspbian boot files
■ block device mmcblk0p7 -- Labe "root0" -- Raspbian root filesystem
15.1.4.2 USB 저장장치와 mount
Raspberry Pi 시스템이 console에서 LXDE를 이용하여 자동 또는 수동으로 Desktop GUI에 logon하면 USB 저장장치는 자동 mount된다. 하지만 VNC 프로그램을 이용하여 원격으로 Desktop window 방식으로 접속하는 경우는 USB 저장장치가 자동으로 mount되지 않는다. 또한 console 접속이나 원격접속의 어떤 경우이든지, Desktop GUI에 접속되어 있는 상태에서 USB 저장장치를 처음으로 연결하면, 시스템이 mount 여부를 확인하도록 되어 있으며, 여기서 mount를 지시하면 자동으로 mount 된다.
하지만 console에서 Terminal 접속으로 booting하는 경우는 자동으로 mount 되지 않는다. 만약 console terminal 상태에서도 USB 장치를 사용하고자 하면 수동으로 mount를 하거나 "/etc/fstab" 파일에 등록해서 자동 mount되도록 해야 한다.
참고로 과거 Linux 버전과 달리 "/etc/fstab" 파일에서는 이제 더 이상 이동식 저장장치 정보를 관리하지 않는다. 이러한 이동식 저장장치들은 하드웨어 추상화 계층(Hardware Abstraction Layer, HAL)이라고 하는 시스템에 의해 자동적으로 검색된 후, "/media" directory에 생성된 전용 마운트 지점(디바이스 볼륨 ID 정보 등을 바탕으로 생성)에 마운트된다. 필요하다면 "/etc/fstab" 파일에 자신만의 하드디스크 또는 이동식 저장장치 파티션에 대한 정보 추가할 수 있으며, 원격지 파일시스템(NFS, 삼바 등) 역시 "/etc/fstab" 파일에 포함시킬 수 있다.
[사용 Example]
다음은 USB flesh memory를 Raspberry Pi에 설치한 경우에 대한 사례이다. 다음은 USB memory를 Raspberry Pi 시스템에 꼽은 후에 device 등록 상태를 확인해 본 것이다.
pi@raspberrypi3:~ $ lsusb |
Bus 001 Device 007: ID 045e:008a Microsoft Corp. Wireless Keyboard and Mouse Bus 001 Device 005: ID 1c4f:0002 SiGma Micro Keyboard TRACER Gamma Ivory Bus 001 Device 008: ID 0781:5567 SanDisk Corp. Cruzer Blade Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
|
하지만 USB memory에 대한 mount 상태를 확인하기 위해서 "/media" directory를 확인해 보면 mount된 것이 없는 것을 확인할 수 있다.
pi@raspberrypi3:~ $ ls -l /media/pi |
total 4 drwx------ 2 root root 4096 Jun 13 2016 SETTINGS |
이번에는 booting할 때 LXDE 프로그램으로 곧바로 Desktop window를 시작하도록 설정을 변경한 다음 다시 reboot 한 이후에 "/media" directory를 확인해 본 것이다. 그러면 "/media" directory에 해당 USB memory가 mount되어 있는 것을 확인할 수 있다.
pi@raspberrypi3:~ $ ls -l /media/pi |
total 8 drwx------ 8 pi pi 4096 Jan 1 1970 ESD-USB drwx------ 2 root root 4096 Jun 13 2016 SETTINGS |
다음은 Desktop window에서 mount된 상태를 확인해 본 것이다. 해당 USB memory가 mount 되어 있는 것을 확인할 수 있다.
그림 15‑1 USB 장치 mount
그럼 이번에는 Desktop window 상태에서 USB memory를 Raspberry Pi 시스템에 연결해 보도록 하겠다. 그러면 다음과 같이 mount 여부를 확인하는 popup 화면이 나타난다.
여기서 사용자 암호를 입력하면 해당 USB memory가 자동으로 mount 된다. mount가 완료되면 다음과 같이 해당 내용을 조회할 것인지를 확인하는 popup 화면이 나타나고, "/media" 폴더를 보면 USB memory가 mount되어 있는 것을 확인할 수 있다.