SDDM을 실행하는 Lubuntu에 로그인할 때 실행할 명령을 어디에 두어야 합니까?

SDDM을 실행하는 Lubuntu에 로그인할 때 실행할 명령을 어디에 두어야 합니까?

터미널에서 배경화면을 설정하려고 합니다. 스크립트는 다음과 같습니다

pcmanfm-qt --set-wallpaper=$(ls /home/$USER/.local/share/wallpapers/*/* | shuf -n1)

이렇게 하면 배경화면이 바뀌는데 로그인할 때마다 자동으로 실행되도록 하고 싶습니다.

이 스크립트를 다음과 같은 적절한 파일에 넣으려고 했습니다. /etc/X11/xinit/xinitrc 파일을 소스로 지정하면 예상대로 실행되지만 로그인할 때 아무 일도 일어나지 않습니다.

로그인할 때마다 해당 라인을 실행할 위치를 알려주는 데 도움이 필요하십니까? (전역이 아닌 내 사용자 폴더 아래에 있는 것이 바람직함)

저는 SDDM(Simple Desktop Display Manager)과 함께 Lubuntu 19.10을 사용하고 있습니다.

답변1

SDDM의 경우:

맨페이지를 보면sddm.conf, 있어요

SessionCommand=

사용자 세션을 시작할 때 실행할 스크립트의 경로입니다. 이 스크립트는 선택한 세션의 ".desktop" 파일에 있는 "Exec" 설정 값을 받아 실행합니다. 기본값은 "/etc/sddm/Xsession"입니다.

따라서 해당 파일을 생성하거나 sddm.conf자신의 파일을 수정 및 추가한 다음 이 파일에서 작업을 수행해 보십시오.

디버깅 목적으로 일부 파일로 리디렉션하여 출력을 /tmp/로그 파일로 작성하는 것은 유용한 기술입니다.

따라서 초기 단계로 다음과 같은 것을 시도해보십시오.

echo "Session file executed" >> /tmp/my.log

로그인할 때 이것이 작동하는지 확인하세요. 그런 다음 배경화면 명령을 추가해 보세요.

답변2

'SessionCommand'sddm.conf는 섹션 매개변수를 원하는 여러 섹션을 지정합니다 [Wayland]. "/etc/sddm/wayland-session"사용자의 홈 디렉터리에서 다음 스크립트 파일을 확인하고 소스로 사용하는 기본 스크립트는 다음과 같습니다 .

순서대로:

$HOME/.bash_profile, $HOME/.bash_login, $HOME/.profile.

로그인 시 활성화하려면 홈 디렉토리에 있는 세 파일 중 하나에 배경 화면 설정 명령을 배치할 수 있어야 합니다.

참고: 저는 기술적으로 Lubuntu가 아닌 Ubuntu를 사용하므로 시스템 차이가 있을 수 있지만 이는 두 배포판 모두에서 매우 기본 사항이어야 합니다.

답변3

제가 찾은 기사는 다음과 같습니다.https://smallbusiness.chron.com/run-command-startup-linux-27796.html

  1. crontab 파일에 명령을 입력하세요. Linux의 crontab 파일은 특정 시간 및 이벤트에서 사용자 편집 작업을 수행하는 데몬입니다. 파일을 편집하려면 터미널을 열고 "sudo crontab -e"를 입력하여 기본 텍스트 편집기에서 crontab 파일을 엽니다. 사용 가능한 첫 번째 줄에 "@reboot xxxx"를 입력합니다. 여기서 "xxxx"는 실행하려는 명령입니다. 파일을 저장하고 종료합니다.
  2. /etc 디렉토리에 명령이 포함된 스크립트를 넣습니다. 선호하는 텍스트 편집기를 사용하여 "startup.sh"와 같은 스크립트를 만듭니다. /etc/init.d/ 디렉터리에 파일을 저장합니다. "chmod +x /etc/init.d/mystartup.sh"를 입력하여 스크립트의 권한을 변경합니다(실행 가능하도록).

  3. 텍스트 편집기를 사용하여 /rc.local 스크립트를 편집합니다. 루분투에서는 /etc/rc.local에 있습니다. 실행하려는 명령을 추가한 후(루트로 수행했는지 확인) 파일을 저장하고 종료합니다. 다음 시작 후에 명령이 실행됩니다.

관련 정보