文章目录

  • 一、前言
  • 二、Linux介绍
  • 1.什么是Linux
  • 2.Linux主要发行版本
  • 三、安装Linux操作系统
  • 1.安装虚拟机(VMware)
  • 2.安装CentOS
  • 四、Linux目录结构(重要)
  • 1.Linux目录结构概述
  • 2.Linux具体目录结构
  • 五、Linux的远程操作工具
  • 1.什么是Linux远程操作
  • 2.Xshell(安装步骤省略)
  • 3.Xftp(安装步骤省略)
  • 六、vi和vim编辑器
  • 1.vi和vim简介
  • 2.vi和vim三种常见模式
  • 3.vi和vim常用快捷键
  • 七、Linux用户管理
  • 1.Linux用户简介
  • 2.添加用户
  • 3.删除用户
  • 4.查询用户信息
  • 5.切换用户
  • 八、Linux组管理
  • 1.Linux的组简介
  • 2.添加组
  • 3.删除组
  • 4.添加用户时指定组(主组)
  • 5.将用户添加到组
  • 6.将用户从组中移除
  • 九、Linux的系统操作命令
  • 十、Linux实操命令
  • 1.帮助命令
  • 1.1 find命令
  • 1.2 help命令
  • 2.文件目录操作命令
  • 2.1 查看当前目录
  • 2.2 切换目录
  • 2.3 创建目录
  • 2.4 删除目录
  • 2.5 创建文件
  • 2.6 删除文件或目录
  • 2.7 复制文件或目录
  • 2.8 移动文件或目录
  • 2.9 查看文件内容
  • 2.10 分页查看文件内容
  • 2.11 查看文件前十行
  • 2.12 查看文件后十行
  • 2.13 显示系统变量和常量
  • 2.14 尖括号追加命令
  • 3.日期时间指令
  • 3.1 查看或者设置系统的日期或时间
  • 3.2 查看系统日历
  • 4.搜索查找命令
  • 4.1 find命令
  • 4.2 locate命令
  • 4.3 grep命令
  • 5.压缩和解压缩命令
  • 5.1 gzip和gunzip
  • 5.2 zip和unzip
  • 5.3 tar命令
  • 6.文件/目录与组
  • 6.1 文件/目录与组基本介绍
  • 6.2 查看文件的所有者和所在的组
  • 6.3 修改文件/目录的所有者
  • 6.4 修改文件/目录的所在组
  • 7.文件/目录权限管理
  • 7.1 文件/目录的三种权限
  • 7.2 文件/目录的权限控制
  • 7.3 查看文件/目录的权限
  • 7.4 修改文件/目录的权限
  • 7.5 使用数字的方式修改文件/目录的权限
  • 十一、网络配置
  • 1.查看虚拟网络编辑器
  • 2.查看IP和网关
  • 3.配置Linux网络
  • 十二、进程管理
  • 1.什么是进程
  • 2.查看正在运行的进程
  • 3.关闭进程
  • 十三、服务管理
  • 1.服务介绍
  • 2.服务管理指令
  • 十四、Linux软件包管理
  • 1.RPM包管理工具
  • 1.1 RPM介绍
  • 1.2 RPM包的查询指令
  • 1.3 RPM包的卸载指令
  • 1.4 RPM包的安装指令
  • 2.YUM包管理工具
  • 2.1 YUM介绍
  • 2.2 YUM包的查询指令
  • 2.3 YUM包的卸载指令
  • 2.4 YUM包的安装指令
  • 十五、搭建JavaEE运行环境
  • 1.安装JDK
  • 2.安装Tomcat
  • 3.安装MySQL


一、前言

该技术博客是关于动力节点Linux教程的笔记总结,希望能为大家带来帮助!

该技术博客主要是讲解Linux操作系统的使用,在这里不会对Linux相关软件安装有详细赘述,所以关于Linux相关安装可以看我在博客中添加的链接进行自主安装,请大家多多包涵!

二、Linux介绍

1.什么是Linux

linux是一种开源的、免费的操作系统,安装在计算机硬件上、用来管理计算机的硬件和软件资源的系统软件。
linux注重安全性、稳定性、高并发处理能力,没有优异的可视化界面
windows用于个人计算机上,linux用于企业服务器上。

2.Linux主要发行版本

linus在1991年开发了linux操作系统,也就是linux的内核程序,后来很多软件开发组织以及软件公司在内核程序基础之上,陆续推出很多不同版本的linux操作系统:Ubuntu(乌班图)、RedHat(红帽)、CentOS

三、安装Linux操作系统

1.安装虚拟机(VMware)

虚拟机:可以用软件模拟出一套具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统(说白了就是你电脑中的一台虚拟的电脑,这台虚拟的电脑就是虚拟机,可以在虚拟机上安装linux操作系统)


2.安装CentOS

我们有了虚拟机,就可以在虚拟机上安装CentOS,由于CentOS是Linux操作系统的发行版本之一,所以这里的安装CentOS其实也就是安装Linux操作系统


四、Linux目录结构(重要)

1.Linux目录结构概述

Linux可视化界面比较单薄,很少使用;使用linux多数都是基于终端命令使用linux指令(可执行文件) 操作计算机
我们要想学好Linux操作系统,必须明白Linux目录结构,很重要!在Linux世界中:一切皆为目录,所以接下来我们重点学习一下Linux目录结构

Linux没有炫目的可视化操作界面,它的操作大部分都是直接执行命令,而可执行文件都是保存在相应的目录中的,所以我们对linux的操作大多数时候都是查找和执行这些可执行文件的。
linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。

2.Linux具体目录结构

学习java需要学习linux java学linux有什么用_运维

  1. root : 该目录为系统管理员目录,root是具有超级权限的用户。
  2. bin ->usr/bin : 存放系统预装的可执行程序,这里存放的可执行文件可以在系统的任何目录下执行
  3. usr是linux的系统资源目录,里边存放的都是一些系统可执行文件或者系统以来的一些文件库。
  4. usr/local/bin:存放用户自己的可执行文件,同样这里存放的可执行文件可以在系统的任何目录下执行
  5. lib->usr/lib: 这个目录存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件,几乎所有的应用程序都需要用到这些共享库。
  6. boot : 这个目录存放启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
  7. dev: dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,Linux中的设备也是以文件的形式存在。
  8. etc: 这个目录存放所有的系统管理所需要的配置文件
  9. home用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名以用户的账号命名,叫作用户的根目录;用户登录以后,默认打开自己的根目录。
  10. var : 这个目录存放着在不断扩充着的东西,我们习惯将那些经常被修改的文件存放在该目录下,比如运行的各种日志文件。
  11. mnt : 系统提供该目录是为了让用户临时挂载别的文件系统,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容
  12. opt: 这是给linux额外安装软件所存放的目录。比如你安装一个Oracle数据库则就可以放到这个目录下,默认为空。
  13. tmp: 这个目录是用来存放一些临时文件的。

五、Linux的远程操作工具

1.什么是Linux远程操作

在软件公司中,无论是测试服务器还是正式服务器都是部署在公司Linux系统上的,而Linux系统通常是各开发小组共享的,因此程序员需要远程登录到centos进行项目管理或者开发。远程登录客户端有Xshell、Xftp等多种工具 , 我们学习使用Xshell和Xftp , 其它的远程工具大同小异。

2.Xshell(安装步骤省略)

什么是Xshell:

Xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议。它通过互联网到远程系统的安全连接以及它创新性的设计和特色帮助用户在复杂的网络环境中享受他们的工作。
Xshell 是目前最好的远程登录到Linux操作系统的软件,流畅的速度并且完美解决了中文乱码的问题,是目前程序员首选的软件。

Xshell如何连接Linux系统:

  1. 我们打开Xshell后,点击新建
  2. 输入会话属性,建立连接
  3. 关于Linux系统主机号,可以在Centos终端输入命令获取:

3.Xftp(安装步骤省略)

什么是Xftp:

是一个基于windows平台的功能强大的SFTP、FTP文件传输软件。使用了Xftp 以后,windows 用户能安全地在Linux和Windows之间传输文件。

Xftp如何连接Linux系统:

  1. 我们打开Xftp后,点击创建
  2. 输入会话属性,建立连接

六、vi和vim编辑器

1.vi和vim简介

是linux中的文本编辑器,用来在linux中创建、查看、编辑文本文件,就好像windows中的记事本一样。
vim是vi的增强版本,vi的绝大多数用法在vim都适用。

2.vi和vim三种常见模式

使用Xshell连接到Linux操作系统,然后先在命令行输入以下命令:

进入到opt文件夹
cd /opt

创建testDir文件夹
mkdir testDir

进入到testDir文件夹
cd testDir

用vi或者vim命令打开文件(vim test.text)
vi/vim test.text

三种常见模式:

  1. 一般模式:用vi或者vim命令打开文件(vim test.txt),进入了一般模式;可以查看文件的内容,并且可以通过上下左右键移动光标,查看文件某一部分;但是不能编辑文件内容
  2. 编辑模式:在一般模式下,按 i 键或者a键,进入编辑模式;可以编辑文件内容;但是不能保存编辑的内容;按Esc键,可以回到一般模式
  3. 命令行模式:在一般模式下,按shift + : 进入命令行模式;
    输入:
    q!-----不保存强制退出编辑器
    wq-----保存并且退出编辑器
    q------只是退出编辑器

学习java需要学习linux java学linux有什么用_学习java需要学习linux_02

3.vi和vim常用快捷键

  1. 复制当前行:在一般模式下,按yy,把光标所在行复制到剪切板
    按p,把剪切板中的内容粘贴到光标所在的下一行。
  2. 复制当前行往下5行:在一般模式下,按5yy,把光标所在行往下5行复制到剪切板按p,把剪切板中的内容粘贴到光标所在的下一行。
  3. 文本中查找关键字:在命令行模式下,输入/关键字,回车按n表示光标查找下一个关键字
  4. 删除光标所在当前行:在一般模式下,按dd,删除光标所在的当前行
  5. 删除光标所在行往下5行:在一般模式下,按5dd
  6. 撤销上次编辑的内容:在一般模式下,按u
  7. 显示行号:命令行模式下,设置文件的行号,取消文件的行号.[命令行下(: set nu) 和(:set nonu)]

七、Linux用户管理

1.Linux用户简介

任何使用linux的系统资源的用户,必须使用一个合法的账号和密码,账号和密码一般都是向系统管理员申请。
root是linux系统安装时默认创建的系统管理员账号,由root创建普通账号。

2.添加用户

命令:useradd [选项] 用户名
例如:useradd lisi,创建一个用户名为lisi
在/home目录下创建用的根目录,目录名称默认跟用户名相同
在linux中任何一个用户都至少属于一个,新建用户时如果不指定组,则会新建一个组,组名跟用户名相同,并且把该用户添加到该组中。
useradd -d /home/ww wangwu 创建用户的同时,指定用户的根目录
给用户设置密码命令:passwd 用户名
例如:passwd lisi(密码要满足一定的复杂度)

3.删除用户

命令:userdel 用户名
例如:userdel lisi
userdel -r lisi 删除用户的同时级联删除它的主目录

4.查询用户信息

命令:id 用户名
例如:id zhangsan

5.切换用户

命令:su 用户名
例如:su zhangsan
从权限高的用户切换权限低的用户,不需要密码验证;
从权限低的用户切换到权限高的用户,必须密码验证。

八、Linux组管理

1.Linux的组简介

linux中的相当于角色的概念,可以对有共性的用户进行统一管理;
每一个用户至少属于一个组,不能独立于组存在,也可以属于多个组;
新建用户时如果不指定组,则会新建一个组,组名跟用户名相同,并且把该用户添加到该组中。

2.添加组

命令:groupadd 组名
例如:groupadd dev

3.删除组

命令:groupdel 组名
例如:groupdel dev

4.添加用户时指定组(主组)

命令:useradd -g 组名 用户名
例如:useradd -g dev lisi

5.将用户添加到组

命令:gpasswd -a 用户名 组名
例如:gpasswd -a zhangsan dev

6.将用户从组中移除

命令:gpasswd -d 用户名 组名
例如:gpasswd -d zhangsan dev

九、Linux的系统操作命令

shutdown now: 立刻进行关机
shudown -h 1: 1小时后会关机了
shutdown –r now: 现在重新启动计算机
reboot: 现在重新启动计算机
sync: 把内存的数据同步到磁盘.

十、Linux实操命令

1.帮助命令

在使用Linux过程中,如果遇到不熟悉的指令,一个是可以到网络上去查找,另一个是可以使用帮助指令。

1.1 find命令

用来查看linux系统手册上的帮助信息:man 命令
例如:man ls
分屏显示、按回车翻一行、按空格翻一页、按q退出查看。

1.2 help命令

用来查看命名的内置帮助信息:help 命令
例如:help cd

2.文件目录操作命令

2.1 查看当前目录

pwd命令:

查看当前所在目录:pwd

ls命令:

查看指定目录下所有的子目录和文件列表:ls [选项] [指定目录]
例如:ls /home
ls 查看当前目录下所有的子目录和文件列表
ls -l /home :以列表形式显示
ls -a /home:显示指定目录下所有的子目录和文件(包括虚拟的目录)
ls -al /home:以列表形式显示指定目录下所有的子目录和文件(包括虚拟的目录)

2.2 切换目录

切换目录命令:cd 目录名
绝对目录:以盘符开始的目录叫绝对目录,从盘符开始查找目标目录
例如:cd /opt/testDir
~:当前用户的根目录。在任何目录下执行:cd ~,进入当前用户的根目录。

相对目录:以目录名开始的目录叫相对目录,从当前目录开始查找目标目录
例如:cd testDir
… : 当前目录的上一级目录,从的当前目录开始查找它的上一级目录。
. : 当前目录
xxx.sh====>./xxx.sh

2.3 创建目录

创建目录命令:mkdir [选项] 目录名
例如: mkdir /opt/testDir/test1 //在/opt/testDir目录下创建一个目录test1(使用绝对目录)
mkdir test2 //在/opt/testDir目录下创建一个目录test2(使用相对目录)
mkdir -p /opt/testDir/test3/test4 //在/opt/testDir目录下创建目录test3,并且在test3下创建test4(一次创建多级目录)

2.4 删除目录

删除一个空目录命令:rmdir 目录名
例如:rmdir test1

2.5 创建文件

创建一个或者多个空文件命令:touch 文件名列表(文件名之间用空格隔开)
例如:touch t1.txt
touch t2.txt t3.txt t4.txt

2.6 删除文件或目录

删除文件或者目录命令:rm 文件名或者目录名
rm t1.txt 提示删除文件
rm -f t2.txt 强制删除文件
rm -r test2 提示递归删除目录
rm -rf test5 强制递归删除目录

2.7 复制文件或目录

复制文件或者目录命令:cp [选项] source(源) dest(目标)
例如:cp t1.txt test2 // 把t1.txt文件复制到test2目录中
cp -r test2 test5 // 把test2目录(目录中有文件需要加参数-r)复制到test5目录中(递归地复制目录)

2.8 移动文件或目录

移动目录或者文件命令:mv source(源) dest(目标)
例如:mv test.txt test1
mv test1 test2
mv t3.txt t3_new.txt 文件重命名
如果目标中已经存在该文件或者目录,则会提示是否覆盖。

2.9 查看文件内容

查看文件内容命令:cat 文件名
文件内容一次性显示出来。
例如:cat t4.txt
cat -n t4.txt 显示行号

2.10 分页查看文件内容

命令:more 文件名
一次性加载文件所有内容到内存,分页显示,按回车翻一行、按空格翻一页
例如:more t4.txt

命令:less 文件名
分页加载文件所有内容到内存,分页显示,按回车翻一行、按空格翻一页,按q退出查看
例如:less t4.txt

2.11 查看文件前十行

查看文件的头10行命令:head [选项] 文件名
例如:head t4.txt
head -n 5 t4.txt (查看文件前5行)

2.12 查看文件后十行

查看文件的后10行命令:tail [选项] 文件名
例如:tail t4.txt
tail -n 5 t4.txt

2.13 显示系统变量和常量

echo命令:输出系统变量或者常量的值到命令行终端。
例如:echo $JAVA_HOME
echo $PATH
echo Hello World!

2.14 尖括号追加命令

把前一个查看命令的结果输出到指定的文件中: 查看命令 > 文件名
如果目标文件不存在,则新建一个文件
如果目标文件已存在,则把文件以前的内容覆盖
例如:ls > ret.txt
ls -al > ret.txt
cat ret.txt > t3_new.txt 文件内容的复制
cat t4.txt > t3_new.txt

把前一个查看命令的结果追加输出到指定的文件中:查看命令 >> 文件名
如果目标文件不存在,则新建一个文件
如果目标文件已存在,则在文件原来内容的基础上进行追加
例如:ls > ret.txt
ls -al >> ret.txt
cat t4.txt >> ret.txt

3.日期时间指令

3.1 查看或者设置系统的日期或时间

命令:date
date 查看系统当前的完整的日期和时间
date +%Y 系统当前的年份
date +%m 系统当前的月份
date +%d 系统当前的日期
date ‘+%Y-%m-%d %H:%M:%S’ 按yyyy-MM-dd HH:mm:ss格式显示
date -S ‘2020-10-20 10:20:30’ 设置当前的系统时间

3.2 查看系统日历

查看系统日历:cal
cal:查看当前月份的日历
cal 2021:查看指定年份的日历

4.搜索查找命令

4.1 find命令

find [搜索范围][搜索标准] 关键字
|->-name:默认按名称搜索(文件或者目录所在的路径也在搜索范围之内)
|->-size:按文件大小搜索
|->-user:按文件的所有者搜索
find *.txt 搜索当前目录下,所有的.txt文件
find * e * 搜索当前目录下,所有名称中包含e的那些文件或者目录
find /etc *.txt 搜索/etc目录下所有.txt文件
find /etc -size -5k 搜索/etc目录下所有小于5k的文件
find /etc -user zhangsan 搜索/etc目录下所有的所有者是zhangsan的文件和目录

4.2 locate命令

locate:在整棵目录树中搜索文件或者目录,都是根据名称搜索,效率高。
命令:locate 要搜索的文件名
locate指令可以快速在整个系统中定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。locate指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻(更新数据库命令:updatedb)
例如:updatedb
locate *.txt

4.3 grep命令

搜索过滤命令,在前一个搜索命令的结果中进行按名称进一步过滤:
搜索命令 |grep [选项] 过滤条件
例如:find *.txt|grep new 搜索当前目录下,所有名称包含new的.txt文件
find /etc -size -5k|grep firefox
查看命令 |grep [选项] 过滤条件
例如:cat t1.txt|grep beijing
cat t1.txt|grep -ni beijing
ls -al|grep new

5.压缩和解压缩命令

5.1 gzip和gunzip

压缩或者解压单个文件
gzip 文件名:压缩单个文件,生成一个.gz的压缩包,并且会把原来的文件删除。
gunzip .gz压缩包名:解压.gz压缩包,并且会把原来的.gz压缩包删除。
gzip ret.txt
gunzip ret.txt.gz

5.2 zip和unzip

压缩(打包)或者解压多个文件和目录
zip 目标压缩包名称(通常使用.zip压缩包) 文件或者目录列表
unzip 压缩包名(.zip) -d 解压目录名:将指定的.zip压缩包解压到当前目录(或者指定目录)。
zip test.zip ret.txt t1.txt test2
unzip test.zip -d test3
zip mytest.zip test.zip t3_new.txt t4.txt test2

5.3 tar命令

压缩(打包)或者解压多个文件和目录:tar [选项] 目标压缩包名称(xxx.tar.gz) 文件或者目录列表
|->c:打包或者压缩
tar [选项] 压缩包名(xxx.tar.gz) -C 解压目录名:将指定的.tar.gz压缩包解压到当前目录(或者指定目录)
|->x: 解压
tar -zcvf xxx.tar.gz 文件或者目录列表
tar -zxvf xxx.tar.gz -C 解压目录名
tar -zcvf mytar.tar.gz mytest.zip ret.txt t1.txt test2
tar -zxvf mytar.tar.gz -C /opt/testDir/test5

6.文件/目录与组

6.1 文件/目录与组基本介绍

在linux中,每一个用户都至少属于一个组,用户不能独立于组存在,一个用户可以属于多个组。
在linux中,每一个文件或者目录也必须属于一个组,而且只能属于一个组,默认情况下,文件所有者所属的主组就是文件所属的组;
文件或者目录通过组来控制哪些用户可以对它进行哪些操作,即文件或者目录的访问权限;
在文件或者目录看来,linux系统中所有的用户分为三类:
1.所有者:默认情况下,文件或者目录的所有者都是创建者,可以修改
2.同组用户:跟文件或者目录属于同一个组的用户
3.其它组用户:既不是文件或者目录的所有者,也不是同组用户

6.2 查看文件的所有者和所在的组

命令:ls -l

6.3 修改文件/目录的所有者

chown 新的所有者 文件名或者目录名
chown 新的所有者:新的组 文件名或者目录名
chown zhangsan t1.txt
chown -R zhangsan test3
chown zhangsan:dev t4.txt
chown zhangsan:dev test2
chown -R zhangsan:dev test2 递归修改目录的所有者和所在的组

6.4 修改文件/目录的所在组

chgrp 新的组 文件名或者目录名
chgrp dev t2.txt
chgrp -R dev test3

7.文件/目录权限管理

7.1 文件/目录的三种权限

在linux中,任何文件或者目录都有三种权限:读(Read)、写(Write)、执行(Execute)
对于文件而言:
读:可以读取、查看文件的内容, 比如:cat、more、less、head、tail等。
写:可以修改文件的内容,比如:vi或者vim等
执行:如果该文件是可执行文件(.sh),可以直接运行,比如:./xxx.sh。
对于目录而言:
读:可以读取、查看目录下边的内容,比如:ls等
写:可以修改目录中的内容,创建子目录、删除子目录、创建文件、删除文件、重名文件或者目录
执行:可以进入该目录, 比如:cd等。

7.2 文件/目录的权限控制

在linux中,任何一个文件或者目录都有三部分权限:所有者权限、同组用户权限、其它组用户权限。
第一部分权限:所有者权限,文件或者目录的所有者对该文件所拥有的权限,使用r、w、x分表表示读、写、执行的权限。比如:rwx:拥有读写执行的权限,r-x:拥有读和执行的权限,r–:只拥有读的权限,—:没有任何权限。
第二部分权限:同组用户权限,文件或者目录的同组用户对该文件所拥有的权限,使用r、w、x分表表示读、写、执行的权限。
第三部分权限:其它组用户权限,文件或者目录的其它组用户对该文件所拥有的权限,使用r、w、x分表表示读、写、执行的权限。

7.3 查看文件/目录的权限

命令:ls -aul

7.4 修改文件/目录的权限

chmod命令
用r、w、x分辨表示读、写、执行的权限,
用u、g、o、a分别表示给所有者、同组用户、其它组用户、所有用户修改权限
用+、-、=分别表示给指定的用户增加、减少、设置对应的权限
chmod g-w,o+w t5.txt
chmod g=rwx t5.txt
chmod a-r t5.txt

7.5 使用数字的方式修改文件/目录的权限

每一个权限可以用一个数字来表示:
r、w、x
4、2、1
2^2、 2^1、 2^0
每一个文件或者目录都有三部分权限,每一部分权限都可以用一组数据之和来表示,三部分权限就是一组三个数据序列:
rw- r-x r-x
655
rwx r-x -wx
753
rwxrwxrwx
777
chmod 777 t5.txt
chmod 753 t5.txt

十一、网络配置

1.查看虚拟网络编辑器

学习java需要学习linux java学linux有什么用_运维_03

2.查看IP和网关

IP:

学习java需要学习linux java学linux有什么用_运维_04


网关:

学习java需要学习linux java学linux有什么用_centos_05

3.配置Linux网络

在linux的配置文件: vi /etc/sysconfig/network-scripts/ifcfg-ens33

学习java需要学习linux java学linux有什么用_centos_06


重启linux:reboot

十二、进程管理

1.什么是进程

在Linux中,每个执行的程序(代码)都称为一个进程。每一个进程都分配一个ID号。每一个进程,都会对应一个父进程。
进程有两种运行方式:前台和后台。前台方式是目前用户可以在前台操作的,后台方式是实际在运行,但用户在前台看不见。
一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关机才结束。

2.查看正在运行的进程

ps //只会显示应用进程
ps -e //显示所有进程
ps -ef //以全格式的形式显示所有进程,用于查看linux系统中某一些软件或者应用是否处于启动状态
ps -ef|grep mysql

3.关闭进程

使用ps命令查看进程的PID
使用命令kill -9 PID

十三、服务管理

1.服务介绍

服务是支持Linux运行的一些必要程序,本质上也是进程,叫守护进程。守护进程通常默默地运行在后台,为应用程序提供必要支撑,比如sshd、防火墙等。

2.服务管理指令

systemctl [start|stop|restart|reload|status|enable] 服务名称
systemctl status firewalld 查看防火墙运行状态
systemctl stop firewalld 关闭防火墙
systemctl start firetalld 开启防火墙
systemctl enable firewalld 设置防火墙开机启动
注意:老版的linux或者有些发行版本的linux,操作服务使用service命令。

十四、Linux软件包管理

1.RPM包管理工具

1.1 RPM介绍

一种LInux的软件包的打包和安装工具,它操作的软件包都是.rpm结尾。

1.2 RPM包的查询指令

查看当前系统中已经安装的rpm软件包:rpm命令
rpm -qa|grep firefox

1.3 RPM包的卸载指令

卸载rpm软件包:
rpm -e firefox

1.4 RPM包的安装指令

安装rpm包:
rpm -ivh xxx.rpm
cp firefox-45.4.0-1.el7.centos.x86_64.rpm /opt
rpm -ivh firefox-45.4.0-1.el7.centos.x86_64.rpm

2.YUM包管理工具

2.1 YUM介绍

是一种基于RPM的软件包管理工具,它能够从指定服务器上自动下载RPM包并且自动安装,可以自动处理软件包之间的依赖关系。

2.2 YUM包的查询指令

查看当前系统中已经安装的rpm软件包:
yum list installed|grep firefox

2.3 YUM包的卸载指令

卸载rpm软件包:
yum remove firefox.x86_64

2.4 YUM包的安装指令

安装rpm包:
yum install firefox

十五、搭建JavaEE运行环境

1.安装JDK

第一步:先将软件通过xftp5 上传到/opt 下

学习java需要学习linux java学linux有什么用_运维_07


第二步:解压缩到/opt目录下

学习java需要学习linux java学linux有什么用_运维_08


第三步:配置环境变量的配置文件vim /etc/profile

JAVA_HOME=/opt/jdk1.7.0_79
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/lib:.
export JAVA_HOME PATH CLASSPATH

第四步:使配置文件生效

学习java需要学习linux java学linux有什么用_centos_09


第五步:测试安装成功

学习java需要学习linux java学linux有什么用_学习java需要学习linux_10

2.安装Tomcat

第一步:先将软件通过xftp5 上传到/opt 下

学习java需要学习linux java学linux有什么用_学习java需要学习linux_11


第二步:解压到/opt

学习java需要学习linux java学linux有什么用_rpm_12


第三步:启动tomcat

学习java需要学习linux java学linux有什么用_学习java需要学习linux_13


第四步:Linux上访问tomcat

学习java需要学习linux java学linux有什么用_rpm_14


第五步:Windows上访问tomcat

学习java需要学习linux java学linux有什么用_运维_15


注意:从其它机器上访问需要关闭linux的防火墙。

3.安装MySQL

第一步:查看是否已经安装了mariadb

检查linux是否安装了mariadb数据库,mariadb数据库是mysql的分支。是免费开源的。mariadb和msyql会有冲突。首先要检查安装了mariadb, 卸载掉。
检查命令:yum list installed | grep mariadb
卸载命令:yum –y remove xxxx
注意:如果卸载不成功,需要去掉参数-y,手动确认卸载。

学习java需要学习linux java学linux有什么用_linux_16

第二步:上传mysql安装包到/opt下

学习java需要学习linux java学linux有什么用_centos_17


第三步:解压mysql安装包到目录/opt

学习java需要学习linux java学linux有什么用_centos_18


第四步:修改解压后的根目录名

学习java需要学习linux java学linux有什么用_linux_19


第五步:创建数据文件夹data

data文件夹是mysql用来存放数据库文件的,数据库的表数据都放在data目录。
默认没有data目录,可以手工创建data目录,在mysql-5.7.18文件夹目录下创建一个data文件夹。

学习java需要学习linux java学linux有什么用_linux_20

第六步:创建用来执行mysqld命令的Linux用户

创建mysql用户,用来执行MySQL的命令mysqld ,此命令用来初始化msyql基础信息。可以使用其他用户,例如叫做 mydb.等,但不推荐。

学习java需要学习linux java学linux有什么用_学习java需要学习linux_21

第七步:初始化mysql

使用mysql的 mysqld 命令初始化数据库的基本信息。切换到mysql-5.7.18/bin目录下执行。
命令:./mysqld --initialize --user=mysql --datadir=/opt/mysql-5.7.18/data --basedir=/opt/mysql-5.7.18

参数说明:
–initialize 初始化mysql,创建mysql的root, 随机生成密码。记住密码,登录msyql使用。
–user执行msyqld 命令的linux用户名
–datadir : mysql数据文件的存放位置,目录位置参照本机的设置。
–basedir : msyql安装程序的目录,目录位置参照本机的设置。
该命令执行后,会生成一个临时的mysql数据库root用户的密码,请先拷贝出来记住,后续第一次登录mysql需要使用

学习java需要学习linux java学linux有什么用_rpm_22


密码:iGT#A:CfF7i(

第八步:启用安全功能

在服务器与客户机之间来回传输的所有数据进行加密。通过证书提供了身份验证机制,mysql命令程序mysql_ssl_rsa_setup提供了开启数据加密功能,生成数字证书。
在mysql-5.7.18/bin目录下执行命令:
./mysql_ssl_rsa_setup --datadir=/opt/mysql-5.7.18/data

学习java需要学习linux java学linux有什么用_linux_23

第九步:修改mysql安装目录权限

mysql安装后,需要更改mysql-5.7.18整个文件夹目录权限,更改所属的用户和组为之前创建的mysql用户及其所在组。在mysql安装目录的上级(/opt)位置,执行命令chown .
例如:chown -R mysql:mysql /opt/mysql-5.7.18/
chmod 777 /opt/mysql-5.7.18/

学习java需要学习linux java学linux有什么用_运维_24

第十步:启动mysql

启动MySQL服务,mysql-5.7.18/bin目录下执行命令:./mysqld_safe &(其中&符号表示后台启动),输入命令后按Enter。

学习java需要学习linux java学linux有什么用_linux_25


确认mysql是否启动,查看进程 ,使用ps -ef | grep mysql


学习java需要学习linux java学linux有什么用_rpm_26

第十一步:客户端登录mysql

登录进入mysql,mysql-5.7.18/bin目录下执行命令:./mysql -uroot -p
-u表示使用root用户登录系统,使用第7步生成的密码。
-p表示使用密码登录

学习java需要学习linux java学linux有什么用_rpm_27

第十一步:修改root密码

第8步的root用户密码是临时密码,要修改才能使用。
执行sql语句 show databases; 第一次使用将会提示修改mysql的root用户密码:

学习java需要学习linux java学linux有什么用_运维_28


修改mysql的密码,命令语法:alter user ‘用户名’@‘主机域名或ip’ identified by ‘新密码’


例如:alter user ‘root’@‘localhost’ identified by ‘yf123’;


学习java需要学习linux java学linux有什么用_linux_29

第十二步:授权远程访问

授权远程访问,在没有授权之前只能在本机访问msyql,远程授权就是让其他计算机通过网络访问mysql(这样远程客户端才能访问)。
授权命令:grant
语法:grant all privileges on . to root@’%’ identified by ‘yf123’;

参数:
其中*.* 的第一个表示所有数据库名,第二个表示所有的数据库表;
root@’%’ 中的root表示用户名,%表示ip地址,%也可以指定具体的ip地址,比如root@localhost,root@192.168.235.130等。
执行授权命令:grant all privileges on . to root@’%’ identified by ‘yf123’;

学习java需要学习linux java学linux有什么用_linux_30


更新权限信息,执行flush刷新权限: flush privileges;


学习java需要学习linux java学linux有什么用_rpm_31


关闭防火墙:systemctl stop firewalld


学习java需要学习linux java学linux有什么用_centos_32


远程连接数据库:


学习java需要学习linux java学linux有什么用_linux_33

第十三步:关闭mysql服务

mysql-5.7.18/bin目录下执行:./mysqladmin -uroot -p shutdown输入密码关闭

学习java需要学习linux java学linux有什么用_linux_34


查看mysql进程,已经没有mysqld_safe


学习java需要学习linux java学linux有什么用_centos_35

第十四步:修改数据库编码

查看数据库编码:show variables where Variable_name like ‘%char%’;
修改mysql的字符集:在mysql客户端执行如下命令:
set character_set_client=utf8;
set character_set_connection=utf8;
set character_set_database=utf8;
set character_set_results=utf8;
set character_set_server=utf8;
set character_set_system=utf8;
set collation_connection=utf8;
set collation_database=utf8;
set collation_server=utf8;