일반 사용자로 rc.local을 실행하는 방법은 무엇입니까? 포함하여 로그인 직후에 전화를 받고

나는 ‘startx’를 포함하여 로그인 직후에 전화를 받고 싶다는 칭찬을 가지고 있으며, rc.local그들에게 좋은 곳 이라고 생각 했지만 문제는 rc.local루트로 실행되고 싶지 않기 때문에 분명히 할 수 있습니다. 이 같은:

su username -c somecommend-here

그러나 전체 ‘rc.local’을 일반 사용자로 실행하는 방법을 찾고 있습니까, 아니면 내 코드를 넣을 수있는 더 좋은 곳이 있습니까?

추신. 우분투 미니 리믹스 1104i386을 사용하고 있습니다.

감사



답변

사용자가 로그인 할 때 명령을 시작하는 가장 쉬운 방법은 명령에 대한 .desktop파일 을 만들어 ~/.config/autostart폴더에 넣는 것입니다 . 데스크탑 파일은 어떻게 생겼습니까? 다음은 wget사용자가 로그인 할 때마다 Ask Ubuntu 홈 페이지를 검색하는 예입니다 .

[Desktop Entry]
Name=Launch wget
Comment=Fetches the Ask Ubuntu home page.
Exec=wget http://askubuntu.com/

답변

/etc/rc.local과 crontab의 차이점을 모르지만 일반적으로 서비스 계정을 만들고 적절한 작업을 추가합니다. 예를 들면 다음과 같습니다. sudo crontab -u p4padmin -e

@reboot ~/bin/p4p -d -r ~/var/p4p/cache/foo -p 2020 -t depot:2020 -L ~/var/p4p/log/foo.log

서비스를 실행하기 위해 로그인 할 필요는 없습니다.


답변

리눅스 방식은 ~/.bashrc대신에 명령을 추가하는 것입니다 /etc/rc.local.

모든 사용자는 .bashrc홈 디렉토리에 있습니다. 이 스크립트 파일은 사용자가 로그인 한 직후 자동으로 실행됩니다.이 스크립트 파일은 사용자의 자격 증명으로 실행되므로 su명령이 필요하지 않습니다.

이것이 바로 당신이 찾고있는 것 같습니다.