Примечание. Я не спрашиваю о запуске службы (или чего-либо еще) после завершения загрузки (я знаю, как это сделать).
Фон
Система загружается с SDCard, на которой установлена полная система. К нему подключен либо внешний USB-диск, либо SATA SSD, либо в некоторых случаях ничего. Я хочу "перенести" некоторые "вещи" на внешний носитель, в том числе, например, /var/log
, если этот носитель доступен. Если он недоступен, следует использовать "внутреннюю" SD-карту. (И если вам интересно: да, это маленький одноплатный компьютер).
вопрос
Очевидно, что до запуска процесса Init обычная структура каталогов уже должна присутствовать. Монтирование файловых систем (из /etc/fstab
) выполняется ядром до этого. Придерживаясь примера /var/log
(который не единственный, с которым нужно иметь дело) и одного внешнего диска, смонтированного как /mnt/external
когда он присутствует:
Как я могу поместить /var/log
(например, через symlink) в /mnt/external
если диск есть, но поместить его ниже, например, /mnt/local
противном случае - безопасным и чистым способом?