Linux,让你的项目跑在Linux上

引言

1.1开发环境

平时大家大多是在windows或者Mac操作系统下去编写代码进行开发,在开发环境中安装大量的软件,这样会导致环境的稳定性和安全性降低

1.2生产环境

是将程序原型在此环境中,供用户去使用.这个环境是有专业的人员去维护,一般是没有权限去操作生产环境的.

1.3测试环境

一般克隆一份生产环境,会将开发环境中的程序部署到测试环境中.这个环境的主要目的是取程序进程检测,收集程序中的各种问题,并交个开发人员进行修改.

Linux介绍

2.1Linux和Windows的区别

  • Linux是区分大小写的,Windows无所谓
  • Linux中一切皆是文件
  • Linux中文件时没有后缀的,但是它有一些约定俗称的后缀
  • Windows下的软件一般是无法直接运行在Linux环境中的.
  • 但是两者的操作方式基本相同(指的是操作的思路,而不是具体的操作)

2.2Linux的安装

  • 需要安装Linux操作系统,我们需要安装一个虚拟机.为了安装虚拟环境,我们安装VMware
  • 安装Linux操作系统,我们安装CentOS的镜像文件
  • 为了方便Linux操作系统的操作,安装一个图形换的操作界面

2.2.1 VMware的安装

傻瓜式安装----->一直next就可以

傻子

2.2.2在VMware中安装Linux

不放图了—>来个文字描述

  1. 选择安装方式------->典型安装方式
  2. 选择安装镜像文件----->选择稍后安装操作系统
  3. 选择操作系统类型------>Linux操作系统,CentOS版本
  4. 指定虚拟机的名称和安装路径----->名称自定,路径自定
  5. 指定磁盘的存储方式------->选择拆分为多个文件
  6. 指定虚拟机配置----->内存(2G足以) 处理器(根据自己电脑选) 网络适配器(选择桥接模式) CD(选择下载好的iso映射文件)
  7. 设置语言---->中文
  8. 设置网络连接----->打开网络连接
  9. 设置root用户密码------>设置root用户密码,这里需要确认两次

2.2.3安装Xterm

解压即用

2.2.4 使用Xterm连接Linux

  1. 在VMware中使用ip a来查看ip地址
  2. 在Xterm中连接Linux

image-20200717212511367

  1. 登录进去输入密码即可连接成功

注意:在使用Xterm连接Linux操作系统时,要保证VMware中的Linux操作系统的虚拟机是开启状态,不然不能正常连接到虚拟机.

Linux的目录结构

Linux中的目录结构图示
image-20200717212751055
  • root:该目录为系统管理员HOME目录
  • bin:这个目录下放着经常使用的命令
  • boot:这里存放的是启动Linux时一些核心文件
  • etc:存放系统管理所需要的配置文件的子目录
  • home:存放普通用户的HOME目录
  • usr:默认软件安装的目录,类似Windows中Program Files目录
  • opt:是主机额外安装软件拜访的目录

Linux的基本命令

Linux中命令的基本格式:命令 [选项] [参数]

需要注意,个别命令是不遵循这样的格式

扫描二维码关注公众号,回复: 11503677 查看本文章

当命令总有 多个选项是,可以写在一起,并且选项也是由简写方式的命令 选项A选项B

Linux的基本操作命令,不遵循上述规则,但是后期会经常使用

# 1.我是谁?(那个用户)
who am i
# 2.我在那?(输出现在所在的路径)
pwd
# 3.查看ip地址
ip a  或者ip address
# 4.清屏
clear
# 5.ping域名|ip
ping 地址
可以用来检测网络连接是否正常,也可以用来检测是否可以正常访问某个网站
# 6.强制停止
Ctrl+c
  • 注意在Linux操作系统中,复制不能使用Ctrl+C,Ctrl+C表示的意思是强制停止
  • 在Linux中我们在输入时,可以经常性的使用Tab键来自动补全

Linux目录命令

1.列出目录

  • 查看指定目录下的内容,默认查看当前目录下内容
  • Linux中的隐藏文件是以.开头的,当前目录使用.表示,上一级目录使用…表示
ls  [-ald] [目录名]
  • 目录名可以不填写,默认为当前目录
  • -a:列出的全部的文件,包括隐藏文件
  • -l:列举出全部的信息
  • -d:仅查看目录本身

2.切换目录

实现目录间切换,使用绝对路径,相对路径,特殊符号

cd 具体路径|相对路径
特殊符号 表达的路径
. 当前目录
上一级目录
/ 根目录
~ 当前登录用户的HOME目录
- 返回(返回到上一次切换目录的目录)

3.创建目录

创建目录,以及创建多级目录方式

mkdir [-p] 目录名
  • -p:代表创建多级目录时使用

4.删除目录

删除非空目录或包含内容的目录

# 只能删除空目录
rmdir 目录名
# rm--->remove

# 删除非空目录
rm [-rf] 目录名
  • -r:代表递归删除目录下的全部内容
  • -f:不询问直接删除

5.复制目录

复制目录下的全部内容

cp -r 来源目录 目标目录
  • -r:这里的-r代表的是递归复制全部内容,必填项

6.移动,重命名目录

移动目录,重命名目录,会根据第二个参数指定具体操作逻辑

mv 目录名 新目录名 | 路径
  • 如果第二个参数指定的路径不存在,就是重命名,如果第二个参数的路径存在就是重名

Linux中文件命令

1.创建新文件

创建空文件

touch 文件1 文件2 ..

2.编辑文件

编辑文件

vi 文件名   #查看文件(查看模式)
i|a|o #进入到编辑模式(编辑模式)
		#i:在当前光标处,进入编辑模式
		#a:在当前光标的后一格进入编辑模式
		#o:在当前光标的下一行,进入到编辑模式
esc       #退出编辑模式,回到查看模式
:   		#从查看模式进入到底行命令模式,输入wq 表示保存并退出,输入q!表示不保存并退出
		#在查看模式下,按下ZZ,可以快速保存并退出
  • 注意在Linux中一定要注意在文件编辑中一定要正常的退出,不正常的退出可能会让编辑的内容不生效,而且可能会报错误,导致项目不能正常运行

3.编辑文件常用的命令

在编辑文件时可能经常使用到的一些命令

# 在vi文件时,在地hang命令模式下可以输入以下常用内容
# 行号操作
set nu		#查看文件的行号
to rownum	#快速的跳转到指定行
set nonu	#取消行号
# 搜索操作
/word		#类似Windows中Ctrl+F搜索文件中的具体内容所在位置,查看下一个课可以输入字母n
#快速定位
G			#快速跳转到最后一行
gg			#快速跳转到第一行
  • 在Linux中有一个搜索文件的命令:whereis 文件名(或者文件的部分文件名)

4.查看文件

根据不同需要,选择不同的查看方式

#查看文件,直接展示到最后一行
cat 文件名
#从第一行开始查看文件的内容,展示全部
tac 文件名
#从最后一行开始展示
nl 文件名
#显示文件的用时,展示行号
more 文件名
#查看大文件时可以一页一页的向下翻
# 按下space向下翻页,退出时按q

less 文件名
#查看大文件时,可以任意的向上向下翻
#向上或向下翻页Pagup鸡儿PageDowm,一行一行查看,按光标的↑↓

#只查看前几行
head 文件名

#只查看最后几行
tail 文件名

#tail -f 日志 监控日志

5.移动,重命名文件

移动.重命名目录,会根据第二个参数指定具体操作逻辑

mv 文件名 新文件名|路径
  • 如果第二个参数指定的路径不存在,就是重命名,如果第二个参数的路径存在,就是移动

6.复制文件

复制文件到指定目录

cp 文件 目录

7.删除文件

删除文件的方式

rm [-f] 文件名
  • -f:删除是否询问

Linux中关于压缩包的命令

1.针对tar命令

Linux中常用的压缩包,大多是tar,tar.gz,tgz的

1.1解压压缩包

针对压缩包后缀的情况,采用不同的参数,否则可能会损坏文件

tar [-zxvf] 压缩包名称 [-C 路径]
  • -z:代表压缩包后缀是.gz的
  • -x:代表解压
  • -v:解压时,打印详细信息
  • -f:-f选项必须放在所以选项的最后,代表指定文件名称
  • -C:代表将压缩包内容解压到指定的路径

1.2打包成压缩包

可以将多个文件以及目录打包成一个压缩包.根据选择的参数指定压缩包名

tar [-zcvf] 压缩包名称 文件1 文件2 目录1 目录2
  • -c: 代表打包
  • 其他参数的含义和解压的参数含义相同

2.针对zip类型的压缩包

Linux不仅仅针对tar类型的压缩包,也支持zip,rar类型的压缩包

不过需要安装软件针对各种类型压缩包的操作

2.1 安装软件

yum -y install zip #打包程序
yum -y install unzip #解压程序

2.2解压以及打包

#解压
unzip 压缩文件名

#打包
zip 压缩包名称 文件1 文件2 陆慕1 目录2...

用户&用户组的操作

Linux是一个多用户的操作系统,任何一个用户想要操作Linux操作系统,必须向系统管理员申请一个账号才可以,并且以这个账号的身份去操作Linux.

用户的账号一方面可以帮助系统管理员追踪当前用户的操作.另一方面可以控制当前用户对系统资源的访问

1.用户的操作

1.1用户的创建

useradd [-cgd] [选项指定的具体内容] 用户名
  • -c:代表comment,给用户添加一段注释
  • -g:代表group,可以修改用户的所在组
  • -d:代表指定用户的HOME目录

1.2设置用户密码

passwd 用户名

1.3切换用户

su 用户名
# [root2localhost ~]# -->root用户在本地登录,并且当前在~目录下,#代表超级管理员
#[leiyu@localhost ~]$ -->leiyu用户在本地登录,并且当前在~目录下,$代表普通用户

1.4删除用户

userdel [-r] 用户名
  • -r:代表删除用户的同时,删除该用户的HOME目录

1.5修改用户

usermod [-cgd] [选项指定具体内容] 用户名
  • -c:代表comment,给用户添加一段注释
  • -g:代表group,可以修改用户的所在组
  • -d:代表指定用户的HOME目录

2.用户组的操作

用户的身份除了用户本身,还会分配到指定的用户组,可以通过用户组队设置一些文件的操作权限

2.1创建用户组

groupadd 用户组名

2.2修改用户组

groupmod [-n] [选项指定具体的内容] 用户组名
  • -n:修改用户组名称

2.3 删除用户组

groupdel 用户组名

文件权限的修改

首先清楚Linux中文件的权限信息

在Linux中输入ls -l或者ll查看文件和目录的详细信息

文件的详细信息
image-20200717224614482

示例中:

a目录中的第一个属性"d"标识这个是一个目录

而anaconda-ks.cfg第一个属性用"-"标识其是一个文件

在Linux中文件详情的后面属性需要分为三组查看

  • rwx:代表文件拥有者的权限
  • rwx:代表文件所属组用户的权限
  • rwx:代表其他用户对当前文件的操作权限
    • r:代表read,读的权限
    • w:代表write,写的权限
    • x:代表execute,代表执行权限

其余信息

  • 后续的第一个root:代表当前文件的拥有这
  • 后续的第二个root:代表当前文件的所属组
  • 后续分别为:文件的大小和最后修改时间等信息

1.对文件权限的修改

使用chmod对文件的权限进行修改,一种使用数组,一种使用符号…

  • 数字方式方便操作,不过要修改整体权限信息
  • 符号方式更细粒度华.不过操作麻烦

1.1数字方式

chmod [-R]  777 文件|目录
  • rwx在这三个权限中r:4 ,w:2,x:1
  • -R:当修改一个目录权限时,可以添加-R,将目录下的全部内容,都修改权限

1.2符号方式

chmod [-R] a=rw 文件|目录
  • user:u,group:g,other:o,all:a
  • read:r,write:w,execute:x
  • 赋予权限的方式,添加:+,减掉:-,设定:=
  • -R:当修改一个目录权限时,可以添加-R将目录下的全部内容,都修改权限

2.文件拥有者以及所属组修改

chown可以直接修改拥有者和所属组,chgrp只能修改所属组

# 修改文件的拥有者和所属组
chown [-R] 拥有者:所属组文件|目录
# 修改文件的拥有者
chown [-R] 拥有者 文件|目录
# 修改文件的所属组
chgrp [-R] 所属组 文件|目录

Linux的其他操作命令

1.进程的操作

需要用到类似Windows的结束进程,在Linux下需要使用如下命令:

ps -ef
# 查看全部正在运行的进程
ps -ef |grep 搜索的内容
# 杀死进程
kill -9 pid

2.服务的操作

和Windows下的服务操作一致,只需使用如下命令,默认为centos7版本

# 针对服务的启动.停止.重启/开机自动启动/禁止开机自动启动.查看服务状态
systemctl start|stop|restart|enable|disable|status 服务名称

3.端口号查看

如发现端口号被占用,可以使用如下方式查找pid,并结束进程

# 想使用指定的命令需要实现下载netstat
yum -y install net-tools
# 查看端口号占用情况
netstat -naop|grep 端口号

4.访问地址

类似浏览器访问路径,无法图形化显示,一般用于测试

显示的是页面的html或者jsp代码

curl 访问地址

5.查找文件

在Linux中查找指定文件,参数较多,如下为根据文件名称查询

find 路径 -type f|grep profile

Linux下安装软件

1.安装JDK

1.1下载JDK的压缩包

在官网下载JDK的压缩包,注意下载后缀为gz的

1.2将JDK压缩包拉取到Linux中

使用我们下载的Xterm将压缩包拉取到Linux中,让在root目录下

1.3将JDK的压缩包解压

后期大多软件都安装在/usr/local下,直接使用tar解压

tar -zxvf jdk的压缩包名 -C /usr/local

1.4将jdk的目录名修改一下

为了方便配置环境变量,修改目录的名称

cd /usr/local
mv 解压缩后的jdk的包名 jdk

1.5配置环境变量

Linux提供了两种环境变量的文件

  • 第一个是用户级别的环境变量,存放在~/.bashrc
  • 第二个是系统级别的环境变量,存放在/etc/profile

修改那个文件都可以,因为暂时,虚拟机是我们一个人在使用

# 在环境变量文件中,添加如下内容
export JAVA_HOME=/user/local/jdk  #jdk的解压的路径
export PATH=$JAVA_HOME/bin:$PATH
#重新加载环境变量文件(让配置好的环境变量生效)
source /etc/profile
#最终测试
java -version

2.安装Mysql

在Linux下用yum的方式安装Mysql

2.1安装Mysql的YUM存储库

使用wget下载即可,不过需要先下载wget,再通过wget下在rpm包

# 首先通过yum下载wget命令
yum -y install wget
# 通过wget下载Mysql存储库
wget mysql的gz压缩包下下载路径#去官网复制下载链接即可

2.2安装下载好的rpm包

使用rpm包的命令直接安装

# 安装rpm包
rpm -Uvh mysql的rpm包的名包
# 查看rpm包
rpm -qa |grep 内容
# 写在rpm(不需要当前指令)
rpm -e --nodeps rpm名称

2.3选择发行版本

由于默认安装8.0版本的mysql,我们需要修改5.7版本

# 查看一下默认选择的发行版本
yum repolist all |grep mysql
# 通过编辑/etc/yum.repos.d/mysql-community.repo文件,去修改发行版本
#将80的enable更改为0,将57的enable更改为1,保存即可,再次通过域名repolist all |grep mysql查看

2.3安装Mysql社区版服务

开始安装,这一步需要下载一段时间,如果下载失败就是网络问题,需要科学上网

yum -y insatll mysql-community-server

2.5启动Mysql服务,并连接

安装成功后,手动启动,并使用日志中的密码登录,而且第一个操作必须是修改密码,再进行后续的操作

# 启动Mysql服务
systemctl start mysqld.service
# 查看初始化密码
grep 'temporary password' var/log/mysqld.log
#连接Mysql服务
mysql -u root -p
Enter password:随机密码
# 修改密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'P@ssw0rd'
# 密码要求,必须大写字母,小写祖母,数字,特殊符号

2.6开启远程连接

默认Mysql进制远程lainjie,xuyao单独创建一个用户开启远程链接,这样就可以在windows下使用图形化工具连接

mysql> GRANT ALL PRIVILEGES ON *.* to 'ERIC'@'%' IDENTIFIED NY 'P@ssw0rd' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;

3.安装Tomcat

在Linux下安装Tomcat,以便部署项目到Linux操作系统中

3.1下载Tomcat的压缩包

通过wget下载即可

wget Tomcat的gz压缩包的下载链接地址

3.2解压压缩包

一样解压到usr/local目录下

 tar -zxvf tomcat的gz压缩包 -C /usr/local

3.3启动Tomcat并监听日志

通过./执行可运行文件,并使用tail 监听日志信息

# 跳转到Tomcayt的bin目录下
cd /usr/local/apache-tomcat-8.5.53/bin
#启动
./startup.sh
# 监控日志
cd ../logs
tail -f catalina.put

IDENTIFIED BY ‘P@ssw0rd’

密码要求,必须大写字母,小写祖母,数字,特殊符号


### 2.6开启远程连接

> 默认Mysql进制远程lainjie,xuyao单独创建一个用户开启远程链接,这样就可以在windows下使用图形化工具连接

```sh
mysql> GRANT ALL PRIVILEGES ON *.* to 'ERIC'@'%' IDENTIFIED NY 'P@ssw0rd' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;

3.安装Tomcat

在Linux下安装Tomcat,以便部署项目到Linux操作系统中

3.1下载Tomcat的压缩包

通过wget下载即可

wget Tomcat的gz压缩包的下载链接地址

3.2解压压缩包

一样解压到usr/local目录下

 tar -zxvf tomcat的gz压缩包 -C /usr/local

3.3启动Tomcat并监听日志

通过./执行可运行文件,并使用tail 监听日志信息

# 跳转到Tomcayt的bin目录下
cd /usr/local/apache-tomcat-8.5.53/bin
#启动
./startup.sh
# 监控日志
cd ../logs
tail -f catalina.put

我是雷雨,一个普本科的学生,主要专注于Java后端和大数据开发

如果你喜欢这样的文章,可以关注我,一起努力,一起努力拿大厂offer
如果这篇文章有帮助到你,希望你给我一个的赞
如果有什么问题,希望你能评论区和我一起研究.

猜你喜欢

转载自blog.csdn.net/qq_40742223/article/details/107429212