X-window, 로그인확인 없이 한방에 컴퓨터 켜기? (런레벨 3 자동로그인)
xununtu 7.04 컴퓨터에서 부팅시에 gdm을 이용해서 자동로그인 하고 있었습니다.
그러다가 cron 을 이용하여 [티비카드로 예약 녹화하기] 및 [시스템 예약 종료하기]를 구상하던 중에,
엑스윈도를 띄우지 않고도 이런 예약작업을 할 수 있는 지 궁금해졌습니다.
그래서 예전에 알아낸 팁을 이용하여
/etc/event.d/tty1 을 백업하고 아래처럼 수정한 뒤,
# tty1 - getty # # This service maintains a getty on tty1 from the point the system is # started until it is shut down again. start on runlevel 2 start on runlevel 3 start on runlevel 4 start on runlevel 5 stop on runlevel 0 stop on runlevel 1 stop on runlevel 6 ###밑에 있는 2줄이 원래 시스템 초기 설정입니다.#로 막아놓았습니다. #respawn #exec /sbin/getty 38400 tty1 ###밑에 있는 1줄은 자동로그인을 위해 추가한 겁니다. iwonder로 자동로그인합니다. respawn /bin/login -f iwonder </dev/tty1 >/dev/tty1 2>&1
그 다음엔 crontab으로 예약작업을 등록해 놓고, 서비스에서 gdm을 체크해제한 상태에서 재부팅 해봤습니다.
하지만 우분투 부팅과정에서 자동로그인을 성공하지 못한 채로 티비녹화작업이 진행되더군요.
로그인하지 않고도 이렇게 어떤 작업이 이루어질 수 있는 겁니까?
아무튼 그건 그거고 결국, 자동로그인을 성공하지 못했으므로 /etc/event.d/tty1 을 원래대로 되돌린 뒤 재부팅 했습니다.
그랬더니 이번에는 우분투 로그인 단계에서 콘솔이 비정상적인 반응을 보이며 로그인을 위한 타이핑조차 안되더군요.
이후 여러번의 테스트 끝에 gdm으로 부팅하지 않을 때는 /etc/event.d/tty1 파일의
respawn exec /sbin/getty 38400 tty1
부분을 지우든지 #으로 앞을 막아야 타이핑해서 로그인할 수 있다는 걸 알아냈습니다.
즉, 자동로그인을 위해서 제가 /etc/event.d/tty1 에 추가한 부분은 있으나 없으나 로그인과는 별 상관이 없었다는 겁니다.
어떻게 해야 엑스윈도를 띄우지 않고 자동 로그인 할 수 있을까요?
이렇게 사람이 없는 상태에서의 자동화 작업같은 경우에도 마찬가지고, 어떤 경우에는 엑스윈도없이
시스템을 돌리는 게 여러모로 나을 수 있겠다 싶더라고요.
덤으로 gdm 서비스까지 사용하지 않아도 되니 일석이조로 시스템자원을 아끼는 셈이죠.
ps.
이게 런레벨 3 맞죠? 맞는 것 같기도 하고 아닌 것 같기도 해서 글제목 정하느라 애먹었습니다.
제가 원하는 것은 런레벨 3으로 자동로그인 하는 겁니다.
전 축구보기를 즐겨하는 편인데,
사정상 제 시간에 시청하기가 어려운 경우가 많습니다.
그럴 경우 이렇게 티비카드로 예약녹화를 할 수 있다면 상당히 유용하겠죠.
또는 다른 프로그램을 녹화할 수도 있는 것이고, 아니면 티비녹화가 아니더라도 각자
필요에 따라 이렇게 예약작업을 할 수 있다면 상당히 편리할 것입니다.
사람이 늘 컴퓨터앞에 붙어서 신경을 쓸 수 있다면 이런 작업이 별 필요가 없겠지만,
다른 일들을 하다보면 정신이 없기도 하고, 주로 바깥에서 지내야 한다면 예약작업이 더 필요하게 됩니다.
그리고 x-window의 사용을 막아서 조금 더 가볍게 효율적으로 예약작업을 하려고 한 겁니다.
컴퓨터를 정해진 시간에 자동으로 깨우기 위해선 CMOS SETUP 에 들어간 뒤
wakeup event 같은 항목에서 원하는 시간(날짜 또는 시, 분)을 정해주면 됩니다.
저는 해 본 적이 없고, 이 글을 참고하면...
알아내신 방법에...
http://doc.gwos.org/index.php/Automatic_Login_No_Authentication
mingetty 패키지 설치를 한 후 "Under Edgy"에 있는 내용을 참고하시면 될 듯 합니다. 그리고 우분투는 runlevel2가 기본 설정입니다.
----
I paint objects as I think them, not as I see them.
----
I paint objects as I think them, not as I see them.
atie's minipage
죄송합니다.
링크해주신 곳의 방법은 통하질 않습니다.
링크한 곳에 써있는 방법 중에 gcc -o autologin autologin.c 를 하면
(unistd.h) 과 main 과 execlp 이렇게 3군데서 오류가 납니다.
또한 mingetty 패키지를 설치할 필요는 없어보입니다.
tty 파일을 본문코드처럼 수정한 것으로도 6.10 버전에서 자동로그인 잘 되었거든요.
7.04 버전에 올라오면서부터는 tty1 파일에서
stop on shutdown
부분이respawn /sbin/getty 38400 tty1
부분엔exec 이 첨가되어
별로 큰 차이는 없어보이는데도, gdm을 시작서비스에서 제거하거나 언인스톨하면
처럼 저 부분을 주석처리 안했을 땐 콘솔입력을 제대로 할 수가 없습니다.
즉, 정상적인 방법으로는 로그인 자체가 불가능하고 레스큐모드같은 특수한 형태로만 로그인 할 수 있게 됩니다.
도대체 뭐가 문제일까요? exec 이란 단지 한 단어만 추가되었을 뿐인데 말이죠.
upstart의 버그 같습니다.
http://www.ubuntu.com/getubuntu/releasenotes/704
https://bugs.launchpad.net/ubuntu/+source/upstart/+bug/89314
동일 문제인지를 판단해 보시고 6.10과 7.04에서의 차이를 개발팀에 알리는 것이 좋겠습니다.
----
I paint objects as I think them, not as I see them.
----
I paint objects as I think them, not as I see them.
atie's minipage
댓글 달기