TL; DR: Пытаясь resize2fs /media/root/dev/sdc
в контейнере CoreOS Toolbox происходит сбой, сообщение open: Operation not permitted while opening /media/root/dev/sdc
. Возможно проблема с привилегиями, как мне получить привилегии?
Я изменил размер облачного вычислителя Google зональный стандартный постоянный диск от 20 ГБ до 50 ГБ. Я подключил диск к работающему экземпляру виртуальной машины, чтобы осмотреться. Изменение не отображается в файловой системе при использовании df -h
после установки диска, но на устройстве, использующем lsblk
.
Насколько я понял, на диске одна файловая система без разделов. Я основывал это в основном на том факте, что lsblk
не показывает разделы для устройства, и я понял, что диски с одной файловой системой - это соглашение о gcp
Теперь я начал пытаться изменить размер файловой системы, следуя эти документы от Google. Однако это было не так просто, потому что доступные мне виртуальные машины, похоже, основаны на ОС, оптимизированной для контейнеров, и поэтому не поставляются с необходимыми инструментами или диспетчером пакетов. Поэтому я должен использовать CoreOS Toolbox, который, если я правильно понял, запускает контейнер Docker с systemd-nspawn
. Это дает мне доступ к диспетчеру пакетов и необходимым мне инструментам.
Toolbox монтирует корень fs хоста в /media/root
, поэтому я легко могу получить доступ к устройствам. Однако когда я попытался использовать resize2fs /media/root/dev/sdc
согласно вышеупомянутому руководству я получаю сообщение об ошибке, упомянутое в TL; DR. Я пытался chmod 666
устройство внутри виртуальной машины и Toolbox, и оно работает, но не решает проблему с resize2fs
. Я также пробовал запускать Toolbox как root, хотя предполагал, что это не поможет. Это не так. Я также размонтировал диск перед тем, как попробовать что-либо из этого.
Одно из решений, которое я придумал, - запустить виртуальную машину с более надежным образом ОС, чтобы у меня был как «прямой» доступ к устройству, так и прямой доступ к инструментам. Я непреклонен в том, чтобы решить эту проблему с помощью имеющихся инструментов, потому что это более жизнеспособно в производственной среде, и я считаю, что это возможно.
Вы можете следовать инструкциям по монтированию и форматированию дисков в Core OS, следуя предоставленной документации [1].
[1]https://cloud.google.com/container-optimized-os/docs/concepts/disks-and-filesystem