- Основные SSH команды
- Введение
- Требования
- Поехали
- Навигация
- Что тут?
- Файлы
- Изменение прав
- Используйте эту команду для копирования файла в другую папку(первый пример) или для копирования файла в ту же папку(второй пример)
- Перемещение или переименование
- Создание и редактирование файлов
- Простое создание файла
- Быстрый просмотр файла
- Удаление файла
- Скачивание файла по ssh
Основные SSH команды
В этой статье я расскажу об основных и наиболее часто используемых ssh командах. Точнее это просто shell команды. Но раньше я этого не знал.
SSH это такой протокол для удаленного управления. Я как веб-разработчик использую его для управления своим веб-сервером, конечно есть панель ISP Manager, которая позволяет делать в принципе тоже самое, но только через графический интерфейс, а ssh все-же имеет больше возможностей
Пример: я переношу сейчас сайты с одного хостинга на другой, для этого нужно сначала сказать архивы со старого сервера на компьютер, и потом закачать на новый, с моей скоростью интернета это очень долго, а возможность удаленной загрузки файла в ISP manager почему-то не работает, и я использую SSH для того чтоб скачивать напрямую со старого сервера.
Введение
- Нажмите Enter или Return после каждой команды, если не указано иное.
- Домен example.com должен быть заменен на ваше доменное имя.
- Всякий раз, когда вы видите username, вы должны заменить его на имя вашего пользователя.
- Примеры пути и имена файлов должны быть заменены на не что есть у вас на сервере.
Требования
В данной статье предполагается, что:
- у вас есть SSH доступ к вашему серверу.
- Вы используете терминал, или PuTTY (Windows), чтобы войти на сервер.
Поехали
Для начала нам нужно авторизоваться, открываем SSH клиент и вводим
После этого вас попросят ввести пароль, Внимание: пароль вводится не видимо для пользователя – просто набирайте и нажмите Enter или Return.
Если все хорошо, то вы увидите что то вроде этого
Linux hivede2-2547 2.6.32-308.8.2.el5.028stab101.1 #1 SMP Sun Jun 24 20:25:35 MSD 2012 x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Sat Jan 5 22:35:59 2013 from ip153-226.stat.dsl.minsktelecom.by
После этого вы окажитесь в папке /var/www/username/data если у вас Debian, если нет то папка будет немного другая, но суть та-же.
Навигация
Для того чтоб узнать где мы сейчас находимся есть ssh команда
выполнив которую вы увидите в какой директории находитесь
Пример результата выполнения:
Используйте эту команду для перемещения по папкам:
Если вы хотите продолжить путь от текущей директории, то первый слэш использовать не нужно. Пример:
Для перемещения на уровень выше используйте двоеточие, как в CSS))
Чтоб попасть в домашнюю директорию можно использовать вот такую SSH команду
Что тут?
Дальше вы можете узнать о том какие файлы и папки находятся в вашей директории
ls команда которая показывает список файлов и папок. -alh модифицирует стандартный вывод.
a — говорит что нужно показать даже скрытые файлы
l — позволяет показать полную информацию о файле(права, размер, пользователя, дату)
h — делает вывод более читабельным
итого 44K drwxr-x--x 10 la2ha la2ha 4,0K Янв 5 22:39 . dr-x-----x 3 la2ha mgrsecure 4,0K Дек 28 16:35 .. -rw------- 1 la2ha la2ha 290 Янв 6 01:09 .bash_history drwx------ 2 la2ha la2ha 4,0K Дек 28 18:42 bin-tmp drwxr-x--x 2 la2ha la2ha 4,0K Дек 28 16:35 email drwxr-x--x 2 la2ha la2ha 4,0K Янв 5 05:25 etc drwxr-xr-x 2 la2ha la2ha 4,0K Янв 5 06:52 .filemgr-tmp drwxr-x--x 2 la2ha la2ha 4,0K Янв 5 05:25 logs drwx--S--- 2 www-data la2ha 4,0K Дек 28 16:35 mod-tmp drwxr-x--x 2 la2ha la2ha 4,0K Дек 28 18:42 php-bin lrwxrwxrwx 1 la2ha la2ha 13 Дек 28 16:35 public_html -> www/la2ha.com lrwxrwxrwx 1 www-data la2ha 7 Дек 28 16:35 tmp -> mod-tmp drwxr-x--x 9 la2ha la2ha 4,0K Янв 5 22:53 www
Файлы
Давайте разберем элементы, которые отображается при запуске LS-ALH из предыдущего раздела.
-rw-r--r-- 1 example.com example.com 83 Oct 21 09:47 index.php
-rw-r—r— это права файла или папки, про них вы можете почитать где-нибудь в другом месте
1 – количество ссылок на этот файл
example.com – владелец файла
example.com – группа к которой файл принадлежит
83 – размер файла
83 Oct 21 09:47 – дата изменения файла
index.php – название файла
Изменение прав
Перед изменением прав на файлы настоятельно рекомендую прочитать про это что-нибудь, т.к. это может угрожать безопасность вашего сервера.
Вот так вы можете изменить права на файл и установить их в значение 755
Используйте эту команду для копирования файла в другую папку(первый пример) или для копирования файла в ту же папку(второй пример)
это команда, logo.png – имя исходного файла, затем идет имя нового файла, включая информацию о пути, если необходимо.
Так же вы можете скопировать целую папку, со вложенными фалами, используя -R
Перемещение или переименование
Команды осень походи на команды копирования файла
mv – основная команда. Она перемещает logo.png в image/ поддиректорию.
А еще вы можете переименовать файл
Ну тут думаю все понятно, теперь мы знаем как происходит переименование файлов, я думал что как то иначе если честно)
Тут мы папочку image перемещаем на уровень выше
Создание и редактирование файлов
Если это существующий файл, то вы увидите его содержимое, если файл не существует, то он создастся и откроется для редактирования.
Файл откроется в редакторе vi о том как им пользоваться можете погуглить, это обширная тема.
Простое создание файла
Выполнение этой команды просто создаст файл
Быстрый просмотр файла
Если вам нужно просто посмотреть файлик то используйте кошку))(cat)
Удаление файла
Вот мы добрались уже и до удаления, для того чтоб это сделать выполните ssh команду
На что вы можете получить вопрос, хотите ли вы его удалить? Нажимайте y и он будет удален. Внимание: файл будет удален навсегда, а не в корзину, так что думайте прежде чем удалять.
Если нужно удалить каталог со всеми вложенными файлами используйте:
rm -rf /path/to/unwanted/folder/
Скачивание файла по ssh
Для того чтоб скачать файл с другого сервера по ssh нужно выполнить следующую комманду
scp your_username@example.com:/some/remote/directory/foobar.txt /some/local/directory/
Введя этот код(изменив его на свой) вам потребуется ввести пароль от для того юзера которого вы указали, в нашем случае это your_username, затем начнется скачивание файла foobar.txt с удаленной директории /some/remote/directory в вашу /some/local/directory
А вот еще хороший аналог предыдущего действия, отличается тем что этот в отличие от того показывает процесс копирования и сколько осталось
rsync -r -v --progress -e ssh your_username@example.com:/some/remote/directory/foobar.txt /some/local/directory/
Это не ssh команды, а команды шелла операционной системы, к которой Вы подключены посредством ssh туннеля.
Не суть, люди которые захотят по SSH полазить по серверу, и не знают как, напишут запрос типа такого как в заголовке.
Самого главного не написали. то что в начале обещано:
«я использую SSH для того чтоб скачивать напрямую со старого сервера»
Какая команда — то.