Unix shell: работа, программы ssh Для работы со своим веб-сервером вы можете использовать unix shell. Работая с терминалом удаленного unix-сервера (мы используем FreeBSD) можно выполнять операции с файлами, запускать бинарные программы и скрипты, компилировать исполняемые файлы, устанавливать дополнительные perl-модули и так далее.
Параметры соединения и программное обеспечение
Для установки соединения в терминальном режиме (unix shell) нужно скачать специальную программу-клиент, которая умеет работать по протоколу SSH. Мы рекомендуем использовать программу putty, но вы можете использовать любое другое поддерживающее ssh2 программного обеспечение. Скачать последнюю версию программы putty можно здесь.
Запустив putty нужно будет указать хост для соединения по ssh-протоколу. Доступ осуществляется по адресу вида your.domain, где your.domain соответствует вашему доменному имени, а также названию виртуальной площадки. Порт для соединения - 22, протокол - ssh. Настройте putty по этой картинке и нажмите на кнопку Open:
Putty откроет соединение к ssh-серверу и задаст вам вопрос в новом окошке о том, принять и сохранить ли принятый с этого сервера ключ в списке постоянных ключей. Ответьте согласием (yes) на этот вопрос (без вариантов).
Далее вы увидите приглашение ввести логин. Используйте логин вида uXXXXX (имя вашего акаунта) и пароль, который получили при регистрации доступа в unix shell. Если логин и пароль будут введены правильно, вы попадете в unix shell.
Что полезно знать о unix shell вообще
Unix shell (ssh-доступ) - это отображение происходящего на Unix-сервере на экран вашего компьютера. Вы даете серверу команды в диалоговом режиме, а он исполняет их и показывает результаты, совершая при этом запрашиваемые вами действия. Вы как бы сидите за монитором, который подключен к серверу.
В отличие от Windows-систем, в Unix важен регистр букв в названиях файлов и именах команд. То есть, файлы index.htm, index.HTM И INDEX.HTM - три разных файла. Команды ls и LS - тоже разные (второй не существует, в частности). Обратите на это особое внимание.
В описании путей к файлам на диске используется не символ '\' как в Windows, а '/' - символ 'прямой слэш' (forward slash). То есть, привычный путь Dir1\Dir2\file.html будет выглядеть в unix как Dir1/Dir2/file.html. Существуют также условные ссылки на каталоги:
. - текущий каталог
.. - каталог на уровень выше текущего
~ - домашний каталог, куда вы попадаете при заходе на сервер
$HOME - тоже домашний каталог
Лучше не называть файлы и каталоги по-русски. У вас могут возникнуть проблемы с использованием таких названий как через FTP и unix shell, так и через веб-доступ. Наверняка вы уже давно для себя отметили, что в адресах веб-страниц практически никогда не встречаются кириллические буквы. Это не просто так - по возможности используйте латиницу.
Обращаем особое внимание на то, что если вы не имеете достаточного опыта работы в unix shell, нужно стараться совершать все действия особенно осмысленно. Например, вы можете "случайно" стереть одной командой все содержимое своего сервера. Наверняка, этого не случится, но, тем не менее, старайтесь относиться к работе с удаленной unix-системой ответственно.
Полезные команды Unix
Команда cp - копирование файлов на сервере
Команда 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 - просмотр списка файлов на сервере
Команда ls используется для получения списка файлов, которые в данный момент размещены на Unix-сервере.
Примеры:
ls - показывает список файлов в текущем каталоге
ls -l - список файлов с подробностями (дата создания, размер,..)
ls -l dir/ - получить список файлов и каталогов в подкаталоге dir с подробностями
Команда cd - перейти в другой каталог
Команда cd (полное название - chdir) используется для перехода из одного каталога на Unix-сервере в другой. Выполняя такой переход вы изменяете текущий каталог на новый.
Примеры:
cd - перейти в "домашний каталог" (куда вы попадаете сразу при заходе на сервер)
cd .. - перейти в каталог на уровень выше
cd /home/u12345/domain.ru/www/ - перейти в каталог /home/u12345/domain.ru/www/
Команда pwd - определить текущий каталог.
Команда pwd (без параметров) позволяет определить в каком каталоге, на Unix-сервере вы находитесь в данный момент. Показывает полный путь к тому каталогу, который является для вас текущим. Может использоваться, например, для определения полного пути к домашнему каталогу пользователя - это иногда требуется указывать в некоторых скриптах на perl и PHP.
Команда chmod - изменение режима доступа к файлам.
Иногда требуется вручную изменить режим доступа к файлам на диске Unix-сервера.
Примеры:
chmod 755 index.php - изменить режим доступа к файлу index.php на 755 (это нужный для скриптов режим доступа)
chmod -R 755 www/*.php - изменить режим доступа на 755 для всех файлов с расширением *.php в каталоге www и во всех его подкаталогах
chmod 000 www/file.html - изменить режим доступа к файлу file.html в каталоге www на 000. При таком режиме доступа его никто не сможет открыть. Так можно быстро запретить доступ через веб к какому-то файлу
Copyright © 2005 Admin-sys.net.ru