์๋น์ค ๋งค๋์ (Shepherd๋ GNU Guix ์์คํ ๋ฐฐํฌํ ๊ฐ๋ฐ์๋ค์ด SysV-init ์ด๊ธฐํ ์์คํ ์ ๋์์ผ๋ก ๊ฐ๋ฐ ์ค์ธ ๋ณด์กฐ ์ข ์์ฑ ํ๋ก๊ทธ๋จ์ ๋๋ค. Shepherd ์ ์ด ๋ฐ๋ชฌ๊ณผ ์ ํธ๋ฆฌํฐ๋ Guile(Scheme ์ธ์ด์ ๊ตฌํ์ฒด)๋ก ์์ฑ๋์์ผ๋ฉฐ, ์๋น์ค ์ค์ ๋ฐ ์์ ๋งค๊ฐ๋ณ์๋ฅผ ์ ์ํ๋ ๋ฐ์๋ Guile์ด ์ฌ์ฉ๋ฉ๋๋ค. Shepherd๋ ์ด๋ฏธ GuixSD GNU ๋ฐฐํฌํ์์ ์ฌ์ฉ๋๊ณ ์์ต๋๋ค.Linux ๋ํ GNU/Hurd์์ ์ฌ์ฉํ๋๋ก ์ค๊ณ๋์์ง๋ง Guile ์ธ์ด๋ฅผ ์ฌ์ฉํ ์ ์๋ ๋ชจ๋ POSIX ํธํ ์ด์ ์ฒด์ ์์ ์คํํ ์ ์์ต๋๋ค.
Shepherd๋ ๊ธฐ๋ณธ ์ด๊ธฐํ ์์คํ (PID 1๋ก ์ด๊ธฐํ)๊ณผ ๋ณ๋์ ํ์์ผ๋ก ์ฌ์ฉ๋์ด ๊ฐ๋ณ ์ฌ์ฉ์์ ๋ฐฑ๊ทธ๋ผ์ด๋ ํ๋ก์ธ์ค(์: tor, privoxy, mcron ๋ฑ ์คํ)๋ฅผ ๊ด๋ฆฌํ๊ณ ๋ค์ ๊ถํ์ผ๋ก ์คํํ ์ ์์ต๋๋ค. ์ด ์ฌ์ฉ์๋ค. Shepherd๋ ์๋น์ค ๊ฐ์ ๊ด๊ณ๋ฅผ ๊ณ ๋ คํ์ฌ ์๋น์ค๋ฅผ ์์ํ๊ณ ์ค์งํ๋ ์์ ์ ์ํํ๋ฉฐ, ์ ํํ ์๋น์ค๊ฐ ์์กดํ๋ ์๋น์ค๋ฅผ ๋์ ์ผ๋ก ์๋ณํ๊ณ ์์ํฉ๋๋ค. Shepherd๋ ๋ํ ์๋น์ค ๊ฐ์ ์ถฉ๋์ ๊ฐ์งํ๊ณ ๋์์ ์คํ๋๋ ๊ฒ์ ๋ฐฉ์งํ๋ ๊ธฐ๋ฅ๋ ์ง์ํฉ๋๋ค.
์ฃผ์ ํ์ :
- GNU/์์ ์ฝ์ด ๋คํ๋ฅผ ์์ฑํ ์ ์๋ ์๋ก์ด ํ๋ก์ธ์ค ์ถฉ๋ ์ฒ๋ฆฌ๊ธฐ๊ฐ ๊ตฌํ๋์์ต๋๋ค.Linux;
- ์ด์ ์๋น์ค ๊ด๋ฆฌ์๋ "default-environment-variables" ์ค์ ์ ์ ์๋ ํ๊ฒฝ ๋ณ์๋ฅผ ๋ด๋ณด๋ผ ์ ์์ต๋๋ค.
- "make-forkexec-constructor"๊ฐ ๋ก๊ทธ ํ์ผ ์ญ์ ๋ฅผ ์ค์งํ์ต๋๋ค.
- ์ด์ ๊ตฌ์ฑ ํ์ผ์ ์ฒ๋ฆฌํ๊ธฐ ์ ๋จ๊ณ์์ ctrl-alt-del์ ๋๋ฌ ์ฌ๋ถํ ํ๋ ๊ฒ์ด ๊ธ์ง๋ฉ๋๋ค.
- ๋ค์์ ๋ง๊ฒ ์กฐ์ ๋ ์์ธ ์ฒ๋ฆฌ ์ฝ๋ .
์ถ์ฒ : opennet.ru
