1.Linux安装
- 安装方式:物理机安装;虚拟机安装
- 安装Linux
- 网卡设置
- 安装SSH连接工具
2.Linux常用命令
- /bin:存放二进制可执行文件
- /boot:存放启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件
- /dev:存放Linux的外部设备
- /etc:存放所有的系统管理所需要的配置文件和子目录
- /home:用户的主目录
- /lib:存放着系统最基本的动态连接共享库
- /opt:给主机额外安装软件所摆放的目录,默认为空
- /usr:存放很多的应用程序和文件,类似于Windows下的program files目录
文件与目录管理
1.常用命令
- ls:列出目录和文件名
- cd [目录名]:切换目录
- pwd:显示目前的目录
- mkdir [目录名]:创建一个新的目录
- rmdir [目录名]:删除一个空的目录
- cp []:复制文件或目录
- rm [文件名]:删除文件或目录
- mv []:移动文件与目录,或修改文件与目录的名称
- touch [文件名]:如果文件不存在,新建文件
【Linux命名格式】:command [-options] [parameter]
ls -l 等于 ll:展示文件详细信息
命令汇总
1.wget
wget命令是Linux系统用于从Web下载文件的命令行工具,支持 HTTP、HTTPS及FTP协议下载文件,而且wget还提供了很多选项,例如下载多个文件、后台下载,使用代理等等
wget命令的使用
语法格式
wget [options] [url]
- -O选项以其他名称保存下载的文件:要以其他名称保存下载的文件,使用-O选项,后跟指定名称即可:
wget -O redis.tar.gz https://download.redis.io/releases/redis-6.0.8.tar.gz - -P选项将文件下载到指定目录
wget -P /usr/software https://download.redis.io/releases/redis-6.0.8.tar.gz - -c 断点续传:当我们下载一个大文件时,如果中途网络断开导致没有下载完成,我们就可以使用命令的-c选项恢复下载,让下载从断点续传,无需从头下载
wget -c https://download.redis.io/releases/redis-6.0.8.tar.gz
2.tar
这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个
-c: 建立压缩档案
-x:解包
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
f:filename要操作的文档名
包文件后缀为.tar表示只完成了打包,没有压缩
包文件后缀为.tar.gz表示打包的同时进行了压缩
-
打包:把文件整合在一起,不压缩
- 将文件打包: tar cf a.tar /etc/:a.tar为压缩文件命名;etc为要打包的文件
- 列出文档内容:tar tf a.tar
- 提取文档内容:tar xf a.tar
-
压缩:把打包好的文件压缩,便于存储
Linux3种压缩方式:
gzip: 压缩速度最快,历史最久,应用最广泛;
bzip2: 压缩成的存档文件小,可用性不如gzip;
xz: 最新的方式,提供最佳的压缩率z 用于gzip压缩: filename.tar.gz j 用于bzip压缩: filename.tar.bz2 J 用于xz压缩: filename.tar.xz
- 查看压缩前文件大小:ls -lh
- gzip压缩:tar zcf a.tar.gz a.tar:a.tar.gz为压缩后命名;a.tar为要压缩的文件名
- bzip2压缩:tar jcf a.tar.bz2 a.tar
- xz压缩:tar jcf a.tar.xz a.tar
- 压缩对比:xz > bzip2 > gzip
-
解压:将压缩好的文件解压打开
- 解压缩文件加一个参数x:tar xf a.tar.gz
- 其他类型解压:tar xf a.tar.bz2;tar xf a.tar.xz
3.cat
1、cat filename,查看filename内容。
2、cat -n filename,查看文件的内容,并对所有输出行进行编号(包括空白行)。
3、cat -b filename ,用法和 -n 差不多,但是不对空白行编号。
4、cat -s filename,当遇到有连续两行或两行以上的空白行,就代换为一行的空白行。
5、cat -e filename,在输出内容的每一行后面加一个$符号(包括空白行)。
-
创建一个文件:
# 只能创建新文件,不能编辑已有的文件,未设置结束符,则ctrl+C可以结束文件的录入
cat >filename# 创建新文件,并设置END作为结束符,当识别到用户输入END,则结束文件的录入,END可以自定义; cat >filename <<END
-
追加文件内容:
# 在原文件的基础上,追加内容
cat >>filename# 设置结束符 cat >>filename <<end
-
合并多个文件:
# 将file1 和file2 合并成一个新的文件file,
# 如果file以前有内容,则先会清除它们然后再写入合并后的内容。
cat file1 file2 > file# 如果不想清除文件内容,则可以把单边号>变成了双边号>> cat file1 file2 >> file
3.Linux软件安装
软件安装方式:
- 二进制发布包安装:解压,修改配置即可
- rpm安装:rpm命令安装
- yum安装:自动下载安装包并安装,可以自动解决库依赖问题
- 源码编译安装:需要自己编译打包
安装jdk:
- 使用上传工具将jdk的二进制发布包上传到Linux jdk-8u171-linux-x64.tar.gz
- 解压安装包,命令为
tar -zxvf jdk-8u171-linux-x64.tar.gz -C /usr/local
- 配置环境变量,使用vim命令修改/etc/ profile文件,在文件末尾加入如下配置
JAVA_HOME=/usr/ local/jdk1.8.0_171
PATH=$JAVA_HOME/bin : $PATH
- 重新加载profile文件,使更改的配置立即生效,命令为
source /etc/profile
- 检查安装是否成功,命令为
java -version
安装tomcat:
- 使用上传工具将Tomcat的二进制发布包上传到Linux apache-tomcat-7.0.57.tar.gz
- 解压安装包,命令为
tar -zxvf apache-tomcat-7.0.57.tar.gz -C /usr/local
- 进入Tomcat的bin目录启动服务,命令为
sh startup.sh
或者./startup.sh
- 停止tomcat服务:
sh shutdown.sh
或./shutdown.sh
- 查看tomcat进程id:
ps -ef | grep tomcat
- 结束进程:
kill -9 7742
,-9表示强制结束
防火墙操作:
- 查看防火墙状态:
systemctl status firewalld
- 暂时关闭防火墙:
systemctl stop firewalld
- 永久关闭防火墙:
systemctl disable firewalld
- 开启防火墙:
systemctl start firewalld
- 开启指定端口:
firewall-cmd --zone=public --add-port=8080/tcp --permanent
- 关闭指定端口:
firewall-cmd --zone=public --remove-port=8080/tcp --permanent
- 立即生效:
firewall-cmd --reload
- 查看已经开放的端口:
firewall-cmd --zone=public --list-ports
安装MySQL:
-
检测当前系统中是否安装MySQL数据库:
rpm -qa | grep mysql
-
卸载已经安装的冲突软件:
rpm -e --nodeps 软件名称
-
上传MySQL安装包到Linux并解压:
mkdir /usr/local/mysql
tar -zxvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar -C /usr/local/mysql
-
按照顺序安装rpm软件包
-
启动mysql
查看MySQL服务状态:systemctl status mysqld
启动MySQL服务:systemctl start mysqld
开机自启动MySQL服务:systemctl enable mysqld
-
登录MySQL数据库,查询临时密码:
cat /var/log/mysqld.log | grep password
-
登录MySQL,修改密码,开放访问权限
mysql -uroot -p#修改密码 set global validate_password_length=6; set global validate_password_policy=LOW; set password = password('123456'); #开启访问权限 grant all on *.* to 'root'@'%' identified by '123456'; flush privileges;
安装lrzsz(Linux文件上传下载工具):
- 搜索lrzsz安装包:
yum list lrzsz
- 使用yum命令在线安装:
yum install lrzsz.x86_64
- 文件上传:
rz
4.项目部署
手工部署项目:
- 在idea中开发springboot项目,并达成jar包
- 将jar包上传到Linux服务器:
mkdir /usr/local/app
- 启动springboot程序:
java -jar xxx.jar
- 检查防火墙,确保8080端口对外开放,访问springboot项目:
firewall-cmd --zone=public --list-ports
- 改为后台运行springboot程序,并将日志输出到日志文件:
nohup java -jar xxx.jar &> server.log &
shell脚本自动部署项目:
- 在Linux中安装Git:
yum install git
- 在Linux中安装maven
- 编写Shell脚本(拉取代码、编译、打包、启动)
- 为用户授予执行Shell脚本的权限
- 执行Shell脚本