Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Import VM导入后的Google云根驱动器上没有可用空间_Import_Google Cloud Platform_Virtual Machine_Diskspace - Fatal编程技术网

Import VM导入后的Google云根驱动器上没有可用空间

Import VM导入后的Google云根驱动器上没有可用空间,import,google-cloud-platform,virtual-machine,diskspace,Import,Google Cloud Platform,Virtual Machine,Diskspace,我使用Ubuntu 16.04在本地使用virualbox创建了一个Postgres服务器。使用导入工具将其移动到谷歌云似乎工作正常,但根驱动器显示100%已满。所有磁盘扩展指令(包括创建快照和重新创建引导驱动器)似乎都没有提供任何可用空间 似乎有一个引导驱动器和一个根驱动器。但根驱动器显示它已全部使用。引导驱动器显示可用空间,但大小应为15G,而不是720M Filesystem Size Used Avail Use% Mounted on udev

我使用Ubuntu 16.04在本地使用virualbox创建了一个Postgres服务器。使用导入工具将其移动到谷歌云似乎工作正常,但根驱动器显示100%已满。所有磁盘扩展指令(包括创建快照和重新创建引导驱动器)似乎都没有提供任何可用空间

似乎有一个引导驱动器和一个根驱动器。但根驱动器显示它已全部使用。引导驱动器显示可用空间,但大小应为15G,而不是720M

Filesystem                     Size  Used Avail Use% Mounted on
udev                           1.8G     0  1.8G   0% /dev
tmpfs                          370M  5.3M  365M   2% /run
/dev/mapper/techredo--vg-root  2.5G  2.5G     0 100% /
tmpfs                          1.9G     0  1.9G   0% /dev/shm
tmpfs                          5.0M     0  5.0M   0% /run/lock
tmpfs                          1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/sdb1                      720M  121M  563M  18% /boot
tmpfs                          370M     0  370M   0% /run/user/406485188

我检查了是否可以在GCP实例中使用LVM,我发现您可以自由使用它,但Google Cloud不支持,因为默认情况下实例不使用LVM

另一方面,您需要确保在实例中安装了Linux来宾环境,以便获得自动调整大小功能。请按照本指南了解如何验证:

由于您的根分区已满,无法安装更多程序,我建议您采取两种解决方法:

解决方法1:使用创建一个新的VirtualBox VM并再次导入,请注意您的根分区非常小(2.5G),因此我建议您下次创建一个至少10GB的分区,并避免在安装过程中使用LVM

在GCP中准备好您的实例后,请检查您的实例中是否安装了Linux来宾环境,如果未安装,请执行以下操作:

解决方法2:检查哪个目录导致问题,然后检查哪些文件占用了您的磁盘空间,删除它们以获得空间,安装来宾环境并尝试调整实例的大小

a) 要检查目录和文件大小,请执行以下步骤:

有几种工具可以以图形方式显示磁盘使用情况,但由于根分区已满,您必须通过运行命令(老式)来获取信息

请按照以下步骤操作:

  • 请转到根目录:
  • 光盘/

  • 请运行此命令以获取根分区下主子目录的大小:
  • sudo du-aBM-d 1-R |分拣-nr |头-20

    注意:确定哪个目录正在占用您的根分区

  • 请运行此命令以获取文件及其大小的完整列表:
  • du-k*| sort-nr | cut-f2 | xargs-d'\n'du-sh

    注意:上面的命令显示所有文件和目录的速度太快,因此为了缓慢向下滚动,请运行相同的命令并添加“less”指令:

    du-k*| sort-nr | cut-f2 | xargs-d'\n'du-sh | less

    按空格键向下滚动

  • 请记住,在运行步骤3或4中的命令之前,必须先转到要分析的目录(以防您要分析其他目录)

  • 除此之外,您还可以运行“apt get clean”命令来清除下载的包(.deb文件),这些包通常占用磁盘的大部分空间

  • b) 要调整实例大小,您有两个选项:

  • 按照本指南[1]调整VM实例“主服务器”的大小
  • 注意:此选项中包含的步骤非常容易遵循,如果不起作用,请尝试第二个选项,它需要高级Linux功能

  • 从VM实例“主服务器”创建快照
  • 2.1基于Linux发行版创建新实例

    2.2创建实例后,停止该实例

    2.3按照本指南添加额外的磁盘[2]

    注意:基本上,您必须编辑实例“主服务器”并添加一个额外的磁盘,不要忘记从“源类型”列表中选择快照选项,然后单击刚刚创建的快照

    2.4启动实例

    2.5按照本指南[3]安装磁盘

    注意:请跳过第4步。额外的磁盘实际上是一个引导磁盘,所以它已经格式化了。因此,不要将格式应用于它;只要装上它

    2.6检查文件“/etc/fstab”的权限

    注意:权限应该是“-rw-r--r--”和所有者“root”

    2.6.1删除文件以减小磁盘大小

    2.7在操作系统级别卸载磁盘

    2.8停止实例

    2.9从GCP中的新实例分离附加磁盘

    注意:请遵循本指南[4],不要单击启动盘旁边的X,请单击附加盘旁边的X

    2.10创建一个新实例,请使用刚刚恢复的磁盘,而不是“引导磁盘”部分中的映像

    注意:为此,请转到“引导磁盘”部分并单击“更改”按钮,然后转到“现有”选项卡并选择刚恢复的磁盘


    参考资料:

    [1] [2] [3] [4]


    请告诉我结果。

    很可能是由于在安装根文件系统时对系统进行映像而导致的文件系统错误。运行fsck根文件系统并重新启动。这是将VirtualBox导入GCP的正确联机文档[1]。你能确认一下你是否遵循同样的步骤吗?。[1] 我注意到您的根卷有一个卷组标记,因此这可能会导致空间使用行为,在GCP中,实例没有基于LVM的分区。我将调查迁移到GCP时LVM是否存在已知问题。我发现了一个我认为对你有用的视频:它来自谷歌开发者,是一个简短的教程,他们在VirtualBox中从头开始创建虚拟机,然后将其导入GCP,并提供了一些提示。