5 заметок с тегом

ssh

SSH: копируем сайт с хостинга на хостинг

За 5 лет активной работы с сайтами, я пользовался только FTP. То есть чтобы перенести сайт с демки на боевой сервер, мне требовалось скопировать всё на локальный компьютер, затем загрузить на боевой и развернуть.
Понятно, что можно было использовать SVN и другие технологии контроля версий, но мне не довелось работать с подобными проектами, которые готовы были на это выделить бюджет. А тратить энергию на то, что никто не оценит, не хочется.
Сейчас на обычных виртуальных хостингах, существует возможность включить консоль SSH и выполнить произвольную команду. Сначала это натолкнуло меня на мысль по быстрому выполнению php-скриптов и как следствие я стал быстрее искать вирусы на зараженных сайтах.
А сегодня я выкачал за 7 минут с одного хостинга на другой 4.5 гигабайта. Прикиньте, сколько я по времени бы это делал через старенький FTP.

Итак, реализация:


  1. Делаем архив текущего сайта на старом хостинге.
zip -r ARCHIVENAME.zip /PATH_TO_DIR #Укажите имя архива и путь к директории, которую будем архивировать
  1. Кладём его в корень сайта, с которого будем производить скачивание.
  2. Заходим на новый хостинг и открываем консоль:
wget -nc http://site.com/ARCHIVENAME.zip #Укажите адрес и имя архива, который будем качать.
  1. Если всё правильно сделали, то увидите как бежит погрессбар.




Умнее, быстрее, эффективнее!

 13   2018   ssh
 27   2018   ssh

SSH: вывод top User-agent

Работает только при включенном access.log. Поэтому важно для начала включить запись логов в панели вашего хостинга.

cd YOUR_ACCESSLOG_DIR
cat YOUR_WEBSITE_NAME.access.log | awk '{print $(NF-2)}' | sort | uniq -c | sort -nr
 22   2018   ssh

SSH создать ZIP-архив

Дабы не выкачивать весь сайт с помощью медленного FTP, лучше воспользоваться SSH. Чтобы создать zip архив файлов открываем Putty и пишем:

zip -r archivename.zip /path_to_folder

А чтобы распаковать архив на другом хостинге пишем в Putty:

unzip archivename.zip
 64   2018   ssh

Быстрый поиск содержимого через SSH

Раньше приходилось скачивать содержимое сайта, делать поиск по файлам и только потом редактировать необходимое содержимое. При наличии SSH этот вопрос решается за пару минут. Подключаемся через терминал (ex. Putty) и пишем:

find ./ -type f -name "*.php" -exec grep -i -H "STRING"  {} \;

*.php — тип файлов, которые анализируем;
STRING — то что ищем в файлах;
-i будет игнорировать регистр при поиске.

 949   2018   linux   ssh