目录

Linux系统的学习与使用(Centos8)

Linux系统的介绍

Linux不是一个具体的操作系统,而是一类操作系统的统称。具体的版本称之为发行版。发行版一般有如下几个

  • Red Hat :红帽,目前被IBM收购了。收费版。是目前全球最大的Linux供应商
  • CentOs:Red Hat推出的免费版的Linux操作系统
  • Ubuntu:图形化页面比较友好的Linux操作系统(免费)

为什么要选择Linux作为服务器运行的操作系统

  • 开源免费
  • 听说10年不关机依然可以正常运行
  • 比Windows更加的安全

目录结构

Linux不同于Windws硬盘进行了分区,分为c盘,d盘等等。
可以理解为Linux只有一个分区。所有的文件都存放在该分区中。

  • ect 存放配置文件,可以想想一下windows的环境变量

  • bin 可执行文件,我们输入的命令,例如cd,ls等都存放在该目录

  • usr/local 相当于Windows安装东西等的默认安装目录

  • var 存放一些临时文件

  • home 除了root用户外,其他用户都会在该目录下有一个同名文件夹。对应的用户对其文件夹有完整的权限

  • root 只有root用户能够操作的目录

使Linux系统能够联网(登录root用户)

  • 编辑该网卡配置,开启该网卡
    vi /etc/sysconfig/network-scripts/ifcfg-ens33
    image
  • 重启该网卡
    nmcli c reload ens33

常用命令

cd命令(用于进入到某个目录)

cd ./aa/ 进入到当前目录下的aa文件夹
cd ../bb/  进入上一级目录下的bb文件夹
cd /home 进入根目录下的home目录

ls、ll命令 (查看某目录下的文件和文件夹)

ls 查看目录下的文件及文件夹。不显示详细信息,只显示名称。
ls -a 功能同上,但是会显示隐藏的文件或文件夹
ll 查看当前目录下的文件及文件夹。显示详细信息。

clear命令(清屏)

clear 清屏

pwd命令(获取当前所在目录)

pwd 执行后会在控制台输出你当前所在的目录

mkdir 命令(创建目录)

mkdir ./aa  在当前目录创建一个aa文件夹
mkdir /home/dqx/bb 在根路径的home目录下的dqx目录下创建一个bb文件夹
特别提示:mkdir 命令如果没有加参数,则只能创建一级的文件夹,如果要在bb目录下创建aa,那么bb则必须先存在。所以有如下指令。
mkdir -p /home/dqx/aa/bb 会创建bb目录。但是如果aa目录或者dqx目录等前面的目录不存在,则会一同创建

rm命令(删除文件或目录)

rm aa.txt 删除当前目录下的aa.txt文件
rm -r /home/dqx/aa 删除 根路径下的 home目录下的dqx目录下的aa文件夹,及其里面的文件或子文件夹。会出现需要确认的提示
rm -rf /home/dqx/aa 功能同上,但是不会提示是否需要删除。

touch 命令(创建文件)

touch a.txt 在当前目录下创建一个文件

vi/vim命令(文本编辑)

vi a.txt 会编辑当前目录下的a.txt文件
按下ESC则进入命令状态
命令状态下按i,看到左下角有insert,则进入输入状态。
命令状态下按 :q 退出当前编辑,(未改动的情况下)
命令状态下按 :wq 写入并退出
命令状态下按 :wq! 强制写入并退出
命令状态下按 dd 会删除光标所在的行
命令状态下按 d + 行号 + enter 会删除指定行号的行

使用vi或者vim命令操作文件时,有时候会出现有临时文件,可以根据需求对临时文件进行操作。例如删除临时文件(在弹出有临时文件的提示时按D),也可以手动rm -rf xxxx.swap临时文件

cat命令(查看数据)

cat a.txt 查看当前目录下a.txt文件的内容

tail命令(查看指定条目数据)

tail a.txt 查看当前目录下a.txt文件的最后10行内容
tail -5 a.txt 查看当前目录下a.txt文件的最后5行内容
tail -f a.txt 动态查看a.txt文件,如果该文件修改,那么我们看到的数据也会修改

mv命令(剪切)

mv 需要移动的文件 目的文件
mv ./a.txt /home/dqx/b.txt 将当前目录下的a.txt文件剪切到根目录下的home目录 下的dqx目录下,并且重命名为b.txt

(注意了,必须要写移动后的文件名)

cp命令(复制)

cp ./a.txt /home/dqx 将当前目录下的a.txt文件复制到/home/dqx文件目录下(可以不用指定复制后的文件名)

cp ./a.txt /home/dqx/b.txt 也可以指定文件名
cp -r ./aa ./bb/ 将aa文件夹复制到bb文件夹中

tar(解压压缩文件)

tar -zxvf 压缩文件
解压 .tar.gz 以及 .tar文件
z:是否具有gzip文件格式,也就是扩展名是否为.tar.gz
x:解压内容
v:是否显示解压过程
f:写到最后,然后紧跟需要被解压的文件

ps命令(查询进程)

ps -ef|grep mysql 查询mysql的全部进程
ps -aux|grep mysql 显示所有包含其他使用者的mysql进程
-e 显示所有进程,环境变量
-f 全格式

kill(杀死进程)

kill -9 进程号  ,-9代表强制删除,无论是否在运行

service命令(主要用于操作系统服务)

service 服务名 start|stop|status|restart
service firewalld stop // 关闭防火墙

systemctl命令(系统控制)

systemctl disable firewalld // 关闭防火墙开机自动启动
systemctl enable firewalld // 与上相反

安装JDK

将下载好的压缩版的linux版本的JDK下载到/usr/local/tmp文件夹下

tmp文件夹是自己创建的
image

使用tar -zxf命令解压该压缩包

image

将解压后的文件夹复制到/usr/local目录下,并命名为jdk

image

为jdk配置环境变量,/etc/profile

  • 打开配置环境变量的文件
    vim /etc/profile
    image
    保存退出。
  • 重新解析该配置文件
    source /etc/profile

java环境测试是否安装成功

如若以下三个命令都能找到指令,则代表jdk环境配置好了
java -version
javac
java

安装MYSQL8

去官网下载对应的mysql8版

下载地址
image

将其复制到linux系统的/usr/local/tmp目录下并解压

image

将解压后的mysql文件夹复制到/usr/local目录中,并重命名文件夹为mysql

image

进入到mysql目录,创建my.cnf文件,修改并保存

cd /usr/local/mysql
vim my.cnf

# my.cnf文件配置如下,请自行按照需求更改
[mysqld]
# 端口
port=3306
# 基础mysql路径
basedir=/usr/local/mysql/
# mysql的数据存储路径
datadir=/usr/local/mysql/data/
# 出现错误的日志文件路径
log-error=/usr/local/mysql/data/error.log
# mysql以socket方式运行的sock文件位置
socket=/tmp/mysql.sock
# 进程id文件的位置
pid-file=/usr/local/mysql/data/mysql.pid
# 服务器使用的字符集
character-set-server=utf8mb4
# 使表名不区分大小写,如果为0则区分
lower_case_table_names=1
# innodb日志大小
innodb_log_file_size=1G
# 默认使用的引擎
default-storage-engine=INNODB
# 默认使用的验证插件
default_authentication_plugin=mysql_native_password

[mysql]
default-character-set=utf8mb4

[client]
# 端口号
port=3306
# 客户端默认字符集
default-character-set=utf8mb4

将该my.cnf复制一份到/etc/目录下,因为mysql8启动时会在该目录找配置文件

cp /usr/local/mysql/my.cnf /etc/

添加mysql的用户组及用户,并授权

# 创建用户组,名为mysql
groupadd mysql
# 创建一个用户 -r代表创建系统用户, -g代表指定用户组,所以用户名为mysql,所属的用户组也是mysql
useradd -r -g mysql mysql
# 将mysql目录的所有者设置为mysql用户,所属的组设置为mysql组
chown -R mysql:mysql /usr/local/mysql/

image

执行命令初始化mysql,并查看初始密码

# 初始化mysql数据
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

# 查看初始化密码
cat /usr/local/mysql/data/error.log

image

创建软连接

# 创建的原因是因为mysql使用的libtinfo.so是5的,而centos默认是使用6的,所以要替换成5
# 创建一个软连接/usr/lib64/libtinfo.so.5 ,指向/usr/lib64/libtinfo.so.6
ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5
ln -s /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5

将mysql注册成服务,使其可以通过service|systemctl命令控制

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

image

设置mysql开启自启动并启动mysql服务

# 设置开机自启动
systemctl enable mysql
# 启动mysql服务
service mysql start

image
image

为mysql添加软连接,使得任何路径下都能使用mysql命令

ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql

登录mysql(这里的密码是前面初始化mysql时那一步时创建的随机密码),并重新设置root密码,以及开启远程访问

image

修改当前root密码

image

创建一个所有ip都能访问的root用户,并授予所有权限

# 创建一个root用户,%代表所有ip都可访问
create user 'root'@'%' identified by 'root';
# 为该用户赋予所有权限,并且使其也可以赋予权限给其他用户
grant all privileges on *.* to 'root'@'%' with grant option;
# 刷新权限
flush privileges;

使用navicat测试连接

image

安装Tomcat

下载Linux版的tomcat

下载地址
image

将下载下来的文件放入linux系统的/usr/local/tmp目录下,然后执行如下操作

# 进入该目录
cd /usr/local/tmp/
# 解压,这个压缩包的名称按照你下载的来
tar -zxf apache-tomcat-8.5.69.tar.gz
# 将其复制到/usr/local目录下,并重命名为tomcat
cp -r apache-tomcat-8.5.69 /usr/local/tomcat

进入tomcat的bin目录,开启tomcat服务

# 进入目录
cd /usr/local/tomcat/bin
# 开启tomcat
./startup.sh
# 关闭tomcat
./shutdown.sh

部署项目到Linux的tomcat中

首先将我们的项目打包成war包

war包本质上就是tomcat可以识别的一个压缩包。与jar无异。

将该war包放入tomcat服务器的webapps目录下

image

启动tomcat

/usr/local/tomcat/bin/startup.sh

查看tomcat错误日志

如果将war包放入tomcat的webapps目录下,然后启动tomcat无法正常访问。可以看看tomcat的日志
tomcat的日志在tomcat安装根路径下的logs文件夹目录中。其中有一个catalina.out的文件,查看该文件即可看到tomcat的启动日志信息。

版权声明:本文为itdqx原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/itdqx/p/15108228.html