Ssh 云VM实例在将包更新到早期版本后损坏包

Ssh 云VM实例在将包更新到早期版本后损坏包,ssh,linux-kernel,google-compute-engine,apt-get,gcloud,Ssh,Linux Kernel,Google Compute Engine,Apt Get,Gcloud,我做了apt get升级,因为我们生产服务器的加载时间大约为40秒。升级前后我都没有快照(虽然有一个6个月的快照),加载时间提高到15秒,但我们的erizo服务停止工作。Erizo也在那个实例上运行。重新启动服务没有帮助,所以我尝试将包升级到以前的版本(),就像以前一样,但几乎每个包都有一个错误:以前的包版本没有启动。(这很奇怪,因为我复制了dpkg-l的输出) 只有少数软件包成功降级,但我在将e1fslibs升级到其早期版本时遇到了严重错误。注意:以下软件包具有未满足的依赖关系: e2fspr

我做了apt get升级,因为我们生产服务器的加载时间大约为40秒。升级前后我都没有快照(虽然有一个6个月的快照),加载时间提高到15秒,但我们的erizo服务停止工作。Erizo也在那个实例上运行。重新启动服务没有帮助,所以我尝试将包升级到以前的版本(),就像以前一样,但几乎每个包都有一个错误:以前的包版本没有启动。(这很奇怪,因为我复制了dpkg-l的输出)

只有少数软件包成功降级,但我在将e1fslibs升级到其早期版本时遇到了严重错误。注意:以下软件包具有未满足的依赖关系: e2fsprogs:PreDepends:e2fslibs

不知何故,这搞乱了initramfs和/或initramfs工具,现在实例正在运行,但我无法进入其中

  • 正在连接到google云平台中的实例:正在连接。。。 无法连接,正在重试(1/3)
  • google cloud shell无法计算gcloud ssh:权限被拒绝(公钥)
  • 在本地使用gcloud也表示权限被拒绝(公钥)
我检查了以下内容:

  • 已定义项目公钥;没有定义任何实例公钥或任何其他元数据()
  • 在谷歌云平台>>计算引擎>>虚拟机实例>>权限>>我看到“计算”被禁用
  • 通过导航到串行控制台输出页面并查找以metadata:string中的帐户为前缀的输出行,验证守护程序是否正在运行。如果您使用的是标准映像,但在串行控制台输出中看不到这些输出前缀,则守护进程可能会停止-->我看不到这一点,因此我希望它不会运行
  • 检查防火墙规则:(gcloud计算防火墙规则列表) 默认允许ssh默认0.0.0.0/0 tcp:22//规则存在
升级了以下软件包:

  • 贴切
  • apt传输https
  • apt utils
  • 比努蒂尔斯
  • 云初始化
  • 云初始化根
  • 云初始化
  • 科默开发公司
  • dosfstools
  • e2fslibs
  • e2fsprogs
  • gce云配置
  • gce守护进程
  • gce图像束
  • gce启动脚本
  • 谷歌云sdk
  • 景观客户端
  • 风景园林
  • ibapt-inst1.4 libapt-pkg4.12
  • Libcomer2
  • libss2
  • libudev0 mountall
  • nginx
  • nginx通用
  • nginx满
  • ntp
  • 更新
  • procps
  • python apt
  • python-apt-common
  • python-lazr.restfulclient
  • 乌代夫
  • 无人值守升级
  • 更新管理器核心
  • 暴发户
  • x11 utils
这是从串行输出获取的:: -mountall:事件失败 -未配置横向客户端,请运行横向配置

下一步怎么办

  • 将启动脚本应用于正在运行的实例(如下),并尝试执行Apt get升级

  • 是否尝试(再次)在google cloud shell中创建一个新的公钥来访问该实例

  • 在google cloud shell中,在键入gcloud compute--project“pertension-palace-762”ssh--zone“europe-west1-c”“tta-media-test-2”后第一次生成此文件 警告:Google Compute Engine的专用SSH密钥文件不存在。警告:您没有Google Compute Engine的SSH密钥。警告:[/usr/bin/SSH keygen]将被执行以生成密钥。此工具需要创建目录/home/developer/.ssh
  • 生成的公钥存储在/home/developer/.ssh/google\u compute\u engine.pub中,我复制了该公钥,在用户名前面添加了公钥的内容,以计算引擎>>元数据>>ssh密钥*密钥被接受,但用户名不会像其他所有用户名-密钥对那样显示 但在使用gcloud compute ssh tta-media-test-2--zone europe-west1-c时,我遇到了权限被拒绝(publickey)错误
  • 当我像这样提供ssh密钥文件时 gcloud compute ssh tta-media-test-2--zone europe-west1-c--ssh key file=my-ssh-keys_copy.pub(pwd位于密钥文件所在的文件夹中) 警告:Google计算引擎的公共SSH密钥文件不存在。 警告:您没有Google Compute Engine的SSH密钥。 警告:[/usr/bin/ssh keygen]将被执行以生成密钥

  • 当我使用ssh-keygen-t rsa-f我的ssh密钥生成一个新密钥时,我得到了相同的结果

  • 任何其他可能的解决方案都将不胜感激
[更新]我能够使用ssh从本地ssh“断开”的实例user@externalIpOfInstance我的计划是将其升级到稳定状态,创建一个快照,然后从中查看

  • sudo apt get-f安装 0已升级,0已新安装,0已删除,5未升级。 1未完全安装或拆除。 执行此操作后,将使用0 B的额外磁盘空间。 正在设置initramfs工具(0.99ubuntu13.5)。。。 更新initramfs:延迟更新(触发器已激活) 正在处理initramfs工具的触发器。。。 更新initramfs:Generating/boot/initrd.img-3.13.0-79-generic E:/usr/share/initramfs tools/hooks/fixrtc失败,返回1。 更新initramfs:1的/boot/initrd.img-3.13.0-79-generic失败。 dpkg:处理initramfs工具时出错(--configure): 安装的子进程安装后脚本返回错误退出状态1 处理时遇到错误: initramfs工具 E:子流程/usr/bin/dpkg返回错误代码(1)
  • sudo易于升级 正在阅读软件包列表。。。多恩 构建依赖关系树
    正在读取状态信息。。。多恩 以下包裹已被保留: 谷歌浏览器稳定 以下是pa