Некоторые картинки не загружаются из РФ и РК, используйте VPN.

пятница, 20 февраля 2026 г.

 Сложно относится к книгам описывающих то, что автору, скорее всего неизвестно доподлино. Ибо как мужчина может описать внутренние переживания томящегося женского сердца? В этом произведении, я думаю многие найдут отголоски себя...

Стефан Цвейг, "Письмо незнакомки"

 Удивительно, что данная пьеса вышла в 1943. Экранзировали ее уже 1988, но это уже было совершенно другое время. Забавно, что на каждое повторение слова "прохожий" в отношении Ланцелота, у меня в голове выскакивала строчка из песни "эй, прохожий, проходи". А вообще работа предстоит сложная, ибо в каждом человеке нужно будет уничтожить дракона

Евгений Шварц, "Дракон"

Install docker and docker compose


user@mysrv:~# sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
user@mysrv:~# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list
user@mysrv:~# sudo apt update
user@mysrv:~# sudo apt install -y docker-ce
user@mysrv:~# usermod -aG docker ${USER}

user@mysrv:~# mkdir -p ~/.docker/cli-plugins/
user@mysrv:~# curl -SL https://github.com/docker/compose/releases/download/v5.0.2/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
user@mysrv:~# chmod +x ~/.docker/cli-plugins/docker-compose
user@mysrv:~# docker compose version

четверг, 19 февраля 2026 г.

 Одной из первых аудиокниг у меня была книга Оруэла - "1984". Совершеннейшая форма антиутопию. Потом, для компании были Замятиен "Мы" и "О Дивный новый мир" Хаксли. Если не брать в расчет времени написания, они значительно уступают 1984.  На меня книга произвела сильное впечатление.

Я слушал книгу в озвучке Чонишвили. У этого человека очень приятный голос и он связался у меня именно с настроениями этой книги. Спустя какое то время, мне надо было позвонить в налоговую, тональный набор и робот не работали корректно, я бился с ними в неравном бою. Дойдя до выбора нужных пунктов, я нажимаю нужную цифру и голос Чонишвили говорит "неправильный выбор".... 

 Сегодня мне кажется, что на работу "1984" сильно повлияла работа Джека Лондона - "Железная пята", но у последнего конец благополучный. Смотря на сегодняшний мир созлается ощущение, что мир успешно использует оба сценария, правда не так стремительно. Лелеется надежда, что он одумается....

Д. Лондон "Железная пята"

понедельник, 16 февраля 2026 г.

Replace failed disk

This is just a note about replacing a raid member

user@vrem:~$ cat /proc/mdstat
Personalities : [raid1] [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid10]
md127 : active raid5 sda1[4](F) sdb1[0] sdd1[2] sdc1[1]
      11720653824 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [UUU_]
      bitmap: 30/30 pages [120KB], 65536KB chunk

user@vrem:~$ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
loop0         7:0    0  63,8M  1 loop  /snap/core20/2686
loop1         7:1    0  63,8M  1 loop  /snap/core20/2682
loop2         7:2    0  91,4M  1 loop  /snap/lxd/36558
loop3         7:3    0  91,4M  1 loop  /snap/lxd/36918
loop4         7:4    0  50,9M  1 loop  /snap/snapd/25577
loop5         7:5    0  48,1M  1 loop  /snap/snapd/25935
sda           8:0    0   3,6T  0 disk
└─sda1        8:1    0   3,6T  0 part
  └─md127     9:127  0  10,9T  0 raid5 /WBACKUP
sdb           8:16   0   3,6T  0 disk
└─sdb1        8:17   0   3,6T  0 part
  └─md127     9:127  0  10,9T  0 raid5 /WBACKUP
sdc           8:32   0   3,6T  0 disk
└─sdc1        8:33   0   3,6T  0 part
  └─md127     9:127  0  10,9T  0 raid5 /WBACKUP
sdd           8:48   0   3,6T  0 disk
└─sdd1        8:49   0   3,6T  0 part
  └─md127     9:127  0  10,9T  0 raid5 /WBACKUP
sde           8:64   0   3,6T  0 disk
sdf           8:80   0   3,6T  0 disk

user@vrem:~$ sudo fdisk /dev/sde

g - create GPT for 2TB+
n - create new partition
1 - number of part, 1 is default
enter - start sector  (2048 is deafault)
enter - end sector (100% is default)
w - write changes
t - change type. it is recomendation
29 - Linux RAID (for list use L)
w - write changes
q - quit

NOTE! check the number of bytes and sectors on your new partition, it should not less than that of other RAID members.

user@vrem:~$ sudo mdadm /dev/md127 --remove /dev/sda1 --verbose
mdadm: hot removed /dev/sda1 from /dev/md127
user@vrem:~$ sudo mdadm --zero-superblock /dev/sde1
user@vrem:~$ sudo mdadm /dev/md127 --add /dev/sde1
mdadm: added /dev/sde1

user@vrem:~$ cat /proc/mdstat
Personalities : [raid1] [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid10]
md127 : active raid5 sde1[4] sdb1[0] sdd1[2] sdc1[1]
      11720653824 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [UUU_]
      [>....................]  recovery =  0.0% (626756/3906884608) finish=311.6min speed=208918K/sec
      bitmap: 30/30 pages [120KB], 65536KB chunk

суббота, 14 февраля 2026 г.

"Комедия.... Я, Чайка!, нет не так, Я!, Чайка!.... он застрелился...."

Как и многие, искал комедию, получил трагедию. Обратившись к интернету, вопросил - "Чайка, где комедия?",  ответ был прост - ее нет. Теория же о том, что трагедия - о велких, а комедии - о приземеленных, может и имеет место, мне кажется сильно натянутой.

"Чайка", А.П. Чехов

Мне, как имеющему медицинское образование, уши режет "больной СПИДом", "заразился СПИДом" и т.д., возможно, что данные фразы специально упоминались из уст подростков, но коробит прямо очень. В общем напомнило фильм "Точка обстрела", подачей от разных лиц. Некоторые моменты нашел забавными:

"Он как дети кружил вокруг да около, чтобы заставить оппонента сказать то, что ему нужно было", это не дословно, но мысль передана. Помню этот трюк из детства, и как же было забавно смотреть на человека, который применял эту технику против меня же X-D

"Мозг странная штука, он готов помнить любые мелкие детали, но стоит их записать, как они сразу покидают его", опять недословно, интересно, надо будет попробовать.

Забавное стечение обстоятельств, несколько книг назад слушал я "Страдания юнного Вертера" Гёте, а тут у героя произвище Вертер с отсылкой к этому произведению.

Скажем так, не та книга, которую хотел бы купить и положить на полку.

"Признания", Канаэ Минато

Docker compose certbot

This is a docker compose file to create a certbot container and issue a new cert using letsencrypt

services:
  certbot:
    image: certbot/certbot
    container_name: certbot
    volumes:
      - ./certbot/conf:/etc/letsencrypt
      - ./certbot/logs:/var/log/letsencrypt
    ports:
      - "80:80"
    command: certonly --standalone -d yourdomain.com --email your@email.com --agree-tos --no-eff-email

воскресенье, 8 февраля 2026 г.

Личное ИМХО, скомкано. Пару моментов было добавлено вообще не в тему, как будто кинули опарышей в свежий салат. Посыл не понял.

"Земля под снегом", Эндрю Миллер

суббота, 7 февраля 2026 г.

Basic configuration of a new server

Change the timezone

user@mysrv:~# sudo timedatectl set-timezone Europe/Belgrad

Add new user with sudo access

user@mysrv:~# sudo adduser username
user@mysrv:~# sudo usermod -aG sudo username

If you have to installed docker, you need to add new user to the docker group

user@mysrv:~# sudo usermod -aG docker username

Change default ssh port and disable login for root via ssh

user@mysrv:~# sudo cat > /etc/ssh/sshd_config.d/99-hardening.conf <<'EOF'
PermitRootLogin no
Port 2222
EOF

user@mysrv:~# sudo iptables -A INPUT -p tcp -m multiport --dports 2222 -j ACCEPT

user@mysrv:~# sudo sshd -t && sudo systemctl restart ssh

Install and configure fail2ban for safe ssh port

user@mysrv:~# sudo apt install -y fail2ban
cat > /etc/fail2ban/jail.d/defaults-debian.conf  <<'EOF'
[sshd]
enabled = true
bantime = 36000
findtime = 3600
maxretry = 3
backend=systemd
port=ssh,2222
EOF

systemctl enable fail2ban
systemctl start fail2ban

Save iptables ruls

user@mysrv:~# sudo apt install -y iptables-persistent
user@mysrv:~# sudo netfilter-persistent save

Get snap packets and remove it

user@mysrv:~# sudo snap list
core20  20251031       2686   latest/stable  canonical✓  base
lxd     5.0.5-68251b5  36918  5.0/stable/…   canonical✓  -
snapd   2.73           25935  latest/stable  canonical✓  snapd

user@mysrv:~# sudo snap remove --purge lxd
user@mysrv:~# sudo snap remove --purge core20
user@mysrv:~# sudo snap remove --purge snapd
user@mysrv:~# sudo snap list
No snaps are installed yet. Try 'snap install hello-world'.
user@mysrv:~# sudo systemctl stop snapd
user@mysrv:~# sudo systemctl disable snapd
user@mysrv:~# sudo systemctl mask snapd
user@mysrv:~# sudo apt purge --autoremove snapd -y
user@mysrv:~# sudo apt-mark hold snapd

To add swap:


echo "install swapp"
swap_size=2097152
if ! fallocate -l ${swap_size}K /swapfile
then
    dd if=/dev/zero of=/swapfile bs=1024 count=${swap_size}
fi
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
swapon --show
free -h
cp /etc/fstab /etc/fstab.bak
echo '/swapfile none swap sw 0 0' >> /etc/fstab

To disable ipv6 add ipv6.disable=1 to /etc/default/grub, example

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=Ubuntu
GRUB_DISABLE_SUBMENU="true"
GRUB_TERMINAL="console serial"
GRUB_TERMINAL_INPUT="console serial"
GRUB_TERMINAL_OUTPUT="console serial"
GRUB_SERIAL_COMMAND="serial --unit=0 --speed=115200"
GRUB_DISABLE_RECOVERY="true"
GRUB_DISABLE_LINUX_UUID="true"
#GRUB_DISABLE_OS_PROBER=false
GRUB_CMDLINE_LINUX_DEFAULT="net.ifnames=0 biosdevname=0 console=tty0 console=ttyS0,115200n8 ipv6.disable=1"
GRUB_CMDLINE_LINUX="apparmor=0 ipv6.disable=1"

Apply, reboot and check

user@mysrv:~# sudo update-grub
user@mysrv:~# sudo reboot
user@mysrv:~# cat /sys/module/ipv6/parameters/disable
1

пятница, 6 февраля 2026 г.

 Стоит, хотя бы для общего образования, ознакомится с этим трудом. 

"Уолден или жизнь в лесу", Генри Дэвид Торо

This is an example answer to the questions "How do I run my_script.sh only at the first Friday of every month using crontab?"

30 2 * * 5 root if [ -x /usr/share/mdadm/checkarray ] && [ $(date +\%d) -le 7 ]; then /my_script.sh; fi

среда, 4 февраля 2026 г.

Reschedule mdadm check

By default, mdadm checks arrays at 01:00:00 on the first Sunday of every month. For me this is terrible, because the heaviest load on the array starts on Saturday and ends on Monday. Naturally, the mdadm check caused additional problems, and several times it even stopped the array completely. So I decided to look for information on  "How to change the mdadm check schedule?"

It is not difficult. FIrst, check the current schedule, then change "OnCalendar" parameter in the timer configuration file and reload the daemon. 

Note: this parameter works in conjunction with the next parameter "RandomizedDelaySec". This means that the service startup will actually occur between OnCalendar and OnCalendar+RandomizedDelaySec

Note: Sun *-*-1..7 1:00:00 - this means start on the first Sunday of every month

Check the result

user@vrem:~$ systemctl list-timers --all | grep -i check
Wed 2026-02-04 18:26:26 UTC 3h 1min left Sun 2026-02-01 22:57:41 UTC 2 days ago   mdcheck_start.timer            mdcheck_start.service
Thu 2026-02-05 04:29:41 UTC 13h left     Wed 2026-02-04 02:59:49 UTC 12h ago      mdcheck_continue.timer         mdcheck_continue.service

user@vrem:~$ sudo nano /lib/systemd/system/mdcheck_start.timer
user@vrem:~$ sudo systemd-analyze verify /lib/systemd/system/mdcheck_start.*
user@vrem:~$ sudo systemctl daemon-reload
# it is not necessary
user@vrem:~$ sudo systemctl restart mdcheck_start.timer

user@vrem:~$ sudo systemctl list-timers --all | grep -i check
Wed 2026-02-04 15:40:53 UTC 1min 33s left     Sun 2026-02-01 22:57:41 UTC 2 days ago   mdcheck_start.timer            mdcheck_start.service
Thu 2026-02-05 05:50:28 UTC 14h left          Wed 2026-02-04 02:59:49 UTC 12h ago      mdcheck_continue.timer         mdcheck_continue.service

user@vrem:~$ sudo dmesg -T | grep check
[Wed feb  4 15:41:16 2026] md: data-check of RAID array md0
[Wed feb  4 15:41:17 2026] md: data-check of RAID array md127
[Wed feb  4 15:50:16 2026] md: md0: data-check done.

If you did not find the /lib/systemd/system/mdcheck_start.timer file, you should check the /etc/cron.d/mdadm file, maybe your version may use crontab to schedule this task

пятница, 30 января 2026 г.

1С Удалить записи регистра по отбору

2026 год, УТ 11.5.22.137, помеченный на удаление документ "Передача товаров между организациями" имеет движения в регистре "Резервы товаров организаций". Очистка ТЧ Товары, добавление левого товара и проведение создают набор записей, согласно списку товаров. Отмена проведения возвращает старые записи, хотя в ТЧ товары их нет. При этом отключение контроля остатков (галка и кнопка на время сеанса) никак не влияет. Разбираться было лень, накидал обработку и удалил записи вручную.



На коленке, за сообщить на сервере не бить, работает, меня устраивает


&НаСервере
Процедура УдалитьЗаписиНаСервере()
	Если НЕ ЗначениеЗаполнено(СсылкаДокумент) Тогда
		Сообщить("Не задан регистратор");
	КонецЕсли;
	Набор = РегистрыНакопления.РезервыТоваровОрганизаций.СоздатьНаборЗаписей();
	Набор.Отбор.Регистратор.Установить(СсылкаДокумент);
	Набор.Прочитать();	
	КолВо = Набор.Количество();
	Если КолВо > 0 Тогда
		Набор.Очистить();
		Набор.Записать(Истина);
	КонецЕсли;	
	Сообщить("Обработано "+КолВо+" записей");
КонецПроцедуры

&НаКлиенте
Процедура УдалитьЗаписи(Команда)
	УдалитьЗаписиНаСервере();
КонецПроцедуры

четверг, 29 января 2026 г.

 А ведь действительно, современный, требовательный к скорости мир, превращает контакт в почти что мимолетное сновидение. Человечество на столько преисполнилось своей гениальностью и величием, что разрослось до неимоверных размеров в кратчайшие сроки... чтобы что?, чтобы потреблять. Чтобы потреблять быстро, много и порой бессмысленно. Вот тут роль курьера будет видна как никогда, как потребители, мы его видим 2 минуты, он нас видит сотнями, ничего постоянного, просто момент. Книга немного про другое, но на фоне Генри Торо мысли идут такие.

"Курьер", Ху Аньянь

Даже при том, что в детстве у нас был кот, я не кошатник. Возможно это связано с некоторой щепетильностью, после 8 месяцев проживания в инфекционной больнице. Но это не помешало ознакомится с некоторыми произведениями, где кот выступал чуть ли не в главной роли:
"Если все кошки в мире исчезнут", Гэнки Кавамура
"Ваш покорный слуга кот", Нацумэ Сосэки
"Рыжий кот Фута из кафе между мирами", Наги Симэно
"Рыжий кот Фута и затерянный домик в горах", Наги Симэно

Данные произведения разительно отличаются друг от друга, в каждом есть своя изюминка и прелесть, но больше всех понравилась первая книга про кота Фута. Скорее всего из-за сентиментальности, да и любви к животным в целом. Мне кажется, что данное произведение стоит прочитать всем, так как оно может заложить зернышко, которое может облегчить некоторые утраты в будущем, а может и в прошлом...


" Я чаще заказываю основательные вещи. Например, кошачьи башенки, чтобы решить проблему с низкой физической активностью, или самодвижущиеся механические игрушки.

— Какие любопытные штуки ты заказываешь, — порой восхищаются прочие коты-посланники. Но, по правде говоря, мой интерес в другом.

Такие крупные предметы привозят в коробках. Картонных коробках. Вот они-то и есть моя истинная цель. В них и спать можно, и прятаться. Да даже просто запрыгивать в них и выпрыгивать уже весело и увлекательно. Только не говорите Нидзико — это секрет."

"Рыжий кот Фута и затерянный домик в горах", Наги Симэно

"Отдохнув, Чиклин взял Настю на  руки  и  бережно  понес  ее класть  в  камень  и закапывать. Время было ночное, весь колхоз спал в бараке, и только молотобоец, почуяв движение, проснулся, и Чиклин дал ему прикоснуться к Насте на прощанье."

"Котлован", Андрей Платонов.


Данную книгу я слушал на Яндекс.Музыка, после указанной цитаты преложение включило Cattle Decapitation - "One Day Closer to the End of the World". 

 Как это ни странно, но данное произведение я могу оставить на полке, как полезное, хоть и не очень любим мною автор. В первую очередь из-за рассуждений о религии. Как человеку взрощенному до определенного возраста в религии, а после отошедший от нее, эти рассуждения очень интерсны.


"Братья Карамазовы", Ф.Достоевский

 С первых строф, был школьных воспоминаний поток и все.... Разве что, еще момент, слог хорош, а вот полезности вытащить я не смог... Быть может фокус в уже имеющемся как читательском, так и жизненном опыте, на фоне которых, история Онегина - ничто. Да, и, как упомянуто в одном месте, я не могу учитывать эпохи в которой и для которой был написан сей роман.

"Евгений Онегин", А.С.Пушкин