Мне помогло:
$ cat test.sed
# delete this one
#! don't delete this one
# delete this too
Команда:
$ sed -i -e '/^[[:space:]]*#[^!].*/d' test.sed
Результат:
$ cat test.sed
#! don't delete this one
Что ж, эта команда не удалит строк только с одиноким #
. Итак, я сохраняю этот ответ, чтобы показать, почему вам нужно ссылаться на другие решения.
tmpfs
не настоящая файловая система. Это рамдиск. Совершенно нормально, что он монтируется несколько раз.
В этом случае у вас есть корневая файловая система tmpfs (, вероятно, заполненная файлом squashfs или tar или чем-то подобным ), и у вас есть tmpfs для /dev/shm
, что является очень распространенным, типичным использованием для tmpfs.
Вам не нужно размонтировать его, в этом нет ничего плохого, не о чем беспокоиться.
Экземпляры Docker должны быть эфемерными, -удалять их и перезапускать по мере необходимости. Если вам нужно постоянное хранилище, вам нужно запустить образ докера, чтобы один или несколько каталогов с хоста докера были смонтированы в гостях докера. или смонтировать экспорт NFS или подключиться к удаленной базе данных или что-то в этом роде.
Кстати, большинство живых -CD-дистрибутивов делают то же самое, используя root в качестве tmpfs, чтобы системные и пользовательские программы могли записывать в rootfs. Разумеется, все это проходит при перезагрузке системы.