首页 > 解决方案 > 运行引导 shell 脚本在 ec2 上安装 apache:“没有这样的文件或目录”

问题描述

为 AWS 课程做一个实验。我们启动一个 Ec2 并在配置设置中键入一个应该自动启动和运行 Apache Web 服务器的脚本。但是通过管理控制台输入脚本/文本,显然没有安装网络服务器: 教科书指令截图

我们预计要安装的脚本的屏幕截图

我已经设法使用不同的方法在 ec2 上安装不同的 apache 网络服务器;mac终端使用:

yum install -y httpd.x86_64

现在我在启动时启动它:

systemctl start httpd.service

所以现在,显然它适用于我安装的解决方法,但是,我想知道为什么在尝试书籍方法时无法访问站点/公共 ip4 :

#include https://s3.amazonaws.com/jbawsbook/bootstrap.sh

我再次按照书上的指示做了,那是在 ec2 的初始设置期间。但我也尝试在 ssh 进入 ec2 后通过 bash 运行它。无论我如何尝试,结果都是一样的。显然我可能做错了什么,因为我只是在学习?是的,我也尝试过通过 amazon linux 2 运行脚本。

bash: https://s3.amazonaws.com/jbawsbook/bootstrap.sh: No such file or directory

标签: amazon-web-servicesmacosamazon-ec2amazon-linux

解决方案


如果您使用,它将起作用:

#include
https://s3.amazonaws.com/jbawsbook/bootstrap.sh

来自CloudInit - 社区帮助 Wiki

包含文件#include或开头Content-Type: text/x-include-url

该内容是一个“包含”文件。该文件包含一个 url 列表,每行一个。每个 URL 都将被读取,并且它们的内容将通过同一组规则传递。即,从 URL 读取的内容可以是 gzip、mime-multi-part 或纯文本

因此,看起来发布者丢失了换行符。


推荐阅读