您当前的位置:首页 > 电脑百科 > 软件技术 > 操作系统 > linux

呕心沥血整理的linux服务器一条龙服务

时间:2020-09-01 12:47:04  来源:  作者:

重装服务器必备安装-精

linux查看版本当前操作系统内核信息

  1. uname -a
  2. cat /proc/version

Linux查看当前操作系统版本信息

3、 cat /etc/issue 或cat /etc/redhat-release(看centos

查看linux安装了哪些软件

rpm -qa

安装screen

yum -y install screen

安装sz rz 下载上传

yum install lrzsz

查看安装位置

which +screen/yum/JAVA

安装jdk

这里安装的 jdk1.8.0_221

由于8系列需要先登录个oracle账号

去网上找了个

账号:2696671285@qq.com

密码:Oracle123

下载后解压

tar -zxvf jdk-8u221-linux-x64.tar.gz

配置环境

vim /etc/profile

加入

#java

export JAVA_HOME=/usr/local/java/jdk1.8.0_221

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH

export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin

export PATH=$PATH:${JAVA_PATH}

 

:wq 保存

更新环境变量,然后使配置生效

source /etc/profile

最后查看java环境是否配置好

java -version

 

安装Tomcat

安装tomcat的前提是配置好jdk,后续tomcat配置需要用到

第一步先检查是否安装了tomcat

检查linux是否安装tomcat

rpm -qa|grep tomcat

如果有卸载

rpm -e `rpm -qa|grep tomcat

第二步下载tamcat压缩包

下载前先确认系统的位数,64或者32

uname -a

wget,或者本机下载拖动

我这里下载的是tomcat-9.0.26

第三步,建好目录,解压

mkdir /usr/local/tomcat

然后将下载的压缩包移动或者复制到对应的目录下

cp /usr/local/download/Apache-tomcat-9.0.26.tar.gz /usr/local/tomcat/

解压

tar -zxvf cp /usr/local/download/apache-tomcat-9.0.26.tar.gz /usr/local/tomcat/

然后将apache-tomcat-9.0.26改一下名字

mv apache-tomcat-9.0.26 tomcat-9.0.26 ,这里自己随意

第四步,配置环境变量,端口等

vim /etc/profile

最后一行加入以下信息

#tomcat

export CATALINA_HOME=/usr/local/tomcat/tomcat-9.0.26

export CLASSPATH=.:$JAVA_HOME/lib:$CATALINA_HOME/lib

export PATH=$PATH:$CATALINA_HOME/bin

 

需要修改默认端口的也可以修改端口文件

修改Tomcat端口

/usr/local/tomcat/tomcat-9.0.26/conf下的server.xml文件

vim server.xml,修改8080为其他即可

第五步验证安装结果

在bin目录下启动 ./start.sh

检查端口是否有守护进程

netstat -tnlp|grep java

ps -ef|grep java

ps -aux |grep java

如果java进程未启动,配合tomcat日志查看

在/usr/local/tomcat/tomcat-9.0.26/logs/下

启动时tail -f -n20 查看日志信息

 

一般为防火墙

linux 修改防火墙配置

CentOS 7或RHEL 7或Fedora中防火墙由firewalld来管理

常用的编辑iptables 发现不存在这个文件

下面介绍还原传统的管理方式。

先安装

yum install iptables-services

启动iptables

systemctl enable iptables

systemctl start iptables

查看防火墙状态

service iptables status

启动防火墙(本次有效,开机后恢复默认)

service iptables start

停止防火墙(本次有效,开机后恢复默认)

service iptables stop

编辑防火墙文件 (建议都在配置文件配置,不要命令配置)

vi /etc/sysconfig/iptables

添加80和3306端口 等等(自己配置)

-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT    #80端口开放

-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT    #3306端口开放

-I INPUT -s 113.106.93.110 -p tcp --dport 8089 -j DROP    #禁止指定IP访问 8089

-I INPUT -s 113.106.93.110 -p tcp --dport 8080 -j ACCEPT    #开放固定ipIP访问 8080

保存规则

service iptables save

防火墙使配置文件生效

systemctl restart iptables.service

如果提示

Job for iptables.service failed because the control process exited with error code. See "systemctl s

 

可用journalctl -xe查看异常信息

centos7默认的防火墙是firewalld防火墙,不是使用iptables,因此需要先关闭firewalld服务

 

关闭firewalld

systemctl stop firewalld

systemctl mask firewalld

使用iptables服务

刚才已经加进去了

重启生效

systemctl restart iptables.service

 

设置iptables防火墙为开机启动项

systemctl enable iptables.service

安装Nginx

wget http://nginx.org/download/nginx-1.15.12.tar.gz

压缩包我是放在/usr/local/download/下

解压

tar -zxvf

编译:(把证书模块带上,防止后面加证书配置时,无法重启)

./configure --prefix=/usr/local/nginx --with-http_ssl_module

安装:

make & make install

 

启动:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

停止:/usr/local/nginx/sbin/nginx -s stop

重启:/usr/local/nginx/sbin/nginx -s reload

 

配置域名证书

重启时报错:

因为安装nginx时没有加载SSL模块

nginx缺少http_ssl_module模块,编译安装时带上--with-http_ssl_module

在nginx 目录下:

./configure --prefix=/usr/local/nginx --with-http_ssl_module

然后make

结束后不要make install,不要make install,不要make install

然后备份原有安装的nginx:

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

停止nginx:

/usr/local/nginx/sbin/nginx -s stop

将刚才编译好的nginx覆盖原有的nginx,

cp /usr/local/download/nginx-1.15.12/objs/nginx /usr/local/nginx/sbin/

Y,确认覆盖

查看nginx版本

/usr/local/nginx/sbin/nginx -V

修改nginx配置增加域名证书模块

无数次宕机 熔断呕心沥血整理的linux服务器一条龙服务

 


无数次宕机 熔断呕心沥血整理的linux服务器一条龙服务

 

 

记得证书要有:

我的放在conf目录下

所有报错日志都有显示,根据日志排查:

启动:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

访问,nice

无数次宕机 熔断呕心沥血整理的linux服务器一条龙服务

 

nginx常用命令:

启动:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

停止:/usr/local/nginx/sbin/nginx -s stop

重启:/usr/local/nginx/sbin/nginx -s reload

 

启动服务失败常见日志定位:

tomcat:tail -f -n20 /usr/local/tomcat/tomcat-9.0.26/logs/localhost.2019-09-29.log

nginx:tail -f -n20 /usr/local/nginx/logs/error.log

安装MySQL

系统约定

安装文件下载目录:/usr/local/download/

Mysql目录安装位置:/usr/local/mysql

数据库保存位置:/data/mysql

日志保存位置:/data/log/mysql

 

接下来我们在 Centos7 系统下使用 yum 命令安装 MySQL

安装前,我们可以检测系统是否自带安装 MySQL:

rpm -qa | grep mysql如果你系统有安装,那可以选择进行卸载:

rpm -e mysql  // 普通删除模式

rpm -e --nodeps mysql  // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除

安装 MySQL:

 

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

rpm -ivh mysql-community-release-el7-5.noarch.rpm

yum update

yum install mysql-server

权限设置:

chown mysql:mysql -R /var/lib/mysql

初始化 MySQL:

mysqld --initialize

启动 MySQL服务:

systemctl start mysqld

查看 MySQL 运行状态:

systemctl status mysqld

注意:如果我们是第一次启动 mysql 服务,mysql 服务器首先会进行初始化的配置。

此外,你也可以使用 MariaDB 代替,MariaDB 数据库管理系统是 MySQL 的一个分支,主要由开源社区在维护,采用 GPL 授权许可。开发这个分支的原因之一是:甲骨文公司收购了 MySQL 后,又将 MySQL 闭源的潜在风险,因此社区采用分支的方式来避开这个风险。

MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

安装mariadb:

yum install mariadb-server mariadb

mariadb数据库的相关命令是:

systemctl start mariadb #启动MariaDB

systemctl stop mariadb #停止MariaDB

systemctl restart mariadb #重启MariaDB

systemctl enable mariadb #设置开机启动

验证 MySQL 是否安装成功

mysqladmin --version linux上该命令将输出以下结果,该结果基于你的系统信息:

无数次宕机 熔断呕心沥血整理的linux服务器一条龙服务

 

如果以上命令执行后未输出任何信息,说明你的Mysql未安装成功。

登录 mysql,新安装的mysql没有密码,

无数次宕机 熔断呕心沥血整理的linux服务器一条龙服务

 

给mysql创建root密码:

mysqladmin -u root password "new_password";

或者登录连上mysql:

格式:mysql> set password for 用户名@localhost = password('新密码');

例子:mysql> set password for root@localhost = password('123');

 

然后再连接测试

mysql -uroot -p 回车输入密码

mysql服务设置开机自启动:

systemctl enable mysql

systemctl daemon-reload

创建数据库

进入数据库后

create database te_employee charset=utf8;

事先将数据库文件上传到服务器:

/usr/local/download/hr_web.sql

然后use te_employee;

source /usr/local/download/hr_web.sql

show tables

设置云数据库本地访问

例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

 

FLUSH PRIVILEGES;

 

安装php

 

安装php依赖包:

yum install libxml2

yum install libxml2-devel

下载php7,下载地址: http://cn2.php.net/distributions/php-7.2.1.tar.gz ,选择下载的版本,进入到下载路径,输入下载命令:

cd /usr/local

wget http://cn2.php.net/distributions/php-7.2.1.tar.gz

tar -zxvf php-7.2.1.tar.gz

rm php-7.2.1.tar.gz

mv php-7.2.1 php

cd php

./configure --prefix=/usr/local/php --with-zlib --enable-zip --with-openssl --enable-fpm --enable-mbstring --with-libdir=lib64

make&make install

cp php.ini-production /usr/local/php/lib/php.ini

cp sapi/fpm/php-fpm /etc/init.d/php-fpm

添加执行权限

chmod +x /etc/init.d/php-fpm

php-fpm的配置文件

cp etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

cp etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

 

设置默认启动php-fpm的进程数和最大启动数

vim /usr/local/php/etc/php-fpm.d/www.conf

pm.max_children = 200

pm.start_servers = 20

pm.min_spare_servers = 10

pm.max_spare_servers = 30

 

设置环境变量

vim /etc/profile

最后一行加入

export PATH=/usr/local/php/bin:$PATH

 

刷新环境变量

source /etc/profile

 

启动

/etc/init.d/php-fpm

重启php-fpm:

 

找到master的进程ID

ps -ef | grep php

kill ID

然后再次启动

/etc/init.d/php-fpm

配置nginx支持php 编辑对应的nginx配置文件,我的配置文件路径/usr/local/nginx/conf/nginx.conf

 

vim /usr/local/nginx/conf/nginx.conf

在http模块里面添加下面内容

server {

listen 82;

server_name localhost 47.92.151.19;

root /opt/www;

location / {

root html;

index index.html index.htm index.php;

}

 

location ~ .php$ {

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /opt/www$fastcgi_script_name;

include fastcgi_params;

}

}

在/opt/www下新建index.php

 

vi index.php

<?php

phpinfo();

?>

重启nginx

 

nginx -s reload

浏览器输入IP地址:82/index.php就可以看到phpinfo的信息,配置成功,若不成功再重启下php-fpm。

 

安装composer

 

curl -sS https://getcomposer.org/installer | php

将composer.phar文件移动到bin目录以便全局使用composer命令

mv composer.phar /usr/local/bin/composer

切换国内源

composer config -g repo.packagist composer https://packagist.phpcomposer.com

 

如果提示:

Do not run Composer as root/super user! Seehttps://getcomposer.org/rootfor details

是因为composer不希望我们用root账号去操作,则需要创建一个账号

useradd -g root composer

切换到composer账号

su composer

使用composer账号进行composer命令操作

 

安装Apache

第一步安装apr:下载:http://archive.apache.org/dist/apr/apr-util-1.5.4.tar.gz

解压:tar -axvf apr-util-1.5.4.tar.gz

进到解压的文件夹 cd apr-util-1.5.4

./configure --prefix=/usr/local/apr

 

参考:https://blog.csdn.net/wangshuminjava/article/details/80483397

 

启动apach:/usr/local/httpd/bin/apachectl start

端口配置:vim /usr/local/httpd/conf/httpd.conf

然后重启:/usr/local/httpd/bin/apachectl restart



Tags:linux服务器   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
今日总监说32 服务器 磁盘占用率 超过80%多了 。不对啊 之前才清理过df -h 查看了一番 果然40g 用了33g。看了下历史会爆目录 也就5.3G 之前是服务生成临时下载的附件多。...【详细内容】
2021-12-10  Tags: linux服务器  点击:(16)  评论:(0)  加入收藏
在Linux系统下如何分享文件呢,你可能会想到用scp、rsync此类的命令,但都需要给出服务器密码,不安全。或者搭建一个ftp、nfs或samba的服务,分配个账号或划分个权限给其它人共享文...【详细内容】
2021-12-08  Tags: linux服务器  点击:(14)  评论:(0)  加入收藏
远程登录介绍目前是虚拟化、云计算的时代,今后的运维工作大概率接触不到物理服务器,因为大部分中小型互联网公司出于节省成本、便捷性等因素考虑会直接购买阿里云、腾讯云等云...【详细内容】
2021-10-21  Tags: linux服务器  点击:(95)  评论:(0)  加入收藏
Linux目录结构说明谈到Linux文件管理,首先我们需要了解的是要对文件做些什么事情,其实无非就是对一个文件进行创建、复制、移动、查看、编辑、压缩、查找、删除等等。 例如我...【详细内容】
2021-10-12  Tags: linux服务器  点击:(50)  评论:(0)  加入收藏
案例:100W 的客户端,每三分钟上传一次数据。数据库如何设计?能够查询所有记录? 官方 MySQL 集群方案MySQL ReplicationMySQL Replication 是 mysql 自带的功能,主从复制是通过重...【详细内容】
2021-08-05  Tags: linux服务器  点击:(68)  评论:(0)  加入收藏
在我们平常使用的开发或者测试环境,由于系统日志通常是debug级别,难免会碰到磁盘满的情况,这时候怎么办呢? 01&mdash;查找大文件一般来说,我们的系统或者应用通常部署在/opt目录...【详细内容】
2021-03-26  Tags: linux服务器  点击:(246)  评论:(0)  加入收藏
本文在分析服务器集群实现虚拟网络服务的相关技术上,详细描述了LVS集群中实现的三种IP负载均衡技术(VS/NAT、VS/TUN和VS/DR)的工作原理,以及它们的优缺点。1.前言我们先分析实现...【详细内容】
2021-03-11  Tags: linux服务器  点击:(103)  评论:(0)  加入收藏
重装服务器必备安装-精Linux查看版本当前操作系统内核信息 uname -a cat /proc/versionLinux查看当前操作系统版本信息3、 cat /etc/issue 或cat /etc/redhat-release(看CentO...【详细内容】
2020-09-01  Tags: linux服务器  点击:(98)  评论:(0)  加入收藏
1、账号安全基本使用:1 )用 户 信 息 文 件 /etc/passwd root:x:0:0:root:/root:/bin/bashaccount:password:UID:GID:GECOS:directory:shell用户名:密码:用户ID:组ID:用户说明:家目...【详细内容】
2020-08-15  Tags: linux服务器  点击:(157)  评论:(0)  加入收藏
一、RedHat/CentOS包管理1. 包管理工具RPM(1) 简介最早用在 RedHat的包管理器,现在已经成为Linux常见的包管理系统。RPM包有两种类型: 二进制RPM包 源码RPM包可以在www.rpmfi...【详细内容】
2020-08-12  Tags: linux服务器  点击:(90)  评论:(0)  加入收藏
▌简易百科推荐
作用显示文件或目录所占用的磁盘空间使用命令格式du [option] 文件/目录命令功能显示文件或目录所占用的磁盘空间一些写法的区别du -sh xxx 显示总目录的大小,但是不会列出...【详细内容】
2021-12-23  mitsuhide1992    Tags:du命令   点击:(12)  评论:(0)  加入收藏
什么是linux内核linux就像是一个哲学的最佳实践。如果非要对它评价,我真的不知道该怎么赞叹,我只能自豪地说着:“linux的美丽简直让人沉醉。”我只能说是我处在linux学习的修炼...【详细内容】
2021-12-23  linux上的码农    Tags:linux内核   点击:(15)  评论:(0)  加入收藏
本文将比较 Linux 中 service 和 systemctl 命令,先分别简单介绍这两个命令的基础用法,然后进行比较。从 CentOS 7.x 开始,CentOS 开始使用 systemd 服务来代替 service服务(dae...【详细内容】
2021-12-23  软件架构    Tags:systemctl   点击:(13)  评论:(0)  加入收藏
mv是move的缩写,可以用来移动文件或者重命名文件名,经常用来备份文件或者目录。命令格式mv [选项] 源文件或者目录 目标文件或者目录命令功能mv命令中第二个参数类型的不同(...【详细内容】
2021-12-17  入门小站    Tags:mv命令   点击:(23)  评论:(0)  加入收藏
大数据技术AI Flink/Spark/Hadoop/数仓,数据分析、面试,源码解读等干货学习资料 98篇原创内容 -->公众号 Linux sed 命令是利用脚本来处理文本文件。sed 可依照脚本的指令来处...【详细内容】
2021-12-17  仙风道骨的宝石骑士    Tags:sed命令   点击:(21)  评论:(0)  加入收藏
Node是个啥?  写个东西还是尽量面面俱到吧,所以有关基本概念的东西我也从网上选择性地拿了下来,有些地方针对自己的理解有所改动,对这些概念性的东西有过了解的可选择跳过这段...【详细内容】
2021-12-15  linux上的码农    Tags:node   点击:(21)  评论:(0)  加入收藏
难道只有我一个人觉得Ubuntu的unity桌面非常好用吗?最近把台式机上面的Ubuntu 16.04格式化了,装了黑苹果用了一周,不得不说,MacOS确实很精美,软件生态比Linux丰富很多,比Windows简...【详细内容】
2021-12-14  地球末日村    Tags:ubuntu   点击:(34)  评论:(0)  加入收藏
简介Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。输出信息含义执行net...【详细内容】
2021-12-13  窥镜天    Tags:Linux netstat   点击:(26)  评论:(0)  加入收藏
对于较多数量的文件描述符的监听无论是select还是poll系统调用都显得捉襟见肘,poll每次都需要将所有的文件描述符复制到内核,内核本身不会对这些文件描述符加以保存,这样的设计...【详细内容】
2021-12-13  深度Linux    Tags:Linux   点击:(16)  评论:(0)  加入收藏
今天,我们来了解下 Linux 系统的革命性通用执行引擎-eBPF,之所以聊着玩意,因为它确实牛逼,作为一项底层技术,在现在的云原生生态领域中起着举足轻重的作用。截至目前,业界使用范...【详细内容】
2021-12-10  架构驿站    Tags:eBPF   点击:(24)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条