linux环境配置

/ 随笔 / 0 条评论 / 521浏览

1.卸载openjdk

1.查看jdk的状态

rpm -qa|grep jdk

2.发现不同版本

# rpm -e --nodeps 相关文件
[root@xxx ~]# rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.292.b10-1.el7_9.x86_64
[root@xxx ~]# rpm -e --nodeps java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64

当然卸载openjdk就行

3.出现error: can’t create transaction lock on /var/lib/rpm/.rpm.lock (Permission denied)说明权限不够

登录root账户

4.卸载完成后查看jdk版本

java -version

当然windos下为java --version

5.通过xftp传jdk的安装包

在根目录下的home中创建software;中存放jdk文件;

在/usr/local中建立java目录

解压jdk文件到/usr/local/java目录中

tar -zxvf jdk-8u371-linux-x64.tar.gz -C /usr/local/Java
///如果时rpm安装则
     rpm -ivh jdk-8u371-linux-x64.rpm

6.修改/etc/profile文件

vim /etc/profile

其中加入JAVA_HOME,就是配置环境变量

export JAVA_HOME=/usr/Java/jdk1.8.0_x64
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

7.刷新配置文件

source /etc/profile

8.验证

 java -version

2.防火墙配置

#开启防火墙端口
firewall-cmd --zone=public --add-port=8001/tcp --permanent


firewall-cmd --query-port=3306/tcp

firewall-cmd --query-port=8001/tcp

firewall-cmd --reload
#重启防火墙
systemctl restart firewalld.service
#查看所有开启的端口,如果是阿里云 需要配置安全组规则
firewall-cmd --list-ports
#暂时关闭防火墙
systemctl stop firewalld
#永久关闭防火墙设置文件
先执行关闭
Linux永久关闭防火墙 firewalld和sellinux设置
关闭 firewalld:
systemctl disable firewalld #永久关闭,即设置开机的时候不自动启动
关闭 selinux:
修改配置文件(永久关闭selinux可以使用vi命令打开/etc/sysconfig/selinux 文件将SELINUX=disable)
#重启虚拟机


3.tomcat的安装

下载tomcat的lunix的安装包

解压

启动

#执行 
./startup.sh
#停止
./shutdown.sh
#开启端口
firewall-cmd --zone=public --add-port=8080/tcp –permanent

命令含义:  --zone 作用域  --add-port-80/tcp 添加端口, 格式为:端口/通讯协议  --permanent 永久生效,没有此参数重启后失效

4.DOCKER安装

1.检测CentOS 7

[root@localhost ~] cat /etc/redhat-release 
CentOS Linux release 7.3.1611 (Core)

2.安装我们的准备环境

yum -y install 包名
#yum install 安装命令 -y  所有的提示都为y
yum -y install gcc
yum -y install gcc-c++

3.卸载以前的docker

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

4.下载环境

yum install -y yum-utils \device-mapper-persistent-data \lvm2

5.使用国内阿里云镜像

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

6.更新yum软件包安装

yum makecache fast

7.安装docker

yum -y install docker-ce docker-ce-Cli containerd.io

8.启动docker

systemctl start docker

9.测试

docker version
docker run hello-world
docker images

5.数据库安装

1、下载MySQL源
curl -O https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm

1676253435696

2、安装MySQL源
yum localinstall mysql57-community-release-el7-11.noarch.rpm
3、检查MySQL源是否安装成功
yum repolist enabled | grep "mysql.*-community.*"

出现以下信息表示安装成功了

1676253675804

4、有了MySQL源后安装MySQL
yum install mysql-community-server

输入确认继续安装

安装报错,提示无公共秘钥

解决方法:

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

然后再次安装

yum install mysql-community-server
5、 查看是否安装成功
yum list installed mysql-*

1676254097313

6、启动MySQL并检查MySQL运行状态
systemctl start mysqld
systemctl status mysqld

1676254313887

7、获取MySQL默认登录密码,登录MySQL,并修改默认密码

grep 'temporary password' /var/log/mysqld.log

输入以下命令后,再输入默认登录密码,就能以 root 帐号登录 mysql

mysql -uroot -p

1676254611073

在创建数据库或数据表之前,要先用一下命令修改 root 用户的密码,此处设置为Mysql@123

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Mysql@123';

PS:MySQL默认的密码复杂度为 MEDIUM,所以新密码至少为8位,并且必须包含大、小写字母、数字和特殊字符

1676255064805

8、授予root用户远程访问权限,并刷新权限使生效

grant all privileges on *.* to 'root' @'%' identified by 'Mysql@123'; 

第一个*是数据库,可以改成允许访问的数据库名称

第二个 是数据库的表名称,代表允许访问任意的表

root代表远程登录使用的用户名,可以自定义

%代表允许任意ip登录,如果你想指定特定的IP,可以把%替换掉就可以了

password代表远程登录时使用的密码,可以自定义

让权限立即生效:==flush privileges==

flush privileges

9.本机连接数据库

让虚拟机的防火墙打开

打开3306端口

systemctl status firewalld//查看防火墙
firewall-cmd --zone=public --query-port=3306/tcp//查看3306端口状态
firewall-cmd --zone=public --add-port=3306/tcp --permanent //开启3306端口
firewall-cmd --reload//防火墙重载
firewall-cmd --zone=public --query-port=3306/tcp//再次查看状态

6.数据库卸载

rpm -qa | grep mysql #检查是否安装过MySQL

rpm -qa | grep mariadb #检查是否存在 mariadb 数据库(内置的MySQL数据库),有则强制删除

rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64 #强制删除

rpm -e --nodeps mariadb-5.5.68-1.el7.x86_64 #强制删除

7.安装nacos的集群

1.把安装包导进来,记着拷贝一份

2.解压

3.在export/server中打开nacos的包

4.进入cd /conf ,找到nacos_mysql.sql

5.打开数据库运行

mysql -uroot -pMysql@123
create datebase nacos_config;
use nacos_config
source /export/servers/nacos/conf/nacos-mysql.sql

6.在nacos的conf目录下

更改application.properties文件并且备份,加入:p的端口调用

cp application.properties application.properties.init

最后application.properties文件最后加入

spring.datasource.platform=mysql
db.num=1
db.url0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTime=3000&autoReconnect=true
db.user=root
db.password=Mysql@123

7.在cluster.conf,拷贝一份

cp cluster.conf cluster.conf.example
vim cluster.conf
//在其中加入
192.168.***.***:3333
192.168.***.***:4444
192.168.***.***:5555

加入端口本机地址加3333,4444,5555

8.编辑startup.sh的脚本在nacos的bin目录下

cp startup.sh startup.sh.bk//拷贝一份

//进入文件配置,添加 p:
p)
PORT=$OPTARG;;

$JAVA-Dserver.port=${PORT}
//执行方式

9.nginx的修改

修改nginx的配置文件去到nginx的conf中

先备份

cp nginx.conf nginx.conf.bk//拷贝
vim nginx,conf
改server下的listen  80;改成1111;
把location/{}中的注释掉,并且加上
proxy_pass http://cluster;


在server{}上方加入
upstream cluster{
	server 127.0.0.1:3333;
	server 127.0.0.1:4444;
	server 127.0.0.1:5555;
}

10.流程

先启动nacos,在启动nginx

nacos/bin下

	./startup.sh -p 3333//依次
    ./startup.sh -p 4444 
    ./startup.sh -p 5555
    ps -ef|grep nacos|grep -v grep|wc -l  //查看有几个启动
        //然后去启动nginx的
     //去nginx下的sbin目录下
    ./nginx -c /usr/local/nginx/conf/nginx.conf
     ps -ef|grep nginx

11.防火墙把1111端口打开

firewall-cmd --zone=public --add-port=1111/tcp --permanent //开启3306端口

8.虚拟机网卡丢失解决

Author:ZERO-A-ONE Date:2021-11-01 最近因为克隆了一台电脑上的虚拟机到自己的电脑上突然发现网卡丢失了,简单介绍一下当时的情况:

被克隆VMWare Pro Version:16.0 本机VMWare Pro Version:16.2.0 build-18760230 克隆系统:Ubuntu 18.04 LTS 这种问题一般是因为克隆机一开始运行在桥接模式,到新的平台上网卡配置出现了问题,我们首先把虚拟机的网卡调整为NAT模式,然后打开ubuntu里的网络设置:

$ sudo vim /etc/network/interfaces 1 配置如下:

auto eth0 iface eth0 inet dhcp 1 2 重启网络设备:

/etc/init.d/networking restart 1 会报下面的错误

SIOCSIFADDR: No such device eth0: ERROR while getting interface flags: No such device eth0: ERROR while getting interface flags: No such device Bind socket to interface: No such device Failed to bring up eth0. 1 2 3 4 5 使用ifconfig -a看我们拥有的网络设备,发现网卡名字并不是eth0,一般而言虚拟机使用NAT模式网卡的名字其实是ens33,这时我们再次执行:

$ sudo vim /etc/network/interfaces 1 然后修改配置文件为:

auto ens33 iface ens33 inet dhcp 1 2 再次重启网络设备:

/etc/init.d/networking restart 1 然后重启即可

$ sudo reboot 1 老版本的Ubuntu其实也可以考虑删除直接下面的文件

rm /etc/udev/rules.d/70-persistent-net.rules 1 然后,重启linux就可以把网卡名变回ens33了

9.虚拟机网络配置

[root@hadoop100 桌面]#vim /etc/sysconfig/network-scripts/ifcfg-ens33

以下加粗的项必须修改,有值的按照下面的值修改,没有该项的要增加。

TYPE="Ethernet" #网络类型(通常是 Ethemet) PROXY_METHOD="none" BROWSER_ONLY="no"

BOOTPROTO="static" #IP 的配置方法[none|static|bootp|dhcp](引导 时不 使用协议|静态分配 IP|BOOTP 协议|DHCP 协议)

DEFROUTE="yes" IPV4_FAILURE_FATAL="no"

IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no"

IPV6_ADDR_GEN_MODE="stable-privacy"

NAME="ens33"

UUID="e83804c1-3257-4584-81bb-660665ac22f6" #随机 id

DEVICE="ens33" #接口名(设备,网卡)

ONBOOT="yes" #系统启动的时候网络接口是否有效(yes/no)

#IP 地址

**IPADDR=192.168.1.100 **

#网关

**GATEWAY=192.168.1.2 **

#域名解析器

DNS1=192.168.1.2

10.redis命令

11.vim安装

centos7,安装vim

有网安装

1.# yum install vim -y
2.# vim --version
3.# cd ~
4.# mv freya.vim /usr/share/vim/vim74/colors/
5.# mv _vimrc .vimrc

12.远程连接数据库

1.添加安全组规则

阿里云

2.数据库的mysql库的user表里更改localhost->%

3.检查防火墙端口开没开

13