ΠΠ° FreeBSD, ΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌ Π·Π° ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡΠ° Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°, ΡΡΠΎ ΠΏΠΎΡΡΠ΅ΡΡΠ²Π° Π½Π° ΠΏΠΎΠ²ΠΈΡΠΈΡΠ΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΎΡ Plegde ΠΈ Enveil, ΡΠ°Π·Π²ΠΈΠ΅Π½ΠΈ ΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ OpenBSD. ΠΠ·ΠΎΠ»Π°ΡΠΈΡΠ°ΡΠ° Π²ΠΎ Plegde ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π½ΡΠ²Π° ΡΠΎ Π·Π°Π±ΡΠ°Π½Π° Π½Π° ΠΏΡΠΈΡΡΠ°ΠΏ Π΄ΠΎ ΡΠΈΡΡΠ΅ΠΌΡΠΊΠΈ ΠΏΠΎΠ²ΠΈΡΠΈ ΡΡΠΎ Π½Π΅ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ Π²ΠΎ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° ΠΈ Π²ΠΎ ΠΎΡΠΊΡΠΈΠ²Π°ΡΠ΅ΡΠΎ ΡΠΎ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΎΡΠ²ΠΎΡΠ°ΡΠ΅ ΠΏΡΠΈΡΡΠ°ΠΏ ΡΠ°ΠΌΠΎ Π΄ΠΎ ΠΎΠ΄Π΄Π΅Π»Π½ΠΈ ΠΏΠ°ΡΠ΅ΠΊΠΈ Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΡΠΎ ΠΊΠΎΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ. ΠΠ° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° ΡΠ΅ ΡΠΎΡΠΌΠΈΡΠ° Π΅Π΄Π΅Π½ Π²ΠΈΠ΄ Π±Π΅Π»Π° Π»ΠΈΡΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΡΠΊΠΈ ΠΏΠΎΠ²ΠΈΡΠΈ ΠΈ ΠΏΠ°ΡΠ΅ΠΊΠΈ Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ, Π° ΡΠΈΡΠ΅ Π΄ΡΡΠ³ΠΈ ΠΏΠΎΠ²ΠΈΡΠΈ ΠΈ ΠΏΠ°ΡΠ΅ΠΊΠΈ ΡΠ΅ Π·Π°Π±ΡΠ°Π½Π΅ΡΠΈ.
Π Π°Π·Π»ΠΈΠΊΠ°ΡΠ° ΠΏΠΎΠΌΠ΅ΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΎΡ Π½Π° Plegde ΠΈ ΠΡΠΊΡΠΈΠ²Π°ΡΠ΅ΡΠΎ ΡΡΠΎ ΡΠ΅ ΡΠ°Π·Π²ΠΈΠ²Π° Π·Π° FreeBSD ΡΠ΅ ΡΠ²Π΅Π΄ΡΠ²Π° Π½Π° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π°ΡΠ΅ Π½Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π΅Π½ ΡΠ»ΠΎΡ ΡΡΠΎ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π΄Π° ΠΈΠ·ΠΎΠ»ΠΈΡΠ°ΡΠ΅ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ Π±Π΅Π· Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π²ΠΎ Π½ΠΈΠ²Π½ΠΈΠΎΡ ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ ΡΠΎ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ. ΠΠΎΡΡΠ΅ΡΠ΅ΡΠ΅ ΡΠ΅ Π΄Π΅ΠΊΠ° Π²ΠΎ OpenBSD, Plegde ΠΈ ΠΡΠΊΡΠΈΠ΅Π½ΠΈ ΡΠ΅ Π½Π°ΡΠΎΡΠ΅Π½ΠΈ ΠΊΠΎΠ½ ΡΠ΅ΡΠ½Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΠ° ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΠΎΠΊΠΎΠ»ΠΈΠ½Π° ΠΈ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ ΡΠΎ Π΄ΠΎΠ΄Π°Π²Π°ΡΠ΅ Π½Π° ΡΠΏΠ΅ΡΠΈΡΠ°Π»Π½ΠΈ ΠΏΡΠΈΠ±Π΅Π»Π΅ΡΠΊΠΈ Π²ΠΎ ΠΊΠΎΠ΄ΠΎΡ Π½Π° ΡΠ΅ΠΊΠΎΡΠ° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°. ΠΠ° Π΄Π° ΡΠ° ΠΏΠΎΠ΅Π΄Π½ΠΎΡΡΠ°Π²ΠΈΡΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡΠ°ΡΠ° Π½Π° Π·Π°ΡΡΠΈΡΠ°, ΡΠΈΠ»ΡΡΠΈΡΠ΅ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π°Π°Ρ Π΄Π° ΠΈΠ·Π±Π΅Π³Π½Π΅ΡΠ΅ Π³ΡΠ°Π½ΡΠ»Π°ΡΠ½ΠΎΡΡ Π½Π° Π½ΠΈΠ²ΠΎ Π½Π° ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»Π½ΠΈ ΠΏΠΎΠ²ΠΈΡΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΎΡ ΠΈ Π΄Π° ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠ°ΡΠ΅ ΡΠΎ ΡΠ°ΡΠΎΠ²ΠΈΡΠ΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΡΠΊΠΈ ΠΏΠΎΠ²ΠΈΡΠΈ (Π²Π»Π΅Π·/ΠΈΠ·Π»Π΅Π·, Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ Π·Π° ΡΠΈΡΠ°ΡΠ΅, Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ Π·Π° ΠΏΠΈΡΡΠ²Π°ΡΠ΅, ΠΏΡΠΈΠΊΠ»ΡΡΠΎΡΠΈ, IOCTL, SYSCTL, Π»Π°Π½ΡΠΈΡΠ°ΡΠ΅ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΈ, ΠΈΡΠ½.). Π€ΡΠ½ΠΊΡΠΈΠΈΡΠ΅ Π·Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΏΡΠΈΡΡΠ°ΠΏΠΎΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΠ²ΠΈΠΊΠ°Π°Ρ Π²ΠΎ ΠΊΠΎΠ΄ΠΎΡ Π·Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ° Π±ΠΈΠ΄Π΅ΡΡΠΈ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Π°Ρ ΠΎΠ΄ΡΠ΅Π΄Π΅Π½ΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ, Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈΡΡΠ°ΠΏΠΎΡ Π΄ΠΎ ΠΏΡΠΈΠΊΠ»ΡΡΠΎΡΠΈ ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΎΠ΄Π±ΠΈΠ΅ ΠΏΠΎ ΠΎΡΠ²ΠΎΡΠ°ΡΠ΅ΡΠΎ Π½Π° ΠΏΠΎΡΡΠ΅Π±Π½ΠΈΡΠ΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΠΈ Π²ΠΎΡΠΏΠΎΡΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΠΌΡΠ΅ΠΆΠ½Π° Π²ΡΡΠΊΠ°.
ΠΠ²ΡΠΎΡΠΎΡ Π½Π° ΠΏΡΠΈΡΡΠ°Π½ΠΈΡΡΠ΅ΡΠΎ ΠΠ»Π΅Π³Π΄Π΅ ΠΈ ΠΎΡΠΊΡΠΈΠ²Π° Π·Π° FreeBSD ΠΈΠΌΠ° Π½Π°ΠΌΠ΅ΡΠ° Π΄Π° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ ΠΌΠΎΠΆΠ½ΠΎΡΡ Π΄Π° ΠΈΠ·ΠΎΠ»ΠΈΡΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ, Π·Π° ΠΊΠΎΠΈ ΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π°Π»Π°ΡΠΊΠ° Π·Π° Π·Π°Π²Π΅ΡΠΈ, ΡΡΠΎ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π΄Π° ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½ΠΈ Π²ΠΎ ΠΏΠΎΡΠ΅Π±Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ. ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ° Π²ΠΊΠ»ΡΡΡΠ²Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΠΏΠΎΡΡΠ°Π²ΠΊΠΈ ΡΡΠΎ Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π°Ρ ΠΊΠ»Π°ΡΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΡΠΊΠΈ ΠΏΠΎΠ²ΠΈΡΠΈ ΠΈ ΡΠΈΠΏΠΈΡΠ½ΠΈ ΠΏΠ°ΡΠ΅ΠΊΠΈ Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ Π·Π° ΠΎΠ΄ΡΠ΅Π΄Π΅Π½ΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ (ΡΠ°Π±ΠΎΡΠ° ΡΠΎ Π·Π²ΡΠΊ, ΠΌΡΠ΅ΠΆΠ½Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ°, Π»ΠΎΠ³ΠΈΡΠ°ΡΠ΅ ΠΈ ΡΠ».), ΠΠ°ΠΊΠΎ ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° ΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π° Π·Π° ΠΏΡΠΈΡΡΠ°ΠΏ Π·Π° ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ.
Π£ΡΠ»ΡΠΆΠ½Π°ΡΠ° Π°Π»Π°ΡΠΊΠ° Π·Π° Π·Π°Π²Π΅ΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π·Π° ΠΈΠ·ΠΎΠ»ΠΈΡΠ°ΡΠ΅ Π½Π° ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ Π½Π΅ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠ°Π½ΠΈ Π°Π»Π°ΡΠΊΠΈ, ΠΏΡΠΎΡΠ΅ΡΠΈ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ, Π³ΡΠ°ΡΠΈΡΠΊΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ, ΠΏΠ° Π΄ΡΡΠΈ ΠΈ ΡΠ΅Π»ΠΈ ΡΠ΅ΡΠΈΠΈ Π½Π° ΡΠ°Π±ΠΎΡΠ½Π°ΡΠ° ΠΏΠΎΠ²ΡΡΠΈΠ½Π°. ΠΠ°Π²Π΅ΡΠ°ΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π·Π°Π΅Π΄Π½ΠΎ ΡΠΎ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈΡΠ΅ Π·Π° ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡΠ° ΠΎΠ±Π΅Π·Π±Π΅Π΄Π΅Π½ΠΈ ΠΎΠ΄ ΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ Jail ΠΈ Capsicum. ΠΡΡΠΎ ΡΠ°ΠΊΠ°, ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ° Π²Π³Π½Π΅Π·Π΄Π΅Π½Π° ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡΠ°, ΠΊΠΎΠ³Π° ΡΡΠ°ΡΡΡΠ²Π°Π½ΠΈΡΠ΅ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ Π³ΠΈ Π½Π°ΡΠ»Π΅Π΄ΡΠ²Π°Π°Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° ΠΏΠΎΡΡΠ°Π²Π΅Π½ΠΈ Π·Π° ΠΌΠ°ΡΠΈΡΠ½Π°ΡΠ° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°, Π΄ΠΎΠΏΠΎΠ»Π½ΡΠ²Π°ΡΡΠΈ Π³ΠΈ ΡΠΎ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»Π½ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΡΠ²Π°ΡΠ°. ΠΠ΅ΠΊΠΎΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π° ΠΊΠ΅ΡΠ½Π΅Π»ΠΎΡ (ΠΎΠ±ΡΠ΅ΠΊΡΠΈ Π·Π° Π΄Π΅Π±Π°Π³ΠΈΡΠ°ΡΠ΅, POSIX/SysV IPC, PTY) ΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ Π·Π°ΡΡΠΈΡΠ΅Π½ΠΈ ΡΠΎ Π±Π°ΡΠΈΠ΅ΡΠ΅Π½ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌ ΠΊΠΎΡ Π³ΠΎ ΡΠΏΡΠ΅ΡΡΠ²Π° ΠΏΡΠΈΡΡΠ°ΠΏΠΎΡ Π΄ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠΈΡΠ΅ Π½Π° ΡΠ°Π΄ΡΠΎΡΠΎ ΠΊΠΎΠΈ Π½Π΅ ΡΠ΅ ΡΠΎΠ·Π΄Π°Π΄Π΅Π½ΠΈ ΠΎΠ΄ ΡΠ΅ΠΊΠΎΠ²Π½ΠΈΠΎΡ ΠΈΠ»ΠΈ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΠΊΠΈΠΎΡ ΠΏΡΠΎΡΠ΅Ρ.
ΠΡΠΎΡΠ΅ΡΠΎΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ° ΡΠΎΠΏΡΡΠ²Π΅Π½Π°ΡΠ° ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡΠ° ΡΠΎ ΠΏΠΎΠ²ΠΈΠΊΡΠ²Π°ΡΠ΅ Π½Π° CurnateCtl ΠΈΠ»ΠΈ ΡΠΎ ΡΠΏΠΎΡΡΠ΅Π±Π° Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ Π½Π° Plegde () Π½Π° Libcurtain () ΠΈ ΠΎΡΠΊΡΠΈΠ²Π°ΡΠ΅ (), ΡΠ»ΠΈΡΠ½ΠΈ Π½Π° ΠΎΠ½ΠΈΠ΅ ΡΡΠΎ ΡΠ΅ Π½Π°ΠΎΡΠ°Π°Ρ Π²ΠΎ OpenBSD. ΠΠ° ΡΠ»Π΅Π΄Π΅ΡΠ΅ Π½Π° Π±ΡΠ°Π²ΠΈΡΠ΅ Π΄ΠΎΠ΄Π΅ΠΊΠ° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° ΡΠ°Π±ΠΎΡΠΈ, ΠΎΠ±Π΅Π·Π±Π΅Π΄Π΅Π½ Π΅ sysctl βsecurity.curtain.log_levelβ. ΠΡΠΈΡΡΠ°ΠΏΠΎΡ Π΄ΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈΡΠ΅ X11 ΠΈ Wayland Π΅ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ ΠΎΠ΄Π΄Π΅Π»Π½ΠΎ ΡΠΎ Π½Π°Π²Π΅Π΄ΡΠ²Π°ΡΠ΅ Π½Π° ΠΎΠΏΡΠΈΠΈΡΠ΅ β-Xβ/β-Yβ ΠΈ β-Wβ ΠΊΠΎΠ³Π° ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈ Π·Π°Π²Π΅ΡΠ°ΡΠ°, Π½ΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ°ΡΠ° Π·Π° Π³ΡΠ°ΡΠΈΡΠΊΠΈΡΠ΅ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ ΡΓ¨ ΡΡΡΠ΅ Π½Π΅ Π΅ Π΄ΠΎΠ²ΠΎΠ»Π½ΠΎ ΡΡΠ°Π±ΠΈΠ»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΈ ΠΈΠΌΠ° Π³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ Π½Π΅ΡΠ΅ΡΠ΅Π½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ( ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈΡΠ΅ Π³Π»Π°Π²Π½ΠΎ ΡΠ΅ ΠΏΠΎΡΠ°Π²ΡΠ²Π°Π°Ρ ΠΏΡΠΈ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½Π° X11, Π° ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ°ΡΠ° Π·Π° Wayland ΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ° ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠ΄ΠΎΠ±ΡΠΎ). ΠΠΎΡΠΈΡΠ½ΠΈΡΠΈΡΠ΅ ΠΌΠΎΠΆΠ°Ρ Π΄Π° Π΄ΠΎΠ΄Π°Π΄Π°Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΡΠ²Π°ΡΠ° ΡΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΠ΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΡΠΎ Π»ΠΎΠΊΠ°Π»Π½ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° (~/.curtain.conf). ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° Π΄Π° Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈΡΠ΅ ΠΏΠΈΡΡΠ²Π°ΡΠ΅ ΠΎΠ΄ Firfox ΡΠ°ΠΌΠΎ Π²ΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΠΌΠΎΡ ~/Downloads/, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π΄ΠΎΠ΄Π°Π΄Π΅ΡΠ΅ Π΄Π΅Π» β[firefox]β ΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎΡΠΎ β~/Downloads/ : rw +β.
ΠΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°ΡΠ° Π³ΠΎ Π²ΠΊΠ»ΡΡΡΠ²Π° ΠΌΠΎΠ΄ΡΠ»ΠΎΡ mac_curtain kernel Π·Π° Π·Π°Π΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π° Π½Π° ΠΏΡΠΈΡΡΠ°ΠΏ (MAC, ΠΠ°Π΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π° Π½Π° ΠΏΡΠΈΡΡΠ°ΠΏ), Π·Π±ΠΈΡ Π½Π° Π·Π°ΠΊΡΠΏΠΈ Π·Π° ΠΊΠ΅ΡΠ½Π΅Π»ΠΎΡ FreeBSD ΡΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° ΠΏΠΎΡΡΠ΅Π±Π½ΠΈΡΠ΅ ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠΈ ΠΈ ΡΠΈΠ»ΡΡΠΈ, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° libcurtain Π·Π° ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ plegde ΠΈ unveil Π²ΠΎ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈΡΠ΅, Π°Π»Π°ΡΠΊΠ°ΡΠ° Π·Π° Π·Π°Π²Π΅ΡΠ°, ΠΏΡΠΈΠΌΠ΅ΡΠΈ Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠΊΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ, ΠΊΠΎΠΌΠΏΠ»Π΅Ρ ΡΠ΅ΡΡΠΎΠ²ΠΈ ΠΈ Π·Π°ΠΊΡΠΏΠΈ Π·Π° Π½Π΅ΠΊΠΎΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ Π²ΠΎ ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΊΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ $TMPDIR Π·Π° ΠΎΠ±Π΅Π΄ΠΈΠ½ΡΠ²Π°ΡΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΡΠΎ ΠΏΡΠΈΠ²ΡΠ΅ΠΌΠ΅Π½ΠΈΡΠ΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ). ΠΠ°Π΄Π΅ ΡΡΠΎ Π΅ ΠΌΠΎΠΆΠ½ΠΎ, Π°Π²ΡΠΎΡΠΎΡ ΠΈΠΌΠ° Π½Π°ΠΌΠ΅ΡΠ° Π΄Π° Π³ΠΎ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠ° Π±ΡΠΎΡΠΎΡ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΊΠΎΠΈ Π±Π°ΡΠ°Π°Ρ Π·Π°ΠΊΡΠΏΠΈ Π²ΠΎ ΡΠ°Π΄ΡΠΎΡΠΎ ΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈΡΠ΅.
ΠΠ·Π²ΠΎΡ: opennet.ru