[SOLVED] Как заставить стартовый скрипт запускаться раньше checkfs и localmount ?
L0rd_Ha0S 9 февраля, 2008 - 19:36
День добрый. Написал себе скриптик для подключения зашифрованных home и swap разделов через dm-crypt(LUKS). Хочу сделать так, чтобы при загрузке монтировались они через обычный fstab. Для этого нужно, чтобы мой скрипт запустился раньше чем checkfs и localmount. Функция depend() в моем скрипте выглядит так
depend() {
before checkfs localmount
after modules
}
но при загрузке мой скрипт все равно запускается после checkfs и localmount. Пробовал менять зависимости в самих checkfs и localmount на
depend(){
need checkroot modules luks
}
в checkfs, или
depend(){
need checkfs luks
}
в localmount. Никакого эффекта это не дало :(
У кого какие мысли будут? Почему не работают явно указанные зависимости?
»
- Для комментирования войдите или зарегистрируйтесь

возможно
возможно необходимо добавить
depend() { need мой_зависимости after мой_скриптв тех сервисах, которые стартуют после....
Вот еще что
Вот еще что может потребоваться (это после depend):
after() { eval "${MODULE}_after() { echo \"$*\"; }" } before() { eval "${MODULE}_before() { echo \"$*\"; }" } need() { eval "${MODULE}_need() { echo \"$*\"; }" }P.S. вообще открой любой сервис и посмотри как он написан.
...
возможно необходимо добавить depend() { need мой_зависимости after мой_скрипт в тех сервисах, которые стартуют после....Пробовал - безрезультатно. Все равно мой скрипт стартует после checkfs и localmount.
Вот еще что может потребоваться (это после depend): after() { eval "${MODULE}_after() { echo \"$*\"; }" } before() { eval "${MODULE}_before() { echo \"$*\"; }" } need() { eval "${MODULE}_need() { echo \"$*\"; }" }Это, к сожалению, тоже успеха не принесло... :(
Смотрел, у меня все также как в большинстве скриптов. По идее все должно бы работать, ан нет..
Можно вопрос,
Можно вопрос, чем вызвана необходимость писать собственный скрипт?
Что не может сделать
/lib/rcscripts/addons/dm-crypt-start.sh?Можно. У меня не
Можно. У меня не было этого скрипта. Cryptsetup ставил не ebuild'ом, ставил из исходников с сайта автора,
последнюю версию - 1.0.5. В портежах последняя - 1.0.4-r3.
http://luks.endorphin.org/dm-crypt
Changes: From this release onwards, cryptsetup-luks becomes cryptsetup. Hence, we are replacing the original main branch (with it's only 0.1 release in 2004). Fix segfault for >32 bytes keys Allow hashing of keys passed through stdin via --key-file=- Remove ancient header version conversion. No password retry for I/O errors. Fix hang on -i 0. Fix password retrying.Да и не знал я про него. За название скрипта спасибо, сейчас посмотрим, что он умеет. Позже отпишусь.
эээ? *
эээ?
* sys-fs/cryptsetup Available versions: 0.1-r2 0.1-r3 ~1.0.5 1.0.5-r1 {build dynamic nls selinux} Homepage: http://luks.endorphin.org/ Description: Tool to setup encrypted devices with dm-cryptИмелся ввиду, видимо, cryptsetup-luks
#eix cryptsetup-luks [I] sys-fs/cryptsetup-luks Available versions: 1.0.1-r1 ~1.0.1-r2 1.0.3-r2 ~1.0.3-r3 ~1.0.4 ~1.0.4-r1 1.0.4-r3 {build dynamic nls selinux} Installed versions: 1.0.4-r3(19:15:23 15.02.2008)(nls -build -dynamic -selinux) Homepage: http://luks.endorphin.org/ Description: Tool to setup encrypted devices with dm-cryptможет я чего-то
может я чего-то непонимаю... но если сравнить 2 наших поста то выходит отличие только одно - в приставке к названию пакета в portage и более новой версией у меня - это помоему одно и тоже, или я неправ?
Да, именно, я
Да, именно, я имел в виду пакет cryptsetup-luks. Но вообще, между ними нет разницы. Я считал, что sys-fs/cryptsetup не поддерживает luks, поэтому не обращал на него внимания. А вчера специально его поставил, версию 1.0.5-r1, он как и sys-fs/cryptsetup-luks поддерживает luks, различаются они только версиями. Интересно, зачем cryptsetup-luks до сих пор существует как отдельный пакет...
В общем, я хотел сказать, что во всем разобрался, /lib/rcscripts/addons/dm-crypt-start.sh работает как положено.
Тем, кому нужно: Этот addon вызывается из dmcrypt стартового скрипта, ставится всё это вместе с sys-fs/cryptsetup
Всем большое спасибо =)