GNU/Linux | Notes
Kanalga Telegramβda oβtish
Open Source, GNU/Linux, Debian/Ubuntu, Dotfiles, Software, Scripts, Notes, Terminal, Shell, Tools, Games, Fun, Misc, Music, Geek, Free Software Movement. ΠΠΎΡΡΠ°: krekhov.dev@gmail.com ΠΡΠΎ Ρ: https://t.me/krxnotes/246 GitHub: https://github.com/krekhovx
Ko'proq ko'rsatish2 233
Obunachilar
Ma'lumot yo'q24 soatlar
-27 kun
-330 kun
Postlar arxiv
2 233
Instagram
ΠΡΠΎ Π·Π°ΠΏΡΠ΅ΡΠ΅Π½Π½Π°Ρ ΡΠΎΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΠ΅ΡΡ Π² Π ΠΎΡΡΠΈΠΈ, ΠΠΈΡΠ°Π΅ ΠΈ ΠΡΠ°Π½Π΅. ΠΠ½Π° ΠΏΡΠΈΠ·Π½Π°Π½Π° ΡΠΊΡΡΡΠ΅ΠΌΠΈΡΡΡΠΊΠΎΠΉ. Instagram ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΎΠ±ΡΠ΅Π½ΠΈΡ, Π½ΠΎ ΠΈ Π²ΠΎ Π²ΡΠ΅Π΄ Π»ΡΠ΄ΡΠΌ β Π΄Π»Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ΅ΠΉΠΊΠΎΠ², ΠΌΠΎΡΠ΅Π½Π½ΠΈΡΠ΅ΡΡΠ²Π°, ΠΏΡΠΎΠΏΠ°Π³Π°Π½Π΄Ρ ΠΈ Π΄Π°ΠΆΠ΅ Π΄Π»Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠΈΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΡΠΊΡΡΡΠ΅ΠΌΠΈΡΡΡΠΊΠΈΡ
ΠΈ ΡΠ΅ΡΡΠΎΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΡ
Π³ΡΡΠΏΠΏΠΈΡΠΎΠ²ΠΎΠΊ.
ΠΡΡ, ΡΡΠΎ Π²Ρ Π²ΠΈΠ΄ΠΈΡΠ΅ Π² Instagram, β ΠΊΡΠ°ΡΠΈΠ²ΠΎ. ΠΡΠΎ ΠΎΡΠ΅Π½Ρ "Π³Π»ΡΠ½ΡΠ΅Π²Π°Ρ" ΡΠΎΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΠ΅ΡΡ, Π³Π΄Π΅ Π»ΡΠ±Π°Ρ ΠΈΠ΄Π΅Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ΄Π°Π½Π° ΠΏΠΎΠ΄ ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠ³Π»ΠΎΠΌ. ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ Π·Π°ΠΌΠ΅ΡΠΈΠ»ΠΈ, Π² Instagram ΠΏΠΎΡΡΠΈ Π½Π΅Ρ Π½Π°ΡΡΠΎΡΡΠΈΡ
, ΠΆΠΈΠ·Π½Π΅Π½Π½ΡΡ
ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΉ: Π²ΡΡ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΈΠ»ΡΡΡΡΠ΅ΡΡΡ, ΡΠ΅ΡΡΡΠΈΡΡΠ΅ΡΡΡ ΠΈ ΠΏΠΎΠ΄Π±ΠΈΡΠ°Π΅ΡΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ»Π»ΡΠ·ΠΈΠΈ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½ΠΈ. Π’Π°ΠΊΠ°Ρ ΠΏΠΎΠ΄Π°ΡΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄Π°ΠΆΠ΅ ΠΎΠΏΠ°ΡΠ½ΡΠ΅ ΠΈ ΡΠ°Π·ΡΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΌΡΡΠ»ΠΈ ΠΏΡΠΎΠ΄Π²ΠΈΠ³Π°ΡΡ Π² ΠΌΠ°ΡΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎ ΠΌΠΎΡΠ°Π»ΠΈ ΠΈ Π½ΡΠ°Π²ΡΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π½Π°Π·Π°Π΄ Π² Instagram Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΡΠΎΠΏΠ°Π³Π°Π½Π΄ΠΈΡΠΎΠ²Π°Π»Π°ΡΡ Π½Π΅Π·Π΄ΠΎΡΠΎΠ²Π°Ρ ΠΆΠ΅Π½ΡΠΊΠ°Ρ Ρ
ΡΠ΄ΠΎΠ±Π° β ΡΡΠΎ Π²ΡΠ³Π»ΡΠ΄Π΅Π»ΠΎ "ΠΊΡΠ°ΡΠΈΠ²ΠΎ" ΠΈ "ΡΡΠ΅Π½Π΄ΠΎΠ²ΠΎ", ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Π΅Π²ΡΡΠΊΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΡ ΠΌΠΈΡΡ, Π½Π°ΡΠΌΠΎΡΡΠ΅Π²ΡΠΈΡΡ ΡΡΠΈΡ
ΠΏΠΎΡΡΠΎΠ², Π½Π°ΡΠΈΠ½Π°Π»ΠΈ ΠΈΠ·Π½ΡΡΡΡΡ ΡΠ΅Π±Ρ Π΄ΠΈΠ΅ΡΠ°ΠΌΠΈ, ΡΠ»Π΅Π΄ΡΡ Π½Π°Π²ΡΠ·Π°Π½Π½ΡΠΌ ΡΡΠ°Π½Π΄Π°ΡΡΠ°ΠΌ. Instagram ΡΠΎΡΠΌΠΈΡΡΠ΅Ρ ΠΈ ΠΏΡΠΎΠ΄Π²ΠΈΠ³Π°Π΅Ρ ΡΠ²ΠΎΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΡ "ΠΊΡΠ°ΡΠΎΡΡ", Π²Π»ΠΈΡΡ Π½Π° ΠΏΡΠΈΡ
ΠΈΠΊΡ ΠΈ ΡΠ°ΠΌΠΎΠΎΡΠ΅Π½ΠΊΡ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² Π»ΡΠ΄Π΅ΠΉ, ΡΡΠΎ ΠΎΠΏΠ°ΡΠ½ΡΠΉ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Ρ
Π°Ρ. Π ΡΠ°ΠΊΠΈΡ
ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΊΡΡΠ°!
- Π ΠΎΠΌΠ°Π½ΡΠΈΠ·Π°ΡΠΈΡ ΡΡΠΈΡΠΈΠ΄Π° ΠΈ ΡΠ΅Π»Ρ-Ρ
Π°ΡΠΌΠ° ΡΡΠ΅Π΄ΠΈ ΠΏΠΎΠ΄ΡΠΎΡΡΠΊΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° ΠΎ ΡΠ°ΠΌΠΎΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΡ
ΠΈ Π΄Π΅ΠΏΡΠ΅ΡΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄ΡΠΎΠ»ΠΊΠ½ΡΡΡ ΡΡΠ·Π²ΠΈΠΌΡΡ
Π»ΡΠ΄Π΅ΠΉ ΠΊ ΠΎΠΏΠ°ΡΠ½ΡΠΌ ΠΏΠΎΡΡΡΠΏΠΊΠ°ΠΌ).
- ΠΠΈΠ±Π΅ΡΠ±ΡΠ»Π»ΠΈΠ½Π³, ΡΡΠ°Π²Π»Ρ ΠΈ ΠΏΡΠΈΡ
ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π΄Π°Π²Π»Π΅Π½ΠΈΠ΅, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΡΠ΅Π΄ΠΈ ΠΌΠΎΠ»ΠΎΠ΄Π΅ΠΆΠΈ.
- Π Π°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠ΅ΠΉΠΊΠΎΠ²ΡΡ
Π½ΠΎΠ²ΠΎΡΡΠ΅ΠΉ, ΠΌΠΎΡΠ΅Π½Π½ΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΡ
Π΅ΠΌ ΠΈ ΡΠ΅ΠΊΠ»Π°ΠΌΡ ΡΠΎΠΌΠ½ΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΡΠΎΠ²Π°ΡΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, "Π²ΠΎΠ»ΡΠ΅Π±Π½ΡΡ
" ΡΡΠ΅Π΄ΡΡΠ² Π΄Π»Ρ ΠΏΠΎΡ
ΡΠ΄Π΅Π½ΠΈΡ, ΡΡΠ΄ΠΎ-Π΄ΠΈΠ΅Ρ ΠΈ ΠΎΠΏΠ°ΡΠ½ΡΡ
ΡΠ΅Π»Π»Π΅Π½Π΄ΠΆΠ΅ΠΉ).
- ΠΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π½Π°ΡΠΊΠΎΡΠΈΠΊΠΎΠ², Π·Π°ΠΏΡΠ΅ΡΡΠ½Π½ΡΡ
ΠΏΡΠ΅ΠΏΠ°ΡΠ°ΡΠΎΠ² ΠΈ Π½Π΅Π»Π΅Π³Π°Π»ΡΠ½ΡΡ
ΡΡΠ»ΡΠ³ ΡΠ΅ΡΠ΅Π· ΡΠΊΡΡΡΡΠ΅ Π³ΡΡΠΏΠΏΡ ΠΈ ΡΡΠΎΡΠΈΡ.
- Π Π°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ½ΠΎΠ³ΡΠ°ΡΠΈΠΈ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Π΄Π΅ΡΡΠΊΠΎΠΉ, Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΡ ΠΌΠΎΠ΄Π΅ΡΠ°ΡΠΈΠΈ.
- ΠΠΎΠ²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎΠ»Π΅ΡΠ½ΠΈΡ
Π² ΠΎΠΏΠ°ΡΠ½ΡΠ΅ ΡΠ΅Π»Π»Π΅Π½Π΄ΠΆΠΈ ΠΈ ΡΠ»Π΅ΡΠΌΠΎΠ±Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΡΡΠ°Π²ΠΌΠ°ΠΌ ΠΈΠ»ΠΈ Π³ΠΈΠ±Π΅Π»ΠΈ.
- Π€ΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π°Π²ΡΠ·ΡΠΈΠ²ΡΡ
ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠΎΠ² ΠΈ ΡΠ°ΡΡΡΡΠΎΠΉΡΡΠ² ΠΏΠΈΡΠ΅Π²ΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΈΠ·-Π·Π° ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ³ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠ΅Π±Ρ Ρ ΠΈΡΠΊΡΡΡΡΠ²Π΅Π½Π½ΠΎ "ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΌΠΈ" ΠΎΠ±ΡΠ°Π·Π°ΠΌΠΈ.
- ΠΠ°ΡΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ²Π°ΡΠ½ΠΎΡΡΠΈ, ΡΠ»ΠΈΠ² Π»ΠΈΡΠ½ΡΡ
Π΄Π°Π½Π½ΡΡ
ΠΈ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
- ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Π΄Π»Ρ Π²Π΅ΡΠ±ΠΎΠ²ΠΊΠΈ Π² ΡΠ°Π΄ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ Π³ΡΡΠΏΠΏΠΈΡΠΎΠ²ΠΊΠΈ ΠΈ ΡΠ΅ΠΊΡΡ.
- ΠΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π°Π·Π°ΡΡΠ½ΡΡ
ΠΈΠ³Ρ ΠΈ ΠΌΠΎΡΠ΅Π½Π½ΠΈΡΠ΅ΡΠΊΠΈΡ
Π»ΠΎΡΠ΅ΡΠ΅ΠΉ.
- ΠΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΠΠΠ’-ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π΄ΡΠΆΠ½ΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΠΊΠΈ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° Π΄Π»Ρ ΡΠ°ΠΌΠΎΠ²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅Π»Π΅ΠΉ ΡΡΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°.
- Π ΠΎΠΌΠ°Π½ΡΠΈΠ·Π°ΡΠΈΡ ΡΡΠΊΠΎΡΡ-ΡΡΠ»ΡΠ³, ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π³Π»ΡΠ½ΡΠ΅Π²ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°Π·Π° "ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΎΠΊ" ΠΈ ΠΏΠΎΠΏΡΠ»ΡΡΠΈΠ·Π°ΡΠΈΡ ΠΈΠ΄Π΅ΠΉ ΠΎ Π»Π΅Π³ΠΊΠΎΠΌ Π·Π°ΡΠ°Π±ΠΎΡΠΊΠ΅ ΡΠ΅ΡΠ΅Π· ΠΈΠ½ΡΠΈΠΌΠ½ΡΠ΅ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄ΡΠΎΠ»ΠΊΠ½ΡΡΡ Π΄Π΅Π²ΡΡΠ΅ΠΊ ΠΊ ΠΎΠΏΠ°ΡΠ½ΡΠΌ ΠΈ ΡΠΎΠΌΠ½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΡΠΌ.
ΠΡΠΎΠΌΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅Π³ΠΎ, Instagram ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ ΠΌΠ΅Π½ΡΠ΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΎ ΠΌΠΎΡΠ°Π»ΠΈ ΠΈ Π½ΡΠ°Π²ΡΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ. Π ΡΡΠΎΠΉ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠΈ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠ΅Π½Π½ΠΎΡΡΠΈ ΡΠ°ΡΡΠΎ ΠΏΠΎΠ΄ΠΌΠ΅Π½ΡΡΡΡΡ Π½ΠΎΠ²ΡΠΌΠΈ, Π½Π°Π²ΡΠ·Π°Π½Π½ΡΠΌΠΈ Π½ΠΎΡΠΌΠ°ΠΌΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ. Π’ΠΎ, ΡΡΠΎ Π΅ΡΡ Π½Π΅Π΄Π°Π²Π½ΠΎ ΡΡΠΈΡΠ°Π»ΠΎΡΡ Π½Π΅ΠΏΡΠΈΠ΅ΠΌΠ»Π΅ΠΌΡΠΌ ΠΈΠ»ΠΈ Π°ΠΌΠΎΡΠ°Π»ΡΠ½ΡΠΌ, ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ΄Π°Π½ΠΎ ΠΊΠ°ΠΊ ΡΡΠΎ-ΡΠΎ ΠΌΠΎΠ΄Π½ΠΎΠ΅, Π±Π΅Π·ΠΎΠ±ΠΈΠ΄Π½ΠΎΠ΅ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅.
ΠΠ° ΡΡΠΊΠΎΠΉ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΎΠΉ ΡΠ°ΡΡΠΎ ΡΠΊΡΡΠ²Π°ΡΡΡΡ ΠΎΠΏΠ°ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°, ΡΠ΅ΠΊΡΠ°Π½ΡΡ, ΠΌΠΎΡΠ΅Π½Π½ΠΈΠΊΠΈ ΠΈ ΠΏΡΠΎΠΏΠ°Π³Π°Π½Π΄ΠΈΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΄ΠΎΠ²Π΅ΡΠΈΠ΅ Π°ΡΠ΄ΠΈΡΠΎΡΠΈΠΈ Π² ΡΠ²ΠΎΠΈΡ
ΡΠ΅Π»ΡΡ
. ΠΠΈΠ»Π»ΠΈΠΎΠ½Ρ Π»ΡΠ΄Π΅ΠΉ Π΄Π°ΠΆΠ΅ Π½Π΅ Π΄ΠΎΠ³Π°Π΄ΡΠ²Π°ΡΡΡΡ, ΡΡΠΎ ΡΡΠΎ ΡΠΎΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΠ΅ΡΡ ΠΎΡΠ΅Π½Ρ ΠΎΠΏΠ°ΡΠ½Π°.
#thoughts
2 233
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΊΠ°Π½Π°Π»Ρ
Π’Π΅ΠΏΠ΅ΡΡ ΠΊΠ°Π½Π°Π» ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. Π‘ΡΠΎΠΈΠΌΠΎΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ β 1 Π·Π²Π΅Π·Π΄Π°.
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ Π»ΠΈΡΠ½ΡΡ
ΡΠ°ΡΠΎΠ², Π³ΡΡΠΏΠΏ ΠΈ ΠΊΠ°Π½Π°Π»ΠΎΠ² ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌ ΠΎΡ Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΡΡ
ΠΊΠΎΠ½ΡΠ°ΠΊΡΠΎΠ² ΠΈΠ»ΠΈ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΎΠ².
#info
2 233
Debian ΡΠΈΠ»ΠΎΡΠΎΡΠΈΡ
Debian - ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½Π°Ρ Π½Π° ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΌ ΠΈ ΠΎΡΠΊΡΡΡΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ. Π€ΠΈΠ»ΠΎΡΠΎΡΠΈΡ Debian, ΠΈΠ·Π²Π΅ΡΡΠ½Π°Ρ ΠΊΠ°ΠΊ Debian Social Contract, Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ:
Π‘Π²ΠΎΠ±ΠΎΠ΄Π°: Debian ΡΡΡΠ΅ΠΌΠΈΡΡΡ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΎΡΠ½ΠΎΠ²Π°Π½Π° Π½Π° ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠ°Π²ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, ΠΈΠ·ΡΡΠ°ΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ
-Π»ΠΈΠ±ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ.
ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ: Debian Π½Π΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΡ
ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ² ΠΈΠ»ΠΈ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΡΡ
ΡΠΏΠΎΠ½ΡΠΎΡΠΎΠ². ΠΠ½ ΠΎΡΡΠ°Π΅ΡΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠΌ Π½Π° ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°Ρ
ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ.
Π‘ΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΡ: Debian ΡΡΡΠ΅ΠΌΠΈΡΡΡ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΡΡ Π½Π° ΠΏΡΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
Π‘ΠΎΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²ΠΎ: Debian Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈ ΠΎΠ±ΠΌΠ΅Π½ ΠΈΠ΄Π΅ΡΠΌΠΈ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ ΠΈ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°ΠΌΠΈ, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π»ΡΡΡΠ΅Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π²ΡΠ΅Ρ
.
#debian #opensource
2 233
GNU GPL License (General Public License)
ΠΡΠΎ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½Π°Ρ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅. ΠΠ½Π° ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΡΠ»ΠΎΠ²ΠΈΡ, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΡΡ
ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ Π΅Π΅ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄. Π‘Π²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ GNU GPL Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠ°Π²ΠΎ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π² Π»ΡΠ±ΡΡ
ΡΠ΅Π»ΡΡ
, ΠΈΠ·ΡΡΠ°ΡΡ Π΅Π΅ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΌΡ ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ Π΅Π΅ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ GNU GPL Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°ΡΡΡΡ ΠΈΠ΄Π΅ΡΠΌΠΈ, ΡΠ»ΡΡΡΠ°ΡΡ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΏΡΠΎΠ΄ΡΠΊΡΡ Π½Π° ΠΈΡ
ΠΎΡΠ½ΠΎΠ²Π΅. ΠΡΠΎ ΡΠΏΠΎΡΠΎΠ±ΡΡΠ²ΡΠ΅Ρ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΈ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΠΎΡΠΎΠ±ΡΡΠ²ΡΠ΅Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡ Π·Π½Π°Π½ΠΈΠΉ ΠΈ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎΠ΄ GNU GPL Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ ΠΈ Π²Π½Π΅ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΎΠ±ΡΠ·Π°Π½Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ²ΠΎΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ ΡΠ²ΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄ GNU GPL Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ²ΠΎΠ΅ΠΌΡ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠΌΡ ΠΊΠΎΠ΄Ρ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ. ΠΡΠΎΡ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠ²ΠΎΠ±ΠΎΠ΄Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΈΠ·ΡΡΠ°ΡΡ, ΡΠ»ΡΡΡΠ°ΡΡ ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
#misc #opensource
2 233
umask
Π’ΠΎΠ»ΡΠΊΠΎ Π²Π»Π°Π΄Π΅Π»Π΅Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏ, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠΉ Π΄Π»Ρ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°ΠΌΠΈ, Π° ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠ°Π². ΠΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠ°ΡΠΊΠΈ. Π― ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Π΅ Π² 077. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄Π»Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ² ΠΏΡΠ°Π²Π° Π±ΡΠ΄ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ ΡΠ°ΠΊ: 777 - 077 = 700 (drwx------), Π° Π΄Π»Ρ ΡΠ°ΠΉΠ»ΠΎΠ²: 666 - 077 = 600 (ΠΈΠ»ΠΈ -rw-------). Π’ΠΎΠ³Π΄Π° Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ°ΠΉΠ»Ρ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π²Π»Π°Π΄Π΅Π»Π΅Ρ. ΠΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ - ΠΎΡΠ΄ΡΡ
Π°ΡΡ.
ΠΡΠ΄Π΅ΡΠΆΠΊΠ° ΠΈΠ· ΠΊΠ½ΠΈΠ³ΠΈ Linux Π³Π»Π°Π·Π°ΠΌΠΈ Ρ
Π°ΠΊΠ΅ΡΠ°, 4 ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ - ΠΠΈΡ
Π°ΠΈΠ» Π€Π»Π΅Π½ΠΎΠ².
ΠΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ Π²
~/.bashrc Π΄Π»Ρ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ:
# set a secure umask to 077
# files: 600 (rw-------)
# directories: 700 (rwx------)
umask 077
Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΠΊΠ°Π»ΡΠΊΡΠ»ΡΡΠΎΡ: https://wintelguy.com/umask-calc.pl
#shell #books #security #dotfiles2 233
Π§Π°ΡΡΡΠΉ Π²ΠΎΠΏΡΠΎΡ Π½Π° ΠΏΠΎΠ·ΠΈΡΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠ° Linux
Π Linux Π½Π΅Ρ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΊΠΎΡΠΎΡΠ°Ρ Π±Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ»Π° Π·Π°Π»Π΅Π·ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΡ Π² ΠΏΠ°ΠΌΡΡΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°. ΠΠΎ ΠΏΠΎΡΠ΅ΠΌΡ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ GDB (GNU Debugger)? ΠΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΎΠΌΡ, ΡΡΠΎ GDB ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΡΠ΄ΡΠ° Linux (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ Π²ΡΠ·ΠΎΠ²
ptrace), ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π΄ΡΡΠ³ΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², Π²ΠΊΠ»ΡΡΠ°Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΈΡ
ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΠΈΡΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Ρ
ΠΎΡΡ ΡΠ°ΠΌΠΎ ΡΠ΄ΡΠΎ Linux Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΡΡΠΌΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΏΠ°ΠΌΡΡΠΈ Π΄ΡΡΠ³ΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², GDB ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΡ Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΈ Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ².
Π€Π°ΠΉΠ» /proc/sys/kernel/yama/ptrace_scope ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅Ρ ΡΡΠ΅ΠΏΠ΅Π½Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΡ ptrace.
- ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ 0: Π Π°Π·ΡΠ΅ΡΠ°Π΅Ρ ΠΎΡΠ»Π°Π΄ΠΊΡ Π²ΡΠ΅Ρ
ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ²
- ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ 1: Π Π°Π·ΡΠ΅ΡΠ°Π΅Ρ ΠΎΡΠ»Π°Π΄ΠΊΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Ρ ΡΠ΅ΠΌ ΠΆΠ΅ UID
- ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ 2: ΠΠ°ΠΏΡΠ΅ΡΠ°Π΅Ρ ΠΎΡΠ»Π°Π΄ΠΊΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Ρ Π΄ΡΡΠ³ΠΈΠΌ UID
#kernel #theory #security2 233
+4
dotfiles-debian
Π ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π½Π°Ρ
ΠΎΠ΄ΡΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π² ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΈ XFCE: bash, vim, vifm, mc, tmux, gdb, git, newsboat, dircolors, bash-completion, xfce4-terminal, ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠ²Π΅ΡΠΎΠ²ΡΠ΅ ΡΡ
Π΅ΠΌΡ Π΄Π»Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°, bash aliases, Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΡΠΊΡΠΈΠΏΡΡ ΠΈ Ρ.Π΄.
> GitHub
#shell #terminal #dotfiles #debian
2 233
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ - Π²Π΅ΡΡ
Π½ΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ, ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΊ ΡΡΠ½ΠΊΡΠΈΡΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠ°Π±ΠΎΡΡ (ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌ Π²ΡΠ·ΠΎΠ²Π°ΠΌ). Π’ΠΎ Π΅ΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌ Π²ΡΠ·ΠΎΠ²Π°ΠΌ.
Π‘ΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ - ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ΄ΡΠ° ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ ΡΠ°ΠΌΠΈΠΌ ΡΠ΄ΡΠΎΠΌ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ printf() ΡΠΎΡΠΌΠΈΡΡΠ΅Ρ ΡΡΡΠΎΠΊΡ, Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌ ΡΠΎΡΠΌΠ°ΡΠΎΠΌ, ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎΠΌΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΌΡ Π²ΡΠ·ΠΎΠ²Ρ write(), ΠΊΠΎΡΠΎΡΡΠΉ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΡΡΠΎΠΊΡ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ²ΠΎΠ΄Π°.
Π¦Π΅ΠΏΠΎΡΠΊΠ°: ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΡΠΌ ΡΡΠ½ΠΊΡΠΈΡΠΌ, Π½Π°Ρ
ΠΎΠ΄ΡΡΡ Π² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. ΠΠ°ΡΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌ Π²ΡΠ·ΠΎΠ²Π°ΠΌ. Π‘ΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ ΡΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ (ΡΠ²Π»ΡΡΡΡΡ ΡΠ°ΡΡΡΡ ΡΠ΄ΡΠ°). ΠΠ°ΡΠ΅ΠΌ ΠΊΠΎΠ³Π΄Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ Π²ΡΠ·ΠΎΠ² Π·Π°Π²Π΅ΡΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ, ΠΎΠ½ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ Π² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ.
Unix ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΡΠ΄ΡΠ° Π²ΡΡΠΊΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π΅Π»Π°Π΅Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ Π²ΡΠ·ΠΎΠ² ΠΈΠ»ΠΈ ΠΏΡΠΈΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠΌ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠ΅ΠΌ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ΄ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΡΠ΄ΡΠ°, Π° ΠΎΠ±ΡΡΠ½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ (ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ΅ ΠΠ).
#kernel #theory
2 233
ΠΠΎΡΠ΅ΠΌΡ /bin/sh
Π ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΠ
/bin/bash, Π° /bin/sh, ΠΏΠΎΡΠ΅ΠΌΡ? ΠΠ½ ΠΆΠ΅ ΡΡΠ°ΡΡΠΉ!
/bin/sh ΠΈΠ»ΠΈ Dash (Debian Almquist Shell) - Π»Π΅Π³ΠΊΠΎΠ²Π΅ΡΠ½Π°Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½Π°Ρ Π΄Π»Ρ Π·Π°ΠΌΠ΅Π½Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΠΆΠ΅Π»ΠΎΠ²Π΅ΡΠ½ΠΎΠ³ΠΎ Bash. ΠΠ½Π° Π±ΡΠ»Π° ΡΠΎΠ·Π΄Π°Π½Π° Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π² ΡΠΈΡΡΠ΅ΠΌΠ΅. ΠΠΎΡΡΠΎΠΌΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ Linux, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Debian ΠΈ Ubuntu, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Dash Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
Π‘ΠΊΡΠΈΠΏΡΡ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π½Π° /bin/sh, ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΡΡΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ. ΠΠ±ΠΎΠ»ΠΎΡΠΊΠ° /bin/sh ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π² Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ
ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½Π° Π½Π° Π²ΡΠ΅Ρ
ΡΠ°ΠΊΠΈΡ
ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
.
Π ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ /bin/bash (Bourne-Again Shell) ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ, ΡΠ΅ΠΌ /bin/sh. ΠΠ½Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠ»ΡΡΡΠ΅Π½Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ /bin/sh, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Π΅Π΅ Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡΠ½ΠΎΠΉ ΠΈ ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΠΎΠ³Π΄Π° ΡΠΊΡΠΈΠΏΡ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° /bin/sh, ΠΎΠ½ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° Π²ΡΠ΅Ρ
Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ
ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
, ΠΈΡΠΊΠ»ΡΡΠ°Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ /bin/bash. ΠΠΎ Π΅ΡΠ»ΠΈ Π² ΡΠΊΡΠΈΠΏΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ /bin/bash, ΡΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
, Π³Π΄Π΅ /bin/bash Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ. ΠΠΎΡΡΠΎΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ /bin/sh Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ±ΡΡΠ»ΠΎΠ²Π»Π΅Π½ΠΎ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΡΡΠΈ ΡΠΊΡΠΈΠΏΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ.
#shell #debian2 233
alias & unalias
Π‘ΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ
ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠΎΠ²:
$ alias
Π£Π΄Π°Π»ΠΈΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ:
$ unalias <my-alias>
Π£Π΄Π°Π»ΠΈΡΡ Π²ΡΠ΅ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΡ:
$ unalias -a
ΠΡΠ»ΠΈ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΡ ΠΏΡΠΎΠΏΠΈΡΠ°Π½Ρ Π² .bashrc, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ:
$ exec $SHELL
ΡΡΠΎΠ±Ρ Π²Π΅ΡΠ½ΡΡΡ ΠΈΡ
ΠΏΠΎΡΠ»Π΅ unalias ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
#shell #utils2 233
exec
ΠΡΠΈΠΌΠ΅Ρ:
$ exec $SHELL
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ $SHELL ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ ΠΏΠΎ-ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ (Π΅Π΅ ΠΏΡΡΡ), Π² ΠΌΠΎΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ /bin/bash. Π§ΡΠΎ Π΄Π΅Π»Π°Π΅Ρ exec? ΠΠ½ Π·Π°ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π° Π½ΠΎΠ²ΡΠΉ, ΡΠΎ Π΅ΡΡΡ Π·Π°ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ΅ΠΊΡΡΠΈΠΉ /bin/bash Π½Π° Π½ΠΎΠ²ΡΠΉ /bin/bash. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΠΎΡΡΠ°Π΅ΡΠ΅ΡΡ Π² ΡΠΎΠΉ ΠΆΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ΅, Π½ΠΎ Π²ΡΠ΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ Π±ΡΠ΄ΡΡ ΡΠ±ΡΠΎΡΠ΅Π½Ρ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΡΠ±ΡΠΎΡΠ° ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΎΡΠΊΡΡΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΡΠΌΠΈΠ½Π°Π». ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΡΠ°ΠΉΠ»Ρ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π΄ΠΎΠΏΡΡΡΠΈΠΌ ΡΡΠΎ /etc/bash.bashrc, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΎΡΠΊΡΡΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΡΠΌΠΈΠ½Π°Π», ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ±ΡΠΎΡΠ°/Π·Π°ΠΏΡΡΠΊΠ° Π½ΠΎΠ²ΠΎΠ³ΠΎ /bin/bash ΠΏΠΎΡΠ»Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
#shell #utils2 233
Π’Π°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° vim
Π Π°Π·Π²Π΅ ΡΡΠΎΠ³ΠΎ Ρ
ΠΎΡΠ΅Ρ Π²ΠΈΠ΄Π΅ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°Ρ
ΠΎΠ΄ΠΈΡ Π·Π° ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π½ΠΎΠ²ΠΎΡΡΡΠΌΠΈ ΡΠ²ΠΎΠ΅Π³ΠΎ Π»ΡΠ±ΠΈΠΌΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ°? ΠΡΡΠ΄ Π»ΠΈ. Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ Π·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΈΡ ΡΡΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°ΡΠΈΡΡΠΎΠ². Π― Π·Π°ΡΡΠ» ΠΠ Π½Π° ΠΏΠΎΠ»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°ΠΉΡ, Π° Π½Π° ΡΠ°ΠΉΡ Open Source ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΠ΅Π·Π΄Π΅ΡΡΡΠΈΠΉ ΡΠ»Π°Π³ Π³ΠΎΠ²Π½Π° ΠΈ ΠΏΠΎΠ·ΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΠΊΠ°ΡΡ Π²ΠΎ Π²ΡΠ΅ ΠΌΠ΅ΡΡΠ°, Π»ΠΈΡΡ Π±Ρ ΡΠΎΠ±ΡΠ°ΡΡ ΠΏΠΎΠ±ΠΎΠ»ΡΡΠ΅ Π·Π²ΡΠ·Π΄ΠΎΡΠ΅ΠΊ Π½Π° GitHub. ΠΠ½ΠΆΠ΅Π½Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Open Source ΠΊΠ°ΠΊ ΠΏΡΠΎΠΏΠ°Π³Π°Π½Π΄Ρ ΡΠ²ΠΎΠΈΡ
(ΠΈ Π½Π΅ ΡΠ²ΠΎΠΈΡ
) ΠΏΠΎΠ»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ². ΠΡΠΎ Π½Π΅ ΠΌΠ΅ΡΡΠΎ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ. ΠΠ΅ ΡΡΠΎΠ³Π°ΠΉΡΠ΅ Open Source!
#thoughts
2 233
ΠΡΠ°ΠΏΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ (ΠΊΠΎΡΠΎΡΠΊΠΎ)
1. Π‘Π±ΠΎΡ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ
2. ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΈΡ
Π·Π°Π΄Π°Π½ΠΈΠΉ, ΠΏΠ»Π°Π½Ρ ΡΠ°Π±ΠΎΡ
3. Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ°
- ΠΠΈΠ·Π°ΠΉΠ½
- ΠΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
- Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
- ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
4. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ°
- ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ (Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΠ, ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ)
- Π‘ΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ (ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΡΡΠ²Π»Π΅Π½Π½ΡΡ
ΠΎΡΠΈΠ±ΠΎΠΊ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ)
#misc
2 233
ΠΡΠ°ΠΏΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ
1. ΠΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΈΠ½Π³ (ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° - cpp ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ)
$ gcc -E main.c -o main.i
Π’Π΅ΠΊΡΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ:
- Π·Π°ΠΌΠ΅Π½Π° ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π² ΠΏΡΡΡΡΠΌΠΈ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ
- ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #define #ifdef
- Π²ΠΊΠ»ΡΡΠ°Π΅Ρ #include (ΠΊΠΎΠΏΠΈΡΡΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΊΠ°ΠΊ ΡΠ΅ΠΊΡΡ)
2. Π’ΡΠ°Π½ΡΠ»ΡΡΠΈΡ ΠΊΠΎΠ΄Π° Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ (cpp ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ)
$ gcc -S main.i -o main.s
- ΡΡΠ°Π½ΡΠ»ΠΈΡΡΠ΅Ρ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΡΠ΅ΠΊΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΡΠΉ ΠΊΠΎΠ΄
3. ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ (ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» - as ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ)
$ as main.s -o main.o
- ΡΡΠ°Π½ΡΠ»ΠΈΡΡΠ΅Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ (Π±ΠΈΠ½Π°ΡΠ½ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ)
- ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ Π°Π½Π°Π»ΠΈΠ· ΠΊΠΎΠ΄Π°
- Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ·Π»ΠΈΡΠ½ΠΈΡ
ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΉ ΠΈ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Ρ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ Π΅Π³ΠΎ ΡΠΌΡΡΠ»Π°
- Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΊΠΎΠ΄Π° ΠΈΠ· ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ, ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠΉ ΡΠ°ΠΉΠ»
ΠΠ±ΡΠ΅ΠΊΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» - ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΌΠ°ΡΠΈΠ½Π½ΡΡ
ΠΊΠΎΠ΄ΠΎΠ² Ρ ΡΠ°ΡΡΠΈΡΠ½ΡΠΌ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΠΉ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ±ΠΎΡΠΊΠΈ.
ΠΡΠΈ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΠΎΠΉ ΡΠ±ΠΎΡΠΊΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ (ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅,
ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠΈΠΏΡ).
4. ΠΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ° - Π»ΠΈΠ½ΠΊΠΎΠ²ΠΊΠ° (ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΠ΅ Π²ΠΎΠ΅Π΄ΠΈΠ½ΠΎ Π²ΡΠ΅Ρ
ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ² - ld ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ)
$ gcc main.o -o program
- ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠ²ΡΠ·Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ², Π½ΡΠΆΠ½ΠΎ ΡΡΠΎΠ±Ρ ΡΠ°ΠΉΠ» Π ΡΠ²ΠΈΠ΄Π΅Π» ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² ΡΠ°ΠΉΠ»Π΅ Π, ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊ. ΠΠΎΠ³Π΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π΅Π»Π°Π΅Ρ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΡΠ½ΠΊΡΠΈΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡΡ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅, ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊ ΠΎΡΡΡΠΊΠΈΠ²Π°Π΅Ρ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ printf()) ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π΅Π΅ ΠΊΠΎΠ΄ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΡΠ΄ΡΡ Π² Π½Π΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ.
ΠΡΠΈ ΡΡΠΎΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ ΠΎΡΠΈΠ±ΠΊΠΈ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΡ, Π΅ΡΠ»ΠΈ ΠΎΠ±ΡΡΠ²ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΡ Π½Π΅ Π² ΡΠΎΠΌ ΠΌΠ΅ΡΡΠ΅, ΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΎΡΠΈΠ±ΠΊΡ Π½Π° ΡΡΠΎΠΌ ΡΡΠ°ΠΏΠ΅.
5. ΠΠ°Π³ΡΡΠ·ΠΊΠ°
ΠΡΠ·Π²Π°ΡΡ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊ Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π½Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π² ΠΏΠ°ΠΌΡΡΡ.
ΠΡΠ°ΡΠΊΠΎ:
ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΡΠ΅ΠΊΡΡ -> ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΈΠ½Π³ -> Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ -> ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ -> ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ° -> Π·Π°Π³ΡΡΠ·ΠΊΠ°.
ΠΠΎΠΆΠ½ΠΎ Π½Π΅ Π²ΡΠ·ΡΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π½Π°ΠΏΡΡΠΌΡΡ, Π² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ΅ ΠΎΠ½ΠΈ ΡΠΆΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½Ρ:
cpp - ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ
as - Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ
gcc - ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ
ld - Π»ΠΈΠ½ΠΊΠΎΠ²ΠΊΠ°
#utils #build #theory2 233
Π’ΠΈΠΏΡ ΡΠ°ΠΉΠ»ΠΎΠ²
1. ΠΠ±ΡΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» (regular file): '-'
2. ΠΠ°ΡΠ°Π»ΠΎΠ³ (directory): 'd'
3. ΠΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠ°Π½Π°Π» (named pipe): 'p'
4. Π‘ΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΡΡΠ»ΠΊΠ° (soft link): 'l'
5. Π‘ΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΡΡΡΡΠΎΠΉΡΡΠ²Π° (device file): 'c' ΠΈ 'b'
6. Π‘ΠΎΠΊΠ΅Ρ (socket): 's'
#theory
2 233
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Fingerprint?
Fingerprint β ΡΡΠΎ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ "ΠΎΡΠΏΠ΅ΡΠ°ΡΠΎΠΊ" (Ρ
Π΅Ρ-ΡΡΠΌΠΌΠ°) ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° SSH-ΡΠ΅ΡΠ²Π΅ΡΠ°. ΠΠ½ Π½ΡΠΆΠ΅Π½ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΌΠΎΠ³ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊ ΡΠΎΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΡ, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π½ΡΠΆΠ½ΠΎ, ΠΈ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π°ΡΠ°ΠΊ ΡΠΈΠΏΠ° "man-in-the-middle".
ΠΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΏΠΎ SSH ΠΊ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ fingerprint ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ Π² ΡΠ°ΠΉΠ»
~/.ssh/known_hosts, Π½Π°Ρ ΠΠ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ ΡΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΈ ΡΠ²Π΅ΡΡΠ΅Ρ Π΅Π΅ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π²Ρ
ΠΎΠ΄Π΅, Π΅ΡΠ»ΠΈ ΠΊΡΠΎ-ΡΠΎ ΠΏΠ΅ΡΠ΅ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ SSH ΡΠ΅ΡΠ²Π΅Ρ ΠΈΠ»ΠΈ OC, ΡΠΎ ΠΌΡ ΠΎΠ± ΡΡΠΎΠΌ ΡΠ·Π½Π°Π΅ΠΌ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡ fingerprint.
#theory2 233
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΈ Π»ΠΈΠ½ΠΊΠΎΠ²ΠΊΠΈ (ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅)
CC
ΠΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ (gcc, cc ΠΈ Ρ.Π΄.).
CFLAGS
ΠΡΠ°ΠΏ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
(Compiler Flags) - ΡΡΠΎ ΡΠ»Π°Π³ΠΈ, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, gcc) Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΠΎΠΏΡΠΈΠΈ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠ΄Π°, ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΡΠΎΠ²Π½Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΉ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΌΠ°ΠΊΡΠΎΡΠΎΠ² ΠΈ Ρ.Π΄. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ: -Wall, -g3, -O0, -I/usr/local/include
LDFLAGS
ΠΡΠ°ΠΏ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ.
(Linker Flags) - ΡΡΠΎ ΡΠ»Π°Π³ΠΈ, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΡ (Π»ΠΈΠ½ΠΊΠ΅ΡΡ) Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ» ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ. ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΠΎΠΏΡΠΈΠΈ Π΄Π»Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΠΏΡΡΠ΅ΠΉ ΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ, ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π²Π΅ΡΡΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈ Ρ.Π΄. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ: -lm
LIBS
ΠΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ (-lm, archive.a).
CPPFLAGS
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ»Π°Π³ΠΈ Π΄Π»Ρ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°.
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π²ΠΈΠ΄Π° CXX ΠΎΡΠ½ΠΎΡΡΡΡΡ ΠΊ C++, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ CXXFLAGS
ΠΠΏΡΠΈΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΉ gcc:
-Werror, -Wall
Π―Π·ΡΠΊΠΎΠ²ΠΎΠΉ ΡΡΠ°Π½Π΄Π°ΡΡ:
-std=c99 -ansi
#build #theory
