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 236
Π£ΡΠΈΠ»ΠΈΡΠ° findmnt.
ΠΡΠ²ΠΎΠ΄ΠΈΡ ΠΏΡΠΈΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π€Π‘ Π² Π²ΠΈΠ΄Π΅ Π΄ΡΠ΅Π²ΠΎΠ²ΠΈΠ΄Π½ΠΎΠΉ ΡΠΎΡΠΌΡ:
$ findmnt
ΠΡΠ²Π΅ΡΡΠΈ Π² Π²ΠΈΠ΄Π΅ ΡΠΏΠΈΡΠΊΠ°:
$ findmnt -l
ΠΡΠ²Π΅ΡΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ext4:
$ findmnt -t ext4
βββ
@krxnotes2 236
Π£ΡΠΈΠ»ΠΈΡΠ° tree, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π² Π΄ΡΠ΅Π²ΠΎΠ²ΠΈΠ΄Π½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°:
$ sudo apt-get install tree
ΠΡΠ²ΠΎΠ΄ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ:
$ tree /path/to/directory
Π£ΠΊΠ°Π·Π°ΡΡ Π³Π»ΡΠ±ΠΈΠ½Ρ:
$ tree -L 2
Π£ΠΊΠ°Π·Π°ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ²:
$ tree -h
βββ
@krxnotes2 236
Π£ΡΠΈΠ»ΠΈΡΠ° tig β ΡΡΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Git. ΠΠ½Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΡΠ°Π·Π»ΠΈΡΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΡΠΈΡΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ Π΄ΡΡΠ³ΠΈΡ
Π΄Π°Π½Π½ΡΡ
, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ
Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌΠΈ Git, Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ tig Π²ΠΊΠ»ΡΡΠ°ΡΡ:
- ΠΡΠΎΡΠΌΠΎΡΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π² Π²ΠΈΠ΄Π΅ ΡΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ°.
- ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ°ΠΉΠ»Π°Ρ
ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌΠΈ.
- ΠΠ°Π²ΠΈΠ³Π°ΡΠΈΡ ΠΏΠΎ Π²Π΅ΡΠΊΠ°ΠΌ ΠΈ ΡΠ΅Π³Π°ΠΌ.
- ΠΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΏΠΎΠΈΡΠΊ ΠΏΠΎ ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ².
Π’ig ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ ΠΈ Π½ΡΠΆΠ΄Π°ΡΡΡΡ Π² ΠΌΠΎΡΠ½ΡΡ
ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°Ρ
Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π° ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
-> Github
ΠΡΠΎΠ΅ΠΊΡ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Π‘ ΠΈ ΠΈΠΌΠ΅Π΅Ρ ΠΎΠΊΠΎΠ»ΠΎ 180 issues, Π½Π° ΠΌΠΎΠΉ Π²Π·Π³Π»ΡΠ΄ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, ΡΡΠΎΠ±Ρ Π½Π°ΡΠ°ΡΡ ΠΏΡΡΡ Π²ΠΊΠ»Π°Π΄ΡΠΈΠΊΠ°.
βββ
@krxnotes
2 236
Foo ΠΈ Bar - ΡΠΌΡΡΠ», ΡΡΠ°Π΄ΠΈΡΠΈΡ, ΠΈΡΡΠΎΡΠΈΡ.
ΠΡΠΎ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΌΠ΅ΡΠ°ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΠΎΠΉ Π»ΠΈΡΠ΅ΡΠ°ΡΡΡΠ΅. ΠΠ½ΠΈ ΡΠ»ΡΠΆΠ°Ρ Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΡ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
, ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΡ
ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° Π½Π΅ Π²Π°ΠΆΠ½Ρ ΠΈΠ»ΠΈ Π½Π΅ ΠΈΠ·Π²Π΅ΡΡΠ½Ρ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΈΡ
ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ² ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΡΡΡΡ Π½Π° ΡΡΡΡΠΊΡΡΡΠ΅ ΠΈ Π»ΠΎΠ³ΠΈΠΊΠ΅ ΠΊΠΎΠ΄Π°, Π° Π½Π΅ Π½Π° ΠΈΠΌΠ΅Π½Π°Ρ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
.
ΠΠΎΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΡΠΈΠ½, ΠΏΠΎΡΠ΅ΠΌΡ foo ΠΈ bar ΡΠ°ΠΊ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ:
1. Π’ΡΠ°Π΄ΠΈΡΠΈΡ: ΠΡΠΈ ΡΠ΅ΡΠΌΠΈΠ½Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ Ρ ΡΠ°ΠΌΠΎΠ³ΠΎ Π½Π°ΡΠ°Π»Π° ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΡΡΠ΅Π±Π½ΠΈΠΊΠ°Ρ
, Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ
ΠΊΠΎΠ΄Π°. ΠΡΠ° ΡΡΠ°Π΄ΠΈΡΠΈΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ ΠΈ ΠΏΠΎ ΡΠ΅ΠΉ Π΄Π΅Π½Ρ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ ΡΡΠΈΠΌΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°ΠΌΠΈ.
2. Π£Π½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΡΡΡ: foo ΠΈ bar Π½Π΅ Π½Π΅ΡΡΡ Π² ΡΠ΅Π±Π΅ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΈΡ
ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΌΠΈ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΈΠΌΠ΅Π½. ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡ ΡΡΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ β ΠΎΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΈ ΡΡΠ½ΠΊΡΠΈΠΉ Π΄ΠΎ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ².
3. ΠΠ΅Π³ΠΊΠΎΡΡΡ Π² Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠΈ: ΠΡΠΈ ΠΊΠΎΡΠΎΡΠΊΠΈΠ΅ ΠΈ ΠΏΡΠΎΡΡΡΠ΅ ΡΠ»ΠΎΠ²Π° Π»Π΅Π³ΠΊΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΈ Π½Π°Π±ΡΠ°ΡΡ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΈΡ
ΡΠ΄ΠΎΠ±Π½ΡΠΌΠΈ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ
ΠΈ ΡΠ΅ΡΡΠΎΠ²ΠΎΠΌ ΠΊΠΎΠ΄Π΅.
4. ΠΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ²: ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ foo ΠΈ bar Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΡΠ΅Π°Π»ΡΠ½ΡΡ
ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
, ΠΎΠ½ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΡΡΡ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² Ρ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΆΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π² ΠΊΠΎΠ΄Π΅.
ΠΡΡΠΎΡΠΈΡ ΡΡΠΈΡ
ΠΌΠ΅ΡΠ°ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
Π²ΠΎΡΡ
ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ°Π½Π½ΠΈΠΌ Π΄Π½ΡΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΠΎΠΉ Π½Π°ΡΠΊΠΈ ΠΈ Ρ
Π°ΠΊΠ΅ΡΡΠΊΠΎΠΉ ΠΊΡΠ»ΡΡΡΡΡ. ΠΠ½ΠΈ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΡΡ ΠΎΡ Π²ΠΎΠ΅Π½Π½ΡΡ
ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ² "FUBAR" (fouled up beyond all recognition -> ΠΈΡΠΏΠΎΡΡΠ΅Π½Π½ΡΠΉ Π΄ΠΎ Π½Π΅ΡΠ·Π½Π°Π²Π°Π΅ΠΌΠΎΡΡΠΈ), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΡΠΎΡΠΎΠΉ ΠΌΠΈΡΠΎΠ²ΠΎΠΉ Π²ΠΎΠΉΠ½Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΠΎΠΌ Π±ΡΠ»ΠΈ Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°Π½Ρ Π² ΠΎΠ±Π»Π°ΡΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΡΡ
Π½Π°ΡΠΊ.
ΠΠΌΠ΅ΡΡΠ΅ Ρ "foo" ΠΈ "bar" ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠΎΡ
ΠΎΠΆΠΈΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ "baz", "qux", "quux" ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΊΠΎΠ³Π΄Π° ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΡ
ΠΈΠΌΠ΅Π½.
βββ
@krxnotes
2 236
Free Software Movement ΠΈ Open Source - ΡΡΠΎ ΡΡ
ΠΎΠΆΠΈΠ΅, Π½ΠΎ ΡΠ°Π·Π½ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ.
Free Software Movement (Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π·Π° ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅) ΡΠΎΠΊΡΡΠΈΡΡΠ΅ΡΡΡ Π½Π° ΡΠ²ΠΎΠ±ΠΎΠ΄Π°Ρ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ: Π·Π°ΠΏΡΡΠΊΠ°ΡΡ, ΠΈΠ·ΡΡΠ°ΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ³ΠΎ ΠΎΡΠ½ΠΎΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΈΠΊ - Π ΠΈΡΠ°ΡΠ΄ Π‘ΡΠΎΠ»Π»ΠΌΠ°Π½. Free Software Movement ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ΅ΡΠΌΠΈΠ½ "ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅" (free software), Π³Π΄Π΅ "free" ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Ρ, Π° Π½Π΅ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ.
Open Source (ΠΎΡΠΊΡΡΡΠΎΠ΅ ΠΠ) ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π΅Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°: ΡΠ»ΡΡΡΠ΅Π½Π½Π°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ, Π³ΠΈΠ±ΠΊΠΎΡΡΡ ΠΈ ΡΠΎΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²ΠΎ. ΠΠ½ΠΎ ΠΌΠ΅Π½Π΅Π΅ Π°ΠΊΡΠ΅Π½ΡΠΈΡΡΠ΅ΡΡΡ Π½Π° ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ
Π²ΠΎΠΏΡΠΎΡΠ°Ρ
ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Free Software Movement.
βββ
@krxnotes
2 236
ΠΠ΄ΡΠ΅ΡΠ½ΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° (ΠΏΠ°ΠΌΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠ°).
ΠΠΎΠ³Π΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΡΠ΄ΡΠΎ Π²ΡΠ΄Π΅Π»ΡΠ΅Ρ Π΄Π»Ρ Π½Π΅Π΅ ΠΌΠ΅ΡΡΠΎ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠ°ΠΌΡΡΡ Π·Π°ΠΏΡΡΠ΅Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ (ΠΏΡΠΎΡΠ΅ΡΡΠ°) ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π° Π½Π° ΡΡΠ΄ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΡΡ
ΡΠ΅ΠΊΡΠΈΠΉ. ΠΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ· ΡΠ΅ΠΊΡΠΈΠΉ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ. ΠΡΠΈ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ΅ΠΊΡΠΈΠΈ ΡΠ°Π·Π΄Π΅Π»ΡΡΡΡΡ ΠΈ ΠΊΠ°ΠΆΠ΄Π°Ρ Π³ΠΎΡΠΎΠ²Π° Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΠΊΡΠΈΠΈ ΡΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½Ρ ΠΏΠ΅ΡΠ΅Π΄ Π·Π°ΠΏΡΡΠΊΠΎΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠ°
.text, .data, .bss. ΠΡ
ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ:
$ size ./a.out
.text Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ code space.
.data ΠΌΠΎΠΆΠ΅Ρ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ data space.
.text (ΠΌΠ»Π°Π΄ΡΠΈΠ΅ Π°Π΄ΡΠ΅ΡΠ° 0x0)
Π ΡΡΠΎΠΉ ΡΠ΅ΠΊΡΠΈΠΈ Ρ
ΡΠ°Π½ΠΈΡΡΡ ΠΊΠΎΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΌΠ°ΡΠΈΠ½Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ (ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΠΊΠΎΠ΄), ΡΡΠ΄Π° Π½Π΅Π»ΡΠ·Ρ Π½ΠΈΡΠ΅Π³ΠΎ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ. ΠΡΠ° ΡΠ΅ΠΊΡΠΈΡ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π² read-only ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π½Π΅ΡΠ°Π½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
.data
Π₯ΡΠ°Π½ΡΡΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅, ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
int i = 2;
char name[20];
ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΡΠ° ΡΠ΅ΠΊΡΠΈΡ ΠΏΡΡΡΠ°, ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅/Π·Π°ΠΏΠΈΡΡ.
.bss
Π₯ΡΠ°Π½ΡΡΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅, ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΠ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
int i;
int x;
.heap
ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠ°Ρ Π°Π»Π»ΠΎΠΊΠ°ΡΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ (Π΄Π»Ρ Π΄ΠΎΠ»Π³ΠΎΠΆΠΈΠ²ΡΡΠΈΡ
ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²). ΠΠ½Π° Π°Π»Π»ΠΎΡΠΈΡΡΠ΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΡΠ΅ΡΡ ΡΡΠ°ΡΡΡΠ΅Ρ, ΠΈ Π½Π΅ ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π° Π½ΠΈ ΠΊΠ°ΠΊΠΎΠΌΡ ΡΠ°ΠΉΠ»Ρ (ΠΌΠ΅ΡΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅), Π° .text, .data, .bss ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π² /proc/$(pidof a.out)/maps ΡΠ°ΠΉΠ»Π΅.
.stack
ΠΠΎΠΆΠ΅Ρ ΡΠ°ΡΡΠΈΡΡΡΡΡΡ ΠΈ ΡΠΆΠΈΠΌΠ°ΡΡΡΡ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΉ (frames). Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ, Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ (ΠΊΠΎΡΠΎΡΠΊΠΎΠΆΠΈΠ²ΡΡΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ). ΠΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π² ΡΡΠ΅ΠΊ (ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ°Π΄ΡΠ°), ΠΊΠΎΠ³Π΄Π° ΡΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΠΊΠ°Π΄Ρ ΡΠ½ΠΈΡΡΠΎΠΆΠ°Π΅ΡΡΡ. Π Π°Π·ΠΌΠ΅Ρ Ρ ΡΡΠ΅ΠΊΠ° ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ (8 MiB).
.env (0xfffffff...)
ΠΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ. ΠΡΠΎ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ argc, argv, envp (ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ).
.debug
ΠΠ»ΡΡ -g ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠ°ΠΌΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° (Π°Π΄ΡΠ΅ΡΠ½ΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ) ΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Ρ Π½Π΅ΠΉ! Π£ΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ = ΡΠ°Π±ΠΎΡΠ° Ρ Π°Π΄ΡΠ΅ΡΠ½ΡΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠ° (Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π°Π΄ΡΠ΅ΡΠ°).
βββ
@krxnotes2 236
+2
ΠΡΠΎ Π½Π΅ ΡΠ΅ΠΊΠ»Π°ΠΌΠ°, ΠΏΡΠΎΡΡΠΎ Π΄Π΅Π»ΡΡΡ. ΠΡΠΈΠΎΠ±ΡΠ΅Π» ΠΏΠΎΡΡΠ°ΡΠΈΠ²Π½ΡΡ ΠΈΠ³ΡΠΎΠ²ΡΡ ΠΏΡΠΈΡΡΠ°Π²ΠΊΡ Anbernic RG35XX Plus Π½Π° Π±Π°Π·Π΅ Linux Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΠΈΠ³ΡΠ°ΡΡ Π² ΡΠ΅ΡΡΠΎ-ΠΈΠ³ΡΡ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΈΠ³ΡΡ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΠΏΠ»Π°ΡΡΠΎΡΠΌ ΡΠΈΠΏΠ° PSP, PS1, Game Boy ΠΈ Ρ.Π΄ (ΠΏΠ»Π°ΡΡΠΎΡΠΌ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ, Π° ΠΈΠ³Ρ ΠΎΠΊΠΎΠ»ΠΎ 5000). ΠΠΎΠ΄Π°ΡΠΎΠΊ ΠΏΡΡΠΌ ΡΠ°Π΄ΡΠ΅Ρ, ΡΠ±ΠΎΡΠΊΠ° ΠΎΡΠ»ΠΈΡΠ½Π°Ρ, ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° Π½Π΅ΠΏΠ»ΠΎΡ
Π°Ρ (IPS ΡΠΊΡΠ°Π½), Π½ΠΎ Π²ΠΎΡ Π΄Π»Ρ ΠΌΠ΅Π½Ρ ΡΠΊΡΠ°Π½ ΠΌΠ°Π»ΠΎΠ²Π°Ρ (ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 640x480) Π³Π»Π°Π·Π° ΡΡΡΠ°ΡΡ ΠΏΠΎΡΠ»Π΅ ΡΠ°ΡΠ° ΠΈΠ³ΡΡ, Π±Π»Π°Π³ΠΎ ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΈΠΌΠ΅Π΅Ρ ΠΏΠΎΡΡ Mini HDMI, ΠΏΡΠΈΠΎΠ±ΡΠ΅Π» ΠΊΠ°Π±Π΅Π»Ρ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Ρ ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΊ ΠΌΠΎΠ½ΠΈΡΠΎΡΡ, ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π³Π»Π°Π· ΡΠ΅ΡΠ΅Π½Π°. Π― ΡΠ΄ΠΈΠ²ΠΈΠ»ΡΡ ΠΊΠ°ΠΊ Π±ΡΡΡΡΠΎ ΠΈ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° ΠΏΠΎΠ΄ΡΡΡΠΎΠΈΠ»Π°ΡΡ ΠΏΠΎΠ΄ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΌΠΎΠ½ΠΈΡΠΎΡ. Π― Ρ
ΠΎΡΠ΅Π» ΠΏΡΠΈΠΎΠ±ΡΠ΅ΡΡΠΈ Steam Deck, Π½ΠΎ ΡΠ΅ΡΠΈΠ» Π½Π°ΡΠ°ΡΡ Ρ ΡΠ΅Π³ΠΎ-ΡΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ. ΠΠΎΡΠΎΡΠ΅, ΡΡΠ°ΡΠΈΡΠΊΠ°ΠΌ ΡΠΎΠ²Π΅ΡΡΡ!
βββ
@krxnotes
2 236
Π‘Π»ΡΡΠ°ΠΉΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅Π». Dirk ΠΈΠ· USA ΡΠΊΡΠ°ΠΈΠ½ΠΈΠ·ΠΈΡΠΎΠ²Π°Π»ΡΡ! ΠΡΠ³Π»ΡΠ΄ΠΈΡ ΠΎΡΠ΅Π½Ρ ΡΠΌΠ΅ΡΠ½ΠΎ ))
βββ
@krxnotes
2 236
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Debian Desktop ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΎΡΠ½ΠΎΡΡΡΡΡ ΠΊ Desktop ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ ?
Debian Desktop - ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ΅Π΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ΅ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π° Π½Π°ΡΡΠΎΠ»ΡΠ½ΡΡ
ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ
. ΠΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅, ΡΠ°ΠΊΠΎΠ΅ ΠΊΠ°ΠΊ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, GNOME, KDE, Xfce), ΠΎΡΠΈΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π²Π΅Π± Π±ΡΠ°ΡΠ·Π΅ΡΡ, ΠΌΡΠ»ΡΡΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π½Π° ΠΠ.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ ΠΎΡΠ½ΠΎΡΡΡΡΡ ΠΊ Debian Desktop, Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² ΡΠ΅Π±Ρ:
1. GNOME ΠΈΠ»ΠΈ KDE (Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ)
2. LibreOffice (ΠΎΡΠΈΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ)
3. Firefox ΠΈΠ»ΠΈ Chromium (Π²Π΅Π±-Π±ΡΠ°ΡΠ·Π΅ΡΡ)
4. VLC (ΠΌΡΠ»ΡΡΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½ΡΠΉ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°ΡΠ΅Π»Ρ)
5. GIMP (Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ)
6. Thunderbird (ΠΏΠΎΡΡΠΎΠ²ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ)
7. ΠΡΠ±ΡΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΠΈ ΡΠ°Π·Π²Π»Π΅ΡΠ΅Π½ΠΈΠΉ Π½Π° ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΡΡΠΎΠ»Π΅
ΠΡΠΈ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½Ρ Π² ΠΎΠ±ΡΠ°Π·Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΎΡΠ½ΡΡ
Π΄ΠΈΡΠΊΠΎΠ² Debian Desktop ΠΈΠ»ΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈΠ· ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ
ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² Debian.
Π ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ Debian ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌΠΈ ΠΈ ΡΠ΅ΡΡΠΌΠΈ. Debian ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΡ, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΈ ΡΠΈΡΠΎΠΊΠΈΠΉ Π²ΡΠ±ΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Π΅Π³ΠΎ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌ Π²ΡΠ±ΠΎΡΠΎΠΌ Π΄Π»Ρ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ².
βββ
@krxnotes
2 236
ΠΠΎΠ΄ΠΎΠ²ΡΠ΅ ΠΈΠΌΠ΅Π½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Debian.
ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ Debian ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ Π² ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΡΠΎΠ½Π°ΠΆΠ΅ΠΉ ΠΈΠ· Π°Π½ΠΈΠΌΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΠΈΠ»ΡΠΌΠ° "ΠΡΡΠΎΡΠΈΡ ΠΈΠ³ΡΡΡΠ΅ΠΊ" (Toy Story) ΡΡΡΠ΄ΠΈΠΈ Pixar. ΠΠΎΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ²:
...
Debian 5.0 - Lenny (Π² ΡΠ΅ΡΡΡ Π±ΠΈΠ½ΠΎΠΊΠ»Ρ ΠΠ΅Π½ΠΈ)
Debian 6.0 - Squeeze (Π² ΡΠ΅ΡΡΡ ΠΈΠ½ΠΎΠΏΠ»Π°Π½Π΅ΡΠ½ΡΡ
ΠΈΠ³ΡΡΡΠ΅ΠΊ)
Debian 7.0 - Wheezy (Π² ΡΠ΅ΡΡΡ ΠΏΠΈΠ½Π³Π²ΠΈΠ½Π° ΠΠΈΠ·ΠΈ)
Debian 8.0 - Jessie (Π² ΡΠ΅ΡΡΡ ΠΠΆΠ΅ΡΡΠΈ, ΠΊΠΎΠ²Π±ΠΎΠΉΠΊΠΈ)
Debian 9.0 - Stretch (Π² ΡΠ΅ΡΡΡ ΠΎΡΡΠΌΠΈΠ½ΠΎΠ³Π° Π‘ΡΡΠ΅ΡΡΠ°)
Debian 10.0 - Buster (Π² ΡΠ΅ΡΡΡ ΡΠΎΠ±Π°ΠΊΠΈ ΠΠ°ΡΡΠ΅ΡΠ°)
Debian 11.0 - Bullseye (Π² ΡΠ΅ΡΡΡ Π±ΡΠΊΠ° ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΡΠ»Π·Π°ΠΉ)
Debian 12.0 - Bookworm (Π² ΡΠ΅ΡΡΡ ΠΊΠ½ΠΈΠΆΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Ρ ΠΡΠΊΠ²ΠΎΡΠΌ)
Debian 13.0 - Trixie (Π² ΡΠ΅ΡΡΡ Π΄ΠΈΠ½ΠΎΠ·Π°Π²ΡΠ° Π’ΡΠΈΠΊΡΠΈ)
... ΠΈ Ρ.Π΄.
Π° ΠΏΠ΅ΡΠ²Π°Ρ Π²Π΅ΡΡΠΈΡ Debian 1.1 Π½Π°Π·ΡΠ²Π°Π»Π°ΡΡ Π² ΡΠ΅ΡΡΡ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ Π³Π΅ΡΠΎΡ ΠΠ°Π·Π·Π° ΠΠ°ΠΉΡΠ΅ΡΠ° - (Buzz). ΠΠ°Π±Π°Π²Π½ΠΎ Π½Π΅ ΠΏΡΠ°Π²Π΄Π° Π»ΠΈ =) ΠΡΠΎΡ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ Π² ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΡΠΎΠ½Π°ΠΆΠ΅ΠΉ ΠΈΠ· "ΠΡΡΠΎΡΠΈΠΈ ΠΈΠ³ΡΡΡΠ΅ΠΊ" ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ°Π΄ΠΈΡΠΈΠ΅ΠΉ ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Π»Π΅Π³ΠΊΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°.
βββ
@krxnotes
2 236
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΌΠ΅ΡΠ°ΠΏΠ°ΠΊΠ΅ΡΡ ?
Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ ΠΏΡΡΡΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ, Π² ΠΊΠΎΡΠΎΡΡΡ
ΠΎΠΏΠΈΡΠ°Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΈ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ (Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ Ρ.Π΄). ΠΠ½ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ Π³ΡΡΠΏΠΏΡ Π²Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·Π°Π½Π½ΡΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. Π ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ: Section: metapackages (Π½ΠΎ ΡΡΠΎ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ°ΠΊΠ΅Ρ
build-essential ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ΅ΡΠ°ΠΏΠ°ΠΊΠ΅ΡΠΎΠΌ. Π ΡΠ°ΠΊΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
Π½Π΅Ρ ΠΈΡΡ
ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ, Π° Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ debian/ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ. Π’Π°ΠΊΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ Π»ΠΈΡΡ ΡΠ°Π΄ΠΈ ΡΡΡΠ΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡ
ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ ΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΡΡΠ΅ΠΊ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ.
build-essential ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π² Debian, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, Π½ΠΎ ΡΠ°ΠΌ ΠΏΠΎ ΡΠ΅Π±Π΅ Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠΠ½ Π»ΠΈΡΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π² Debian. ΠΡΡ ΡΡΡΡ ΡΡΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ° Π² Π΅Π³ΠΎ Depends ΠΈ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ
.
ΠΡΠΎΡ ΠΏΠ°ΠΊΠ΅Ρ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΈΠ· ΠΈΡΡ
ΠΎΠ΄Π½ΠΈΠΊΠΎΠ². Π Π²ΠΊΠ»ΡΡΠ°Π΅Ρ:
1. ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ GCC (GNU Compiler Collection).
2. Π£ΡΠΈΠ»ΠΈΡΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ make.
3. ΠΠ°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
βββ
@krxnotes2 236
ΠΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ°ΡΡΠΎ ΠΏΡΠΈΡ
ΠΎΠ΄ΠΈΡΡΡ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ Docker, ΡΡΠΎΠ±Ρ Π½Π΅ Π·Π°ΡΠΎΡΡΡΡ ΡΠ²ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Debian ΠΌΠ°ΡΠΈΠ½Ρ Π½Π΅Π½ΡΠΆΠ½ΡΠΌΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ/Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ. ΠΠ°ΠΏΡΡΡΠΈΡΡ Debian ΠΎΠ±ΡΠ°Π· ΠΈ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡ Π΅Π³ΠΎ Π² ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊ:
$ docker run -it debian
ΠΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ ΠΊ Π½ΡΠΆΠ½ΠΎΠΌΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Ρ Π΄ΡΡΠ³ΠΎΠ³ΠΎ tty/pts (ΡΡΠΎΠ±Ρ Π±ΡΠ»ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΡΠ°Π±ΠΎΡΠΈΡ
ΠΎΠΊΠΎΠ½, ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΠΎΠ²). Π£Π·Π½Π°ΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ. ΠΠ° Π΄ΡΡΠ³ΠΎΠΌ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ:
$ docker ps
$ docker exec -it <ID> /bin/bash
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΠΈ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°ΠΌΠΈ, ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΉΡΠΈ Π½ΡΠΆΠ½ΡΠΉ ΠΎΠ±ΡΠ°Π· ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ Π΅Π³ΠΎ, ΠΏΠΎΠΈΡΠΊ Π½Π° Docker Hub ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
$ docker search <rocky-distr-for-example>
βββ
@krxnotes2 236
+1
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ ?
ΠΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠ°ΠΌ ΠΏΠΎ ΡΠ΅Π±Π΅, ΠΎΠ½ ΡΠ»ΡΠΆΠΈΡ Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΡΠ°Π·Π½ΡΠ΅ ΡΠ΅Π°Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ. ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ: Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ², Π° ΡΠ»ΡΠΆΠ°Ρ Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠΉ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠ΅Π°Π»ΡΠ½ΡΠΌΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ
mail-transport-agent. ΠΠ½ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π»ΡΠ±ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΊΠ°ΠΊ ΠΏΠΎΡΡΠΎΠ²ΡΠΉ ΡΡΠ°Π½ΡΠΏΠΎΡΡΠ½ΡΠΉ Π°Π³Π΅Π½Ρ (MTA). Π Π΅Π°Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ postfix, exim4, sendmail, msmtp ΠΈ Ρ.Π΄, ΠΌΠΎΠ³ΡΡ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡ ΡΡΡ ΡΠΎΠ»Ρ (ΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠΊΡΠΈΠ½ΡΠΎΡ).
ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ (ΡΠ°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ apt) Π³ΠΈΠ±ΠΊΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΡΠ±ΠΎΡ ΠΈΠ· ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ
ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ.
ΠΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΡΠ°Π΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ mail-transport-agent, ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ, ΡΡΠΎ Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π°Π»ΡΠ½ΡΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ Π½Π΅ Π²ΡΠ±ΠΈΡΠ°Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ
, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠ²Π»ΡΡΡΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π°ΠΌΠΈ, ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ°ΠΌ Π²ΡΠ±ΡΠ°ΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ΅Π°Π»ΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ.
ΠΡΠ΅ ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ mcedit, ΠΏΡΠΈ Π΅Π³ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΡΠΊΠ°ΡΠ°Π΅ΡΡΡ ΡΠ΅Π°Π»ΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ mc ΠΈ Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ (mcedit ΡΠ²ΡΠ·Ρ Ρ mc), Π³ΡΡΠ±ΠΎ Π³ΠΎΠ²ΠΎΡΡ ΡΡΠΎ alias Π½Π° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ. ΠΡΠ΅ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ°ΠΊΠ΅Ρ awk ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π° Π²ΡΠ±ΠΎΡ ΡΡΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ°: original-awk, mawk, gawk.
ΠΠ»Ρ ΡΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ aptitude, ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΠΌΠ΅ΠΉΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°.
βββ
@krxnotes2 236
Thereβs a kernel of truth in the old Unix joke, "the only command you need to know is man."
βββ
@krxnotes
2 236
GNU ΡΠΈΠ»ΠΎΡΠΎΡΠΈΡ.
Π€ΠΈΠ»ΠΎΡΠΎΡΠΈΡ GNU (GNU's Not Unix) Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΏΡΠΈΠ²Π΅ΡΠΆΠ΅Π½Π½ΠΎΡΡΠΈ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΌΡ ΠΈ ΠΎΡΠΊΡΡΡΠΎΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ. ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ GNU Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² ΡΠ΅Π±Ρ:
Π‘Π²ΠΎΠ±ΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ: ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠ°Π²ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π² Π»ΡΠ±ΡΡ
ΡΠ΅Π»ΡΡ
Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ
-Π»ΠΈΠ±ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ.
Π‘Π²ΠΎΠ±ΠΎΠ΄Π° ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ: ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠ°Π²ΠΎ ΠΈΠ·ΡΡΠ°ΡΡ, Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΌΡ ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΡ.
Π‘Π²ΠΎΠ±ΠΎΠ΄Π° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡ: ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠ°Π²ΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ ΠΊΠΎΠΏΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ Π΄Π΅Π»ΠΈΡΡΡΡ ΠΈΠΌ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ.
Π‘Π²ΠΎΠ±ΠΎΠ΄Π° ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ: ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠ°Π²ΠΎ ΡΠ»ΡΡΡΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈ Π΄Π΅Π»ΠΈΡΡΡΡ ΡΠ²ΠΎΠΈΠΌΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡΠΌΠΈ Ρ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΠΌ.
GNU ΡΠΈΠ»ΠΎΡΠΎΡΠΈΡ ΠΏΡΠΈΠ·ΡΠ²Π°Π΅Ρ ΠΊ ΡΠΎΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²Ρ, ΠΎΠ±ΠΌΠ΅Π½Ρ Π·Π½Π°Π½ΠΈΡΠΌΠΈ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π΄Π»Ρ Π²ΡΠ΅Ρ
Π±Π΅Π· ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ.
βββ
@krxnotes
2 236
Debian ΡΠΈΠ»ΠΎΡΠΎΡΠΈΡ.
Debian - ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½Π°Ρ Π½Π° ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΌ ΠΈ ΠΎΡΠΊΡΡΡΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ. Π€ΠΈΠ»ΠΎΡΠΎΡΠΈΡ Debian, ΠΈΠ·Π²Π΅ΡΡΠ½Π°Ρ ΠΊΠ°ΠΊ Debian Social Contract, Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ:
Π‘Π²ΠΎΠ±ΠΎΠ΄Π°: Debian ΡΡΡΠ΅ΠΌΠΈΡΡΡ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΎΡΠ½ΠΎΠ²Π°Π½Π° Π½Π° ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠ°Π²ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, ΠΈΠ·ΡΡΠ°ΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ
-Π»ΠΈΠ±ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ.
ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ: Debian Π½Π΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΡ
ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ² ΠΈΠ»ΠΈ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΡΡ
ΡΠΏΠΎΠ½ΡΠΎΡΠΎΠ². ΠΠ½ ΠΎΡΡΠ°Π΅ΡΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠΌ Π½Π° ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°Ρ
ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ.
Π‘ΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΡ: Debian ΡΡΡΠ΅ΠΌΠΈΡΡΡ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΡΡ Π½Π° ΠΏΡΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
Π‘ΠΎΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²ΠΎ: Debian Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈ ΠΎΠ±ΠΌΠ΅Π½ ΠΈΠ΄Π΅ΡΠΌΠΈ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ ΠΈ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°ΠΌΠΈ, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π»ΡΡΡΠ΅Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π²ΡΠ΅Ρ
.
Π€ΠΈΠ»ΠΎΡΠΎΡΠΈΡ Debian ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π΅Ρ Π²Π°ΠΆΠ½ΠΎΡΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Ρ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ, ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΠΈ ΠΈ ΡΠΎΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²Π° Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅.
βββ
@krxnotes
2 236
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΡΠ°ΡΡΠΈΡΠΎΠ²ΠΊΠ° ΡΠΊΡΠΈΠΏΡΠ° ?
Π Π°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ²Π½ΡΡ
ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π² ΡΠ°Π·Π½ΡΡ
ΡΠΎΡΠΊΠ°Ρ
ΡΡΠ΅Π½Π°ΡΠΈΡ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΠΊΠ°Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠ° Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΡΠ°ΡΡΠΈΡΠΎΠ²ΠΊΠΎΠΉ. ΠΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ Π² Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΡ
ΠΌΠ΅ΡΡΠ°Ρ
ΠΊΠΎΠΌΠ°Π½Π΄Ρ
echo, Π° ΠΌΠΎΠΆΠ½ΠΎ Π² shebang Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ -x, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
#!/bin/bash -x
...
ΠΈΠ»ΠΈ:
#!/bin/bash
set -x
...
ΠΈΠ»ΠΈ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠ°:
bash -x ./script.sh
ΠΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ Π΄Π°Π½Π½ΡΡ ΠΎΠΏΡΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ +x, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
bash +x ./script.sh
βββ
@krxnotes