/sbin/init
, inittab
/sbin/init
은 커널에의해 실행되는 첫 User space program
init
프로그램은 /etc/inittab
설정을 읽으며 시작한다.
- yocto
core-image-minimal
이미지에서 /etc/inittab
root@qemux86-64:/etc
id:5:initdefault:
si::sysinit:/etc/init.d/rcS
~~:S:wait:/sbin/sulogin
l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
z6:6:respawn:/sbin/sulogin
S0:12345:respawn:/bin/start_getty 115200 ttyS0 vt102
S1:12345:respawn:/bin/start_getty 115200 ttyS1 vt102
1:12345:respawn:/sbin/getty 38400 tty1
/etc/init.d/rcS
를 실행한다.
/etc/init.d/rcS
root@qemux86-64:/etc/init.d
PATH=/sbin:/bin:/usr/sbin:/usr/bin
runlevel=S
prevlevel=N
umask 022
export PATH runlevel prevlevel
[ -d "/proc/1" ] || mount /proc
. /etc/default/rcS
trap ":" INT QUIT TSTP
exec /etc/init.d/rc S
/proc
를 마운트 시킨다.
daemon
- startup 시, background process를 실행하게 한다.
::respawn:/bin/userdamon -n
respawn
: 프로그램이 종료되면, 자동 재시작해라
-n
: foreground process로 실행해라
tmpfs
- tmpfs (temporary file system)은 dynamic (volatile) memory/RAM에 저장하기위해 생성되는 virtual filesystem이다.
- tmpfs는 모든 것을 커널 캐시에 저장하고 포함된 파일에 맞게 커졌다 작아졌다 한다.
- tmpfs는 더 많은 공간이 필요할 때, 미리 설정된 최대값에 도달할 때까지 동적으로 확장할 수 있다.
- 주로
/tmp
, /var/lock
, /var/run
경로를 사용한다.
- kernel config
CONFIG_TMPFS
가 필요하다.
- 마운트
$ mount -t tmpfs tmpfs /tmp