Как настроить разделы на моем загрузочном диске с помощью cloud-config?
Я пытаюсь инициализировать сервер Ubuntu 16.04 через cloud-init. При первой загрузке сервера я хочу создать следующие разделы:
- root-fs (ext4 файловая система Ubuntu)
- диск с данными (раздел в формате xfs)
- диск подкачки (4 ГБ)
Когда я загружаю машину регулярно (без каких-либо изменений в облаке), у меня есть sda и sda1 (я думаю, что sda1 - это своп).
Может ли кто-нибудь помочь мне с "действительным" или "рабочим" примером или помочь мне исправить мой подход?
Или это невозможно сделать разделы на диске, на котором я сижу?
Кстати. мой хозяин Хецнер
Это мой текущий подход:
#cloud-config
device_aliases: {'root-disk': '/dev/sda'}
resize_rootfs: true
disk_setup:
root-disk:
table_type: 'gpt'
layout:
- 75
- [25, 82]
overwrite: true
fs_setup:
- label: root-fs
device: 'root-disk'
filesystem: 'ext4'
- label: data-disk
device: root-disk
filesystem: 'xfs'
1 ответ
Решение
Чтобы завершить эту задачу, я опубликую здесь свой ответ: важно знать, что resize_rootfs
должен быть false
Я также в конечном итоге с помощью mbr
вместо gpt
только потому, что я не мог понять, как развиваться с gpt. Может быть, кто-то мог бы опубликовать этот пример тоже.
#cloud-config
resize_rootfs: false
disk_setup:
/dev/sda:
table_type: 'mbr'
layout:
- 25
- 75
overwrite: true
fs_setup:
- label: root_fs
filesystem: 'ext4'
device: /dev/sda
partition: sda1
overwrite: true
- label: data_disk
filesystem: 'xfs'
device: /dev/sda
partition: sda2
overwrite: true
# now we attach the settings
runcmd:
- [ partx, --update, /dev/sda ]
- [ mkfs.xfs, /dev/sda2 ]
- [ partprobe ]
- parted /dev/sda set 1 boot on p
mounts:
- ["/dev/sda1", "/"]
- ["/dev/sda2", "/data-disk"]