我目前有一个GCP VM,尝试在其中安装某些东西,而Ubuntu上没有剩余内存错误。我尝试再次打开SSH,但无法正常工作。
P.S防火墙/连接没有问题。
我只想要一种下载已存储在VM中的文件的方法。有没有办法在不访问终端的情况下执行此操作?
答案 0 :(得分:0)
如果您无法连接到该实例,则总是可以拿起snapshot的磁盘,然后创建一个副本以将其挂载到新实例中以从那里恢复数据。
答案 1 :(得分:0)
问题的描述和结果没有意义。但是,请假设您的实例内存不足,并且无法使用SSH连接到该实例。
但是,如果您的问题出在磁盘空间不足上,那就更有意义了。
调整实例磁盘的大小。在Google Cloud Console中,转到Compute Engine
-> Disks
。单击您的实例的磁盘。点击EDIT
。在Size
下输入新的更大的磁盘大小。现在启动您的实例。对于大多数操作系统(Ubuntu,Debian等),操作系统将自动调整根文件系统的大小。我写了article详细介绍了这一点。
答案 2 :(得分:0)
如果无法通过串行控制台登录,则剩下的唯一选择是通过创建新的VM从OLD VM中检索数据。
您可以按照以下步骤从受影响的(旧)VM磁盘中复制数据。
1从OLD VM的启动磁盘创建一个snapshot
2创建一个新虚拟机。作为启动盘,您应该使用Google Public 图片(重要-请勿使用创建的快照)。
3创建该实例后,尝试通过SSH进入该实例以测试是否 您可以访问它。在这一点上应该没有问题 此VM实例,因为这是使用全新操作的新实例 系统。
4在新创建的实例中,单击实例名称(在 控制台),然后点击页面顶部的“修改”以修改 机。
5在“其他磁盘”部分中,单击“添加项目”。
6在“名称”下拉列表中,选择“创建磁盘”。在窗口中 打开,为磁盘添加一个名称,然后在“源快照”下拉列表中 在步骤1中选择创建的快照。现在,点击“创建”
7单击“保存”以保存实例新配置。
8请SSH进入新实例,然后运行命令$ lsblk。你会 能够看到添加的新磁盘和分区(很可能 被命名为sdb1,但是您应该检查并记下该名称)。
9)请运行以下命令,这将在以下位置创建挂载点: / mnt / newdisk,然后将其他磁盘分区挂载到该磁盘 挂载点。注意-将以下命令中的/ dev / sdb1替换为 分区名称(如果不同)。
$ sudo mkdir / mnt / newdisk | sudo mount -o丢弃,默认为/ dev / sdb1 / mnt / newdisk
快照文件系统现在将安装在/ mnt / newdisk。
您现在应该能够浏览目录并检索任何数据。
希望这对您有所帮助。