web-dev-qa-db-fra.com

Utilisation d'espaces et de symboles cyrilliques dans / etc / fstab

J'ai besoin de monter le répertoire d'un autre disque dur sur mon répertoire personnel actuel. Je peux le faire en suivant la commande et cela fonctionne correctement:

Sudo mount --bind /media/username/HDD3TB/'Мои документы'/Фото /home/username/Pictures/HDD_Photo

Mais je veux qu'il se monte automatiquement lors de l'initialisation du système. J'ai essayé d'ajouter l'entrée ci-dessous à/etc/fstab:

/media/username/HDD3TB/'Мои документы'/Фото /home/username/Pictures/HDD_Photo none bind 0 0

Mais cette méthode ne fonctionne pas et entraîne des erreurs au moment de l'initialisation du système.

enter image description here

Dans journalctl, j'ai découvert les messages d'erreur suivants:

kernel: ACPI Error: [\_SB_.PCI0.XHC_.RHUB.HS11] Namespace lookup failure, AE_NOT_FOUND (20170831/dswload-210)
kernel: ACPI Exception: AE_NOT_FOUND, During name lookup/catalog (20170831/psobject-253)
kernel: ACPI Exception: AE_NOT_FOUND, (SSDT:xh_rvp08) while loading table (20170831/tbxfload-228)
kernel: ACPI Error: 1 table load failures, 5 successful (20170831/tbxfload-246)
kernel: clocksource: hpet: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635855245 ns

et

-- The start-up result is RESULT.
июн 30 20:03:24 elementaryOS systemd-remount-fs[448]: mount: /etc/fstab: parse error at line 19 -- ignored
июн 30 20:03:24 elementaryOS systemd[1]: Started Remount Root and Kernel File Systems.
-- Subject: Unit systemd-remount-fs.service has finished start-up
-- Defined-By: systemd
-- Support: http://www.ubuntu.com/support
-- 
-- Unit systemd-remount-fs.service has finished starting up.

...

-- The start-up result is RESULT.
июн 30 20:03:32 elementaryOS systemd-fsck[1055]: fsck: /etc/fstab: parse error at line 19 -- ignored
июн 30 20:03:32 elementaryOS systemd[1]: Started File System Check Daemon to report status.
-- Subject: Unit systemd-fsckd.service has finished start-up
-- Defined-By: systemd
-- Support: http://www.ubuntu.com/support

...

-- Unit systemd-fsck@dev-disk-by\x2duuid-4e02e814\x2d86be\x2d4995\x2d9989\x2dbe965304d5ea.service has begun starting up.
июн 30 20:03:32 elementaryOS systemd-fsck[1078]: fsck: /etc/fstab: parse error at line 19 -- ignored
июн 30 20:03:32 elementaryOS systemd[1]: Found device ST1000DM003-9YN162 1.
-- Subject: Unit dev-disk-by\x2duuid-c6e31fc0\x2d90ae\x2d48c3\x2dba37\x2db124bffc57f3.device has finished start-up
-- Defined-By: systemd
-- Support: http://www.ubuntu.com/support
-- 
-- Unit dev-disk-by\x2duuid-c6e31fc0\x2d90ae\x2d48c3\x2dba37\x2db124bffc57f3.device has finished starting up.

Puis-je utiliser des espaces et des symboles cyrilliques dans le chemin? Ou peut-être devrais-je utiliser une autre façon de monter automatiquement ce répertoire?

4
Route Reflector

Vous n'avez pas besoin d'utiliser /etc/fstab/ et vous pouvez créer le service systemd suivant pour monter le fichier à la place.

J'ai adapté: cette réponse écrit par l'utilisateur: @ detuur pour s'adapter à cette situation particulière.

Créez un nouveau fichier en utilisant: Sudo vim /etc/systemd/system/boot-shadow-mount.service, puis copiez et collez ce qui suit, puis enregistrez le fichier et quittez vim

# Automatically mounts and binds HDD3TB directory to /Pictures/HDD_Photo
# 

[Unit]
Description=bind mount HDD3TB drive directory to /Pictures/HDD_Photo
Requires=bindmount@home-username-Pictures-HDD_Photo.mount
Conflicts=umount.target

[Service]
Type=oneshot
ExecStart=/bin/mount --bind /media/username/HDD3TB/'Мои документы'/Фото /home/username/Pictures/HDD_Photo

ExecStop=/bin/umount /home/username/Pictures/HDD_Photo
RemainAfterExit=True

[Install]
RequiredBy=local-fs.target unattended-upgrades.service

Ensuite, exécutez la commande suivante pour corriger le "nom d'utilisateur" dans le fichier:

Sudo sed -i "s/username/$USER/g" /etc/systemd/system/boot-shadow-mount.service

Ensuite, exécutez les commandes suivantes pour "activer" le nouveau service afin que le service démarre automatiquement lorsque vous démarrez le système:

Sudo systemctl daemon-reload
Sudo systemctl enable boot-shadow-mount

Lorsque vous redémarrez, le fichier devrait monter automatiquement.

Veuillez signaler toute erreur. Merci!

source supplémentaire: blog.iwakd.de/systemd-fstab-and-bind-mounts-with-options

3
mchid