1 473 просмотров
. Полезные мелочи (разное полезное)
Disable ipv6 completely (optional)
echo “net.ipv6.conf.all.disable_ipv6 = 1” >> /etc/sysctl.conf
echo “net.ipv6.conf.default.disable_ipv6 = 1” >> /etc/sysctl.conf
echo “net.ipv6.conf.lo.disable_ipv6 = 1” >> /etc/sysctl.conf
Enable ipv6
echo “net.ipv6.conf.all.disable_ipv6 = 0” >> /etc/sysctl.conf
echo “net.ipv6.conf.default.disable_ipv6 = 0” >> /etc/sysctl.conf
echo “net.ipv6.conf.lo.disable_ipv6 = 0” >> /etc/sysctl.conf
создать большой файл, 100мег, 1 гиг
dd if=/dev/zero of=./data.img bs=1024 count=102400
dd if=/dev/zero of=./data.img bs=1024 count=1024000
файл нельзя пересохранить даже владельцу:
root@host [~]# lsattr /usr/local/lib/php.ini
—-i——– /usr/local/lib/php.ini
атрибут i – запрещает редактирование файла
сменить можно командой chattr -i /usr/local/php.ini
так- можно узнать конфу сервера/VPS
wget -qO- bench.sh | bash
смена часового пояса Debian/Ubuntu
dpkg-reconfigure tzdata
конвертируем rmp в deb
apt-get install alien
alien –to-deb package.rpm
Debian autostart
Для начала, после загрузки системы, мы проверим список юнитов, которые в данный момент добавлены в systemd:
systemctl list-units
Список unit-файлов можно получить командой:
systemctl list-unit-files
Чтобы вывести список активных сервисов и их состояние, выполните:
# systemctl list-units -t service
systemctl list-units --all --state=active
— выведет список только активных юнитов
systemctl list-units —type=service
— выведет список юнитов, которые являются сервисом.
systemctl enable nginx.service
– команда добавит в автозагрузку веб-сервер nginx
# systemctl disable nginx.service
– команда удалит из автозагрузки веб-сервер nginx
wget – скачать сайт
wget -r -k -l 7 -p -E -nc http://site.com/
Шпаргалка по wget аргументам команды
-r, — recursive — скачивать все страницы рекурсивно переходя по ссылкам на сайте.
-k, — convert-links — после завершения скачивания преобразовать все абсолютные ссылки на скачанные документы в относительные. Если загружен файл, на который есть ссылка, то ссылка будет указывать на него, если нет — ссылка будет указывать на его адрес в интернете.
-p, — page-requisites — загрузить все файлы, которые требуются для отображения страниц: изображения, css-стили и т.д.
-nc, — no-clobber — запрещает перезапись существующих файлов, на случай если нужно возобновить остановленную загрузку.
-c, — continue — докачивать частично полученные файлы, в случае обрыва связи во время предыдущей закачки.
-N, — timestamping — скачивать файлы с более поздней датой, чем уже имеющиеся. С помощью этого флага можно обновить только изменённые страницы.
-K, — backup-converted — конвертировать ссылки обратно, убирать расширение .orig, изменяет поведение опции -N.
-np, — no-parent — скачивать только файлы находящиеся в текущем каталоге, т.е. запрещает переход по каталогам на уровень выше.
-nd, –no-directories — Не создавать иерархию каталогов во время рекурсивной выборки. При использовании этой опции, все получаемые файлы будут сохраняться в текущем каталоге без разрушения (если имя файла будет встречаться более одного раза, то имена файлов будут расширяться суффиксом «.n»).
-l depth, —level=depth — максимальная глубина вложенности страниц, по-умолчанию depth = 5. Если указать 0 — то wget будет скачивать по всем найденным ссылкам. Если указать 1 — будут скачана указанная страница и все те страницы, на которые она ссылается.
-A, acclist, —accept acclist, -R rejlist —reject rejlist — имена файлов через запятую которые следует загрузить или исключить. Можно указать маски в posix-стиле.
— restrict-file-names=windows — убирает из имён файлов и директорий запрещённые символы для ОС Windows.
-E, —adjust-extension — сохранит файлы с mime-type application/xhtml+xml или text/html с расширением .html, нужно в случае выкачивания динамических сайтов с расширениями .php или .asp. До версии wget 1.12 назывался html-extension.
— domains example.com — разрешает переход по ссылкам только указанных доменов.
-H, —span-hosts — разрешает переходить на любые доменные имена на которые будут указывать ссылки.
-nv, —non-verbose — выводит краткий журнал об обработанных страницах.
-U agent-string, —user-agent=agent-string — представляться как agent-string при запросах к серверу.
— no-check-certificate — не проверять сертификат сервера.
Пауза в bash-скриптах
read -sn1 -p "Press any key to continue..."; echo
==============================================================================
Wget – как выкачать архив c Google Drive по прямой ссылке
Очень часто нужно перенести архив, который находится на Google Drive (Гугл Диске), на наш сервер через wget. Доступ к архиву должен быть открыт для всех, тогда команда сработает.
Пример, у нас есть ссылка:
https://drive.google.com/file/d/1aFdgdfcKOhcRuXc345EAQouhN8pgewQ6q_G/view?usp=sharing
где
1aFdgdfcKOhcRuXc345EAQouhN8pgewQ6q_G - это наш ID файла.
Команда для скачивания архива c Google Drive:
# wget –load-cookies /tmp/cookies.txt “https://docs.google.com/uc?export=download&confirm=$(wget –quiet –save-cookies /tmp/cookies.txt –keep-session-cookies –no-check-certificate ‘https://docs.google.com/uc?export=download&id=OUR_ID’ -O- | sed -rn ‘s/.*confirm=([0-9A-Za-z_]+).*/\1\n/p’)&id=OUR_ID” -O filename.mov && rm -rf /tmp/cookies.txt
где
OUR_ID - наш ID, который берем из URL
filename.mov - название файла
Для нашего примера команда будет выглядеть так:
# wget –load-cookies /tmp/cookies.txt “https://docs.google.com/uc?export=download&confirm=$(wget –quiet –save-cookies /tmp/cookies.txt –keep-session-cookies –no-check-certificate ‘https://docs.google.com/uc?export=download&id=1aFdgdfcKOhcRuXc345EAQouhN8pgewQ6q_G’ -O- | sed -rn ‘s/.*confirm=([0-9A-Za-z_]+).*/\1\n/p’)&id=1aFdgdfcKOhcRuXc345EAQouhN8pgewQ6q_G” -O filename.mov && rm -rf /tmp/cookies.txt
С Google Drive очень быстрая скорость скачивания, поэтому информацию будет практична.
Чтобы рекурсивно настроить доступ ко всем папкам и файлам на вашем сайте:
1. Подключитесь по SSH.
2.Выполните команды:
find /dir_name -type d -exec chmod 755 {} \;
find /dir_name -type f -exec chmod 644 {} \;
Где dir_name — полный путь до корневой папки сайта.
Первая команда изменит права для всех директорий внутри указанной на 755. Вторая — для файлов внутри указанной директории на 644.
Увеличение времени сессии SSH
На сервере в конфигурационном файле /etc/ssh/sshd_config
прописываем:
TCPKeepAlive yes
ClientAliveInterval 300
ClientAliveCountMax 60
TCPKeepAlive — установлен в «yes», значит сервер будет периодически пинговать клиента, проверяя жив ли он.
ClientAliveInterval — задает интервал пинга для проверки состояния клиента (в секундах). Параметр работает только для протокола версии 2 (Protocol 2).
ClientAliveCountMax — количество пингов клиента.
Таким образом в моем примере таймаут сессии будет равен 60*300/60 = 300 минут = 5 часов.
После изменения настроек не забудьте перезапустить сервис ssh.
Опубликовать текущую директорию в веб:
python3 -m http.server 8080
ruby -run -ehttpd -p8080
Вывод cron всех пользователей
for user in $(cut -d':' -f1 /etc/passwd); do crontab -u $user -l; done
Поделиться:
Апр 7 2017
Разное полезное
. Полезные мелочи (разное полезное)
Disable ipv6 completely (optional)
Enable ipv6
создать большой файл, 100мег, 1 гиг
файл нельзя пересохранить даже владельцу:
атрибут i – запрещает редактирование файла
сменить можно командой
chattr -i /usr/local/php.ini
так- можно узнать конфу сервера/VPS
смена часового пояса Debian/Ubuntu
конвертируем rmp в deb
Debian autostart
Для начала, после загрузки системы, мы проверим список юнитов, которые в данный момент добавлены в systemd:
systemctl list-units
Список unit-файлов можно получить командой:
systemctl list-unit-files
Чтобы вывести список активных сервисов и их состояние, выполните:
# systemctl list-units -t service
systemctl list-units --all --state=active
— выведет список только активных юнитовsystemctl list-units —type=service
— выведет список юнитов, которые являются сервисом.systemctl enable nginx.service
– команда добавит в автозагрузку веб-сервер nginx# systemctl disable nginx.service
– команда удалит из автозагрузки веб-сервер nginxwget – скачать сайт
-r, — recursive — скачивать все страницы рекурсивно переходя по ссылкам на сайте.
-k, — convert-links — после завершения скачивания преобразовать все абсолютные ссылки на скачанные документы в относительные. Если загружен файл, на который есть ссылка, то ссылка будет указывать на него, если нет — ссылка будет указывать на его адрес в интернете.
-p, — page-requisites — загрузить все файлы, которые требуются для отображения страниц: изображения, css-стили и т.д.
-nc, — no-clobber — запрещает перезапись существующих файлов, на случай если нужно возобновить остановленную загрузку.
-c, — continue — докачивать частично полученные файлы, в случае обрыва связи во время предыдущей закачки.
-N, — timestamping — скачивать файлы с более поздней датой, чем уже имеющиеся. С помощью этого флага можно обновить только изменённые страницы.
-K, — backup-converted — конвертировать ссылки обратно, убирать расширение .orig, изменяет поведение опции -N.
-np, — no-parent — скачивать только файлы находящиеся в текущем каталоге, т.е. запрещает переход по каталогам на уровень выше.
-nd, –no-directories — Не создавать иерархию каталогов во время рекурсивной выборки. При использовании этой опции, все получаемые файлы будут сохраняться в текущем каталоге без разрушения (если имя файла будет встречаться более одного раза, то имена файлов будут расширяться суффиксом «.n»).
-l depth, —level=depth — максимальная глубина вложенности страниц, по-умолчанию depth = 5. Если указать 0 — то wget будет скачивать по всем найденным ссылкам. Если указать 1 — будут скачана указанная страница и все те страницы, на которые она ссылается.
-A, acclist, —accept acclist, -R rejlist —reject rejlist — имена файлов через запятую которые следует загрузить или исключить. Можно указать маски в posix-стиле.
— restrict-file-names=windows — убирает из имён файлов и директорий запрещённые символы для ОС Windows.
-E, —adjust-extension — сохранит файлы с mime-type application/xhtml+xml или text/html с расширением .html, нужно в случае выкачивания динамических сайтов с расширениями .php или .asp. До версии wget 1.12 назывался html-extension.
— domains example.com — разрешает переход по ссылкам только указанных доменов.
-H, —span-hosts — разрешает переходить на любые доменные имена на которые будут указывать ссылки.
-nv, —non-verbose — выводит краткий журнал об обработанных страницах.
-U agent-string, —user-agent=agent-string — представляться как agent-string при запросах к серверу.
— no-check-certificate — не проверять сертификат сервера.
Пауза в bash-скриптах
==============================================================================
Wget – как выкачать архив c Google Drive по прямой ссылке
Очень часто нужно перенести архив, который находится на Google Drive (Гугл Диске), на наш сервер через wget. Доступ к архиву должен быть открыт для всех, тогда команда сработает.
Пример, у нас есть ссылка:
где
Команда для скачивания архива c Google Drive:
# wget –load-cookies /tmp/cookies.txt “https://docs.google.com/uc?export=download&confirm=$(wget –quiet –save-cookies /tmp/cookies.txt –keep-session-cookies –no-check-certificate ‘https://docs.google.com/uc?export=download&id=OUR_ID’ -O- | sed -rn ‘s/.*confirm=([0-9A-Za-z_]+).*/\1\n/p’)&id=OUR_ID” -O filename.mov && rm -rf /tmp/cookies.txt
где
Для нашего примера команда будет выглядеть так:
# wget –load-cookies /tmp/cookies.txt “https://docs.google.com/uc?export=download&confirm=$(wget –quiet –save-cookies /tmp/cookies.txt –keep-session-cookies –no-check-certificate ‘https://docs.google.com/uc?export=download&id=1aFdgdfcKOhcRuXc345EAQouhN8pgewQ6q_G’ -O- | sed -rn ‘s/.*confirm=([0-9A-Za-z_]+).*/\1\n/p’)&id=1aFdgdfcKOhcRuXc345EAQouhN8pgewQ6q_G” -O filename.mov && rm -rf /tmp/cookies.txt
С Google Drive очень быстрая скорость скачивания, поэтому информацию будет практична.
Чтобы рекурсивно настроить доступ ко всем папкам и файлам на вашем сайте:
1. Подключитесь по SSH.
2.Выполните команды:
find /dir_name -type d -exec chmod 755 {} \;
find /dir_name -type f -exec chmod 644 {} \;
Где dir_name — полный путь до корневой папки сайта.
Первая команда изменит права для всех директорий внутри указанной на 755. Вторая — для файлов внутри указанной директории на 644.
Увеличение времени сессии SSH
На сервере в конфигурационном файле
/etc/ssh/sshd_config
прописываем:TCPKeepAlive — установлен в «yes», значит сервер будет периодически пинговать клиента, проверяя жив ли он.
ClientAliveInterval — задает интервал пинга для проверки состояния клиента (в секундах). Параметр работает только для протокола версии 2 (Protocol 2).
ClientAliveCountMax — количество пингов клиента.
Таким образом в моем примере таймаут сессии будет равен 60*300/60 = 300 минут = 5 часов.
После изменения настроек не забудьте перезапустить сервис ssh.
Опубликовать текущую директорию в веб:
Вывод cron всех пользователей
Поделиться:
By serg • Linux 0