새소식

사용팁/RaspberryPi

[raspberrypi 4b] 자동 로그인 옵션 관련

  • -

sudo raspi-config 명령을 통해 NCURSES GUI 로 자동 로그인 설정을 할 수 있습니다.

접근 방법은 1 System Options >> S5 Boot / Auto Login 메뉴를 선택하면 B1, B2, B3, B4 로 자동 로그인 방법을 선택할 수 있는 창이 나옵니다.

이 중 B1, B2 는 콘솔 자동로그인에 대한 선택이고, B3, B4 는 모니터를 연결했을 때 나오는 데스크탑(기본 설치시, X 설치 안하면 해당 안됨) 자동 로그인에 대한 선택입니다.
홀수는 자동 로그인 안함, 짝수는 pi 계정에 대한 자동 로그인 허용입니다.

 

참고로 시스템이 켜지자 마자 사용자 세션에서 서비스를 돌리고 싶다면 콘솔 자동 로그인은 활성화 되어 있어야 합니다. 그렇지 않으면 ssh 나 키보드/모니터 연결해서 로그인 할 때만 서비스가 돌고 로그아웃하면 서비스도 종료되어 버리는 황당한(하지만 당연한) 증상을 겪게 됩니다.

 

cli 로 명령을 내릴 경우 다음과 같이 내리면 됩니다. 아래는 콘솔 자동로그인을 허용한다는 뜻입니다.

sudo raspi-config nonint do_boot_behaviour B2

데스크탑 자동로그인을 허용하려면 다음 명령을 내리면 됩니다. 

sudo raspi-config nonint do_boot_behaviour B4

 

이 명령들은 여러 개를 동시에 적용할 수 없습니다. B1/B2/B3/B4 중 맨 마지막에 지정한 1개만 적용됩니다.


제 문제는 해결되지 않아서 내용을 추가합니다.

보안을 위해 자동 로그인을 막고 싶었지만 이렇게 하면 계속 실행해야 할 서비스(long-run service) 가 로그인을 안하면 실행이 안되고 또 로그아웃하면 서비스가 종료되는 문제가 발생해서 위 글처럼 결국 자동로그인 허용을 해버리고 말았습니다...

 

방법이 없을까 하다가 loginctl 에 대한 글을 읽었습니다. systemd 의 로그인 매니저에 관여한다는 내용이었습니다. 게다가 사용자 계정에 linger 옵션을 부여하면 부트시에 사용자 계정이 활성화 되고 중간에 사용자가 로그인 했다가 로그아웃 하더라도 유지가 된다는 내용이었습니다.

 

실행 옵션은 이 글을 참조하시기 바랍니다.

 

다음 명령으로 라즈베리파이의 기본 계정인 pi 에다 linger 옵션을 줄 수 있습니다.

sudo loginctl enable-linger pi

 

해제하고 싶을 때에는 enable-linger 대신 disable-linger 옵션을 주면 됩니다.

sudo loginctl disable-linger pi

 

어느 사용자는 sudo 없이도 사용할 수 있다고 하던데.. 이에 대한 내용은 확인이 안되어 확답을 드릴 수가 없네요.

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.