uz
Feedback
GNU/Linux | Notes

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'rsatish
2 233
Obunachilar
Ma'lumot yo'q24 soatlar
-27 kun
-330 kun
Postlar arxiv
Instagram Π­Ρ‚ΠΎ запрСщСнная ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΡΠ΅Ρ‚ΡŒ Π² России, ΠšΠΈΡ‚Π°Π΅ ΠΈ Π˜Ρ€Π°Π½Π΅. Она ΠΏΡ€ΠΈΠ·Π½Π°Π½Π° экстрСмистской. Instagram ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для общСния, Π½ΠΎ ΠΈ Π²ΠΎ Π²Ρ€Π΅Π΄ людям β€” для распространСния Ρ„Π΅ΠΉΠΊΠΎΠ², ΠΌΠΎΡˆΠ΅Π½Π½ΠΈΡ‡Π΅ΡΡ‚Π²Π°, ΠΏΡ€ΠΎΠΏΠ°Π³Π°Π½Π΄Ρ‹ ΠΈ Π΄Π°ΠΆΠ΅ для ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ†ΠΈΠΈ дСйствий Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… экстрСмистских ΠΈ тСррористичСских Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΎΠΊ. Всё, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π² Instagram, β€” красиво. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ "глянцСвая" ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΡΠ΅Ρ‚ΡŒ, Π³Π΄Π΅ любая идСя ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ΄Π°Π½Π° ΠΏΠΎΠ΄ ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΡƒΠ³Π»ΠΎΠΌ. Если Π²Ρ‹ Π½Π΅ Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ»ΠΈ, Π² Instagram ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅Ρ‚ настоящих, ΠΆΠΈΠ·Π½Π΅Π½Π½Ρ‹Ρ… Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΉ: всё Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅Ρ‚ΡΡ, Ρ€Π΅Ρ‚ΡƒΡˆΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ ΠΈ подбираСтся для создания иллюзии идСальной ΠΆΠΈΠ·Π½ΠΈ. Вакая ΠΏΠΎΠ΄Π°Ρ‡Π° позволяСт Π΄Π°ΠΆΠ΅ опасныС ΠΈ Ρ€Π°Π·Ρ€ΡƒΡˆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ мысли ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ³Π°Ρ‚ΡŒ Π² массы, измСняя прСдставлСния ΠΎ ΠΌΠΎΡ€Π°Π»ΠΈ ΠΈ нравствСнности. НапримСр, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя Π½Π°Π·Π°Π΄ Π² Instagram Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΡ€ΠΎΠΏΠ°Π³Π°Π½Π΄ΠΈΡ€ΠΎΠ²Π°Π»Π°ΡΡŒ нСздоровая ТСнская Ρ…ΡƒΠ΄ΠΎΠ±Π° β€” это выглядСло "красиво" ΠΈ "Ρ‚Ρ€Π΅Π½Π΄ΠΎΠ²ΠΎ", ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Π΅Π²ΡƒΡˆΠΊΠΈ ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ, Π½Π°ΡΠΌΠΎΡ‚Ρ€Π΅Π²ΡˆΠΈΡΡŒ этих постов, Π½Π°Ρ‡ΠΈΠ½Π°Π»ΠΈ ΠΈΠ·Π½ΡƒΡ€ΡΡ‚ΡŒ сСбя Π΄ΠΈΠ΅Ρ‚Π°ΠΌΠΈ, слСдуя навязанным стандартам. Instagram Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ³Π°Π΅Ρ‚ свои стандарты "красоты", влияя Π½Π° психику ΠΈ самооцСнку ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² людСй, это опасный Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ сахар. И Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΊΡƒΡ‡Π°! - Романтизация суицида ΠΈ сСлф-Ρ…Π°Ρ€ΠΌΠ° срСди подростков (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, распространСниС ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° ΠΎ самоповрСТдСниях ΠΈ дСпрСссии, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ΄Ρ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒ уязвимых людСй ΠΊ опасным поступкам). - ΠšΠΈΠ±Π΅Ρ€Π±ΡƒΠ»Π»ΠΈΠ½Π³, травля ΠΈ психологичСскоС Π΄Π°Π²Π»Π΅Π½ΠΈΠ΅, особСнно срСди ΠΌΠΎΠ»ΠΎΠ΄Π΅ΠΆΠΈ. - РаспространСниС Ρ„Π΅ΠΉΠΊΠΎΠ²Ρ‹Ρ… новостСй, ΠΌΠΎΡˆΠ΅Π½Π½ΠΈΡ‡Π΅ΡΠΊΠΈΡ… схСм ΠΈ Ρ€Π΅ΠΊΠ»Π°ΠΌΡ‹ ΡΠΎΠΌΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, "Π²ΠΎΠ»ΡˆΠ΅Π±Π½Ρ‹Ρ…" срСдств для похудСния, Ρ‡ΡƒΠ΄ΠΎ-Π΄ΠΈΠ΅Ρ‚ ΠΈ опасных Ρ‡Π΅Π»Π»Π΅Π½Π΄ΠΆΠ΅ΠΉ). - ΠŸΡ€ΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π½Π°Ρ€ΠΊΠΎΡ‚ΠΈΠΊΠΎΠ², Π·Π°ΠΏΡ€Π΅Ρ‰Ρ‘Π½Π½Ρ‹Ρ… ΠΏΡ€Π΅ΠΏΠ°Ρ€Π°Ρ‚ΠΎΠ² ΠΈ Π½Π΅Π»Π΅Π³Π°Π»ΡŒΠ½Ρ‹Ρ… услуг Ρ‡Π΅Ρ€Π΅Π· скрытыС Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΈ сторис. - РаспространСниС ΠΏΠΎΡ€Π½ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ, Π² Ρ‚ΠΎΠΌ числС дСтской, нСсмотря Π½Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ ΠΌΠΎΠ΄Π΅Ρ€Π°Ρ†ΠΈΠΈ. - Π’ΠΎΠ²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎΠ»Π΅Ρ‚Π½ΠΈΡ… Π² опасныС Ρ‡Π΅Π»Π»Π΅Π½Π΄ΠΆΠΈ ΠΈ Ρ„Π»Π΅ΡˆΠΌΠΎΠ±Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ Ρ‚Ρ€Π°Π²ΠΌΠ°ΠΌ ΠΈΠ»ΠΈ Π³ΠΈΠ±Π΅Π»ΠΈ. - Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ навязчивых комплСксов ΠΈ расстройств ΠΏΠΈΡ‰Π΅Π²ΠΎΠ³ΠΎ повСдСния ΠΈΠ·-Π·Π° постоянного сравнСния сСбя с искусствСнно "ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ" ΠΎΠ±Ρ€Π°Π·Π°ΠΌΠΈ. - ΠΠ°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ приватности, слив Π»ΠΈΡ‡Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. - ИспользованиС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ для Π²Π΅Ρ€Π±ΠΎΠ²ΠΊΠΈ Π² Ρ€Π°Π΄ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΈ сСкты. - ΠŸΡ€ΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π°Π·Π°Ρ€Ρ‚Π½Ρ‹Ρ… ΠΈΠ³Ρ€ ΠΈ ΠΌΠΎΡˆΠ΅Π½Π½ΠΈΡ‡Π΅ΡΠΊΠΈΡ… Π»ΠΎΡ‚Π΅Ρ€Π΅ΠΉ. - ΠŸΡ€ΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π›Π“Π‘Π’-Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠΈ, использованиС Ρ€Π°Π΄ΡƒΠΆΠ½ΠΎΠΉ символики, прСдоставлСниС пространства для самовыраТСния прСдставитСлСй этого сообщСства. - Романтизация эскорт-услуг, созданиС глянцСвого ΠΎΠ±Ρ€Π°Π·Π° "содСрТанок" ΠΈ популяризация ΠΈΠ΄Π΅ΠΉ ΠΎ Π»Π΅Π³ΠΊΠΎΠΌ Π·Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Ρ‡Π΅Ρ€Π΅Π· ΠΈΠ½Ρ‚ΠΈΠΌΠ½Ρ‹Π΅ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ΄Ρ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒ Π΄Π΅Π²ΡƒΡˆΠ΅ΠΊ ΠΊ опасным ΠΈ ΡΠΎΠΌΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌ. ΠšΡ€ΠΎΠΌΠ΅ всСго ΠΏΡ€ΠΎΡ‡Π΅Π³ΠΎ, Instagram постСпСнно мСняСт прСдставлСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΎ ΠΌΠΎΡ€Π°Π»ΠΈ ΠΈ нравствСнности. Π’ этой ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ сСти Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ цСнности часто ΠΏΠΎΠ΄ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π½ΠΎΠ²Ρ‹ΠΌΠΈ, навязанными Π½ΠΎΡ€ΠΌΠ°ΠΌΠΈ повСдСния. Π’ΠΎ, Ρ‡Ρ‚ΠΎ Π΅Ρ‰Ρ‘ Π½Π΅Π΄Π°Π²Π½ΠΎ ΡΡ‡ΠΈΡ‚Π°Π»ΠΎΡΡŒ Π½Π΅ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΡ‹ΠΌ ΠΈΠ»ΠΈ Π°ΠΌΠΎΡ€Π°Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ΄Π°Π½ΠΎ ΠΊΠ°ΠΊ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΌΠΎΠ΄Π½ΠΎΠ΅, Π±Π΅Π·ΠΎΠ±ΠΈΠ΄Π½ΠΎΠ΅ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅. Π—Π° яркой ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΎΠΉ часто ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ΡΡ опасныС сообщСства, сСктанты, мошСнники ΠΈ пропагандисты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π΄ΠΎΠ²Π΅Ρ€ΠΈΠ΅ Π°ΡƒΠ΄ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π² своих цСлях. ΠœΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹ людСй Π΄Π°ΠΆΠ΅ Π½Π΅ Π΄ΠΎΠ³Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ΡΡ, Ρ‡Ρ‚ΠΎ это ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΡΠ΅Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ опасна. #thoughts

БообщСния ΠΊΠ°Π½Π°Π»Ρƒ Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊΠ°Π½Π°Π» ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ сообщСния. Π‘Ρ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ сообщСния β€” 1 Π·Π²Π΅Π·Π΄Π°. Π­Ρ‚Π° функция ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‡Π°Ρ‚ΠΎΠ², Π³Ρ€ΡƒΠΏΠΏ ΠΈ ΠΊΠ°Π½Π°Π»ΠΎΠ² ΠΈ позволяСт ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ доступ ΠΊ сообщСниям ΠΎΡ‚ Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΡ‹Ρ… ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² ΠΈΠ»ΠΈ участников. #info

Debian философия Debian - это опСрационная систСма, основанная Π½Π° свободном ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ обСспСчСнии. Ѐилософия Deb
Debian философия Debian - это опСрационная систСма, основанная Π½Π° свободном ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ обСспСчСнии. Ѐилософия Debian, извСстная ΠΊΠ°ΠΊ Debian Social Contract, Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹: Π‘Π²ΠΎΠ±ΠΎΠ΄Π°: Debian стрСмится ΠΊ созданию ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, которая ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ основана Π½Π° свободном ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ обСспСчСнии. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΡ€Π°Π²ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ, ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ. ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ: Debian Π½Π΅ зависит ΠΎΡ‚ коммСрчСских интСрСсов ΠΈΠ»ΠΈ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… спонсоров. Он остаСтся нСзависимым ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ, основанным Π½Π° ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°Ρ… свободного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Π‘Ρ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ: Debian стрСмится ΠΊ созданию ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒΡΡ Π½Π° протяТСнии Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. БотрудничСство: Debian Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ сотрудничСство ΠΈ ΠΎΠ±ΠΌΠ΅Π½ идСями с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈ сообщСствами, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΠ΅Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС для всСх. #debian #opensource

GNU GPL License (General Public License) Π­Ρ‚ΠΎ свободная лицСнзия, которая позволяСт свободно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС. Она устанавливаСт условия, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈ Π΅Π΅ исходный ΠΊΠΎΠ΄. Π‘Π²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ использованиС Π² контСкстС GNU GPL Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΡ€Π°Π²ΠΎ свободно Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π² Π»ΡŽΠ±Ρ‹Ρ… цСлях, ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Π΅Π΅ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠΎ своСму ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΡŽ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ Π΅Π΅ исходный ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ вСрсии ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ИспользованиС GNU GPL Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ позволяСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния свободно ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ идСями, ΡƒΠ»ΡƒΡ‡ΡˆΠ°Ρ‚ΡŒ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹ Π½Π° ΠΈΡ… основС. Π­Ρ‚ΠΎ способствуСт Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΡŽ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΈ свободного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, Π° Ρ‚Π°ΠΊΠΆΠ΅ способствуСт Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½Π΅Π½ΠΈΡŽ Π·Π½Π°Π½ΠΈΠΉ ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΏΠΎΠ΄ GNU GPL Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ ΠΈ внСсли измСнСния Π² исходный ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, обязаны ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ доступ ΠΊ своим измСнСниям исходного ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ свои ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ вСрсии ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄ GNU GPL Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ доступ ΠΊ своСму исходному ΠΊΠΎΠ΄Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ. Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ обСспСчиваСт сохранСниС свободы ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ позволяСт Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ, ΡƒΠ»ΡƒΡ‡ΡˆΠ°Ρ‚ΡŒ ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ эти измСнСния. #misc #opensource

#fun #opensource
#fun #opensource

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 #dotfiles

Частый вопрос Π½Π° ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ систСмного ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π° Linux Π’ Linux Π½Π΅Ρ‚ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ которая Π±Ρ‹ позволяла Π·Π°Π»Π΅Π·Ρ‚ΡŒ процСссу Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ процСсса. Но ΠΏΠΎΡ‡Π΅ΠΌΡƒ это ΠΌΠΎΠΆΠ΅Ρ‚ GDB (GNU Debugger)? Π­Ρ‚ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ благодаря Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ GDB ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Π΅ интСрфСйсы ядра Linux (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, систСмный Π²Ρ‹Π·ΠΎΠ² ptrace), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ состояниС Π΄Ρ€ΡƒΠ³ΠΈΡ… процСссов, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ доступ ΠΊ ΠΈΡ… памяти для чтСния ΠΈ записи. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, хотя само ядро Linux Π½Π΅ прСдоставляСт прямого доступа ΠΊ памяти Π΄Ρ€ΡƒΠ³ΠΈΡ… процСссов, GDB ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΈ Π°Π½Π°Π»ΠΈΠ·Π° процСссов. Π€Π°ΠΉΠ» /proc/sys/kernel/yama/ptrace_scope ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ бСзопасности Ρ€Π°Π±ΠΎΡ‚Ρ‹ ptrace. - Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0: Π Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ всСх процСссов - Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1: Π Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ процСссов с Ρ‚Π΅ΠΌ ΠΆΠ΅ UID - Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 2: Π—Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ процСссов с Π΄Ρ€ΡƒΠ³ΠΈΠΌ UID #kernel #theory #security

dotfiles-debian Π’ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ находятся Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ инструмСнтов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ X
+4
dotfiles-debian Π’ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ находятся Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ инструмСнтов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ XFCE: bash, vim, vifm, mc, tmux, gdb, git, newsboat, dircolors, bash-completion, xfce4-terminal, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ†Π²Π΅Ρ‚ΠΎΠ²Ρ‹Π΅ схСмы для Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°, bash aliases, Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ скрипты ΠΈ Ρ‚.Π΄. > GitHub #shell #terminal #dotfiles #debian

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ систСмныС Π²Ρ‹Π·ΠΎΠ²Ρ‹ Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ - Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, обСспСчиваСт Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ интСрфСйс ΠΊ функциям, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ (систСмным Π²Ρ‹Π·ΠΎΠ²Π°ΠΌ). Π’ΠΎ Π΅ΡΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ ΠΊ систСмным Π²Ρ‹Π·ΠΎΠ²Π°ΠΌ. БистСмныС Π²Ρ‹Π·ΠΎΠ²Ρ‹ - Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ядра ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ самим ядром. НапримСр, библиотСчная функция printf() Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ строку, Π² соотвСтствии с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠΌ, ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΌΡƒ систСмному Π²Ρ‹Π·ΠΎΠ²Ρƒ write(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ строку Π½Π° устройство стандартного Π²Ρ‹Π²ΠΎΠ΄Π°. Π¦Π΅ΠΏΠΎΡ‡ΠΊΠ°: ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° обращаСтся ΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹ΠΌ функциям, Π½Π°Ρ…ΠΎΠ΄ΡΡΡŒ Π² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅. Π—Π°Ρ‚Π΅ΠΌ библиотСчная функция обращаСтся ΠΊ систСмным Π²Ρ‹Π·ΠΎΠ²Π°ΠΌ. БистСмныС Π²Ρ‹Π·ΠΎΠ²Ρ‹ ΡƒΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ (ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π°ΡΡ‚ΡŒΡŽ ядра). Π—Π°Ρ‚Π΅ΠΌ ΠΊΠΎΠ³Π΄Π° систСмный Π²Ρ‹Π·ΠΎΠ² Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ, ΠΎΠ½ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ происходит ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Ρ€Π΅ΠΆΠΈΠΌ. Unix ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· пространства ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² пространство ядра всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π΅Π»Π°Π΅Ρ‚ систСмный Π²Ρ‹Π·ΠΎΠ² ΠΈΠ»ΠΈ приостанавливаСтся Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ. НапримСр, ΠΊΠΎΠ΄ модуля исполняСтся Π² пространствС ядра, Π° обычная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, исполняСтся Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ΅ ПО). #kernel #theory

ΠŸΠΎΡ‡Π΅ΠΌΡƒ /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 #debian

alias & unalias Бписок всСх псСвдонимов:
$ alias
Π£Π΄Π°Π»ΠΈΡ‚ΡŒ псСвдоним:
$ unalias <my-alias>
Π£Π΄Π°Π»ΠΈΡ‚ΡŒ всС псСвдонимы:
$ unalias -a
Если псСвдонимы прописаны Π² .bashrc, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ:
$ exec $SHELL
Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΈΡ… послС unalias ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. #shell #utils

exec ΠŸΡ€ΠΈΠΌΠ΅Ρ€:
$ exec $SHELL
ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ окруТСния $SHELL ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ ΠΏΠΎ-ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ (Π΅Π΅ ΠΏΡƒΡ‚ΡŒ), Π² ΠΌΠΎΠ΅ΠΌ случаС это /bin/bash. Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ exec? Он замСняСт Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ процСсс Π½Π° Π½ΠΎΠ²Ρ‹ΠΉ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ замСняСт Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ /bin/bash Π½Π° Π½ΠΎΠ²Ρ‹ΠΉ /bin/bash. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π²Ρ‹ ΠΎΡΡ‚Π°Π΅Ρ‚Π΅ΡΡŒ Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ΅, Π½ΠΎ всС ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ настройки ΠΈ процСссы Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠ±Ρ€ΠΎΡˆΠ΅Π½Ρ‹. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для обновлСния ΠΈΠ»ΠΈ сброса окруТСния Π±Π΅Π· нСобходимости ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π». НапримСр, ΠΌΡ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ Ρ„Π°ΠΉΠ»Ρ‹ окруТСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, допустим это /etc/bash.bashrc, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π», ΠΌΠΎΠΆΠ½ΠΎ просто Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ сброса/запуска Π½ΠΎΠ²ΠΎΠ³ΠΎ /bin/bash послС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. #shell #utils

Π’Π°ΠΊ выглядит ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ сайт тСкстового Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° vim Π Π°Π·Π²Π΅ этого Ρ…ΠΎΡ‡Π΅Ρ‚ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Ρ…ΠΎΠ΄ΠΈΡ‚ Π·Π° тСхничСскими
Π’Π°ΠΊ выглядит ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ сайт тСкстового Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° vim Π Π°Π·Π²Π΅ этого Ρ…ΠΎΡ‡Π΅Ρ‚ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Ρ…ΠΎΠ΄ΠΈΡ‚ Π·Π° тСхничСскими новостями своСго любимого тСкстового Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°? Вряд Π»ΠΈ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ администрация этого сайта ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ„Π°ΡˆΠΈΡΡ‚ΠΎΠ². Π― Π·Π°ΡˆΡ‘Π» НЕ Π½Π° политичСский сайт, Π° Π½Π° сайт Open Source ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ВСздСсущий Ρ„Π»Π°Π³ Π³ΠΎΠ²Π½Π° ΠΈ ΠΏΠΎΠ·ΠΎΡ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Ρ‹ΠΊΠ°ΡŽΡ‚ Π²ΠΎ всС мСста, лишь Π±Ρ‹ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ побольшС Π·Π²Ρ‘Π·Π΄ΠΎΡ‡Π΅ΠΊ Π½Π° GitHub. Π˜Π½ΠΆΠ΅Π½Π΅Ρ€Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Open Source ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠΏΠ°Π³Π°Π½Π΄Ρƒ своих (ΠΈ Π½Π΅ своих) политичСских интСрСсов. Π­Ρ‚ΠΎ Π½Π΅ мСсто для этого. НС Ρ‚Ρ€ΠΎΠ³Π°ΠΉΡ‚Π΅ Open Source! #thoughts

Π­Ρ‚Π°ΠΏΡ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ (ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎ) 1. Π‘Π±ΠΎΡ€ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ 2. ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ тСхничСских Π·Π°Π΄Π°Π½ΠΈΠΉ, ΠΏΠ»Π°Π½Ρ‹ Ρ€Π°Π±ΠΎΡ‚ 3. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° - Π”ΠΈΠ·Π°ΠΉΠ½ - ΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ - ВСстированиС - Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ 4. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° - Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ (Установка ПО, ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ) - Π‘ΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ (Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ выявлСнных ошибок, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ) #misc

Π­Ρ‚Π°ΠΏΡ‹ компиляции 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 #theory

Π’ΠΈΠΏΡ‹ Ρ„Π°ΠΉΠ»ΠΎΠ² 1. ΠžΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» (regular file): '-' 2. ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ (directory): 'd' 3. Π˜ΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠ°Π½Π°Π» (named pipe): 'p' 4. БимволичСская ссылка (soft link): 'l' 5. Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» устройства (device file): 'c' ΠΈ 'b' 6. Π‘ΠΎΠΊΠ΅Ρ‚ (socket): 's' #theory

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Fingerprint? Fingerprint β€” это ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ "ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΎΠΊ" (Ρ…Π΅Ρˆ-сумма) ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° SSH-сСрвСра. Он Π½ΡƒΠΆΠ΅Π½ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠ³ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊ Ρ‚ΠΎΠΌΡƒ сСрвСру, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π½ΡƒΠΆΠ½ΠΎ, ΠΈ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Π°Ρ‚Π°ΠΊ Ρ‚ΠΈΠΏΠ° "man-in-the-middle". ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΏΠΎ SSH ΠΊ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ машинС гСнСрируСтся fingerprint ΠΈ добавляСтся Π² Ρ„Π°ΠΉΠ» ~/.ssh/known_hosts, наш ПК Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ‚ эту ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ ΠΈ свСряСт Π΅Π΅ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π²Ρ…ΠΎΠ΄Π΅, Ссли ΠΊΡ‚ΠΎ-Ρ‚ΠΎ пСрСустановит SSH сСрвСр ΠΈΠ»ΠΈ OC, Ρ‚ΠΎ ΠΌΡ‹ ΠΎΠ± этом ΡƒΠ·Π½Π°Π΅ΠΌ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ измСнится fingerprint. #theory

Настройка компиляции ΠΈ Π»ΠΈΠ½ΠΊΠΎΠ²ΠΊΠΈ (ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅) 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