ilfat⇓ пишет:Проверил, работает.
Урра! Заработало!
ilfat⇓ пишет:За то проверил с сохранением в img на родном initrd. Заргружается и выключается намного быстрее чем с qcow2, но все еще медленно. Я бы предпочел с сохранением в модуль.
Как говорится, на вкус и цвет товарищей нет... ))
ilfat⇓ пишет:Кстати, говоря, uird бы дал эту возможность, а также избавил от нежелательного отмонтирования флешки через проводник и решил проблему с отмонтированием при выключении.
Мне видится, что Lock можно поставить на лоток ЦД, т.е. игнорировать физическое нажатие на кнопку опять же ЦД. А здесь, по логике, нужно флешку прятать в проводнике, но тогда пользователь потеряет ориентир, на каком устройстве он находится. Честно говоря не вижу в этом проблемы, поскольку раз пользователь сделал себе флешку и видит её метку в проводнике, то зачем пилить сук на котором он сидит? Хотя, человеческий фактор непредсказуем. Человек может взять и случайно сделать rm -rf /. ))
По поводу отмонтирования флешки при выключении, кстати, мы с Вами так и не обсудили...
Без сохранения флешка отмонтируется чисто, т.е. костыль /usr/lib/systemd/system-shutdown/remount-run-exec.sh торчит в нужном месте и в теории делает своё дело. В теории - потому, что если в этот скрипт запихать проверочный код (скажем, вывод сообщения с ожиданием нажатия на батон) с целью убедиться в том, что при шотдауне он выполняется, мы либо не успеем это увидеть, либо удостоверимся в том, что он не исполняется. О том, что флешка отмонтируется без сохранения нормально, я сужу по тому, что мне не приходится выполнять её проверку по запросу в винде. ))
А вот грабли начинаются именно при использовании режима с сохранением. Монтирование save.img происходит на этапе начальной загрузки, т.е. в "поле деятельности" того ядра, которое находится на флешке в /boot. save.img монтируется как loop1. Перезагружаясь, если в системе присутствует файл /run/initramfs/.need_shutdown (а он присутствует в Live), выполняется /usr/lib/dracut-initramfs-restore, происходит распаковка СИСТЕМНОГО ядра (не того, что на флешке) и выполняется /usr/lib/dracut/modules.d/99shutdown. Вот в нём можно поставить ещё один костыль на ремонтирование loop1 в ридОнли. Но не в коня корм. Весь секс данной проблемы в том, что костылей быть не должно. Т.е. вообще не нужны эти костыли. Т.е. абсолютно. systemd должен сам корректно отмонтировать всё, что прикручено. Сейчас Вы возмущенно скажете: "Как же так. Так не бывает. Нужны записи в fstab. Нужно хотя бы сделать, как в EduMandriva mount -n -o ro,remount /dev/loop1 /live/tmpfs". А вот и нет. Перечитав кучу статей о процессе шотдауна пришёл к выводу, что всем занимается система и "помогать" ей что-то отмонтировать не нужно. Нужны аргументы? Справедливо. Берём Mageia-5 и без всяких костылей делаем initrd, а затем флешку с сохранением. Смотрим и видим, что всё монтируется/размонтируется, а проверку fsck перед монтированием save.img можно выкинуть вообще, ибо ext4.
В общем и целом пришёл к выводу, что этой проблемой должны заниматься специалисты из Магии, поскольку мне не хватает мозгов лезть в дебри того, как именно это работает сегодня и что именно изменится (а меняется постоянно) завтра. На сегодняшний день устоявшегося решения с отмонтированием лично у меня нет. Надеюсь, что Магия-6/7 вернёт стабильность размонтирования, которая была в Magea-5. Иными словами, я выбрал такую позицию: пока они не закроют заявленный ранее баг с размонтированием в целом, я не буду ничего костылить от себя. Костылить на данном этапе означает привнесение в уже существующую, бажную систему отмонтирования ещё и своих "грязных" нюансов. В результате общая картина может оказаться смазанной до неузнаваемости. С другой стороны, не приходится компостировать мозги ни себе ни людям, мужественно преодолевая неизведанные преграды из костылей, которые напихали другие, более продвинутые люди. В любом деле важна чистота эксперимента.
p.s. В порядке/смысле размонтирования/ре-монтирования могу ошибаться, поскольку дело было давно, половину уже и не помню. В реальном времени, по горячим следам со специалистами из Магии мне поработать не довелось (время реакции = полгода), да и других дел оказалось в достатке. Ведь это не главное в жизни. ))
ilfat⇓ пишет:И вопрос, как на родном initrd загрузиться в режим без сохранения, если в корне флешки лежит файл save.img?
Зажигалка "Zippo": есть бензин/нет бензина. Обычный пользователь не станет заморачиваться мифами о "непотопляемости" системы, ибо всё крутится вокруг надёжности чипа флешки: потрите флешку о штаны с начёсом и прикоснитесь к разъёму - чистый режим уже не работает. )) Возможность оперативно грузиться в чистом режиме или режиме с сохранением скорее тешит самолюбие разработчика, нежели имеет практическую ценность. Хотя, вот ingvaro например использует флешку с тем, чтобы на ней напортачить и потом ничего не переустанавливать (Игорь, это шутка). )) В ремиксе всё проще, намного проще.