如何自动安装LAMP Stack?因为我们必须逐个安装几个包然后配置它们。我们还必须单独安装一些GUI工具,如phpMyAdmin或MySQL-Workbench来访问MySQL数据库。是否可以完全自动化完整安装?使用shell脚本还是其他什么?
谢谢..
答案 0 :(得分:6)
我已准备好以下shell脚本,以使此安装完全自动化。
#!/bin/bash
# ******************************************
# Program: LAMP Stack Installation Script
# Developer: Pratik Patil
# Date: 10-04-2015
# Last Updated: 11-01-2016
# ******************************************
if [ "`lsb_release -is`" == "Ubuntu" ] || [ "`lsb_release -is`" == "Debian" ]
then
sudo apt-get -y install mysql-server mysql-client mysql-workbench libmysqld-dev;
sudo apt-get -y install apache2 php5 libapache2-mod-php5 php5-mcrypt phpmyadmin;
sudo chmod 755 -R /var/www/;
sudo printf "<?php\nphpinfo();\n?>" > /var/www/html/info.php;
sudo service apache2 restart;
elif [ "`lsb_release -is`" == "CentOS" ] || [ "`lsb_release -is`" == "RedHat" ]
then
sudo yum -y install httpd mysql-server mysql-devel php php-mysql php-fpm;
sudo yum -y install epel-release phpmyadmin rpm-build redhat-rpm-config;
sudo yum -y install mysql-community-release-el7-5.noarch.rpm proj;
sudo yum -y install tinyxml libzip mysql-workbench-community;
sudo chmod 777 -R /var/www/;
sudo printf "<?php\nphpinfo();\n?>" > /var/www/html/info.php;
sudo service mysqld restart;
sudo service httpd restart;
sudo chkconfig httpd on;
sudo chkconfig mysqld on;
else
echo "Unsupported Operating System";
fi
在浏览器中打开以下URL以验证Apache服务器的安装:
http://localhost
在浏览器中打开以下URL以验证PHP的安装:
http://localhost/info.php
答案 1 :(得分:0)
此流程依赖于分发/包管理器,但是,它完全有可能。您甚至可以通过一次击键启用ssl/https
功能并生成服务器密钥,证书和签名请求密钥。您将其分解为任务并为每个任务添加脚本功能。密钥生成需要ssh-keygen
。我有openSuSE和Archlinux的旧版本的类似脚本。如果你遇到困难,我很高兴看一看并分享我多年前采用的方法。
在上面的脚本中,我会将/var/www
的权限限制为0755
,无需给world
写入这些目录。此外,不是用于标识分发的扩展if .. elif ... elif ... fi
设置,而是一个case语句可以帮助您组织更多:
case "lsb_release" in
Ubuntu )
... ;;
Debian )
... ;;
Centos )
... ;;
esac