ΠΡΠ»ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΡΠ»ΠΊΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΡΡΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΡΡΠ°, ΠΏΠΎΡΠ΅ΠΌΡ ΠΆΠ΅ ΠΌΡ Π²Π΅Π·Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΡΠ»ΠΊΠΈ? ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π²Ρ ΠΎΠ΄ΠΈΡΠ΅ Π² Π½ΠΎΠ²ΡΡ (ΠΈ Π΄Π°Π»Π΅ΠΊΡΡ ΠΎΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²Π°) ΡΠΈΡΡΠ΅ΠΌΡ LFS Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ chroot, Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π±ΡΠ΄ΡΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ, Ρ.ΠΊ. ΠΎΠ½ΠΈ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² Π΄Π΅ΡΠ΅Π²Π΅ ΡΡΠ°ΡΠΎΠ³ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π² /usr/lib). ΠΡΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ Π±ΡΠ΄ΡΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΈΠ· ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌΡ LFS ($LFS).
ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ Π² ΡΡΠ΅Π΄Π΅ chroot, ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠ²ΡΠ·Π°Π½Ρ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ, ΠΎΡΡΡΠ΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΎΠΏΡΠΈΠΈ βenable-static-link, βdisable-shared, ΠΈ -static Π² ΠΠ»Π°Π²Π΅ 5. ΠΠ΅ΡΠ²ΠΎΠ΅, ΡΡΠΎ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΠ»Π°Π²Π° 6, ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΡΠΈΡΡΠ΅ΠΌΡ, glibc. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ, ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌ Π²ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΠΎΠ±ΡΠ°Π½Π½ΡΠ΅ Π² ΠΠ»Π°Π²Π΅ 5, Π½ΠΎ Π² ΡΡΠΎΡ ΡΠ°Π· Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ, ΡΡΠΎΠ±Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π²ΡΠ΅ΠΌΠΈ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°ΠΌΠΈ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΈ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°.
ΠΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠΈ ΡΡΡΠ°Π½Π½ΡΠ΅ ΠΎΠΏΡΠΈΠΈ -static. ΠΡΠ»ΠΈ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ°ΠΊΠ΅ΡΡ Π±Π΅Π· Π½ΠΈΡ , Π²Ρ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π±ΡΡΡΡΠΎ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ ΡΠ»ΡΡΠΈΡΡΡ, ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π²Ρ Π²ΠΎΠΉΠ΄Π΅ΡΠ΅ Π² ΠΏΠ°ΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ LFS ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ chroot.
ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π±ΠΎΠ»Π΅Π΅ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΏΠΎ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΡΠ²ΡΠ·Π°Π½Π½ΡΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌ, ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ΡΡ ΠΊ ΠΊΠ½ΠΈΠ³Π°ΠΌ ΠΈ Linux-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠ°ΠΉΡΠ°ΠΌ ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ $LFS/static
ΠΠ°ΠΊ ΡΠΆΠ΅ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΎΡΡ Π²ΠΎ Π²ΡΡΡΠΏΠ»Π΅Π½ΠΈΠΈ Π² Π΄Π°Π½Π½ΡΡ Π³Π»Π°Π²Ρ, Π²ΡΠ΅, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΠ½ΡΡΠ°Π»Π»ΠΈΡΠΎΠ²Π°Π½ΠΎ Π² ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅, ΠΏΠΎΠΏΠ°Π΄Π΅Ρ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ $LFS/static, ΡΡΠΎΠ±Ρ Π½Π΅ Π·Π°Π³ΡΡΠ·Π½ΡΡΡ ΡΠ°Π·Π΄Π΅Π» LFS ΠΊΡΡΠ΅ΠΉ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π»ΠΈΡΡ ΡΠΎΠ·Π΄Π°ΡΡ ΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ:
mkdir $LFS/static
ΠΠ»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ $LFS/static, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈΡ Π² ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ $LFS/static/src.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π²ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π½Π΅ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
ΠΡΠ»ΠΈ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΠ°Π³ΠΎΠ², ΠΎΠΏΠΈΡΠ°Π½Π½ΡΡ Π² ΠΠ»Π°Π²Π΅ 5, Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Ρ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠ°ΠΊ root, Π΅ΡΡΡ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ, ΡΡΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΡΠΈΡΡΠ΅ΠΌΡ Π±ΡΠ΄ΡΡ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Ρ Π² ΠΠ»Π°Π²Π΅ 5. ΠΠ° ΡΡΠΎ Π΅ΡΡΡ ΡΡΠ΄ ΠΏΡΠΈΡΠΈΠ½, Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ $LFS β ΠΎΠ΄Π½Π° ΠΈΠ· Π½ΠΈΡ . ΠΠ°ΠΌΠ΅Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ² Π½Π° Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ Π²ΡΡΠΊΠΎΠ³ΠΎ ΡΠΎΠ΄Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠ°Π³ΠΈ ΠΠ»Π°Π²Ρ 5 ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ Π½Π΅ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠ»Ρ ΡΠΈΡΡΠΎΡΡ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ° ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π½ΠΎΠ²ΡΡ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ Β«lfsΒ», ΠΊΠΎΡΠΎΡΡΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π° ΡΡΠ°Π΄ΠΈΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΠΎ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ. ΠΠ»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ root:
useradd -s /bin/bash -m lfs && passwd lfs
Π’Π΅ΠΏΠ΅ΡΡ ΡΠΊΠΎΡΡΠ΅ΠΊΡΠΈΡΡΠ΅ΠΌ ΠΏΡΠ°Π²Π° Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ $LFS/static, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Β«lfsΒ» ΠΈΠΌΠ΅Π» ΠΊ Π½Π΅ΠΉ Π΄ΠΎΡΡΡΠΏ Π½Π° Π·Π°ΠΏΠΈΡΡ:
chown -R lfs $LFS/static
Π’Π΅ΠΏΠ΅ΡΡ Π²ΠΎΠΉΠ΄ΠΈΡΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎΠ΄ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΡΡ Β«lfsΒ». ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π΄Π²ΡΠΌΡ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ: ΡΠ΅ΡΠ΅Π· Π½ΠΎΠ²ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΈΠ»ΠΈ ΠΎΠΊΠΎΠ½Π½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ, ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ su β lfs. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Β«lfsΒ» Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±Π»Π°Π³ΠΎΠΏΡΠΈΡΡΠ½ΠΎΠΉ ΡΡΠ΅Π΄Ρ:
cat > ~/.bash_profile