Полезные команды SSH

Приветствую друзья!👋

Буквально на днях возился с подключением по #SSH к удаленным ВМ и наткнулся на интересные, и супер полезные команды, которые могут автоматизировать (ну почти) процесс работы с удаленными узлами.👇

✅Быстрый запуск команд

Чтобы выполнить всего одну удаленную команду, совсем не обязательно подключаться к SSH, вводить команду, а затем отключаться. Можно сделать это сразу. Например, так можно посмотреть заполненность ФС удаленной машины: 👉$ ssh user@host df -h А так — перезагрузить ее: 👉$ ssh user@host sudo reboot

✅Можно сгруппировать блок команд и пустить их в работу

Если у тебя есть целый список команд, которые следует выполнить, их можно записать в файл и скормить этот файл SSH: 👉$ ssh user@host "cat file.txt"

✅Моментальное редактирование файлов

Чтобы отредактировать файл на удаленной машине, не требуется заходить на нее и использовать консольный редактор. На самом деле файл можно открыть в твоем любимом текстовом редакторе на локальной машине (gvim заменяем на свой редактор): 👉$ gvim scp://user@host//путь/к/файлу

✅Копирование файлов и команд

Если необходимо скопировать содержимое удаленного файла или вывод команды в буфер обмена, не обязательно выводить его на экран или открывать в текстовом редакторе и копировать вручную. Можно использовать следующую команду: 👉$ ssh user@host cat /путь/к/файлу | xclip А так можно скопировать вывод команды: 👉$ ssh user@host uname -a | xclip

✅Возможность сравнения удаленного и локального файла без копирования

Похожий прием можно использовать для сравнения двух файлов: 👉$ ssh user@host cat /путь/к/удаленному/файлу | diff /путь/к/лoкальному/файлу -

✅Работа с удаленными файлами с помощью локального файлового менеджера

Не всегда удобно работать с большим количеством файлов с помощью консольных команд или mc, запущенного на удаленной машине. Но всегда можно подключить любой каталог удаленной машины как сетевой диск. Для этого достаточно установить sshfs: 👉$ sudo apt-get install sshfs Создать каталог для подключения «сетевого диска»: 👉$ mkdir remote_files И подключить его: 👉$ sshfs user@host:/home/user ~/remote_files/ Теперь все файлы удаленного каталога /home/user будут видны в каталоге ~/remote_files/ и с ними можно работать, как с обычными.

✅Быстрое копирование ключей

Хоть и копирование публичного ключа на удаленный сервер — задача простая, но она требует выполнения нескольких действий вручную. Если тебя это напpягает, скопировать ключ можно в автоматическом режиме: 👉$ ssh-copy-id user@host При этом не обязательно копировать основной ключ, с помощью флага -i можно указать любой другой: 👉$ ssh-copy-id -i ~/my_key.pub user@host

✅Установка постоянного соединения с удаленным узлом

Если в течение дня ты часто подключаешься к одной машине, в том числе на несколько минут или секунд (чтобы просто запустить одну команду, например), есть смысл создать с ней постоянное соединение. Твой комп будет держать соединение открытым и использовать его для каждого подключения к машине. Это намного быстрее и экономичнее с точки зрения трафика и нагрузки на процессор. 🧑‍💻Добавь следующие строки в ~/.ssh/config: Host host ControlPath ~/.ssh/master-%r@%h:%p ControlMaster no А затем создай соединение: 👉$ ssh -MNf user@host

#localhost #linux #devops #cloud #sys

🤝Вступайте в наше сообщество - тут интересно!🌞

Полезные команды SSH | Сетка — новая социальная сеть от hh.ru
repost

359

input message

напишите коммент

· 30.06

По моему полезно) лучше иметь представление об этом чем не знать вовсе.

ответить

· 26.06

Учитывая куберизацию и в целом секурность, ssh команды не то, что пригодится в повседневности

ответить

еще контент в этом сообществе

еще контент в этом соообществе

войдите, чтобы увидеть

и подписаться на интересных профи

в приложении больше возможностей

пока в веб-версии есть не всё — мы вовсю работаем над ней

сетка — cоциальная сеть для нетворкинга от hh.ru

пересекайтесь с теми, кто повлияет на ваш профессиональный путь