Запуск Internet Explorer в Windows 10

Иной раз попадаются старые серверы со старыми же IPMI/iDRAC’ами, которые корректно работают только в Internet Explorer’е. Сам IE уже давно недоступен для запуска — вместо него запускается Edge, который, увы, корректно с этими самыми старыми IPMI/iDRAC’ами не дружит.

Выход, тем не менее, есть.

Открываем блокнот и пишем в него:

set a=CreateObject("InternetExplorer.Application")
a.Navigate "1.2.3.4"
a.Visible=1

Заменяем 1.2.3.4 на IP-адрес IPMI/iDRAC’а, сохраняем как .vbs-скрипт (например run-old-idrac.vbs) и запускаем.

Перенос предустановленной AlmaLinux 8.10 на программный RAID

Пришлось, как-то, поднимать на сервере из не самого удобного дата-центра программный RAID и переносить туда предустановленную AlmaLinux 8.10.
К сожалению, IPMI/KVM/iDRAC недоступен, и варианта выбрать установку на RAID с кастомной разбивкой не представлялось возможным.
Ну что же, есть руки и есть SSH-доступ на предустановленную на один из дисков систему.

Сервер приехал с такой разбивкой:

sda       8:0    0   1.8T  0 disk
├─sda1    8:1    0   200M  0 part /boot/efi
├─sda2    8:2    0     1G  0 part /boot
├─sda3    8:3    0     8G  0 part [SWAP]
└─sda4    8:3    0   1.7T  0 part /
sdb       8:16   0   1.8T  0 disk
sdc       8:32   0   1.8T  0 disk
sdd       8:48   0   1.8T  0 disk

Continue reading «Перенос предустановленной AlmaLinux 8.10 на программный RAID»

ISPmanager и fail2ban

Понадобилось как-то прикрутить fail2ban к веб-форме авторизации в ISPmanager.

Готовых решений не нашел (были несколько вариантов, но для старых версий панелей, в которых иначе логируются попытки авторизации), пришлось ковыряться самому.

Читать дальше

Удаление большого количества файлов

Несколько раз сталкивался с необходимостью удалить огроменное количество файлов в каталоге, при этом ни rm, ни find не помогали (например, Maildir, который не чистился годами, или mod-tmp каталог ISPmanager’а).
Выручил, внезапно, perl:

cd  /путь/к/целевому/каталогу/
perl -e 'for(<*>){((stat)[9]<(unlink))}'

 

Установка MikroTik RouterOS на Soekris net4511

Для решения одной задачи из забвения был вытянут Soekris net4511.

Забавная железяка. Подробнее, если интересно, можно о ней почитать тут.

Некоторое время назад, на такую же, имел опыт ставить FreeBSD. Но на этот раз нужна была RouterOS от MikroTik.

Читать дальше

Прикручиваем Node.js к nginx в Arch Linux

Возникла необходимость прикрутить приложение на Node.js к Django-проекту, над которым сейчас работаю. Сам проект работает через gunicorn + nginx. Открывать в мир порт, который будет слушать Node.js неохота, да и не хочу чтобы на любом виртуалхосте он был доступен, поэтому решил прикрутить его (Node.js) к nginx’у. Ну и создать для него (Node.js) юнит в systemd, чтоб запускть-перезапускать.

Сам юнит:

sudo nano /etc/systemd/system/node_имя_вхоста.service
[Unit]
Description=node_имя_вхоста.js -- Node JS App for имя_вхоста
After=network.target


[Service]
Environment=NODE_PORT=номер_порта
Type=simple
User=имя_пользователя
ExecStart=/usr/bin/node /путь/к/nodejs/приложению/имя_приложения.js
Restart=on-failure


[Install]
WantedBy=multi-user.target

Читать дальше

Прикручиваем AWStats к nginx в Arch Linux

Возникла необходимость собирать статистику посещений одного из django-проектиков. Так как когда-то, давным-давно, имел кое-какой опыт работы с awstats, его же и решил прикрутить. Ранее, правда, работал с apache2, а тут nginx. Можно, конечно, поставить apache2, чтоб слушал какой-нибудь 8080-порт, или типа того. Но зачем?

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

Читать дальше

PostgreSQL после обновления ArchLinux

Очередной pacman -Syyu на этот раз прошел не столь незаметно как прежде. Отвалились все django-проектики, которые работают с postgresql. Причина проста — несовместимость формата БД версии 9.6 (стояла прежде) с версией 10.0-1 (которая стала после обновления), о чем радостно сообщил journalctl -xe:

ноя 27 11:35:44 archlinux systemd[1]: Starting PostgreSQL database server...
-- Subject: Начинается запуск юнита postgresql.service
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel

--
-- Начат процесс запуска юнита postgresql.service.
ноя 27 11:35:44 archlinux postgres[17505]: An old version of the database format was found.
ноя 27 11:35:44 archlinux postgres[17505]: You need to dump and reload before using PostgreSQL 9.6.
ноя 27 11:35:44 archlinux postgres[17505]: See http://www.postgresql.org/docs/9.6/static/upgrading.html

ноя 27 11:35:44 archlinux sudo[17502]: pam_unix(sudo:session): session closed for user root
ноя 27 11:35:44 archlinux systemd[1]: postgresql.service: Control process exited, code=exited status=1
ноя 27 11:35:44 archlinux systemd[1]: postgresql.service: Failed with result 'exit-code'.
ноя 27 11:35:44 archlinux systemd[1]: Failed to start PostgreSQL database server.
-- Subject: Ошибка юнита postgresql.service
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel

--
-- Произошел сбой юнита postgresql.service.
--
-- Результат: RESULT.

Читать дальше

Перенос БД Django-проекта с MySQL на PostgreSQL

Для экспериментов и наведения порядка в коде проекта пришлось поднять его копию в песочнице. Отличия, правда, некоторые имеются: не apache2 в ней, но nginx, и не MySQL/MariaDB, но PostgreSQL.

С первым отличием справляться долго не пришлось. Поднял очередной virtualenv, да почти копипастой с других проектов в песочнице создал два конфига (один для nginx, второй для gunicorn).

А вот перенести БД не так просто и быстро. Вернее, и просто, и быстро, если уже опыт имеется. А мне раньше не приходилось.

Читать дальше