История изменений
Исправление manul91, (текущая версия) :
В итоге:
Проапгрейдил до forky. Там из коробки та же самая ситуация.
Начал разбираться.
Оказалось что появились какие-то template-юниты mdadm-last-resort@.service и mdadm-last-resort@.timer, для исправления этого безобразия :)
Однако по дефолту они не инсталированы, существуют только в usr
/usr/lib/systemd/system/mdadm-last-resort@.service
Короче, понадобилось сделать вот что
mkdir -p /etc/systemd/system/mdadm-last-resort@.service.d/
nano /etc/systemd/system/mdadm-last-resort@.service.d/override.conf
(чтобы вставить drop-in
[Install]
WantedBy=multi-user.target
) В итоге имеем
root@debian-test:~# systemctl daemon-reload 
root@debian-test:~# systemctl cat mdadm-last-resort@.service
# /usr/lib/systemd/system/mdadm-last-resort@.service
[Unit]
Description=Activate md array %I even though degraded
DefaultDependencies=no
ConditionPathExists=!/sys/devices/virtual/block/%i/md/sync_action
Documentation=man:mdadm(8)
[Service]
Type=oneshot
ExecStart=/usr/sbin/mdadm --run /dev/%i
# /etc/systemd/system/mdadm-last-resort@.service.d/override.conf
[Install]
WantedBy=multi-user.target
root@debian-test:~#
Делаем тоже самое (инсталируем template сервис) и для таймера
mkdir -p /etc/systemd/system/mdadm-last-resort@.timer.d/
nano /etc/systemd/system/mdadm-last-resort@.timer.d/override.conf
.....
Далее включаем конкретные юниты для всех рейдов поотдельно (md0, md1, md2… ; вроде бы для / лишнее, но лучше перебдеть):
root@debian-test:~# systemctl enable mdadm-last-resort@md2.service
Created symlink '/etc/systemd/system/multi-user.target.wants/mdadm-last-resort@md2.service' → '/usr/lib/systemd/system/mdadm-last-resort@.service'.
...
И то же самое для таймеров:
root@debian-test:~# systemctl enable mdadm-last-resort@md2.timer
Created symlink '/etc/systemd/system/multi-user.target.wants/mdadm-last-resort@md2.timer' → '/usr/lib/systemd/system/mdadm-last-resort@.timer'.
....
После daemon-reload и ребут: теперь все работает, в emergency mode не выкидывает.
P.S. Возможно это и в trixie надо было так, теперь не узнать без переинсталляции.
Исправление manul91, :
В итоге:
Проапгрейдил до forky. Там из коробки та же самая ситуация.
Начал разбираться.
Оказалось что появились какие-то template-юниты mdadm-last-resort@.service и mdadm-last-resort@.timer
Однако по дефолту они не инсталированы, существуют только в usr
/usr/lib/systemd/system/mdadm-last-resort@.service
Короче, понадобилось сделать вот что
mkdir -p /etc/systemd/system/mdadm-last-resort@.service.d/
nano /etc/systemd/system/mdadm-last-resort@.service.d/override.conf
(чтобы вставить drop-in
[Install]
WantedBy=multi-user.target
) В итоге имеем
root@debian-test:~# systemctl daemon-reload 
root@debian-test:~# systemctl cat mdadm-last-resort@.service
# /usr/lib/systemd/system/mdadm-last-resort@.service
[Unit]
Description=Activate md array %I even though degraded
DefaultDependencies=no
ConditionPathExists=!/sys/devices/virtual/block/%i/md/sync_action
Documentation=man:mdadm(8)
[Service]
Type=oneshot
ExecStart=/usr/sbin/mdadm --run /dev/%i
# /etc/systemd/system/mdadm-last-resort@.service.d/override.conf
[Install]
WantedBy=multi-user.target
root@debian-test:~#
Делаем тоже самое (инсталируем template сервис) и для таймера
mkdir -p /etc/systemd/system/mdadm-last-resort@.timer.d/
nano /etc/systemd/system/mdadm-last-resort@.timer.d/override.conf
.....
Далее включаем конкретные юниты для всех рейдов поотдельно (md0, md1, md2… ; вроде бы для / лишнее, но лучше перебдеть):
root@debian-test:~# systemctl enable mdadm-last-resort@md2.service
Created symlink '/etc/systemd/system/multi-user.target.wants/mdadm-last-resort@md2.service' → '/usr/lib/systemd/system/mdadm-last-resort@.service'.
...
И то же самое для таймеров:
root@debian-test:~# systemctl enable mdadm-last-resort@md2.timer
Created symlink '/etc/systemd/system/multi-user.target.wants/mdadm-last-resort@md2.timer' → '/usr/lib/systemd/system/mdadm-last-resort@.timer'.
....
После daemon-reload и ребут: теперь все работает, в emergency mode не выкидывает.
P.S. Возможно это и в trixie надо было так, теперь не узнать без переинсталляции.
Исправление manul91, :
В итоге:
Проапгрейдил до forky. Там из коробки та же самая ситуация.
Начал разбираться.
Оказалось что появились какие-то template-юниты mdadm-last-resort@.service и mdadm-last-resort@.timer
Однако по дефолту они не инсталированы, существуют только в usr
/usr/lib/systemd/system/mdadm-last-resort@.service
Короче, понадобилось сделать вот что
mkdir -p /etc/systemd/system/mdadm-last-resort@.service.d/
nano /etc/systemd/system/mdadm-last-resort@.service.d/override.conf
(чтобы вставить drop-in
[Install]
WantedBy=multi-user.target
) В итоге имеем
root@debian-test:~# systemctl daemon-reload 
root@debian-test:~# systemctl cat mdadm-last-resort@.service
# /usr/lib/systemd/system/mdadm-last-resort@.service
[Unit]
Description=Activate md array %I even though degraded
DefaultDependencies=no
ConditionPathExists=!/sys/devices/virtual/block/%i/md/sync_action
Documentation=man:mdadm(8)
[Service]
Type=oneshot
ExecStart=/usr/sbin/mdadm --run /dev/%i
# /etc/systemd/system/mdadm-last-resort@.service.d/override.conf
[Install]
WantedBy=multi-user.target
root@debian-test:~#
Делаем тоже самое (инсталируем template сервис) и для таймера
mkdir -p /etc/systemd/system/mdadm-last-resort@.timer.d/
nano /etc/systemd/system/mdadm-last-resort@.timer.d/override.conf
.....
Далее включаем конкретные юниты для всех рейдов поотдельно (md0, md1, md2… ):
root@debian-test:~# systemctl enable mdadm-last-resort@md2.service
Created symlink '/etc/systemd/system/multi-user.target.wants/mdadm-last-resort@md2.service' → '/usr/lib/systemd/system/mdadm-last-resort@.service'.
...
И то же самое для таймеров:
root@debian-test:~# systemctl enable mdadm-last-resort@md2.timer
Created symlink '/etc/systemd/system/multi-user.target.wants/mdadm-last-resort@md2.timer' → '/usr/lib/systemd/system/mdadm-last-resort@.timer'.
....
После daemon-reload и ребут: теперь все работает, в emergency mode не выкидывает.
P.S. Возможно это и в trixie надо было так, теперь не узнать без переинсталляции.
Исходная версия manul91, :
В итоге:
Проапгрейдил до forky. Там из коробки та же самая ситуация.
Начал разбираться.
Оказалось что появились какие-то template-юниты mdadm-last-resort@.service и mdadm-last-resort@.timer
Однако по дефолту они не инсталированы, существуют только в usr
/usr/lib/systemd/system/mdadm-last-resort@.service
Короче, понадобилось сделать вот что
mkdir -p /etc/systemd/system/mdadm-last-resort@.service.d/
nano /etc/systemd/system/mdadm-last-resort@.service.d/override.conf
(чтобы вставить drop-in
[Install]
WantedBy=multi-user.target
) В итоге имеем
root@debian-test:~# systemctl daemon-reload 
root@debian-test:~# systemctl cat mdadm-last-resort@.service
# /usr/lib/systemd/system/mdadm-last-resort@.service
[Unit]
Description=Activate md array %I even though degraded
DefaultDependencies=no
ConditionPathExists=!/sys/devices/virtual/block/%i/md/sync_action
Documentation=man:mdadm(8)
[Service]
Type=oneshot
ExecStart=/usr/sbin/mdadm --run /dev/%i
# /etc/systemd/system/mdadm-last-resort@.service.d/override.conf
[Install]
WantedBy=multi-user.target
root@debian-test:~#
Делаем тоже самое (инсталируем template сервис) и для таймера
mkdir -p /etc/systemd/system/mdadm-last-resort@.timer.d/
nano /etc/systemd/system/mdadm-last-resort@.timer.d/override.conf
.....
Далее включаем конкретные юниты для всех рейдов поотдельно (md0, md1, md2… ):
root@debian-test:~# systemctl enable mdadm-last-resort@md2.service
Created symlink '/etc/systemd/system/multi-user.target.wants/mdadm-last-resort@md2.service' → '/usr/lib/systemd/system/mdadm-last-resort@.service'.
...
И то же самое для таймеров:
root@debian-test:~# systemctl enable mdadm-last-resort@md2.timer Created symlink ‘/etc/systemd/system/multi-user.target.wants/mdadm-last-resort@md2.timer’ → ‘/usr/lib/systemd/system/mdadm-last-resort@.timer’. ….
После daemon-reload и ребут: теперь все работает, в emergency mode не выкидывает.
P.S. Возможно это и в trixie надо было так, теперь не узнать без переинсталляции.