Из MAN MAN MOTE
:
Mount-A [-T Type] [-O OPTPLIST]
(обычно приведен в загружении), вызывает все файловые системы, упомянутые в FSTAB (из правильного типа и / или имея или не имеющие правильные варианты), которые можно установить, как указано, за исключением тех, чьи строка содержит ключевое слово NOAUTO .
Из SystemD.Mount
Документация :
NOAUTO, AUTO
с
NOAUTO
, это устройство не будет добавлено в качестве зависимости-fs.target
. Это означает, что он не будет монтироваться автоматически во время загрузки, если только оно не вытащено каким-то другим устройством. ОпцияАвто
имеет противоположное значение и имеет значение по умолчанию.
Как вы можете видеть, любой / etc / fstab
/ etc / fstab line с NOAUTO
не будет автоматически установлен при использовании команды Mount -a
.
У вас есть NOAUTO
в вашем / etc / fstab
. Если бы вы удалили это, то он должен работать.
%%
делает шарик соответствие, не regex. Это означает $ {нечто %%}
удалит самое долгое запаздывающее сопоставление строк единственный пробел, который, конечно, является просто символом одиночного пробела, и $ {нечто %% *}
удалит самую длинную запаздывающую последовательность запуск с пробелом.
Вы, вероятно, будете более обеспеченным использованием awk
для разделения последовательности на поля.
После решения https://stackoverflow.com/questions/369758/how-to-trim-whitespace-from-bash-variable Я исправил свой скрипт Таким образом:
echo "8:X${BASH_REMATCH[1]%"${BASH_REMATCH[1]##*[![:space:]]}"}X"
eval "$1='${BASH_REMATCH[1]%"${BASH_REMATCH[1]##*[![:space:]]}"}'"
Это двойная строка манипуляций, а первая / внутренняя часть удаляет все, кроме конечных пробелов. Эта строка затем используется для отключения тех же пробелов в конце исходной строки.