Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.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
OpenSUSE快照不允许ssh_Ssh_Google Compute Engine_Opensuse - Fatal编程技术网

OpenSUSE快照不允许ssh

OpenSUSE快照不允许ssh,ssh,google-compute-engine,opensuse,Ssh,Google Compute Engine,Opensuse,我似乎无法ssh到任何实例中,这些实例都是从Google Cloud中创建的openSUSE实例的快照创建的(即:不是从本地创建然后上载的快照创建的)。我已经用三个不同的openSUSE实例对此进行了测试,其中两个是我一直在使用的实例,另一个是我创建的仅用于测试的实例,没有一个能够生成快照来生成允许ssh的实例。需要明确的是,从快照创建的实例启动时非常好,并且控制台没有显示任何问题,但是控制台的内置ssh或任何其他ssh客户端(putty、mobaxterm)都不会出现超时错误。我已经成功地从我

我似乎无法ssh到任何实例中,这些实例都是从Google Cloud中创建的openSUSE实例的快照创建的(即:不是从本地创建然后上载的快照创建的)。我已经用三个不同的openSUSE实例对此进行了测试,其中两个是我一直在使用的实例,另一个是我创建的仅用于测试的实例,没有一个能够生成快照来生成允许ssh的实例。需要明确的是,从快照创建的实例启动时非常好,并且控制台没有显示任何问题,但是控制台的内置ssh或任何其他ssh客户端(putty、mobaxterm)都不会出现超时错误。我已经成功地从我自己创建的Windows和Debian快照创建了实例,所以我相信这是特定操作系统的问题

复制步骤:

  • 基于openSUSE映像创建一个实例
  • 基于刚创建的实例创建快照
  • 基于刚才创建的快照创建一个实例
  • 尝试通过ssh连接到实例,但失败

  • 在此方面的任何帮助都将不胜感激,并提前向您表示感谢。

    我能够复制您的问题。我会向谷歌报告。如果您需要运行该命令

    gcloud compute instances get-serial-port-output <your-new-instance>
    
    gcloud计算实例获得串行端口输出
    

    您会注意到,有一个错误指示找不到磁盘。

    SUSE昨天在
    SLES
    发行版上解决了这个问题。以下新图像现在可用(无bug):

    • sles-11-sp3-v20150310
    • sles-12-v20150310

    我们仍在对openSUSE进行修复,但对现有实例仍没有修复。

    发布了一个处理运行实例的过程:

    上面的文章包含了所有的细节,下面的过程解决了关于“如何处理正在运行的实例”的问题

    SUSE Linux企业服务器11 SP3(sles-11-SP3) 1.)编辑/etc/sysconfig/bootloader 在“DEFAULT_APPEND”分配中,将“root=/dev/disk/by-id…”替换为“root=/dev/sda1”。对“故障保护附加”分配进行相同的替换。 将非\u持久\u设备\u name=1添加到行末尾的“quiet”之后

    2.)编辑/etc/fstab 将“/dev/disk/by-id…”替换为“/dev/sda1”

    3.)编辑/boot/menu.lst 在这两个选项中,将“root=/dev/disk/by-id…”替换为“root=/dev/sda1”,将“disk=/dev/disk/by-id/…”替换为“disk=/dev/sda”。 将非\u持久\u设备\u name=1添加到以“kernel”开头的行末尾

    4.)重新启动实例

    5.)执行mkinitrd

    6.)编辑/etc/udev/rules.d/70-persistent-net.rules(如果存在) 从规则中删除mac地址条件“ATTR{address}==…”

    SUSE Linux企业服务器12(sles-12) 1.)编辑/etc/sysconfig/bootloader 在“DEFAULT_APPEND”分配中,将“root=/dev/disk/by-id…”替换为“root=/dev/sda1”,将“disk=/dev/disk/by-id/…”替换为“disk=/dev/sda”。对“FAILSAFE_APPEND”分配执行相同的替换。 将非\u持久\u设备\u name=1添加到行末尾的“quiet”之后

    2.)编辑/etc/fstab 将“/dev/disk/by-id…”替换为“/dev/sda1”

    3.)编辑/etc/default/grub 在“GRUB_CMDLINE_LINUX_DEFAULT”分配中,将“root=/dev/disk/by-id…”替换为“root=/dev/sda1”,将“disk=/dev/disk/by-id/…”替换为“disk=/dev/sda”。 将非\u持久\u设备\u name=1添加到行末尾的“quiet”之后

    4.)创建新的grub配置(SLES 12) 导出GRUB\U DISABLE\U LINUX\U UUID=true grub2 mkconfig>/boot/grub2/grub.cfg

    5.)执行mkinitrd

    6.)编辑/etc/udev/rules.d/70-persistent-net.rules(如果存在)
    从规则中删除mac地址条件“ATTR{address}==…”。

    发布了一个新的openSUSE 13.2映像,也解决了这个问题。从opensuse-13-2-v20150315启动的新实例将在GCE中的快照功能上正常工作。对于正在运行的实例,请使用为SUSE Linux Enterprise 12概述的流程,该流程应该可以运行。我没有在openSUSE上测试这个过程。

    这个问题已经报告给谷歌内部错误参考号是18961371