Raspbian 설치 및 설정
작성자 | 개요 |
---|---|
Westporch | RaspberryPI(RPI)에 raspbian 설치 및 설정 방법. |
목차
작업 환경
RPI 정보
RPI Model B, RPI2 Model B에서 각각 RASPBIAN Buster LITE(버전: February 2020)를 설치했습니다.
RPI 모델명 | CPU 모델명 | CPU 코어 개수 | 메모리 | HW Revision | RPI Serial | microSD카드 |
---|---|---|---|---|---|---|
RPI Model B | ARMv6-compatible processor rev 7 (v6l) | 1개 | 512MB | 000e | 00000000295c1f3e | 64GB (SanDisk 10 class) |
RPI2 Model B | ARMv7 Processor rev 5 (v7l) | 4개 | 1GB | a01041 | 0000000024253751 | 32GB (SanDisk 10 class) |
Raspbian 정보
Raspbian은 Buster LITE (Debian Buster 기반의 최소 버전)를 설치했습니다. Raspbian 이미지는 라즈베리파이 공식 홈페이지의 다운로드 페이지에서 받을 수 있습니다.
이름 | 버전 | 커널 버전 | 릴리스 노트 | 다운로드 | 비고 |
---|---|---|---|---|---|
RASPBIAN Buster LITE | February 2020 | 4.19 | 릴리스 노트 | 다운로드(ZIP) | Debian Buster 기반의 최소 이미지 |
Raspbian 설치
Raspbian 설치 과정은 간단합니다.
① SD카드에 다운로드한 raspbian 이미지를 burning 합니다. ② SD카드를 RPI에 장착한 후 케이블(전원, 이더넷, 키보드)을 연결하여 부팅합니다.
저는 Windows 10에서 Win32DiskImager로 raspbian 이미지를 구웠습니다. Raspbian의 초기 계정 정보는 다음과 같습니다.
ID | Password |
---|---|
pi | raspberry |
Raspbian 설정
타임존 설정
Raspbian의 기본 타임존은 UTC입니다. sudo dpkg-reconfigure tzdata 명령으로 타임존을 KST로 설정합니다.
$ sudo dpkg-reconfigure tzdata
① sudo dpkg-reconfigure tzdata 실행 ② Asia 선택 ③ Seoul 선택 ④ Would you like the SSH Server to be enabled? 라는 물음에 Yes를 선택합니다.
키보드 레이아웃 설정 [1]
라즈비안을 처음 설치한 후 따옴표(")를 입력하면 제대로 입력되지 않습니다. 키보드 레이아웃을 설정해야 따옴표가 제대로 입력됩니다. 키보드 레이아웃은 아래 방법으로 설정하시면 됩니다.
① sudo raspi-config 실행 ② 'Localisation Options Set up language and regional setings to match your location' 선택 ③ 'Change Keyboard Layout' 선택 ④ 'Generic 105-key PC (intl.)' 선택 ⑤ 'Korean - Korean (101/104 key compatible)' 선택 ⑥ 'The default for the keyboard layout' 선택 ⑦ 'No compose key' 선택 ⑧ raspi-config 메뉴에서 'Finish' 항목을 선택(raspi-config 프로그램 종료)
계정 설정
pi 계정 비밀번호 변경
pi 계정 비밀번호를 재설정합니다.
pi@raspberrypi:~ $ passwd Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully
root 계정 비밀번호 설정
root 계정의 비밀번호를 설정합니다.
pi@raspberrypi:~ $ sudo passwd root Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully
일반 사용자 계정 생성
저는 westporch 계정을 생성했습니다.
pi@raspberrypi:~ $ sudo adduser westporch
Swap 설정 [2]
① /etc/dphys-swapfile에서 CONF_SWAPSIZE 값(단위: MB) 수정 ② sudo systemctl stop dphys-swapfile ③ sudo systemctl start dphys-swapfile ④ 리부팅
/etc/dphys-swapfile에서 CONF_SWAPSIZE 값(단위: MB)을 수정하여 swap 크기를 변경할 수 있습니다. raspbian의 기본 스왑 크기는 100MB입니다. 저는 스왑을 2GB로 사용하기 위해서 CONF_SWAPSIZE 값을 2048로 수정하였습니다.
- CONF_SWAPSIZE=100
+ CONF_SWAPSIZE=2048
CONF_SWAPSIZE 값을 변경한 후 dphys-swapfile 서비스를 정지한 후 다시 시작합니다.
$ sudo systemctl stop dphys-swapfile $ sudo systemctl start dphys-swapfile
시스템을 재시작한 후에 free -h 명령을 실행하면, 스왑 크기가 변경되었음을 확인할 수 있습니다.
root@raspberrypi:/home/westporch# free -h total used free shared buff/cache available Mem: 434M 21M 353M 3.0M 59M 362M Swap: 2.0G 0B 2.0G
Static IP 설정 [3]
Raspbian에서 static ip를 설정하기 위해서는 /etc/network/interfaces 파일을 설정하지 않습니다. /etc/dhcpcd.conf 파일을 수정해야 합니다. /etc/dhcpcd.conf에 각자의 네트워크 환경에 따른 주소를 입력합니다. 저는 다음과 같이 설정했습니다.
- # Example static IP configuration:
- #interface eth0
- #static ip_address=192.168.0.10/24
- #static routers=192.168.0.1
- #static domain_name_servers=192.168.0.1 8.8.8.8
+ interface eth0
+ static ip_address=192.168.0.82/24
+ static routers=192.168.0.1
+ static domain_name_servers=168.126.63.1 8.8.8.8
이제 시스템을 재시작하면, 위 옵션에서 지정한 아이피 주소가 설정됩니다.
각각의 항목들은 다음을 의미합니다.
interface | static ip_address | static routers | static domain_name_servers |
---|---|---|---|
Static ip를 설정할 장치명 | Static ip 주소 및 netmask | Gateway | DNS |
SSH 설정
SSH 활성화 [4]
2016년 11월 이후부터 Raspbian에서 기본적으로 SSH 서버는 비활성화 되었습니다. 따라서 SSH를 사용하려면 수동으로 활성화 해야합니다. SSH를 활성화 하기 위해서는 다음 과정을 거쳐야합니다.
① sudo raspi-config 실행 ② Interfacing Options 선택 ③ SSH 선택 ④ Would you like the SSH Server to be enabled? 라는 물음에 Yes를 선택합니다.
/etc/ssh/sshd_config 수정
/etc/sshd/sshd_config 파일을 수정합니다.
ssh 기본 포트를 설정합니다. 포트번호는 tcp/22번을 반드시 사용할 필요는 없습니다. well-known 포트를 제외한 선호하는 포트를 사용해도 무방합니다.
- #Port 22
+ Port 22
모든 주소에서 RPI로 ssh 접속할 수 있도록 ListenAddress를 0.0.0.0으로 설정합니다.
- #ListenAddress 0.0.0.0
+ ListenAddress 0.0.0.0
ssh를 재시작합니다.
# sudo systemctl restart ssh