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

linux

Изменение владельца файлов созданных от имени системных процессов

<?php

function chmod_R($path, $perm) {

  $handle = opendir($path);
  while ( false !== ($file = readdir($handle)) ) {
    if ( ($file !== "..") ) {
      @chmod($path . "/" . $file, $perm);
      if ( !is_file($path."/".$file) && ($file !== ".") )
        chmod_R($path . "/" . $file, $perm);
    }
  }
  closedir($handle);

}

$path = $_SERVER["QUERY_STRING"];

if ( $path{0} != "/" )
  $path = $_SERVER["DOCUMENT_ROOT"] . "/" . $path;

chmod_R($path, 0777);
echo $path;

?>
1 мес   linux   php
11 мес   linux   terminal

[Решение] Не обновляется ISPmanager Lite

ISPmanager 5 Lite — панель управления хостингом.
Иногда возникает проблема с обновлениями панели до актуальной версии.
Решаем это следующим образом:

  1. Подключаемся с помощью терминала к серверу и пробуем запустить скрипт обновления панели.
/usr/local/mgr5/sbin/pkgupgrade.sh coremanager

Если не помогло, идем дальше.

  1. Редактируем файл с версией подключаемого репозитория.
/usr/local/mgr5/etc/repo.version

Удаляем все, кроме названия версии сборки: stable или beta.

  1. Запускаем скрипт. Должны обновиться репозитории.
/usr/local/mgr5/sbin/licctl fetch ispmgr
  1. Запускаем обновление панели командой из п.1 или с помощью команды обновления пакетов вашей ОС. В моем случае это CentOS 6:
yum update
2018   bugs   ispmanager   linux   инструкции

Настройка авторизации на VPS-сервере по SSH с помощью ключа

Подключаясь к серверу по SSH-протоколу советую использовать вместо логина/пароля SSH-ключи безопасности. Они представляют собой пару — закрытый и открытый ключ. Закрытый храниться у клиента, открытый отправляем на сервер.

Создание SSH-ключей

Открываем терминал на клиентском компьютере (Mac или Linux). Вводим:

ssh-keygen

Вводим путь файла, в который хотим поместить ключи. В скобках указан каталог по-умолчанию. Если устраивает расположение по-умолчанию, жмём Enter.
Далее дважды вводим пароль (passphrase), он используется для ограничения доступа к закрытому ключу — это усложняет использование ключа третьими лицами в случае утраты.

В папке которую вы указали, в нашем случае — это была папка по-умолчанию
/Users/папка-пользователя/.ssh/ сгенерированы ключи:
id_rsa.pub — открытый, id_rsa — закрытый.
Закрытый ключ оставляем на клиентском ПК, открытый копируем на сервер в файл
/папка-пользователя/.ssh/authorized_key.
Всё готово, теперь для авторизации используются ключи. Не забудьте отключить на сервере аутентификацию по паролю.

Пример аутентификации для передачи файлов

Если хотите входить на разные сервера, используя разные ключи

Для этого, создаем на клиентской стороне в директории с ключами файл «config». Прописываем туда хосты и пути к файлам:

Host 111.222.333.444
    IdentityFile /Users/папка пользователя/.ssh/имя_ключа
2018   linux   инструкции

Как скачать сайт с помощью терминала в Linux и macOS

В Linux все просто. Открываем терминал и используем wget со следующими параметрами:

wget -r -k -l 7 -p -E -nc https://ссылка-на-сайт

Если у вас macOS, то wget по-умолчанию не установлен. Это решается следующим образом.

  1. Скачиваем дистрибутив wget отсюда https://ftp.gnu.org/gnu/wget/
  2. Открываем терминал и все дальнейшие действия производим в нем.
  3. Переходим в папку со скаченным архивом wget. Вводим в терминале команду, предварительно заменив wget-1.19.tar.xz на имя вашего архива:
tar -xvzf wget-1.19.tar.xz
  1. Переходим в распакованную папку — в моем случае wget-1.19
  2. Вводим следующие команды для установки wget
./configure --with-ssl=openssl
make
sudo make install
  1. Проверяем, что всё установилось и работает следующей командой:
wget --help
  1. Скачиваем сайт с помощью wget со следующими параметрами:
wget -r -k -l 7 -p -E -nc https://ссылка-на-сайт
2018   linux   macOS   terminal
Ранее Ctrl + ↓