以编程方式从 Google 计算 VM 中创建+装载磁盘

Programmatically Create+Mount Disk From Within Google Compute VM

我想编写一个脚本,可以从 Google 计算实例 运行 创建一个磁盘并安装它。到目前为止,我创建和安装的磁盘都是通过 Web 控制台完成的。我遇到的问题是找出 safe_format_and_mount 的参数(可能在之前的某个步骤中)。

在实例中,这是我目前的尝试:

ami@snowflake:~$ gcloud compute disks create foo --zone europe-west1-c
Created [https://www.googleapis.com/compute/v1/projects/snowflake-    1056/zones/europe-west1-c/disks/foo].
NAME ZONE           SIZE_GB TYPE        STATUS
foo  europe-west1-c 500     pd-standard READY
ami@snowflake:~$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0    10G  0 disk 
`-sda1   8:1    0    10G  0 part /
sdb      8:16   0   500G  0 disk /mnt/work
sdc      8:32   0     2T  0 disk /mnt/data1

docs for safe_format_and_mount 现在给出这个序列:

$ sudo mkdir MOUNT_POINT
$ sudo /usr/share/google/safe_format_and_mount -m "mkfs.ext4 -F" DISK_LOCATION MOUNT_POINT

但是,我不知道 DISK_LOCATION 是什么,lsblock 的输出也没有给出任何相关的信息。

不要忘记您需要先将磁盘附加到您的实例才能使用它:

gcloud compute instances attach-disk myinstance --disk foo \
    --zone europe-west1-c --device-name foo

--device-name 选项允许您指定客户操作系统将看到的设备名称。如果您使用与磁盘名称相同的名称,则磁盘位置将为 /dev/disk/by-id/google-foo.