>> Edit article
이름
제목
패스워드
rc.sysinit스크립트의 제일 처음부분을 보면 if [ -z "$IN_INITLOG" ]; then [ -f /sbin/initlog ] && exec /sbin/initlog $INITLOG_ARGS -r /etc/rc.sysinit 라고 되어있는데 inittab에서 rc.sysinit가 제일먼저 실행이 되므로 IN_INITLOG와 INITLOG_ARGS는 값이 안정해져 있으므로, 즉 null값을 가지므로 [ -f /sbin/initlog ] && exec /sbin/initlog $INITLOG_ARGS -r /etc/rc.sysinit 이 부분이 실행이 되겠죠.. 그럼 [ -f /sbin/initlog ]은 참이니 다음 명령어가 실행이 되죠. exec /sbin/initlog $INITLOG_ARGS -r /etc/rc.sysinit 요게 실행이 되죠.. 그럼 가만보면 exec로 시작하므로 현 프로세스가 다시 rc.sysinit로 대치된다는 이야기인데 그럼 무한루프에 빠진다는 이야기 아닌가요..? man initlog를 보아도 initlog가 실행시 IN_INITLOG변수를 만든다는 이야기는 적혀있지 않는데.. 근데 왜 부팅이 되는지...
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved