부팅 시 GUI 프로그램이 시작되도록 하세요.

부팅 시 GUI 프로그램이 시작되도록 하세요.

사용자에게 숫자 1-4를 입력한 다음 구성 파일에 저장하도록 요청하는 라즈베리 파이의 데비안용으로 작성된 C 프로그램이 있습니다. 이는 구성 파일이 누락된 경우에만 발생합니다. 시작 시 이 프로그램을 실행하고 싶습니다. 문제는 부팅 시 실행할 수 있지만 터미널 창을 표시하여 볼 수 없다는 것입니다. /etc/rc.local을 편집하고 거기에 명령을 추가해 보았습니다. crontab을 편집해 보았습니다. 나는 "export display=:0 && command"를 사용하여 모든 트릭을 시도했습니다. 어떤 제안이 있으십니까?

편집하다:

이것은 /etc/rc.local에서 실제로 실행하는 명령입니다.

x-terminal-emulator --command=/opt/vc/src/hello_pi/initialConfig/./initialConfig.bin --display=:0

프로그램은 scanf()를 사용하여 키보드 입력을 캡처하고 피드백을 표시합니다.

답변1

시작 프로세스 중에는 X Window 터미널을 실행할 수 없습니다. 런레벨에서 실행되는 X 서버가 없습니다. 따라서 프로그램에서 비슷한 작업을 수행 /etc/rc.local한 다음 사용자 입력을 수집하고 이를 사용하여 실행 파일을 호출할 수 있습니다.

#!/bin/sh
INPUT_STRING=hello
while [ "$INPUT_STRING" != "bye" ]
do
  echo "Please type something in (bye to quit)"
  read INPUT_STRING
  echo "You typed: $INPUT_STRING"
done

myexec $INPUT_STRING

이는 단지 예시일 뿐이므로 필요에 맞게 변경해야 합니다.

답변2

나는 마침내 그것을 알아 냈습니다. 사용자 홈 디렉터리에서 /.config/lxsession/LXDE/ 경로에 autostart라는 파일을 생성한 다음 로그인 후 실행하려는 모든 명령을 자동 시작 파일에 추가해야 합니다.

관련 정보