Что такое SSH, Shell, Шелл Как создать свой сайт > Вебмастеру > Создание своего сайта > Блог Андрея Морковина > Что такое SSH («Шелл»)?

Что такое SSH («Шелл») и зачем он нам нужен?

Самая тяжёлая работа — та, которую не решаешься начать:
она становится кошмаром.
Шарль Бодлер.
18 июня 2009 года

    Итак, SSH или Shell — это штука наподобие Radmin, но для Linux. Оболочка «Шелл» позволяет удалённо управлять операционной системой. Зачем нам это нужно?

    А нужно нам это, чаще всего, для того, чтобы быстро «закачать» большое количество файлов на хостинг или удалить их оттуда.

    Все мы сталкиваемся с этой задачей, когда приходит время с локального сервера (я имею ввиду, например, «Денвер») переместить наш проект на сервер хостинг-провайдера. И хорошо, если наш сайт маленький. А если проект крупный? «Весом», эдак, в мегабайт 50?

    Вот тут-то и начинаются сложности. Просто соединиться с сервером, при помощи каких-то программ (например, Total Commander), и закачивать файлы копированием — становится весьма нетривиальной задачей. Время на загрузку файлов по одному, с постоянным ожиданием ответа от удалённого сервера, уйдёт уйма. И, скорее всего, с первого раза скопировать все файлы не удастся: обязательно вылезет какая-нибудь ошибка и соединение оборвётся, а потом разбирайся, какие файлы попали на хостинг, а какие нет.

    Тут-то нам и приходит на помощь тот самый «Шелл».

    Берём весь наш сайт на локальном хостинге и сжимаем его в zip-архив. Во-первых, из 50 мегабайт, после сжатия, останется около 15. Во-вторых, один файл-архив «закачать» на хостинг куда проще, чем весь проект. И при закачке одного файла, ошибки, скорее всего, не возникнут.

    Теперь остаётся распаковать архив на сервере. Сделать это можно при помощи программы PuTTY, которая, «пообщавшись» с удалённой хостинг-машиной посредством протокола SSH, распакует загруженный архив с такой же быстротой, как вы распаковываете архивы на своём компьютере.

    Итак, устанавливайте PuTTY (скачать дистрибутив PuTTY с офиц. сайта) и вперёд.

    После установки и запуска программы, вы увидите окно. Всё, что вам в нём нужно — ввести адрес хоста для общения с сервером посредством «Шелл». Этот адрес с логином и паролем вам должен был выслать хостинг-провайдер в электронном письме.

    Для «Мастерхоста», например, данный адрес имеет вот такой вид: XXXXXX.ssh.masterhost.ru. Где «XXXXXX» — ваш персональный идентификатор клиента «Мастерхоста».

    Вводим адрес в поле «Host Name (or IP address)» и нажимаем кнопку «Open».

Интерфейс программы PuTTY

    После этих нехитрых действий, произойдёт соединение с удалённой машиной (посредством сетевого протокола SSH) и вы увидите приглашение для ввода логина и потом пароля, которые вам также должен выслать по электронной почте хостинг-провайдер.

    При вводе пароля, не пугайтесь следующего обстоятельства: никакие звёздочки или точки, как принято в Windows, появляться не будут. Это вам Linux, господа и дамы. Курсор даже не сместится с места. Но вы на это внимания не обращайте, а аккуратно вводите свой пароль и после ввода нажимайте «Enter».

    Сделана данная штука для того, чтобы никто не смог подсмотреть количество символов в вашем пароле. Бред? Возможно. Linux — он такой: конфиденциальность превыше всего.

    Если вы не ошиблись в пароле, то вы увидите слово «Welcome!»:

Вы вошли в PuTTY

    После соединения, вы находитесь в корневой папке своего хостингового пространства. Для того, чтобы посмотреть, какие ещё папки и файлы присутствуют в корневой директории, воспользуйтесь командой «ls».

    Перемещайтесь к нужной папке (в которую вы сохранили zip-архив с сайтом) командой «cd».

    Т. е., если в «корне» у вас лежит папка «www» и вы хотите в неё переместиться, то вводите команду «cd www/» и нажимаете «Enter».

    Для того, чтобы подняться на уровень вверх: «cd ..».

    После перемещения к папке, можете воспользоваться ещё раз командой «ls», чтобы посмотреть её содержимое и убедиться в наличии zip-архива с сайтом.

    Когда вы находитесь в директории, содержащей архивный файл, то набираете команду «unzip imya_faila.zip». Вместо «imya_faila.zip» нужно ввести имя архива с расширением.

    Архив начинает весело распаковываться в ту же директорию, где он и находился.

Быстрое удаление файлов с хостинга

    Кроме возможности быстро «закачать» файлы на сервер, «Шелл» даёт нам возможность быстро их оттуда и удалить. Делается это весьма похожим на распаковку архива образом.

    Вам нужно переместиться к директории, содержащей файлы или каталоги, которые вы хотите удалить (напомню, перемещаемся командой «cd»).

    После того, как вы зашли в директорию, каталоги и файлы внутри которой вы собираетесь удалить, вводите следующие команды:

  • Для удаления файла — команда «rm imya_faila.xxx»;
  • Для удаления файла без лишних вопросов («А вы точно хотите его удалить или нет?») — команда «rm – f imya_faila.xxx»;
  • Для удаления каталога — «rm – r imya_kataloga/».

    В программе PuTTY, для упрощения ввода имён файлов и каталогов, реализована следующая функция: введите начало имени файла или каталога и нажмите «Tab», PuTTY автоматически подставит недостающую часть имени.

    Для выхода из программы, используйте команду «exit».

    Автор: Андрей Морковин.

 

Новое на сайте:

Комментарии:

Lardok
Для того, что бы распаковать архив прямо на сервере, необходимо выставить ему атрибуты 777 но встречаются частенько хостеры, которые максимально разрешают 755, все, что выше — блокируется! в таком случае все Ваши ухищрения не помогут!
«…обязательно вылезет какая-нибудь ошибка и соединение оборвется, а потом разбирайся какие файлы попали на хостинг, а какие нет» — у меня лично не вылезают ошибки, если конечно сам провайдер не подводит))) тогда юзайте «FileZilla» — легкая и простая прога!
ИМХО Тотал — рулит!

Андрей Морковин
Тотал — рулит, без вопросов.
А те хостеры, которые не дают ставить 777 идут лесом.
По поводу замечания про атрибуты, спасибо.

Лев Тигренко
Тотал — самая универсальная программа уже не одного десятилетия!
В ИТ он ставится вторым после установки ОС!

Lardok
>А те хостеры, которые не дают ставить 777 идут лесом.
Самое обидно, что это узнаешь уже тогда, когда все оплачено на год вперед О_о
>По поводу замечания про атрибуты, спасибо.
Мы учимся у Вас, Вы узнаете что-то новое от нас

Never Lex
Признаюсь, никогда Шелом не пользовался. Вот так вот я горе-вебмастер Привык пользоваться ТОТАЛом без заморочек. Канал позволяет. Хотя как-то писал Мовабл Тайп на хост, чуть не заснул, но это частное извращение.
>А те хостеры, которые не дают ставить 777 идут лесом.
Нифига, например, когда ПХП стоит как suPHP, то заморачиваться с правами вовсе не нужно. Максимальные права для папки 755 а для файла 644, но при них можно писать и изменять файлы. Залил скрипт и всё, без установки прав. Удобно.

Never Lex
Думаю, не помешала бы ссылочка на список ССШ команд.

mustang
чета я так и не понял как ZIP файл то залить? или я что-то пропустил?

Андрей Морковин
ZIP-архив грузить Total Comannder-ом через обычное FTP-соединение. Один файл однозначно или загрузиться или нет, все понятно. Также можно загружать файлы через SSH соединение программой WinSCP. Об этом я писал здесь: http://www.seoded.ru/webmaster/morkovin/pokupka-domena-i-hostinga.html

Евгений
Если я правильно вас понял, то вся эта схема будет работать только на UNIX-сервере. А если сайт лежит на Windows-сервере?

PavelV
Присоединяюсь к вопросу! Есть ли подобная тузла для win серверов?
Конечно в большинстве случаев на win серверах стоят консольки которые уже умеют распаковывать архивы, но к сожалению не на всех…

Иван
SSH можно установить на windows но для етого нужно знать консоль винды

Modu Chanyu
используйте cygwin

Игорь
Здравствуйте, Андрей, спасибо Вам за Вашу колоссальную работу.
У Вас небольшая ошибка в коде ссылки на слове «Денвер»(2 раза написано http ) Личку не обнаружил, Sorry)
Ваш текст до проблемной ссылки:
>>>>>>>>>>> SSH или Shell – это штука на подобие Radmin-а, но для Linux. Оболочка Шелл позволяет удаленно управлять операционной системой.
Зачем нам это нужно? А нужно нам это чаще всего для того, чтобы быстро закачать большое количество файлов на хостинг или удалить их оттуда.
Все мы сталкиваемся с задачей, когда приходит время с локального сервера (я имею ввиду например ——Денвер——)>>>>>>>>

Иван
SSH или Shell – это штука на подобие Radmin-а, но для Linux.
—————————————————————————————
а почему только для линукс есть SSH сервера и для Windows

Аркадий
Прочитал статью, но где он этот самый ШЕЛЛ — SSH так и не понял!
Покажите мне его пальцем, вот он SSH ????

Александр TSV
Андрей!Большое человеческое Вам спасибо за Ваш труд.Смотреть(и читать)и делать по Вашим урокам-ИНТЕРЕСНО.

Дмитрий
Встретился с проблемой: Мой хостер отказал в доступе SSH — только для виртуальных серверов. А SSH иногда необходим, например, при настройке Gallery2.
Интересно, где найти хороший хостинг, меняю уже второй.

Li
Первый раз слушу про такой способ подключения к сайту. Спасибо, буду знать.

Сергей
а разве в файл зиле нельзя распаковать заархивированный файл сайта?

Иван
1)а можно через SSH установить memcache или ПО какое-нить (MariaDB) например?
2)и можно ли на шаред-хостинги такое устанавливать или виртуальный сервер минимально нужен?

 

⇓ 

Поделись ссылкой на Seoded.ru с друзьями, знакомыми и собеседниками в соцсетях и на форумах! А сам сайт добавь в закладки! Так победим.

Поделиться ссылкой на эту страницу в:

 

Полезные ссылки:

Проверка текстов и их уникальности Сайт, на котором можно зарабатывать деньги, какой он?

 


основан в 2008 г. © Все права на материалы сайта Seoded.ru принадлежат Алексею Вострову.
Копирование (полное или частичное) любых материалов сайта возможно только с разрешения автора и при указании ссылки на источник.
Ослушавшихся находит и забирает Бабайка!