Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π’Π°ΠΉΠΌ-ΠΌΠ΅Π½Π΅Π΄ΠΆΠΌΠ΅Π½Ρ‚ для систСмных администраторов». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 47

Автор Вомас Π›ΠΈΠΌΠΎΠ½Ρ‡Π΅Π»Π»ΠΈ

ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ, выполняСмыС часто

ΠŸΡ€ΠΈΠ²Π΅Π΄Ρƒ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² часто выполняСмых простых Π·Π°Π΄Π°Ρ‡. ΠžΠ±Ρ€Π°Ρ‰Π°ΡŽ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ систСмных администраторов Windows, Ρ‡Ρ‚ΠΎ эти ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π½Π° UNIX/Linux. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΡ‹ ΠΊΠΎ всСм ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ систСмам.

БокращСния для ΠΊΠΎΠΌΠ°Π½Π΄

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ систСм с ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкой ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Ρƒ ΠΈΠ»ΠΈ ΠΈΠ½ΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ создания псСвдонимов. Π­Ρ‚ΠΎ позволяСт Π²Π°ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π½Π° основС ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ…. Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС принят свой синтаксис. Π’ систСмС UNIX имССтся мноТСство языков ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ (ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки), самыми популярными ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΡΠ²Π»ΡΡŽΡ‚ΡΡ bash ΠΈ csh. Они сильно Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ, ΠΈ Π²Ρ‹ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ, Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Π² bash приходится ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡ‚ΡŒ Π·Π½Π°ΠΊ равСнства. Π― ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ для ΠΎΠ±Π΅ΠΈΡ… ΠΎΠ±ΠΎΠ»ΠΎΡ‡Π΅ΠΊ.


β™₯ ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π½Π° bash Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² любой ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ΅, смодСлированной ΠΏΠΎ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΉ Bourne Shell, созданной Π‘Ρ‚ΠΈΠ²ΠΎΠΌ Π‘ΠΎΡ€Π½ΠΎΠΌ (Steve Bourne) (/bin/sh), Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² Korn Shell (/bin/ksh) ΠΈ Z Shell (/bin/zsh). Аналогичным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π½Π° csh Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² любой ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ΅, ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΉ ΠΊΠΎΡ€Π½ΠΈ csh, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΡƒ Tenex Π‘ shell (/bin/tcsh).


Как ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ Π² Π½ΡƒΠΆΠ½Ρ‹ΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³

МнС Π½Π΅Ρ€Π΅Π΄ΠΊΠΎ приходится Π²Ρ‹Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ cd для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ с ΠΎΡ‡Π΅Π½ΡŒ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΌ ΠΏΡƒΡ‚Π΅ΠΌ. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования псСвдонима:

bash:

alias book='cd "tal/projects/books/time/chapters'

csh:

alias book 'cd "tal/projects/books/time/chapters'

Π’Π΅ΠΏΠ΅Ρ€ΡŒ я ΠΌΠΎΠ³Ρƒ Π½Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π΅ book ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΌΠ½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Π³Π΄Π΅ находятся Ρ„Π°ΠΉΠ»Ρ‹ для Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΊΠ½ΠΈΠ³ΠΈ. Если я Π²ΠΎΠ·ΡŒΠΌΡƒΡΡŒ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΊΠ½ΠΈΠ³Ρƒ, я обновлю этот псСвдоним. (Π― Π²Π²ΠΎΠΆΡƒ Β«bookΒ» Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ послСдних ΡˆΠ΅ΡΡ‚ΠΈ Π»Π΅Ρ‚!)

Π­Ρ‚ΠΎ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ позволяСт ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ Π½Π° Π²Π²ΠΎΠ΄Π΅. Π’Ρ‹ ΠΈΠ·Π±Π°Π²Π»Π΅Π½Ρ‹ ΠΎΡ‚ нСобходимости Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ. ΠžΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ свою ΠΏΠ°ΠΌΡΡ‚ΡŒ всСгда ΠΏΠΎΠ»Π΅Π·Π½ΠΎ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ псСвдоним постоянным, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ строку Π² Ρ„Π°ΠΉΠ» .profile, bashrc (bash) ΠΈΠ»ΠΈ .cshrc (csh). Π­Ρ‚ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎ врСмя Π²Ρ…ΠΎΠ΄Π° Π² систСму, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π»ΠΈΠ±ΠΎ Π²Ρ‹ΠΉΠ΄ΠΈΡ‚Π΅ ΠΈΠ· систСмы ΠΈ Π²ΠΎΠΉΠ΄ΠΈΡ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ, Π»ΠΈΠ±ΠΎ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ source, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ„Π°ΠΉΠ»Ρ‹ Π±Ρ‹Π»ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½Ρ‹ снова.

bash:

. "/.profile

csh:

source "/.cshrc

(ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π² bash эта ΠΊΠΎΠΌΠ°Π½Π΄Π° обозначаСтся Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ.)

ПсСвдоним ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ†Π΅Π»ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄. ΠžΡ‚Π΄Π΅Π»ΡΠΉΡ‚Π΅ ΠΈΡ… Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ с запятой. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π³Π΄Π΅ выполняСтся ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΈ устанавливаСтся пСрСмСнная окруТСния Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ ΠΌΡ‹ Π² систСмС А ΠΈΠ»ΠΈ Π’:

bash:

alias inva='cd "tal/projects/inventory/groupa; export INVSTYLE=A'

alias invb='cd "tal/projects/inventory/groupb; export INV3TYLE=B'

csh:

alias inva 'cd "tal/projects/inventory/groupa; setenv INVSTYLE A'

alias invb 'cd "tal/projects/inventory/groupb; seteiw INVSTYLE B'

ВмСсто Ρ‚ΠΎΡ‡ΠΊΠΈ с запятой ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ ампСрсанд для обозначСния Ρ‚Π°ΠΊΠΎΠ³ΠΎ условия: Β«Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли пСрвая Π·Π°Π²Π΅Ρ€ΡˆΠΈΠ»Π°ΡΡŒ ΡƒΠ΄Π°Ρ‡Π½ΠΎΒ». Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠ΅ΠΌ ΠΏΠΎΠ»Π΅Π·Π΅Π½, Ссли Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π½Π΅ Π² Ρ‚ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. НапримСр, Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΈ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚Π°ΠΌ ΠΌΠ΅Ρ‚ΠΊΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² ΠΆΡƒΡ€Π½Π°Π»Π΅. Однако Ссли ΠΊΠΎΠΌΠ°Π½Π΄Π° cd Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° (сСрвСр нСдоступСн), Π½Π΅ слСдуСт ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΊΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² ΠΆΡƒΡ€Π½Π°Π»Π΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°.

bash;

alias rank='cd /home/rank/data && dateΒ». log'

csh:

alias rank 'cd /home/rank/data && dateΒ». log'


β™  НС ΠΏΡ‹Ρ‚Π°ΠΉΡ‚Π΅ΡΡŒ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ. ΠŸΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΡ‹ сами ΠΏΠΎ сСбС Ρ…ΠΎΡ€ΠΎΡˆΠΈ, Π½ΠΎ ΠΈΠΌΠΈ нСльзя Π·Π»ΠΎΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡ‚ΡŒ. Π― часто Π²ΠΈΠ΄Π΅Π» людСй, ΡΠΎΠ·Π΄Π°ΡŽΡ‰ΠΈΡ… дСсятки псСвдонимов для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΈΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ DOS Π² UNIX. Π”ΡƒΠΌΠ°ΡŽ, это плохая идСя. Π’Π°ΠΊ Π²Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² UNIX, Π°, оказавшись Π·Π° Ρ‡ΡƒΠΆΠΈΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ, Π³Π΄Π΅ Π½Π΅Ρ‚ Π²Π°ΡˆΠΈΡ… псСвдонимов, ΠΏΠΎΠΏΠ°Π΄Π΅Ρ‚Π΅ впросак.


БокращСния для ΠΈΠΌΠ΅Π½ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ²

Если Π²Π°ΠΌ приходится снова ΠΈ снова Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΠΌΠ΅Π½Π° ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ², Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, создав псСвдонимы. НапримСр, Ссли Π²Ρ‹ часто ΠΎΠ±Ρ€Π°Ρ‰Π°Π΅Ρ‚Π΅ΡΡŒ ΠΊ сСрвСру ramanujan.company.com, Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ псСвдоним (запись DNS CNAME) ram.company.com. Π­Ρ‚ΠΎ имя Ρ‡ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΡ‰Π΅ Π½Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π΅.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, связанная с Ρ‚Π°ΠΊΠΈΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠΌ, Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ сопровоТдСниС Π² ΠΊΠΎΡˆΠΌΠ°Ρ€. Если ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ станут ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡ‚ΡŒ ΠΎΠ±Π° ΠΈΠΌΠ΅Π½ΠΈ, Π²Π°ΠΌ придСтся ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°Ρ‚ΡŒ Π΄Π²Π° ΠΈΠΌΠ΅Π½ΠΈ. Вопрос: ΠΊΠ°ΠΊ Π±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ псСвдоним, извСстный Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π°ΠΌ, Π½Π΅ бСспокоя Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ?

Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, часто ΠΎΠ±Ρ€Π°Ρ‰Π°ΡΡΡŒ ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ сСрвСру, я ΠΏΠΎΡ‡Ρ‚ΠΈ Π²ΠΎ всСх случаях ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ SSH (Secure SHell). Π­Ρ‚ΠΎ бСзопасная (криптографичСски защищСнная) Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° telnet ΠΈ rsh. Π‘ Π΅Π΅ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ (вводя scp вмСсто гср), ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ rsync, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с SSH. БистСма Unix SSH (OpenSSH ΠΈ Π΅Π΅ сСстры) позволяСт Π²Π°ΠΌ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ псСвдонимы, извСстныС всСм ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ UNIX, Π»ΠΈΠ±ΠΎ псСвдонимы, доступныС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π°ΠΌ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ своими SSH-сСансами, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ псСвдонимы Π² Ρ„Π°ΠΉΠ» ~/.ssh/config. Если ΠΆΠ΅ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ псСвдонимы Π² распоряТСниС всСх ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ псСвдонимы Π² Ρ„Π°ΠΉΠ» /etc/ssh_config ΠΈΠ»ΠΈ /etc/ssh/ssh_config Π² зависимости ΠΎΡ‚ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ вашСй систСмы. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ я создаю псСвдоним es, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒ сСбя ΠΎΡ‚ нСобходимости Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ www.everythingsysadmin.com:

Host es

HostName www.everythingsysadmin.com

Π’Π΅ΠΏΠ΅Ρ€ΡŒ я ΠΌΠΎΠ³Ρƒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ssh es вмСсто ssh www.everythingsysadmin.com, Π½ΠΎ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ этот псСвдоним Π² ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ… scp, sftp, rsync ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ…. Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, сцСнарии ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ я Π½Π΅ ΠΌΠΎΠ³Ρƒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, Π±ΡƒΠ΄ΡƒΡ‚ автоматичСски Π²ΠΎΡΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ настройки. Π’ΠΎΡ‚ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²:

$ ssh es

$ scp file.txt es:/tmp/

$ rsync ex:/home/project/alpha "/project/alpha

Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ ssh es Ρ‚Π°ΠΊ часто, Ρ‡Ρ‚ΠΎ создал псСвдоним Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ:

bash:

alias es='ssh es'

csh:

alias es 'ssh es'

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ я ΠΌΠΎΠ³Ρƒ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС es, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΎΠΉΡ‚ΠΈ Π² систСму, ΠΈΠ»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ всСх Ρ‚Π΅Ρ… ΠΆΠ΅ Π΄Π²ΡƒΡ… Π±ΡƒΠΊΠ² ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΡ‚ΡŒ хост Π² ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ… scp ΠΈΠ»ΠΈ rsync. Π’Π΅Π΄ΡŒ ΠΊΡ€ΡƒΡ‚ΠΎ?

Π’ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ соблазн ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π΄Π²ΡƒΡ…Π±ΡƒΠΊΠ²Π΅Π½Π½Ρ‹Π΅ псСвдонимы для всСх сСрвСров Π½Π° свСтС. Однако вскорС Π²Ρ‹ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ вспоминаСтС обозначСния дольшС, Ρ‡Π΅ΠΌ Π²Π²ΠΎΠ΄ΠΈΡ‚Π΅ ΠΈΠΌΠ΅Π½Π° с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹. Π― ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ» сСбя нСсколькими сСрвСрами, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡΡŒ Ρ‡Π΅Ρ€Π΅Π· SSH.

На страницС ssh_config(5) справочной систСмы man пСрСчислСно ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠΏΡ†ΠΈΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. НапримСр, ΠΈΠ½ΠΎΠ³Π΄Π° я ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡΡŒ ΠΊ сСрвСру, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ трСбуСтся вСсьма спСцифичСская комбинация ΠΎΠΏΡ†ΠΈΠΉ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС. (Π­Ρ‚ΠΎ доморощСнная вСрсия SSH-сСрвСра, которая Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ всСми Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ возмоТностями, Π½ΠΎ просто отказываСтся Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, получая строку, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚.) Команда, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я Π΄ΠΎΠ»ΠΆΠ΅Π½ ввСсти, выглядит Ρ‚Π°ΠΊ:

$ ssh β€” Ρ… -ΠΎ RSAAuthentication=yes β€” ΠΎ PasswordAuthentication=yes β€” ΠΎ

ChallengeResponseAuthentication=no -1 peter.example.net

Π― ΠΌΠΎΠ³ Π±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ псСвдоним, Π½ΠΎ вмСсто этого ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ SSH, ΠΈ всС систСмы, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ SSH, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚, ΠΊΠ°ΠΊ Π½Π°Π΄ΠΎ. Если сцСнарий, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я Π½Π΅ ΠΌΠΎΠ³Ρƒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ SSH для доступа ΠΊ Ρ‚ΠΎΠΌΡƒ сСрвСру, ΠΎΠ½ воспримСт эти настройки.

Π‘ΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ строки Π² ΠΌΠΎΠ΅ΠΌ Ρ„Π°ΠΉΠ»Π΅ ~/.ssh/config выглядят Ρ‚Π°ΠΊ:

Host peter.example.net

ForwardX11 no

RSAAuthentication yes

PasswordAuthentication yes

ChallengeResponseAuthentication no

Compression no

Protocol 1

Π£ SSH-ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² для Windows ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π΅ΡΡ‚ΡŒ графичСский интСрфСйс, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ настройки профиля, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ сСрвСра (ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… сСрвСров).

Π§Π΅ΠΌ большС Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ ΠΏΡ€ΠΎ SSH, Ρ‚Π΅ΠΌ большС Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. Π•ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΊΠ½ΠΈΠ³ ΠΈ элСктронных справочников с ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΌ описаниСм SSH, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Β«SSH, The Secure Shell: The Definitive GuideΒ» (SSH. БСзопасная ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ°: ΠΏΠΎΠ»Π½ΠΎΠ΅ руководство), O'Reilly. Если Π² SSH ΠΈ Π΅ΡΡ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π½Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ систСмный администратор (Π½ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½Π΅ Π·Π½Π°Π΅Ρ‚), Ρ‚ΠΎ это ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅: ΠΊΠ°ΠΊ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅/Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ (public/private) ΠΊΠ»ΡŽΡ‡ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹, Π½Π΅ сниТая ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ бСзопасности, ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π²Π²ΠΎΠ΄Π° пароля ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ с ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ Ρ‡Π΅Ρ€Π΅Π· SSH.

Make-Ρ„Π°ΠΉΠ» для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ хоста

Π­Ρ‚ΠΎΡ‚ Ρ€Π°Π·Π΄Π΅Π» относится ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ систСмам UNIX/Linux. Π’ΠΎΡ‚, ΠΊΡ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Windows, ΠΌΠΎΠΆΠ΅Ρ‚ Π΅Π³ΠΎ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ.

Π’ систСмах UNIX/Linux ваТная информация часто хранится Π² ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… тСкстовых Ρ„Π°ΠΉΠ»Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях послС рСдактирования Ρ„Π°ΠΉΠ»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ систСмС, Ρ‡Ρ‚ΠΎ информация измСнилась.

НапримСр, послС рСдактирования Ρ„Π°ΠΉΠ»Π° /etc/aliases (ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ sendmail, Postfix ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ пСрСсылки ΠΏΠΎΡ‡Ρ‚Ρ‹), Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ newaliases. Π•Π΅ Π»Π΅Π³ΠΊΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Π½Π΅ Ρ‚Π°ΠΊ Π»ΠΈ?

А ΠΊΠ°ΠΊΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π½Π°Π΄ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ послС рСдактирования Ρ„Π°ΠΉΠ»Π° transports ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Postfix? Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, newtransports? НСт, это Π±Ρ‹Π»ΠΎ Π±Ρ‹ слишком просто. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ postmap transports. А Π΅Ρ‰Π΅ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ‚4, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ послС рСдактирования m4-Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ Ρ‚. Π΄., ΠΈ Ρ‚. ΠΏ.