Секреты Терминала. Часть 19: Работа в сети

Секреты Терминала. Часть 19: Работа в сети Cтатьи

В этой, уже девятнадцатой по счёту части нашего цикла статей о Терминале Mac OS X мы хотели бы рассказать вам о командах, которые помогут с легкостью ориентироваться в сетевом окружении и взаимодействовать с ним.

Начнем с классики, с самого простого и важного:

ifconfig

Команда покажет нам сетевые интерфейсы в системе и информацию о них. IP-адрес будет здесь же.

Уже известная нам по предыдущим материалам команда:

ping *адрес*

Позволяет проверить доступность удаленной машины. В таком виде команда будет выполняться, пока мы не прервем её с помощью CTRL-C. Но можно ограничить число пакетов, а, значит, и длительность выполнения.

-c *число_пакетов*

Теперь, после прохождения указанного числа пакетов, команда завершится, и нам не нужно будет вручную её прерывать.

Помните, что не все маршрутизаторы и точки доступа «откликаются» на ping. В настройках это можно изменять и часто эта возможность бывает выключена.

Переходим к более сложному. Мы можем проследить, как же идет информация к указанному узлу сети, увидев промежуточные этапы отправки.

traceroute *адрес*

Команда отобразит все шаги на пути пакета к указанному адресу. Появление звездочек означает тайм-аут. Это может быть как обычная задержка, так и невозможность попасть в конечную точку в принципе.

Мы прошлись по основным командам, которые могут нас выручить в некоторых случаях. Они достаточно просты. Теперь стоит рассмотреть более сложные, но довольно часто используемые вещи.

ssh

Эта команда позволяет легко и просто работать удаленно. Если вы, конечно, прочитали предыдущие разделы :). Вот теперь то, что там говорилось, можно применять не только локально, у себя «дома». Можно подключиться к другому компьютеру и работать с ним. Это помогает, например, при настройке хостингов или даже помощи другим пользователям. Применений огромная масса, покажем, как этим пользоваться.

Для начала расскажем, как быстро и удобно узнать IP-адрес, зная доменное имя и никуда больше не желая лезть.

host *доменное_имя*

Для того, чтобы подключиться к какому-нибудь компьютеру, сделаем так:

ssh -l *имя_пользователя, например, root* *адрес*

или так, что равноценно:

ssh *пользователь*@*адрес*

После этого нам будет предложено ввести пароль того, под кем захотим зайти. Если уверены в том, что попали по адресу, ответим «да» на вопрос о продолжении работы. После этого приглашение в Терминале изменится и мы будем работать с удаленным компьютером. Мы точно также увидим файлы, получим права доступа. Только стоит заметить, что набор доступных команд может отличаться, мало ли как там все настроено. Хотя стандартный набор будет всегда с Вами. Мы сможем оперировать файлами, службами и чем угодно ещё, будто мы никуда и не лезли.

Для того, чтобы мы могли попадать через терминал на другой компьютер, необходимо, чтобы это было позволено. В случае с Mac OS X это делается через настройки:

Секреты Терминала. Часть 19: Работа в сети Cтатьи

В «Общем доступе» включим пункт «Удаленный вход»:

Секреты Терминала. Часть 19: Работа в сети Cтатьи

Теперь рассмотрим, как же нам одним движением руки перенести файлы между компьютерами с помощью защищенного копирования:

scp *пользователь_исходный*@*адрес_исходный*:*файл_исходный* *пользователь_целевой*@*адрес_целевой*:*файл_целевой*

Выглядит страшно, но это не так, во многом здесь прослеживается сходство с «обычным» cp. Принцип тот же, что и у предыдущей команды. Добавляется только путь к файлам через двоеточие. То, что выше — общий вид. Как правило, файлы переносятся с локальной машины. В таком случае можно не указывать пользователей и адреса в одном случае. Они появятся только для того компьютера, который является удаленным. Поэтому вид будет попроще и поприятнее. Здесь точно так же работает флаг -r, позволяющий перемещать директории вместе с их содержимым. Он указывается после команды scp. Отметим, что исходных файлов может быть сколь угодно много. В этом случае просто укажем через пробел столько, сколько захотим. Последний элемент в цепочке — это будет место назначения. Команда положит все, что мы там науказывали по одному пути. Таким образом, «зацеплять» лишнее не обязательно. По аналогии с ssh, нам будет предложено ввести пароль для пользователя на удаленной машине.

Здесь и далее: помните, как именно вы указываете путь. Не запутайтесь с относительными путями. Проверяйте, где вы находитесь и от чего будет отсчитан адрес файла. Также учитывайте, не перезапишите ли вы что-то ценное. Меры предосторожности тут те же, что и раньше.

Источник: appstudio.org

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *