Заставить ext4lazyinit закончить свое дело?


18

Есть ли способ «заставить» ext4lazyinitзакончить то, что он делает с максимальным приоритетом? Что-то вроде: «Меня не волнуют ресурсы моей системы, просто делайте свою работу так быстро, как можете»?

Я должен добавить: без переформатирования диска. Мне известна опция mkfs lazy_itable_init.


Звучит довольно XY для меня. Чего вы на самом деле пытаетесь достичь?
Даниэль Б

3
Моему Raspberry Pi потребовалось несколько часов, чтобы закончить ext4lazyinit на внешнем жестком диске. Я хотел проверить, правильно ли крутится диск после некоторого времени бездействия, однако это было невозможно из-за ext4lazyinit. После просмотра некоторого кода ядра ( github.com/torvalds/linux/blob/master/fs/ext4/super.c#L2931 ) кажется невозможным принудительно завершить поток, поскольку задержки несколько жестко заданы. Это, однако, не является окончательным ответом, я не являюсь ни ядром, ни экспертом по ext4, и я просто взглянул на эту функцию.
Мариус

@Marius Вы правы, что задержка жестко запрограммирована.
Моше Кац

Ответы:


15

Чтобы заставить ext4lazyinit завершить работу с максимальным приоритетом, вам необходимо смонтировать файловую систему с init_itable = 0. По умолчанию это 10 (подробнее см. Ссылку ниже)

Альтернативное решение - отключить поток ext4lazyinit с помощью опции монтирования « noinit_itable », что, однако, может не быть хорошей идеей в производственной системе (подробнее см. Ссылку ниже).

Источник с подробной информацией здесь ext4lazyinit git commit comment .


2
Чтобы получить команду, которую можно использовать для перемонтирования (без выключения), вы можете запустить mount | grep /path/to/mount/point | sed -E 's/^.* on (.*) type ext4 \((.*)\)$/mount -o remount,init_itable=0,\2 \1/g'- Это выдаст что-то вродеmount -o remount,init_itable=0,rw,noatime,seclabel,stripe=512,data=ordered /path/to/mount/point
Iwan Aucamp

-2

Вы можете установить «хороший» уровень процесса на более высокий приоритет над другими. Не уверен, что это заставит его работать быстрее и может отрицательно повлиять на стабильность системы, если установить слишком высокое значение (-20 - самый высокий приоритет).

nice -n [nice value] [command]

1
было бы неплохо дать ему больше приоритета процессора, то, что ему нужно, больше приоритета ввода-вывода, у @VencaBSpam есть правильное решение
Jens Mühlenhoff
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.