我试图了解,如果我shutdown -h now
在 AWS 上运行的 Linux 实例上使用该命令,它会终止还是只是停止该实例。似乎没有任何关于它的官方文档。
答案1
当您通过控制台、EC2 API 或 CloudFormation 创建新实例时,您可以指定关闭时的行为停止或者终止通过 InstanceInitiatedShutdownBehavior 选项的值。默认值为停止。 你可以改变这种行为如果需要,可以在实例创建之后的任何时间进行。
停止意味着实例仍然存在,但已关闭。它仍具有实例 ID,但其虚拟 RAM 已被丢弃,任何临时(也称为实例)存储卷(但不是 EBS 卷)也是如此。您可以使用 API 及其实例 ID 获取有关实例的信息。您可以在将来重新启动实例。在实例停止期间,您将无需支付运行时间费用,但您需要支付与实例连接的任何 EBS 卷的费用。亚马逊的EC2 文档在此处还有更多细节。
终止意味着实例不再存在。您无法重新启动它,但您可以随时从头开始或从保存的快照创建一个全新的实例。
我唯一一次将实例配置为在关机时终止的情况是当我创建一个实例来执行某些特定任务时。我将其编程为在完成并将结果保存到其他地方时关闭,并且知道这将使其终止,因此我不必担心稍后记得自己去终止它。
答案2
这取决于您在启动时如何配置 AWS 实例。通常,关闭会停止实例。如果您选择关闭时终止,则实例将被终止。
您正在使用:
# shutdown -h
所以您要求系统停止。
尝试使用:
# poweroff
反而?