如何将httpd和mysqld服务设置为在引导amazon-ec2示例时自动启动?目前,我必须通过ssh连接到示例并运行sudo service httpd start和sudo service mysqld start来手动启动它们。
sudo service httpd start
sudo service mysqld start
krugob8w1#
您可以在AmazonLinuxEC2示例上执行以下命令,而不是重新开始一个新的AMI ...
sudo chkconfig mysqld on sudo chkconfig httpd on
您可以在启用这些服务以在 Boot 时启动之前和之后使用以下命令检查设置...
sudo chkconfig --list mysqld sudo chkconfig --list httpd
查看所有服务仅使用...
sudo chkconfig --list
sudo /sbin/chkconfig mysqld on sudo /sbin/chkconfig httpd on
jecbmhm32#
亚马逊Linux 1和亚马逊Linux 2是不同的。亚马逊Linux 1在AmazonLinux1中,使用chkconfig命令。
chkconfig
$ sudo chkconfig mysqld on $ sudo chkconfig httpd on
亚马逊Linux2在AmazonLinux2中,引入了systemd。因此,chkconfig是遗留命令。您应该使用systemctl。它是systemd的控制命令。
systemctl
$ sudo systemctl enable mysqld $ sudo systemctl enable httpd
您可以使用is-enabled命令确认是否启用。
is-enabled
$ sudo systemctl is-enabled mysqld enabled
x1M4N1X命令请求将被转发到x1M5N1X。
$ chkconfig mysqld on Note: Forwarding request to 'systemctl enable mysqld.service'.
3z6pesqy3#
如果您使用Amazon Linux 2 AMI,则需要执行以下步骤:1.在AMI2中,他们使用systemctl来管理服务,检查您的计算机上是否安装了systemctl 2. systemctl list-units --type=service,通过此命令检查是否列出了tomcat.service
systemctl list-units --type=service
sudo systemctl enable tomcat.service
systemctl is-enabled tomcat.service
eivnm1vs4#
我的一个客户想做这个任务,我已经成功地通过使用以下方式完成。以下命令将在示例启动时自动启动服务。
自动启动apache/httpd
1) systemctl enable httpd
自动启动redis服务
2) systemctl enable redis
我已在中将SELINUX设置为禁用
3) /etc/sysconfig/selinux
用于mysql服务
iqxoj9l95#
我遇到了类似的问题,这里是我建议的解决方案,你需要在/etc/init.d目录下创建一个文件,例如名为tomcat,并根据你的系统安装更改JAVA_HOME和 Catalina _HOME参数。一旦你设置了这个文件,然后运行下面的命令:
sudo chkconfig <file-name> on
其中是您在/etc/init.d中创建的文件,在我的示例中是tomcat。
[ec2-user@ip-<myip> init.d]$ cat tomcat #!/bin/bash # description: Tomcat Start Stop Restart # processname: tomcat # chkconfig: 234 20 80 JAVA_HOME=/opt/apache-tomcat-7.0.96 export $JAVA_HOME PATH=$JAVA_HOME/bin:$PATH export PATH CATALINA_HOME=/opt/apache-tomcat-7.0.96 case $1 in start) sh $CATALINA_HOME/bin/startup.sh ;; stop) sh $CATALINA_HOME/bin/shutdown.sh ;; restart) sh $CATALINA_HOME/bin/shutdown.sh sh $CATALINA_HOME/bin/startup.sh ;; esac exit 0 chmod 755 tomcat chkconfig --add tomcat chkconfig --level 234 tomcat on chkconfig --list tomcat service tomcat start
9bfwbjaz6#
亚马逊Linux 2上的ReactJS进程:在EC2上安装ReactJS并在 Boot 时运行应用程序:1.连接到EC2示例后,安装NodeJS。请按照以下教程操作:https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/setting-up-node-on-ec2-instance.html1.使用以下教程安装httpd服务器:https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Tutorials.WebServerDB.CreateWebServer.html1.我使用Git Clone将ReactJS应用程序克隆到/home/ec2-user。1.使用命令“npm install yarn -g”安装Yarn1.在克隆的项目中执行以下命令:“Yarn”,然后“Yarn构建”1.现在使用以下命令复制构建文件夹:请使用以下命令行代码:1.现在转到/var/www/html/此处,使用vi创建一个.htaccess文件,并包含以下内容:“选项-重写时的多视图重写引擎%{REQUEST_FILENAME}!-f RewriteRule ^ index.html [QSA,L]”将文件保存为:wq1.现在,在/etc/httpd/conf/httpd.conf中搜索具有“/var/www/html”属性的目录,并将“AllowOverride None”更改为“AllowOverride All”。现在,打开浏览器并输入http://ec2-ip或http://ec2-url,您将看到默认页面1.在AmazonLinux 2上输入命令“systemctl enable httpd”,然后输入“systemctl start httpd”。现在你可以在 Boot 时访问应用程序,而不是一次又一次地运行应用程序。你就完成了。
yvgpqqbh7#
在Amazon Linux 2上,最好的方法是在创建时使用下面的bash脚本。这将安装更新,启动Apache 2,将其列为服务,以便在重新启动时自动重新启动,并创建index.html和health.html示例文件。配置健康页面对于应用程序负载平衡器和自动伸缩组非常重要。
yum更新-yyum安装httpd -y httpd-tools mod_ssl服务httpd启动检查配置httpd打开systemctl启动httpdsystemctl启用httpdecho“你好,世界,从亚马逊Linux上的Web服务器”〉/var/www/html/index. html“健康”〉/var/www/html/health. html干杯!干杯!
lqfhib0f8#
使用任何一个预先存在的LAMP AMI,这两个都将作为服务运行。一个例子是BitNami,当你激发一个ec2示例时,你会发现其他几个例子。
8条答案
按热度按时间krugob8w1#
您可以在AmazonLinuxEC2示例上执行以下命令,而不是重新开始一个新的AMI ...
您可以在启用这些服务以在 Boot 时启动之前和之后使用以下命令检查设置...
查看所有服务仅使用...
jecbmhm32#
亚马逊Linux 1和亚马逊Linux 2是不同的。
亚马逊Linux 1
在AmazonLinux1中,使用
chkconfig
命令。亚马逊Linux2
在AmazonLinux2中,引入了systemd。因此,
chkconfig
是遗留命令。您应该使用systemctl
。它是systemd的控制命令。您可以使用
is-enabled
命令确认是否启用。x1M4N1X命令请求将被转发到x1M5N1X。
3z6pesqy3#
如果您使用Amazon Linux 2 AMI,则需要执行以下步骤:
1.在AMI2中,他们使用
systemctl
来管理服务,检查您的计算机上是否安装了systemctl
2.systemctl list-units --type=service
,通过此命令检查是否列出了tomcat.servicesudo systemctl enable tomcat.service
可在 Boot 时启动tomcatsystemctl is-enabled tomcat.service
检查tomcat是否已启用,以便在 Boot linux系统时启动之后,您可以重新启动您的linux系统和tomcat将启动。
有关
systemctl
Click Here的更多信息eivnm1vs4#
我的一个客户想做这个任务,我已经成功地通过使用以下方式完成。
以下命令将在示例启动时自动启动服务。
自动启动apache/httpd
自动启动redis服务
我已在中将SELINUX设置为禁用
用于mysql服务
iqxoj9l95#
我遇到了类似的问题,这里是我建议的解决方案,你需要在/etc/init.d目录下创建一个文件,例如名为tomcat,并根据你的系统安装更改JAVA_HOME和 Catalina _HOME参数。一旦你设置了这个文件,然后运行下面的命令:
其中是您在/etc/init.d中创建的文件,在我的示例中是tomcat。
9bfwbjaz6#
亚马逊Linux 2上的ReactJS进程:在EC2上安装ReactJS并在 Boot 时运行应用程序:
1.连接到EC2示例后,安装NodeJS。请按照以下教程操作:https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/setting-up-node-on-ec2-instance.html
1.使用以下教程安装httpd服务器:https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Tutorials.WebServerDB.CreateWebServer.html
1.我使用Git Clone将ReactJS应用程序克隆到/home/ec2-user。
1.使用命令“npm install yarn -g”安装Yarn
1.在克隆的项目中执行以下命令:“Yarn”,然后“Yarn构建”
1.现在使用以下命令复制构建文件夹:请使用以下命令行代码:
1.现在转到/var/www/html/此处,使用vi创建一个.htaccess文件,并包含以下内容:“选项-重写时的多视图重写引擎%{REQUEST_FILENAME}!-f RewriteRule ^ index.html [QSA,L]”将文件保存为:wq
1.现在,在/etc/httpd/conf/httpd.conf中搜索具有“/var/www/html”属性的目录,并将“AllowOverride None”更改为“AllowOverride All”。现在,打开浏览器并输入http://ec2-ip或http://ec2-url,您将看到默认页面
1.在AmazonLinux 2上输入命令“systemctl enable httpd”,然后输入“systemctl start httpd”。现在你可以在 Boot 时访问应用程序,而不是一次又一次地运行应用程序。你就完成了。
yvgpqqbh7#
在Amazon Linux 2上,最好的方法是在创建时使用下面的bash脚本。这将安装更新,启动Apache 2,将其列为服务,以便在重新启动时自动重新启动,并创建index.html和health.html示例文件。配置健康页面对于应用程序负载平衡器和自动伸缩组非常重要。
!/bin/bash
yum更新-y
yum安装httpd -y httpd-tools mod_ssl
服务httpd启动
检查配置httpd打开
systemctl启动httpd
systemctl启用httpd
echo“你好,世界,从亚马逊Linux上的Web服务器”〉/var/www/html/index. html
“健康”〉/var/www/html/health. html
干杯!干杯!
lqfhib0f8#
使用任何一个预先存在的LAMP AMI,这两个都将作为服务运行。
一个例子是BitNami,当你激发一个ec2示例时,你会发现其他几个例子。