====== Raspberry pi Settings ====== ===== GPIO controls without root ===== $ sudoedit /etc/udev/rules.d/88-gpio-without-root.rules Filename: 88-gpio-without-root.rules # /etc/udev/rules.d/88-gpio-without-root.rules # 두 디렉터리의 소유자를 root로, 그룹은 dialout으로 설정 SUBSYSTEM=="gpio", RUN+="/bin/chown -R root.dialout /sys/class/gpio" SUBSYSTEM=="gpio", RUN+="/bin/chown -R root.dialout /sys/devices/virtual/gpio/" # 두 디렉터리에 대해 스틱키 비트를 설정 SUBSYSTEM=="gpio", RUN+="/bin/chmod g+s /sys/class/gpio/" SUBSYSTEM=="gpio", RUN+="/bin/chmod g+s /sys/devices/virtual/gpio/" # dialout 그룹에 속한 사용자가 읽고 쓸 수 있도록 디렉터리 권한을 설정 SUBSYSTEM=="gpio", RUN+="/bin/chmod -R ug+rw /sys/clas/gpio/" SUBSYSTEM=="gpio", RUN+="/bin/chmod -R ug+rw /sys/devices/virtual/gpio/" $ sudo service udev restart $ sudo udevadm trigger --subsystem-match=gpio $ ls -lR /sys/class/gpio/ $ echo "27" > /sys/class/gpio/unexport $ echo "27" > /sys/class/gpio/export $ echo "out" > /sys/class/gpio/gpio27/direction $ echo "1" > /sys/class/gpio/gpio27/value $ echo "0" > /sys/class/gpio/gpio27/value $ sudo adduser $(whoami) dialout $ newgrp dialout ===== SPI dev ===== $ sudo apt update $ sudo apt -y install git python-dev $ git clone https://github.com/doceme/py-dpidev.git $ cd py-spidev/ $ sudo python setup.py install $ sudoedit /etc/modprobe.d/raspi-blacklist.conf delete line from /etc/modprobe.d/raspi-blacklist.conf blacklist spi-bcm2708 $ sudo cp 99-spi.rules /etc/udev/rules.d/99-spi.rules 99-spi.rules # /etc/udev/rules.d/99-spi.rules SUBSYSTEM=="spidev", MODE="0666" $ ls -l /dev/spi* ===== auto login ===== $ sudoedit /etc/inittab 1:2345:respawn:/sbin/getty --noclear 38400 tty1 --autologin pi To connect sensors to serial ports, delete serial console /etc/inittab # T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100 ===== using SMBus and I2C without root ===== $ sudo apt update $ sudo install python-smbus Delete below line in /etc/modprobe.d/raspi-blacklist.conf $ sudoedit /etc/modprobe.d/raspi-blacklist.conf blacklist i2c-bcm2708 $ sudoedit /etc/modules in /etc/modules i2c-bcm2708 i2c-dev $ sudo cp 99-i2c.rules /etc/udev/rules.d/99-i2c.rules 99-i2c.rules # /etc/udev/rules.d/99-i2c.rules SUBSYSTEM=="i2c-dev", MODE="0666" $ ls -l /dev/i2c* ===== install rdp ===== $ sudo apt install xrdp ===== directories and commands ===== | sudo shutdown -P now | 라즈베리 파이를 안전하게 종료 | | sudo raspi-config | 라즈베리 파이의 대표적인 설정 사항이 담긴 메뉴를 띄운다(이를 통해 설정을 변경했다면, 대부분 다시 부팅한 후 새 설정이 적용된다). | | nano foo.txt | foo.txt라는 파일을 편집한다. 편집한 페이지를 저장하려면 [Ctrl]+[X] 키를 누른 후 y를 입력하고 [Enter]나 [Return] 키를 누른다. | | sudoedit /etc/motd | /etc/motd라는 파일을 루트 권한으로 열어서 편집한다. nano sudo /etc/motd와 달리 안전을 위한 검사 과정이 있다. | | /var/log/ | 시스템 로그 파일. /var/log/syslog와 /var/log/auth.log 등이 들어 있다. | | /etc/ | 시스템 설정 파일이 들어 있다. | | /sys/ | 휘발성 데이터(입력 및 출력 핀처럼 시스템이 실행되는 동안 계속 변하는 데이터)를 읽거나 수정하기 위한 가상 파일 시스템 | | /media/ | 제거할 수 있는 장치. /media/cdrom 이나 /media/usbdisk 등이 있다. |