Наконец-то я сам это исправил...
Если вы работаете с DO API и следуете некоторым руководствам вроде этого (середина статьи), то, скорее всего, вы столкнетесь с одной из следующих ошибок.
Ошибка 1 приводит к чему-то вроде ...request body malformed
Для ее решения убедитесь, что вы не забыли экранировать какую-либо строку/знак в yaml.
Ошибка 2 на первый взгляд не вызывает никаких проблем. Ваш api запрос проходит, дроплет раскручивается, и если вы не сделали ничего необычного, вы можете даже не заметить ее (если вы не проверите, что ваш скрипт сделал с системой...). Проверка журналов cloud-init, однако, покажет, что failed loading yaml blob
. Это происходит, когда символы, требующие экранирования, экранируются недостаточно часто (?!).
Пример:
sed -i -e '$a\ \n#Add logfile information\nlogfile /var/log/ntp.log' /etc/ntp.conf
sed -i -e '\$a\ \n#Add logfile information\nlogfile /var/log/ntp.log' /etc/ntp.conf
Поэтому решение следующее:
sed -i -e '\\\$a\\\ \\n#Add logfile information\\nlogfile /var/log/ntp.log' /etc/ntp.conf
Если кто-то действительно все еще читает и понимает, как я расстроен, пожалуйста, дайте мне знать, если вы можете объяснить, что здесь происходит... - Вообще-то я не очень хочу погружаться в это снова, но с другой стороны, я всегда готов учиться.
Единственная причина, которую я мог бы понять: Поскольку скрипт bask тянет yaml и эта куча отправляется через удаленный shell в json, ему нужно немного больше "заботы" и поэтому двойное экранирование?!
Используйте gparted, чтобы переместить sdb2 к концу диска, чтобы перед ним было свободное пространство. Затем вы можете изменить размер sdb1.
Вы уверены, что вам вообще нужен отдельный загрузочный раздел? Раньше это было необходимо (или, по крайней мере, очень удобно), но grub довольно хорошо загружается с LVM, raid и наиболее распространенных файловых систем Linux в наши дни.
если вам не нужен отдельный / boot, вы можете переместить его в подкаталог на /.
Например:
cp -af /boot /boot.new
umount /boot
mv /boot.new /boot
Затем отредактируйте / etc / fstab и закомментируйте запись / boot
Вам также потребуется переустановить grub на / dev / sdb, поскольку файлы в / boot были перемещены: grub-install / dev / sdb
.