Ceci s'applique à Arch Linux (et peut-être à d'autres distributions utilisant systemd
). Je veux monter une partition TrueCrypt au démarrage. Avec l'ancien sysvinit
, c'était assez simple avec un script appelé par rc.local
.
Je suis arrivé à mon courant en détournant un fil de discussion Arch . Il y a un autre thread où ce thread systemd-devel est décrit comme "ayant la solution", mais il ne me semble pas vraiment ce que c'est, et l'OP a le dernier message indiquant qu'il n'a pas pu atteindre son objectif.
À première vue, cette personne le fait, mais cherchait un moyen de désactiver les messages de démarrage continu pendant qu'il tape le mot de passe. J'ai également posté là-bas pour lui demander de publier son .service
dossier réel .
En cherchant un peu, les gens mentionnent qu'ils ont réussi ou que c'est possible, mais ne précisez pas exactement quelle était la solution.
Je suis en mesure de déverrouiller la partition à partir de la ligne de commande via un systemd
service (ce qui me donne la possibilité de la démonter automatiquement à l'arrêt / au redémarrage), mais je dois le faire manuellement une fois connecté. J'aimerais vraiment que le processus de démarrage s'arrête et me demande le mot de passe.
Voici mon script actuel:
[Unit]
Description=Truecrypt Setup for vault
#DefaultDependencies=no
#Conflicts=umount.target
#Before=umount.target
#After=systemd-readahead-collect.service systemd-readahead-replay.service
#After=cryptsetup.target
[Service]
Type=oneshot
RemainAfterExit=yes
#StandardInput=tty-force
ExecStart=/bin/sh -c '/usr/bin/truecrypt -t --protect-hidden=no -k "" --filesystem=none --slot=1 -p `systemd-ask-password "Enter password for truecrypt volume: "` /dev/sda4'
ExecStop=/usr/bin/truecrypt --filesystem=none -d /dev/sda4
[Install]
WantedBy=multi-user.target
J'ai laissé les commentaires [Unit]
, car à un moment donné, je suis tombé sur des suggestions selon lesquelles cela devrait être là, mais j'ai eu des problèmes avec cela. Ce qui précède semble fonctionner très bien après le démarrage / la connexion ... mais pas pendant.
sudo systemctl start truecrypt-vault
, saisis le su
mot de passe, saisis le mot de passe TC Volume, puis startx
. Je pourrais sûrement avoir l'invite de mot de passe présentée pendant le démarrage pour éviter les étapes supplémentaires après la connexion?
plymouth
, toute invite de mot de passe sur la console est susceptible d'être perdue dans les services démarrant en parallèle.
startx
manuellement. Aucun gestionnaire de connexion. Mais oui, je fais besoin d'arrêter les messages de démarrage pendant que je saisissez le texte, sinon il va simplement disparaître de l'écran.