IT/RaspberryPi

[raspberrypi][4b] raspi-config cli 로 명령하기

심량 2022. 9. 27. 11:18

보통 라즈베리파이 설정을 보면 sudo raspi-config 명령을 실행해서 ncurses 로 만들어진 메뉴를 선택해서 설정을 합니다.

 

그런데 이런 설정 마저도 일괄(batch)로 처리하고 싶은 때가 있습니다.

 

라즈베리리 파이 포럼에 보면 관련한 내용이 있습니다. nonint 라는 키워드를 인수로 주고 이 다음에 원하는 값을 설정할 수 있다고 합니다.

아래 내용을 보시면 실제 실행할 수 있는 항목들을 확인할 수 있습니다만...

자기가 원하는 내용이 뭔지, 또는 찾았어도 값을 어떻게 줘야하는지 아리송할 때가 있습니다. 특히나 질문 연속으로 물어보는 시리얼 설정 등...

 

질문 한 개로 결정되는 것(켠다/끈다)은 대부분 0은 켜는 것이고 1은 끄는 것입니다.

 

질문이 여러 개인 항목들은 맨 아래에 설명된 항목들을 실제로 명령 내려보고 sudo raspi-config 으로 해당 항목 들어가서 어떤 값이 선택되었는지 확인해봐야 합니다.

 

예를 들면 제가 사용한 설정은 시리얼 설정(3 Interface Options->P6 Serial Port)입니다.

첫 질문(Would you like a login shell to be accessible over serial?)은 No, 두번째 질문(Would you like the serial port hardware to be enabled?)은 Yes 로 선택한 경우 이 값은 2가 됩니다.

첫 질문을 Yes 하면 모두 Yes 가 되고 이 값은 0이 됩니다.

모든 질문을 No 하면 이 값은 1이 됩니다.

이 항목 실행시 최종적으로 sudo raspi-config nonint do_serial 명령을 실행하게 됩니다.

do_serial 다음에 위에서 결정된 선택 값을 줘야 합니다.

ex) sudo raspi-config nonint do_serial 1

혹시나 현재 값에 따라 실행하고 싶다면 이 경우 sudo raspi-config nonint get_serial 하면 1 값이 반환되고 sudo raspi-config nonint get_serial_hw 하면 0 값이 반환됩니다.

# 1|0 -> 1=false/off 0=true/on
raspi-config nonint get_can_expand
raspi-config nonint do_expand_rootfs
raspi-config nonint get_hostname
raspi-config nonint do_hostname "yourhostname"
raspi-config nonint get_boot_cli
raspi-config nonint get_autologin
raspi-config nonint do_boot_behaviour B1
raspi-config nonint do_boot_behaviour B2
raspi-config nonint do_boot_behaviour B3
raspi-config nonint do_boot_behaviour B4
raspi-config nonint get_boot_wait
raspi-config nonint do_boot_wait 1|0
raspi-config nonint get_boot_splash
raspi-config nonint do_boot_splash 1|0
raspi-config nonint get_overscan
raspi-config nonint do_overscan 1|0
raspi-config nonint get_pixdub
raspi-config nonint do_pixdub 1|0
raspi-config nonint get_camera
raspi-config nonint do_camera 1|0
raspi-config nonint get_ssh
raspi-config nonint do_ssh 1|0
raspi-config nonint get_vnc
raspi-config nonint do_vnc 1|0
raspi-config nonint get_spi
raspi-config nonint do_spi 1|0
raspi-config nonint get_i2c
raspi-config nonint do_i2c 1|0
raspi-config nonint get_serial
raspi-config nonint get_serial_hw
raspi-config nonint do_serial 1|0
raspi-config nonint get_onewire
raspi-config nonint do_onewire 1|0
raspi-config nonint get_rgpio
raspi-config nonint do_rgpio 1|0
raspi-config nonint get_blanking
raspi-config nonint do_blanking 1|0
raspi-config nonint get_pi_type
raspi-config nonint is_pi
raspi-config nonint is_pifour
raspi-config nonint is_fkms
raspi-config nonint get_config_var arm_freq /boot/config.txt
raspi-config nonint do_overclock None|Modest|Medium|High|Turbo
raspi-config nonint get_config_var gpu_mem /boot/config.txt
raspi-config nonint get_config_var gpu_mem_256 /boot/config.txt
raspi-config nonint get_config_var gpu_mem_512 /boot/config.txt
raspi-config nonint get_config_var gpu_mem_1024 /boot/config.txt
raspi-config nonint do_memory_split 16|32|64|128|256
raspi-config nonint get_config_var hdmi_group /boot/config.txt
raspi-config nonint get_config_var hdmi_mode /boot/config.txt
raspi-config nonint get_wifi_country
# find wifi countries here /usr/share/zoneinfo/iso3166.tab
raspi-config nonint do_wifi_country "yourcountry"
raspi-config nonint do_pi4video V1
raspi-config nonint do_pi4video V2
raspi-config nonint do_pi4video V3
raspi-config nonint get_pi4video
raspi-config nonint get_overlay_now
raspi-config nonint get_overlay_conf
raspi-config nonint get_bootro_conf
raspi-config nonint enable_overlayfs
raspi-config nonint disable_overlayfs
raspi-config nonint enable_bootro
raspi-config nonint disable_bootro
raspi-config nonint is_uname_current
raspi-config nonint list_wlan_interfaces
raspi-config nonint is_installed realvnc-vnc-server
raspi-config nonint is_installed xscreensaver
vcgencmd get_mem gpu | cut -d = -f 2 | cut -d M -f 1
echo \"$SUDO_USER:%s\" | chpasswd