0
点赞
收藏
分享

微信扫一扫

08-Linux与部署上线


目录

​​一,Linux的目录结构​​

​​二,Linux的用户​​

​​1,用户分类​​

​​2,查看用户信息​​

​​3,创建用户​​

​​4,删除用户​​

​​5,用户口令管理​​

​​三,Linux的常用命令​​

​​1,Linux目录管理​​

​​1.1 查看目录​​

​​1.2 切换目录​​

​​1.3 显示当前目录​​

​​1.4 创建目录​​

​​1.5 删除目录​​

​​2,文件操作​​

​​2.1 查看文件内容​​

​​2.2 创建文件​​

​​2.3 写入内容​​

​​2.4 复制、拷贝文件​​

​​2.5 移动文件​​

​​2.6 删除文件​​

​​3,打包与拆包​​

​​4,其他命令​​

​​4.1 查看进程快照​​

​​4.2 管道 |​​

​​四,VIM编辑器​​

​​1,命令模式​​

​​2,输入模式​​

​​3,底线命令模式​​

​​五,Linux的文件权限​​

​​1,文件权限​​

​​2,修改权限​​

​​2.1 mode方式​​

​​2.2 数字方式​​

​​六,Linux的网络操作​​

​​1,主机名操作​​

​​2,查询系统完整信息​​

​​3,IP地址操作​​

​​4,域名映射​​

​​5,网络服务管理​​

​​6,防火墙设置​​

​​七,远程上传工具的使用​​

​​八,Linux安装JDK​​

​​九,Linux安装Tomcat​​

​​十,Linux安装MySQL​​

​​十一,Linux项目部署​​

​​1,如何登录数据库?​​

​​2,上传xxx.sql文件时选择类型?​​

​​3,IDEA中web项目打包?​​

一,Linux的目录结构

在Linux文件系统中有两个特殊的目录

.:代表当前的目录,也可以使用 ./ 来表示;
.. :代表上一层目录,也可以 ../来代表。

如果一个目录或文件名以一个点 . 开始,表示这个目录或文件是一个隐藏目录或文件(如:.bashrc)。即以 默认方式查找时,不显示该目录或文件。

08-Linux与部署上线_基础

bin (binaries)存放二进制可执行文件 

sbin (super user binaries)存放二进制可执行文件,只有root才能访问 

etc (etcetera)存放系统配置文件

usr (unix shared resources)用于存放共享的系统资源 

home 存放用户文件的根目录 

root 超级用户目录 

dev (devices) 用于存放设备文件 

lib (library)存放跟文件系统中的程序运行所需要的共享库及内核模块 

mnt (mount)系统管理员安装临时文件系统的安装点 

boot存放用于系统引导时使用的各种文件 

tmp (temporary)用于存放各种临时文件 

var (variable)用于存放运行时需要改变数据的文件

开发人员关注目录:

  • 配置目录etc:软件安装后配置文件选择放入的地址。
  • 软件安装目录:usr/local
  • 安装应用程序目录:opt,部署的API程序一般放在这个目录。部署的API放入用户的目录:/home/用户名
  • 注意:Linux系统的文件系统是以斜杠“/”开始,不是windows中的盘符概念。

二,Linux的用户

Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。

每个用户账号都拥有一个唯一的用户名和各自的口令。

用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。 

1,用户分类

用户账户一般非为两大类:超级管理员和普通用户。 

  • 超级管理员:用root表示,root用户在系统中拥有最高权限。 
  • 普通用户:除了root之外的用户。
     

2,查看用户信息

#语法 cat /etc/passwd

08-Linux与部署上线_MYSQL_02

  • root: 用户名 
  • x: 密码 :已经加密 ,密码存放在 vi /etc/shadow 密码文件 
  • 0: 账号id ,userId 
  • 0: 组id ,groupId

08-Linux与部署上线_MYSQL_03

3,创建用户

useradd 选项 用户名

  • -c comment: 指定一段注释性描述。 
  • -d 目录: 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。 
  • -g 用户组: 指定用户所属的用户组。 
  • -G 用户组:指定用户所属的附加组。 
  • -s Shell文件: 指定用户的登录Shell。
  • -u 用户号: 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。 

useradd lina02

4,删除用户

userdel 选项 用户名

  • -r是常用的选项,表示将用户的主目录一起删除。

5,用户口令管理

用户口令的管理其实就是用户密码的管理。用户账号刚创建时(useradd)没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令。

指定和修改用户口令的命令是 passwd 。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。

passwd 选项 用户名

  • -l 锁定口令,即禁用账号。 
  • -u 口令解锁。 
  • -d 使账号无口令。 
  • -f 强迫用户下次登录时修改口令。

修改当前用户的口令。

切换到用户lina,下面的命令修改该用户自己的口令:PS:linux操作系统中密码部分不予显示,所以看起来是空白的,实际已经输入了密码。

08-Linux与部署上线_Linux_04

如果是超级用户,可以用下列形式指定任何用户的口令:

08-Linux与部署上线_基础_05

普通用户修改自己的口令时,passwd命令会要求先输入原口令,验证后再要求用户输入两遍新口令,如果两次输入的口令一致,则将这个口令指定给用户;而超级用户为用户指定口令时,就不需要知道原口令。 

三,Linux的常用命令

1,Linux目录管理

Linux的目录结构为树状结构,最顶级的目录为根目录 /。其他目录通过挂载可以将它们添加到树中,通过解除挂载可以移除它们。

绝对路径与相对路径:

  • 绝对路径:由根目录 / 写起,例如: /usr/share/doc 这个目录。
  • 相对路径:不是由 / 写起,例如由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成: cd ../man 这就是相对路径的写法。

1.1 查看目录

ls 选项

  • ls :查看当前路径下的文件名称 
  • ls -a :全部的文件,连同隐藏文件( 开头为 . 的文件) 一起列出来(常用) 
  • ls -d :仅列出目录本身,而不是列出目录内的文件数据(常用) 
  • ls -l :长数据串列出,包含文件的属性与权限等等数据;(常用) 
  • ll: 等价于ls -l 
  • ls -al :目录下的所有文件列出来(含属性与隐藏档)

1.2 切换目录

cd是Change Directory的缩写,这是用来变换工作目录的命令。

cd [相对路径或绝对路径]

#使用绝对路径切换到 local 目录 
cd /usr/local/

# 表示回到自己的家目录,亦即是 /root 这个目录
cd ~

# 表示去到目前的上一级目录,亦即是 /root 的上一级目录的意思;
cd ..

1.3 显示当前目录

pwd 是 Print Working Directory 的缩写,也就是显示目前所在目录的命令。

pwd

1.4 创建目录

mkdir (make directory)用来创建新的目录。

mkdir [-mp] 目录名称

  • -m :配置文件的权限!直接配置,不需要看默认权限的脸色 
  • -p :直接将所需要的目录(包含上一级目录)递归创建起来!

cd /tmp 
mkdir kkb

mkdir test1/test2/test3/test4
mkdir: cannot create directory `test1/test2/test3/test4': No such file or directory <== 没办法直接创建此目录!

mkdir -p test1/test2/test3/test4

1.5 删除目录

rmdir 命令用来删除空的目录。

rmdir [-p] 目录名称

-p :连同上一级『空的』目录也一起删除

2,文件操作

2.1 查看文件内容

cat 查看所有内容

cat 由第一行开始显示文件内容

 more 一页一页的显示文件内容

more 文件名称

例如:more /etc/man_db.config
....(中间省略).... --More--(28%) <== 重点在这一行!你的光标也会在这里等待你的命令

在 more 这个程序的运行过程中,你有几个按键可以按的:
空白键 (space):代表向下翻一页;
Enter :代表向下翻『一行』;
:f :立刻显示出档名以及目前显示的行数;
q :代表立刻离开 more ,不再显示该文件内容。

less 一页一页翻动

less 文件名称

例如:less /etc/man.config
....(中间省略).... :
<== 这里可以等待你输入命令!

less运行时可以输入的命令有:
空白键 :向下翻动一页;
[pagedown]:向下翻动一页;
[pageup] :向上翻动一页;
q :离开 less 这个程序;

2.2 创建文件

touch 创建一个空白的普通文件

#示例: 
[root@centoslina01 /]# cd kkb
[root@centoslina01 kkb]# touch lina01.txt
[root@centoslina01 kkb]# ll
total 0
-rw-r--r--. 1 root root 0 Mar 11 10:08 lina01.txt
[root@centoslina01 kkb]#

2.3 写入内容

echo 把内容重定向到指定的文件中 ,有则打开,无则创建

echo '内容'>文件名称 覆盖模式 
echo '内容'>>文件名称 追加模式

#示例: 
[root@centoslina01 kkb]# echo 'jiaobaoyu'>lina01.txt
[root@centoslina01 kkb]# echo 'jiaobaoyu'>lina01.txt
[root@centoslina01 kkb]# cat lina01.txt
jiaobaoyu
[root@centoslina01 kkb]# echo 'jiaobaoyu'>>lina02.txt
[root@centoslina01 kkb]# echo 'jiaobaoyu'>>lina02.txt
[root@centoslina01 kkb]# cat lina02.txt
jiaobaoyu
jiaobaoyu
[root@centoslina01 kkb]#

2.4 复制、拷贝文件

cp [-adfilprsu] 来源档(source) 目标档(destination)

  • -a:相当於 -pdr 的意思,此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容;
  • -d:复制时保留链接。这里所说的链接相当于 Windows 系统中的快捷方式; 
  • -f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;(覆盖已经存在的目标文件而不给出提示) 
  • -i:与 -f 选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答 y 时目标文件将被覆盖。 
  • -l:进行硬式连结(hard link)的连结档创建,而非复制文件本身(不复制文件,只是生成链接文件); 
  • -p:连同文件的属性(修改时间和访问权限)一起复制过去,而非使用默认属性(备份常用); 
  • -r:递归持续复制,用于目录的复制行为; 
  • -s:复制成为符号连结档 (symbolic link),亦即『捷径』文件; 
  • -u:若 destination 比 source 旧才升级 destination !

2.5 移动文件

mv 可以移动文件与目录,或修改名称。

mv [-fiu] source destination

  • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖; 
  • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖! 
  • -u :若目标文件已经存在,且 source 比较新,才会升级 (update)

2.6 删除文件

rm 可以移除文件或目录。

rm [-fir] 文件或目录

  • -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息; 
  • -i :互动模式,在删除前会询问使用者是否动作 
  • -r :递归删除!常用在目录的删除!这是非常危险的选项!!!

3,打包与拆包

一般Linux 上常用的压缩方式是选用tar 将许多文件打包成一个文件,再以 gzip压缩命令压缩成xxx.tar.gz(或者xxx.tgz)的文件。

打包: tar -cvf xxx.tar 要打包的文件或目录的列表,用空格隔开

打包并且压缩: tar -zcvf xxx.tar.gz 要打包的文件或目录的列表,用空格隔开

解压: tar -xvf xx.tar

tar -zxvf xx.tar.gz -C /usr/kkb    注意-C大写,防止拆包解压的路径找不到

  • -c:创建一个新tar文件
  • -v:显示运行过程的信息
  • -f:指定文件名
  • -z:调用gzip 压缩命令进行压缩
  • -t:查看压缩文件的内容
  • -x:解开tar 文件

08-Linux与部署上线_Linux_06

08-Linux与部署上线_Tomcat_07

08-Linux与部署上线_CentOS_08

08-Linux与部署上线_Tomcat_09

4,其他命令

4.1 查看进程快照

ps -axu 显示当前进程的快照

查看Java进程:ps - axu | grep java
查看MySQL进程 ps - axu | grep mysql

4.2 管道 |

管道是Linux中比较重要且常用的一个内容,其作用是将一个命令的输出作为另一个命令的输入,组合使用。

#分页查看帮助信息,按q退出
ls --help | more

四,VIM编辑器

vi 文件名
vim 文件名

vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。

1,命令模式

用户刚刚启动 vi/vim(vim是vi的扩展),便进入了命令模式。

此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。

以下是常用的几个命令:

  • i 切换到输入模式,以输入字符。
  • x 删除当前光标所在处的字符。i
  • : 切换到底线命令模式,以在最底一行输入命令。

若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。

命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。

2,输入模式

在命令模式下按下i就进入了输入模式。

在输入模式中,可以使用以下按键:

  • 字符按键以及Shift组合,输入字符
  • ENTER,回车键,换行
  • BACK SPACE,退格键,删除光标前一个字符
  • DEL,删除键,删除光标后一个字符
  • 方向键,在文本中移动光标
  • HOME/END,移动光标到行首/行尾
  • Page Up/Page Down,上/下翻页
  • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
  • ESC,退出输入模式,切换到命令模式

3,底线命令模式

在命令模式下按下:(英文冒号)就进入了底线命令模式。按ESC键可随时退出底线命令模式。

底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。

在底线命令模式中,基本的命令有

08-Linux与部署上线_基础_10

五,Linux的文件权限

Linux操作系统中对权限的管理很严格。Linux系统中不仅是对用户与组根据UID,GID进行了管理,还对Linux系统中的文件,按照用户与组进行分类,针对不同的群体进行了权限管理,用他来确定谁能通过何种方式对文件和目录进行访问和操作。

1,文件权限

08-Linux与部署上线_Linux_11

权限共有10个字符,我们将它分为4大部分来理解:
- --- --- ---

第1部分、表示文件的类型

  • - 表示是一个文件
  • d 表示是一个目录
  • l 表示是一个连接(理解为快捷方式)

第2部分、当前用户具有的对该文件的权限 (owner 属主,缩写u)
第3部分、当前组内其他用户具有的对该文件的权限 (group 属组,缩写g)
第4部分、其他组的用户具有的对该文件的权限 (other 其他,缩写o)

  • r:Read 读
  • w:Write 写
  • x:eXecute 执行

对于文件和目录来说,r,w,x有着不同的作用和含义:

针对文件:

  • r:读取文件内容
  • w:修改文件内容
  • x:执行权限对除二进制程序以外的文件没什么意义

针对目录:目录本质可看做是存放文件列表、节点号等内容的文件

  • r:查看目录下的文件列表
  • w:删除和创建目录下的文件
  • x:可以cd进入目录,能查看目录中文件的详细属性,能访问目录下文件内容(基础权

限)

PS:

  • root账户不受文件权限的读写限制,执行权限受限制
  • 用户获取文件权限的顺序: 先看是否为所有者,如果是,则后面权限不看;再看是否为所属组,如果是,则后面权限不看。

08-Linux与部署上线_CentOS_12

2,修改权限

chown 是change owner的意思,主要作用就是改变文件或者目录所有者.

  • chmod 修改文件和文件夹读写执行属性。 使用权限:所有使用者
  • chown 修改文件和文件夹的用户和用户组属性。使用权限:root

2.1 mode方式

chmod who opt per file

  • who:u g o a(all)(u 用户user ,g用户组group,o其他用户,a所有用户默认)
  • opt:+添加某个权限 –取消某个权限 =赋予权限
  • per:r w x X

chmod u=rwx,g=r lina03.txt
chmod u+x,g+w,o+w test.log
//r 读,w 写 x 执行

2.2 数字方式

08-Linux与部署上线_基础_13

例如:-rwxr--r--. 1 root root 10 Oct 16 02:55 yhp.log

  • 用户权限=rwx=4+2+1=7
  • 所属组权限=r--=4+0+0=4
  • 其他用户权限=r--=4+0+0=4
  • 组合:744

修改权限:  chmod 765 yhp.log

  • 给用户组加入写入权限:+2
  • 给其他用户加入可执行权限:+1

六,Linux的网络操作

1,主机名操作

hostname :显示主机名

hostname XXX :修改主机名,不推荐,临时生效

永久生效修改主机名需要修改/etc/sysconfig/network文件

2,查询系统完整信息

uname -a

08-Linux与部署上线_Linux_14

3,IP地址操作

查看IP地址:ip addr

修改IP地址:修改/etc/sysconfig/network-scripts/

08-Linux与部署上线_MYSQL_15

重启网络服务:service network restart

4,域名映射

修改 /etc/hosts文件

08-Linux与部署上线_Linux_16

 

5,网络服务管理

查看网络服务状态:systemctl status

启动网络服务:systemctl start

停止网络服务:systemctl stop

重启网络服务:systemctl restart

设置开机启动:systemctl enable

6,防火墙设置

查看防火墙状态: systemctl status firewalld

启动防火墙: systemctl start firewalld

关闭防火墙: systemctl stop firewalld

查询防火墙服务是否开机启动:systemctl is-enabled firewalld

开机时启用防火墙服务:systemctl enable firewalld

开机时禁用防火墙服务:systemctl disable firewalld

查询已经启动的服务列表:systemctl list-unit-files|grep enabled

查询启动失败的服务列表:systemctl --failed

七,远程上传工具的使用

这里使用secureFX

运行后选择连接的虚拟机

08-Linux与部署上线_基础_17

08-Linux与部署上线_CentOS_18

八,Linux安装JDK

1、上传jdk文件到linux

使用SecureFX连linux后,将JDK压缩包上传到新建的mysoft文件夹。

2、解压压缩包

08-Linux与部署上线_Tomcat_19

3、测试jdk是否安装成功

08-Linux与部署上线_CentOS_20

注意:这里是在jdk的bin目录下运行的。并且java命令前有“./”

4、配置环境变量

(1)编辑profile文件

如果提示没有写入权限,可以参考这里​​@我来乔23【linux遇到xxx is not in the sudoers file.This incident will be reported的问题】javascript:void(0)

08-Linux与部署上线_MYSQL_21

javascript:void(0)​

08-Linux与部署上线_MYSQL_22

(2)在profie文件中添加JAVA_HOME变量

08-Linux与部署上线_Tomcat_23

(3)使环境变量及时生效

08-Linux与部署上线_基础_24

(4)查看变量是否更新成功

08-Linux与部署上线_CentOS_25

(5)在任意目录下测试环境是否配置成功

08-Linux与部署上线_CentOS_26

九,Linux安装Tomcat

安装Tomcat之前要保证JDK安装成功!

1、上传Tomcat压缩包到根目录的mysoft文件夹,之前已经完成

2、解压:tar -xzvf apache-tomcat-8.5.11.tar.gz

08-Linux与部署上线_CentOS_27

3、启动Tomcat

08-Linux与部署上线_MYSQL_28

4、关闭防火墙之后测试访问

08-Linux与部署上线_Linux_29

08-Linux与部署上线_MYSQL_30

5、关闭Tomcat

08-Linux与部署上线_Tomcat_31

十,Linux安装MySQL

YUM( Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。

它基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,无须繁琐地一次次下载、安装.

1、检测系统是否自带安装mysql

yum list installed | grep mysql

2、删除系统自带的mysql及其依赖(防止后面安装发生冲突)

yum -y remove mysql-libs.x86_64

08-Linux与部署上线_Linux_32

3、给CentOS添加rpm源,并且选择较新的源,RPM软件包管理器缩写

wget --no-check-certificate dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm

08-Linux与部署上线_MYSQL_33

4、安装第一步下载的rpm文件

yum install mysql-community-release-el6-5.noarch.rpm

08-Linux与部署上线_CentOS_34

yum repolist enabled | grep mysql //列出你所有的yum repo文件

08-Linux与部署上线_Tomcat_35

5、使用yum安装mysql

yum install mysql-community-server

08-Linux与部署上线_Linux_36

安装完毕

6、启动mysql服务

service mysqld start

08-Linux与部署上线_MYSQL_37

7、查看mysql是否自启动,并且设置开启自启动

chkconfig --list | grep mysqld

0 1 2 3 4 5 6 代表centOS启动状态

08-Linux与部署上线_Tomcat_38

chkconfig mysqld on

08-Linux与部署上线_CentOS_39

8、修改字符集为UTF-8

vim /etc/my.cnf

在[mysqld]部分添加:

character-set-server=utf8

在文件末尾新增[client]段,并在[client]段添加:

default-character-set=utf8

esc退出编辑 :wq保存退出 

08-Linux与部署上线_MYSQL_40

修改完成后保存重启服务

service mysqld restart

08-Linux与部署上线_Tomcat_41

步骤9: 修改默认配置

mysql_secure_installation

按照提示进行配置,这里默认root用户的密码空,直接回车即可。此处输入内容:"y","y","n","y","y" 

08-Linux与部署上线_MYSQL_42

十一,Linux项目部署

具体过程可以看这里​​@净重21克【2021最新Linux系统发行版ContOS7演示部署WEB项目】​​,作者总结的非常详细!

这里对其中的细节部分进行记录

1,如何登录数据库?

按照上面的流程,登录用户名为root,密码为安装过程中自己设置的。

mysql -uroot -p
输入密码

2,上传xxx.sql文件时选择类型?

选择binary类型。

08-Linux与部署上线_CentOS_43

若选择ASCII类型,运行


source /home/xsge/downfiles/demo.sql


会出错

3,IDEA中web项目打包?

参考​​@返回主页developer【使用Intellij IDEA将web项目导出为war包 】​​,总结的非常清晰!

上传war包时,同样选择binary类型

我个人用的是IDEA2018.3,亲测有效

08-Linux与部署上线_Linux_44

 

举报

相关推荐

0 条评论