저는 PHP를 사용하여 Raspberry Pi의 GPIO 핀을 제어하기 위한 웹 페이지가 있는 시스템을 구축하기 위해 buildroot를 사용하고 있습니다. 이를 위해 /sys/class/gpio/.에 있는 커널 파일에 쓰고 읽습니다. 문제는 아파치가 그러한 디렉토리와 파일에 쓰거나 읽을 수 있는 권한이 없다는 것입니다. 모든 디렉터리 권한을 다음으로 변경하면 됩니다.
chmod a+rx dir_name
하지만 시스템이 꺼지면 /sys/... 권한이 기본값으로 재설정되기 때문에 시스템을 켤 때마다 이 작업을 수행해야 합니다.
그렇다면 이 문제를 해결하는 가장 쉬운 방법이 무엇인지 궁금합니다. 어느 시점에서는 /sys/class/gpio/export에 GPIO 번호를 쓰고 새 디렉토리(/sys/class/gpio/gpioN/, 여기서 N은 핀 번호)를 생성할 수 있다는 점을 잊지 마십시오. 새 파일도 변경되었습니다.
나는 이런 종류의 일에 능숙하지 않지만, 내가 생각할 수 있는 유일한 방법은 부팅 시 모든 GPIO 핀을 내보내는 스크립트를 실행하는 것입니다(/sys/class/gpio/export에 쓰기). 그런 다음 모든 디렉토리와 파일에 대한 권한을 변경하십시오. 문제는 /etc/init.d 디렉토리에 있어야 한다는 점을 제외하고는 그러한 스크립트를 실행하는 방법을 모른다는 것입니다. 해당 디렉토리의 일부 파일을 보았지만 이해할 수 없습니다. 어떤 언어로 작성되어 있습니까?
편집 1
Apache 사용자를 찾으려면 다음 명령을 실행할 수 있다는 기사를 발견했습니다.
ps aux | egrep '(apache|httpd)'
출력은 다음과 같습니다.
135 root /usr/bin/httpd -k start
138 daemon /usr/bin/httpd -k start
139 daemon /usr/bin/httpd -k start
140 daemon /usr/bin/httpd -k start
1133 root egrep (apache|http)