PDA

Просмотр полной версии : Unix shell: работа, программы SSH


PandoraBox
08.04.2008, 01:19
Unix shell: работа, программы SSH

Параметры соединения и программное обеспечение
Для установки соединения в терминальном режиме (unix shell) нужно скачать специальную программу-клиент, которая работает по протоколу SSH версии 1. Мы рекомендуем использовать программу putty (http://www.chiark.greenend.org.uk/~sgtatham/putty/), но вы можете использовать любое другое поддерживающее SSH1 программное обеспечение. Скачать последнюю версию программы putty (http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe) можно здесь.

Подключение к виртуальной машине
После запуска putty нужно указать хост для соединения по SSH-протоколу. Доступ осуществляется по адресу вида site.ru, где site.ru соответствует вашему домену/ИП так же потребуется пароль и логин для аутификации. Порт для соединения — 22, протокол — SSH, версия протокола (возможно, понадобится) — 1 (один). Настройте putty по этой картинке и нажмите на кнопку Open:

http://www.nacs.uci.edu/help/handouts/images/putty/Putty-Config-Man.gif

Putty откроет соединение к SSH-серверу и задаст вам вопрос в новом окошке о том, принять и сохранить ли принятый с этого сервера ключ в списке постоянных ключей. Ответьте согласием (yes) на этот вопрос (без вариантов).

http://www.nacs.uci.edu/help/handouts/images/putty/Host-Key.gif

Далее вы увидите приглашение ввести логин. Используйте логин и пароль, который получили при регистрации доступа в unix shell. Если логин и пароль будут введены правильно, вы попадете в unix shell.

Что полезно знать о unix shell вообще
SSH — это аббревиатура Secure SHell, удаленный доступ к командной оболочке наших Unix-серверов. Вы даете серверу команды в диалоговом режиме, а он исполняет их и показывает результаты, совершая при этом запрашиваемые вами действия.

В отличие от Windows-систем, в Unix важен регистр букв в названиях файлов и именах команд. То есть, файлы index.htm, index.HTM И INDEX.HTM — три разных файла. Команды ls и LS — тоже разные (второй не существует, в частности). Обратите на это особое внимание.

http://www.nacs.uci.edu/help/handouts/images/putty/Putty-Config.gif

В описании путей к файлам на диске используется не символ '\' как в Windows, а '/' — символ 'прямой слэш' (forward slash). То есть, привычный путь Dir1\Dir2\file.html будет выглядеть в unix как Dir1/Dir2/file.html. Существуют также условные ссылки на каталоги:
. — текущий каталог
.. — каталог на уровень выше текущего
~ — домашний каталог, куда вы попадаете при заходе на сервер
$HOME — тоже домашний каталог
http://supportweb.cs.bham.ac.uk/remote_access/images/putty_term.png

Лучше не называть файлы и каталоги по-русски. У вас могут возникнуть проблемы с использованием таких названий как через FTP и unix shell, так и через веб-доступ. Наверняка вы уже давно для себя отметили, что в адресах веб-страниц практически никогда не встречаются кириллические буквы. По возможности используйте латиницу.

http://www.atlantawebhost.com/putty/putty.gif

Дополнительная литература, ограничения и предупреждения
Обратим особое внимание на то, что если вы не имеете достаточного опыта работы в unix shell, нужно стараться совершать все действия аккуратно. Например, вы можете «случайно» стереть одной командой все содержимое своего сервера. Наверняка, этого не случится, но, тем не менее, старайтесь относиться к работе с удаленной unix-системой ответственно. В помощь приводем ссылки на полезную документацию по Unix:
«UNIX для веб-мастера (http://hostinfo.ru/tree/hosting/web/site/building/os/unix/shell/basic)» — Дмитрий Турецкий, hostinfo.ru;
«Введение в Unix (http://www.opennet.ru/docs/RUS/unix_enter/linux_enter.txt.html)» — Дегтярев Е.К., opennet.ru;
«Unix basics (http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/basics.html)» — FreeBSD handbook, freebsd.org.
Полезные команды Unix
Команда cp (http://www.freebsd.org/cgi/man.cgi?query=cp) — копирование файлов на сервере
Команда mv (http://www.freebsd.org/cgi/man.cgi?query=mv) — перемещение файлов на сервере
Unix shell на нашем сервере может использоваться вами как удобное средство для копирования или перемещения файлов. Для копирования используется команда cp, а для перемещения — mv. Команда cp имеет также ключ -r (полностью cp -r), который позволяет копировать не только файлы, но и подкаталоги с файлами.

Примеры:
cp old/*.html new/ — копируем все файлы с расширением *.html из каталога old в каталог new
cp -r old/* new/ — копируем все файлы и подкаталоги из каталога old в каталог new
mv old/* new/ — перемещаем (копируем и удаляем на старом месте) все содержимое каталога old в каталог new
Команда ls (http://www.freebsd.org/cgi/man.cgi?query=ls) — просмотр списка файлов на сервере

Команда ls используется для получения списка файлов, которые в данный момент размещены на Unix-сервере.

Примеры:
ls — показывает список файлов в текущем каталоге
ls -l — список файлов с подробностями (дата создания, размер,..)
ls -l dir/ — получить список файлов и каталогов в подкаталоге dir с подробностями
Команда cd (http://www.freebsd.org/cgi/man.cgi?query=cd) — перейти в другой каталог

Команда cd (полное название — chdir) используется для перехода из одного каталога на Unix-сервере в другой. Выполняя такой переход вы изменяете текущий каталог на новый

Примеры:
cd — перейти в "домашний каталог" (куда вы попадаете сразу при заходе на сервер)
cd .. — перейти в каталог на уровень выше
cd /home/u12345/domain.ru/www/ — перейти в каталог /home/u12345/domain.ru/www/
Команда pwd (http://www.freebsd.org/cgi/man.cgi?query=pwd) — определить текущий каталог.

Команда pwd (http://www.freebsd.org/cgi/man.cgi?query=pwd) (без параметров) позволяет определить — в каком каталоге на Unix-сервере вы находитесь в данный момент. Показывает полный путь к тому каталогу, который является для вас текущим. Может использоваться, например, для определения полного пути к домашнему каталогу пользователя — это иногда требуется указывать в некоторых скриптах на perl и PHP.

Команда chmod (http://www.freebsd.org/cgi/man.cgi?query=chmod) — изменение режима доступа к файлам.

Иногда требуется вручную изменить режим доступа к файлам на диске Unix-сервера.Зачастую это нужно при размещении на сервере CGI-скриптов. Подробно о работе chmod и режимах доступа можно прочитать в документации по chmod (http://www.freebsd.org/cgi/man.cgi?query=chmod). Мы же приведем примеры работы с chmod в условиях хостинга:
chmod 755 script.pl — изменить режим доступа к файлу script.pl на 755 (это нужный для скриптов режим доступа);
chmod -R 755 cgi-bin/*.pl — изменить режим доступа на 755 для всех файлов с расширением *.pl в каталоге cgi-bin и во всех его подкаталогах;
chmod 000 www/file.html — изменить режим доступа к файлу file.html в каталоге www на 000. При таком режиме доступа его никто не сможет открыть. Так можно быстро запретить доступ через веб к какому-то файлу.
Основные команды текстовых редакторов

Приведем пример для редакторов vi и joe. Файлы с помощью них открываются командами vi test.txt или joe test.txt

Как быстро научится работать в редакторе VI?
Первым делом нужно зайти в редактор, для этого набираем vi, а теперь попробуем выйти, для этого набираем :q или :q! если вы успели понажимать на разные клавиши. Теперь попробуем чтото написать. Заходим в редактор и нажимаем i, только после этого можете набирать текст. Если нужно удалить лишний символ, переходим в командный режим нажав ESC, подводим курсор к символу и жмём x. Если нужно писать дальше, вновь переходим в режим редактирования, для этого нажимаем i и продолжаем печатать текст.

Список команд которые желательно запомнить::q — выход
:q! — выход без сохранения файла
:w — сохранить файл на диске
:wq — выход с сохранением файла
:e! — перезагрузить текущий файл
:33 — перепрыгнуть на 33ю строку текстового файла
i — перейти в режим редактирования
u — отменить последнее действие
x — удалить символ под курсором
dd — удалить всю строку
/qso — найти слово qso в тексте после курсора

Esc : wq Enter — выйти из файла, сохранив его;
Esc : q! Enter — выйти из файла, не сохранив его.

Чтобы получить подробную помощь по редактору vi, выполните команду man vi в Unix shell (q — выход из справки).
Редактор JOE
Ctrl+K H — справка по командам;
Ctrl+K X — выход из файла с сохранением;
Ctrl+K Q — выход без сохранения;
Ctrl+C — выход без сохранения (удобен, если вы ничего не изменяли);
Ctrl+K F — поиск строки;
Ctrl+L — аналог F3 в Windows(найти далее).
Коррекция часов вашего компьютера по сети
На первом CD-диске находим архив n1/ntp4.tgz (xntp.tgz) и копируем из
него только один исполняемый файл ntpdate в директорию /usr/sbin/ на
HDD-диске.

Для коррекции даты и времени в вашем компьютере запускаем: ntpdate
адрес_сервера_времени
Например: ntpdate -t 3 193.125.103.123
Опция -t устанавливает время ожидания ответа от сервера, в секундах.

~X3RiX~
08.04.2008, 01:34
putty рульная прога!

CrazyStudentS_Mi}{
08.04.2008, 14:13
все так красочно описал а удаление файлов забыл.............. :)

rm имя_файла

nikto
08.04.2008, 23:58
Не совсем понятно что putty делает в разделе *nix. Но наверно многим будет полезно.
Для тех, кто не пользуется виндой, а обязательно хочется фронтенда для ссх - есть kssh, вроде нормальная/удобная оболочка. Хотя смысла особого не вижу.
На счет версий протоколов: насколько я понимаю сейчас 2-ая версия более часто используется.