资讯专栏INFORMATION COLUMN

Linux 下自动化脚本安装Jdk、Nginx等软件

codercao / 2772人阅读

摘要:安装脚本请将下载的包与此脚本放置到同一目录授予此脚本可执行权限在终端执行此脚本开始安装文件名注意不可有多个版本的包为了使配置的环境变量生效,安装完成后你应该重新登陆。

1、安装JDK脚本

</>复制代码

  1. #!/bin/bash
  2. # jdk install
  3. # 请将下载的jdk-xxx-linux-xxx.tar.gz包与此脚本放置到同一目录
  4. # 授予此脚本可执行权限(chmod +x install_jdk.sh)
  5. # 在终端执行此脚本开始安装(./文件名)
  6. # 注意:不可有多个版本的jdk包!
  7. # 为了使配置的环境变量生效,安装完成后你应该重新登陆。
  8. jvmpath=/usr/local/java
  9. # 不存在
  10. if [ ! -d "$jvmpath" ]; then
  11. echo "正在创建$jvmpath目录"
  12. sudo mkdir $jvmpath
  13. echo "目录$jvmpath创建成功"
  14. fi
  15. jdkfile=$(ls | grep jdk-*-linux-*.gz)
  16. #注意这里的文件夹名称,和下面解压的jdk文件夹名称要一致,否则 执行java -version会失败
  17. jdkdirname="jdk1.8.0_162"
  18. os_version=`uname -a`
  19. echo $os_version
  20. architecture="64"
  21. echo "$os_version" | grep -q "$architecture"
  22. if [ $? -eq 0 ]
  23. then
  24. # 不存在即去外网下载jdk文件
  25. if [ ! -f "$jdkfile" ]; then
  26. echo "您正在使用64位操作系统,为您选择64位JDK"
  27. wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u162-b12/0da788060d494f5095bf8624735fa2f1/jdk-8u162-linux-x64.tar.gz"
  28. fi
  29. else
  30. # 不存在即去外网下载jdk文件
  31. if [ ! -f "$jdkfile" ]; then
  32. echo "您正在使用32位操作系统,为您选择32位JDK"
  33. wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u162-b12/0da788060d494f5095bf8624735fa2f1/jdk-8u162-linux-i586.tar.gz"
  34. fi
  35. fi
  36. jdkfile=$(ls | grep jdk-*-linux-*.gz)
  37. if [ -f "$jdkfile" ]; then
  38. #注意这里,$jdkfile解压之后会生成一个 解压包里面的文件夹,如这里的:jdk1.8.0_162/
  39. sudo tar -zxvf $jdkfile -C /usr/local/java/
  40. echo "安装JDK成功"
  41. echo "配置环境变量"
  42. # touch environment
  43. # echo "PATH="$PATH:/usr/lib/jvm/$jdkdirname/bin"" >> environment
  44. # echo "JAVA_HOME=/usr/lib/jvm/$jdkdirname" >> environment
  45. # echo "CLASSPATH=.:%JAVA_HOME%/lib/dt.jar:%JAVA_HOME%/lib/tools.jar" >> environment
  46. # sudo mv /etc/environment /etc/environment.backup.java
  47. # sudo mv environment /etc
  48. # source /etc/environment
  49. mv ~/.bashrc ~/.bashrc.backup.java
  50. cat ~/.bashrc.backup.java >> ~/.bashrc
  51. echo "PATH="$PATH:$jvmpath/$jdkdirname/bin"" >> ~/.bashrc
  52. echo "JAVA_HOME=$jvmpath/$jdkdirname" >> ~/.bashrc
  53. echo "CLASSPATH=.:%JAVA_HOME%/lib/dt.jar:%JAVA_HOME%/lib/tools.jar" >> ~/.bashrc
  54. source ~/.bashrc
  55. echo "配置环境成功"
  56. echo "测试是否安装成功"
  57. java -version
  58. echo "安装成功"
  59. fi

2、安装nginx脚本:

</>复制代码

  1. #!/bin/bash
  2. #判断是否是root用户
  3. # 授予此脚本可执行权限(chmod +x install_nginx.sh)
  4. if [ $(id -u) != "0" ]; then
  5. echo "Error:You must be root to run this script"
  6. fi
  7. #每次使用只需修改自定义内容即可
  8. #自定义用户名和组
  9. Group_Name="nginx"
  10. User_Name="nginx"
  11. #自定义nginx变量
  12. Install_Path="/usr/local/nginx"
  13. Package_Type=".tar.gz"
  14. Version="nginx-1.13.9"
  15. Package=$Version$Package_Type
  16. Setup_path="/root/"
  17. RPM="nginx"
  18. #自定义/var/tmp/nginx目录
  19. DIR_File="/var/tmp/nginx"
  20. #下载nginx 文件
  21. cd $Setup_path
  22. wget http://nginx.org/download/nginx-1.13.9.tar.gz
  23. #安装依赖关系
  24. yum group install "Development Tools" "Server Platform Deveopment"
  25. yum install -y curl openssl-devel pcre-devel
  26. Group_User(){
  27. egrep "^$Group_Name" /etc/group >& /dev/null
  28. if [ $? -ne 0 ]
  29. then
  30. echo "nginx 用户组正在添加."
  31. groupadd $Group_Name
  32. else
  33. echo " The $Group_Name user group already exists."
  34. echo "nginx 用户组已经添加."
  35. fi
  36. #判断nginx用户是否存在
  37. egrep "^$User_Name" /etc/passwd >& /dev/null
  38. if [ $? -ne 0 ]
  39. then
  40. echo "nginx 用户正在添加."
  41. useradd -g $Group_Name $User_Name
  42. else
  43. -- VISUAL --
  44. fi
  45. }
  46. #编译安装nginx
  47. cd $Setup_path
  48. #解压nginx包到/usr/local/nginx
  49. tar -zxvf $Package -C $Install_Path
  50. cd $Version
  51. #自定义配置(不推荐)
  52. configure_opts=(
  53. --prefix=$Install_Path
  54. --sbin-path=$Install_Path/sbin/nginx
  55. --conf-path=/etc/nginx/nginx.conf
  56. --error-log-path=/var/log/nginx/error.log
  57. --http-log-path=/var/log/nginx/access.log
  58. --pid-path=/var/run/nginx/nginx.pid
  59. --lock-path=/var/lock/nginx.lock
  60. --user=nginx
  61. --group=nginx
  62. --with-http_ssl_module
  63. --with-http_flv_module
  64. --with-http_stub_status_module
  65. --with-http_gzip_static_module
  66. --http-client-body-temp-path=/var/tmp/nginx/client
  67. --http-proxy-temp-path=/var/tmp/nginx/proxy
  68. --http-fastcgi-temp-path=/var/tmp/nginx/fcgi
  69. --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi
  70. --http-scgi-temp-path=/var/tmp/nginx/scgi
  71. --with-pcre
  72. )
  73. ./configure ${configure_opts[@]}
  74. if [[ $? -eq 0 ]]
  75. then
  76. make && make install
  77. else
  78. echo "编译失败,请重新编译" && exit 1
  79. fi
  80. #添加Nginx命令到环境变量
  81. cat >/etc/profile.d/nginx.sh <
  82. 3、重启nginx 80端口脚本

  83. </>复制代码

    1. #!/bin/bash
    2. fuser -k 80/tcp
    3. if [ $? -eq 0 ]
    4. then
    5. echo "正在启动nginx..."
    6. ./nginx
    7. if [ $? -eq 0 ]
    8. then
    9. echo "启动成功!"
    10. fi
    11. fi
  84. 参考:
    1、centos7上JDK安装与一键安装脚本的编写

  85. 2、Linux一键安装JDK8、Tomcat8脚本

  86. 3、centos上一键安装jdk、tomcat脚本

  87. 4、tar 命令

  88. 5、Nginx脚本一键安装

  89. 6、Nginx脚本一键安装第二版

  90. 7、nginx download

  91. 8、Vim中如何全选并复制?

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/68690.html

相关文章

  • Linux 动化脚本安装JdkNginx软件

    摘要:安装脚本请将下载的包与此脚本放置到同一目录授予此脚本可执行权限在终端执行此脚本开始安装文件名注意不可有多个版本的包为了使配置的环境变量生效,安装完成后你应该重新登陆。 1、安装JDK脚本 #!/bin/bash # jdk install # 请将下载的jdk-xxx-linux-xxx.tar.gz包与此脚本放置到同一目录 # 授予此脚本可执行权限(chmod +x install...

    vboy1010 评论0 收藏0
  • Centos 7.2 安装配置 Nginx、PHP7、Mysql、JDK、Tomcat、Redis、

    摘要:阿里云不建议升级服务器的内核和操作系统版本,所以,在进行系统软件更新操作时,应该将其剔除。不行,还是不放心,又卸载了,重新安装了一遍。安装完成后会提示,执行,检测安装是否成功。接着执行,会有提示需要安装完,再执行就没问题了。 以下操作均在阿里云 ECS(Centos 7.2)环境下执行,其他系统环境可能会有些许差别,仅供参考 软件更新 由于系统驱动的兼容性等问题,当前云服务器 ECS ...

    madthumb 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<