tar.gz в мультипотоке

Дата: 25.06.2020

Утилита tar не умет работать в мультипоточном режиме. Из-за этого процесс создания архива для больших файлов может занять очень длительное время. Для создания архивов в мультипоточном режиме необходимо использовать pigz:

tar cf - paths-to-archive | pigz > archive.tar.gz

Для распаковки архива необходимо выполнить команду:

pigz -dc target.tar.gz | tar xf -

Включить RDP в Kali Linux

Для включения RDP в Kali Linux нужно установить xrdp и включить автоматический запуск. Более дополнительных настроек не требуется.

Устанавливаем пакет:

apt-get install xrdp

Запускаем и добавляем в атозапуск xrdp:

service xrdp start
service xrdp-sesman start
update-rc.d xrdp enable

При первом входя может выкинут при подключении. Сделайте рестарт системы. По поводу работы, RDP во всех Linux дистрибутивах тормознутый. Для более менее комфортной работы поменяй в настройках RDP качество изображения на 16bit и сделайте однотонную заставку на рабочий стол.

включит root логин в ProFTPD

ВНИМАНИЕ, использование root для входа в систему всегда плохая практика. Эта заметка предназначена для особого случая или для работы с средой разработки.

Открываем конфиг:

vi /etc/proftpd/proftpd.conf

Добавляем в конец файла:

<Global>
RootLogin on
UseFtpUsers off
</Global>

Перезапускаем службу:

service proftpd restart

Зависла команда yum

Дата: 15.06.2019Метки:

На CentOS 7 зависла команда yum. Убил все процессы, но если даже просто вызвать yum никакого вывода вообще не появлялось. Для решения проблемы нужно выполнить команд ниже. Затем проверить, что нет работающих процессов yum и rpm и повторить попытку.

rm /var/lib/rpm/__db*
rm /var/lib/rpm/.rpm.lock
rm /var/lib/rpm/.dbenv.lock

dd клонирование диска по SSH

Дата: 19.05.2019Метки:

Необходимо было сделать клон с одного диска на другой используя команду dd. На серверах абсолютно идентичные диски. Данные передаем в сжатом виде.

dd if=/dev/sda | gzip | ssh root@target 'gzip -d | dd of=/dev/sda'

В моем случае диски были по 2TB и процесс занимал несколько часов. В связи с чем имеет смысл запустить команду screen и уже потом вводить команду выше. Это нужно для того чтобы можно было закрыть окно SS-подключения.

Для отслеживания прогресса откроете еще один SSH-сеанс и введите команды из этой записи.

Установка Java 8 в Debian 8. Работающий способ.

Дата: 15.05.2019Метки:

Заметка про установку Java 8 в Debian 8. В сети полно мануалов, но помути в данный момент ни один не рабочий. Большинство из них это добавление репозитория Ubuntu — не рабочий вариант. Если вас устроить установка Java 7, то вы это можете сделать командой:

apt-get install default-jre

Ну а если нужно установить Java 8 в Debian 8, используйте следующуие команды:

wget http://javadl.sun.com/webapps/download/AutoDL?BundleId=106240 -O jre-linux.tar.gz
tar xvfz jre-linux.tar.gz
mkdir /usr/lib/jvm
mv jre1.8.0_45 /usr/lib/jvm/jre1.8.0_45
update-alternatives --install /usr/bin/java java /usr/lib/jvm/jre1.8.0_45/bin/java 1 
java -version
update-alternatives --config java

Warning: require(): open_basedir restriction in effect. File(x) is not within the allowed path(s)

Столкнулся с ошибкой во время переноса скрипта на другой сервер. Для управления сайтами используется панель Vesta CP. Проблема заключается в том, что на сервере не правильно прописана опция open_basedir. Для нормальной работы скрипта нам нужно обеспечить доступ к каталогу /home/system/web/system.ru/yii/.

Warning: require(): open_basedir restriction in effect. File(/home/system/web/system.ru/yii/vendor/autoload.php) is not within the allowed path(s): (/home/system/web/system.ru/public_html:/home/system/1) in /home/system/web/system.ru/public_html/admin/index.php on line 10

Warning: require(/home/system/web/system.ru/yii/vendor/autoload.php): failed to open stream: Operation not permitted in /home/system/web/system.ru/public_html/admin/index.php on line 10

Fatal error: require(): Failed opening required '/home/system/web/system.ru/public_html/admin/../../yii/vendor/autoload.php' (include_path='.:/usr/share/pear:/usr/share/php') in /home/system/web/system.ru/public_html/admin/index.php on line 10

Для решения проблемы Warning: require(): open_basedir restriction in effect. File(x) is not within the allowed path(s) переходим в каталог с конфигами Apache. У меня Vesta CP и они расположены по следующему пути:

cd /home/system/conf/web

Далее добавляем или правим настройки в конфигах:

system.ru.httpd.conf
system.ru.httpd.ssl.conf

Следующую опцию:

<Directory /home/system/web/system.ru/public_html>
        AllowOverride All
        SSLRequireSSL
        Options +Includes -Indexes +ExecCGI
        php_admin_value open_basedir   /home/system/web/system.ru/public_html:/home/system
        php_admin_value upload_tmp_dir /home/system/tmp
        php_admin_value session.save_path /home/system/tmp
    </Directory>

Поиск и замена в Linux

Дата: 03.04.2019

Допустим у вас есть сервер, на котором нужно изменить ip-адрес. Проблема в том, что есть много конфигов, где может быть указан этот адрес. Но у вас нет времени и желания лазить по всем конфигам и прописывать новые настройки. Данную задачу можно автоматизировать и ускорить если выполнить поиск по содержимому всех файлов в Linux c последующей заменой необходимого фрагмента текста на свое значение.

Для поиска и замены в Linux по указанному слову выполните команду:

grep -rli 'исходный текст' * | xargs -i@ sed -i 's/исходный текст/текст на который нужно заменить/g' @

Если нужно просто выполнить поиск по содержимому файлов без выполнения замены:

grep -rl 'исходный текст' /

Linux выполнять команду каждую секунду

Дата: 26.03.2019

Небольшая заметка на тему, как непрерывно выполнять одну и туже команду в Linux. Лично мне понадобилось при переносе файлов каждую секунду проверять размер каталога. В данном случае мне нужно было постоянно выполнять команду du -sh. Для выполнения любой команды через заданный промежуток времени в Linux есть утилита watch.

Параметры ее использования достаточно просты. Для примера мне нужно выполнить команду каждую 1-у секунду:

watch -n1 command

MySQL Server Has Gone Away

Дата: 15.02.2019Метки:

Во время загрузки дампа в phpMyAdmin столкнулся с ошибкой MySQL Server Has Gone Away. Дамп был размером на 10MB, а его экспорт требовал времени. В итоге срабатывал тайм-аут соединения, в результате чего сервер закрывал соединение. Для решения проблемы необходимо в файле my.cnf увеличить значение параметра wait_timeout.

vi /etc/mysql/my.cnf

Затем установить тайм-аут ожидания в секундах:

wait_timeout = 600