1.Linunx的基础操作和命令

CentOs6的都可以 使用 init 3 进入命令界面 init 5 进入图形界面

CentOs7就没用安装图形界面的功能,需要自己安装图形界面!

CentOs7 如果需要修改IP 如下:

cat /etc/issue 查看系统版本

centos8查看出口ip centos8怎么查看ip_递归

ip addr   查看网卡 名称

centos8查看出口ip centos8怎么查看ip_当前目录_02

1.打开配置文件
输入下面命令,打开目录进入文件夹。

cd /etc/sysconfig/network-scripts/

使用  ls  查看列表

centos8查看出口ip centos8怎么查看ip_java_03

 编辑

vim ifcfg-Auto_eth2

 进入后按 esc 后 按 i 编辑, 编辑好后,  按esc 后 按 :wq 保存

1.场景1----以下是正在使用的 以dhcp模式的自动获取IP的方式所有,文件中没用静态固定ip

centos8查看出口ip centos8怎么查看ip_java_04

2.场景2=-----可以自己设定IP----  esc-i-输入进入ip等等 -esc-:wq 保存

centos8查看出口ip centos8怎么查看ip_文件名_05

然后 刷新网络

service network restart

 

centos8查看出口ip centos8怎么查看ip_当前目录_06

 修改完成!

: 如果是 CentOs7或者8的话 一般网卡都是 eth33 相同的地址进去就是修改更方便

cd /etc/sysconfig/network-scripts/
vim ifcfg-ens33

centos8查看出口ip centos8怎么查看ip_centos8查看出口ip_07

Linux常用命令:  

临时关闭防火墙  Service iptables stop   (关闭后就生效)
临时开启防火墙  Service iptables start

永久关闭防火墙	chkconfig iptables off   (需要重启才能生效,不想重启就要先执行临时关闭命令)
永久开启防火墙  chkconfig iptables on


2.7Linux命令
2.7.1cd命令集
ifconfig  检查IP地址
cd命令是linux中最基本的命令语句,必须熟练掌握
cd / 返回根目录
cd ~ 用户主目录   cd /root  与 cd 的效果一致.
cd . 当前目录
cd ..返回到上一级目录
cd /usr/ 进入到usr目录
cd – 返回上一个目录
cd 直接回家
pwd  检查当前目录结构
2.7.2ls目录和文件
ls –l 详细格式,文件权限,时间
ll 和ls –l作用相同
ls *.txt 查看所有的txt类型文档
2.7.3目录操作
mkdir 创建目录
mkdir a 创建 a目录
mkdir -p a/b 创建 a目录,并在a目录里创建b目录
mkdir -m 777 c 创建一个权限为777的C目录
rmdir  删除目录(如果目录里有文件,则不能用此命令)

2.7.4VI/VIM创建/查看/编辑文件
命令行:Esc切换到命令行模式。 然后 shift+:冒号 输入wq或q! 退出等等
编辑模式:
按i,在光标前开始编辑
按a,在光标后开始编辑
按o,在当前行的下一行开始编辑
底行模式:按  shift+:冒号。

撤销回退命令:
shift+:冒号 + u   撤销上一步的操作
Ctrl+r 恢复上一步被撤销的操作

:q! 不保存退出
:wq 保存退出
:/world 从当前光标处,向上查找world关键字
:?world 从当前光标处,向后查找world关键字

:set nu  显示查看行号
:%s/7000/7001/g   修改 vim 查看的文件中的 所有7000修改成7001


2.7.5删除文件
rm 删除文件
rm n.txt 提示y删除n放弃
rm –f n.txt 不提示
rm –rf dirname 不提示递归删除目录下所以内容
rm –rf * 删除所有文件
rm –rf /* 删除所有子目录所有和文件   慎用
2.7.6复制和移动文件
cp复制文件
cp nginx.conf n.txt
cp –R tomcat1 tomcat2                #复制整个目录
mv 修改文件名,移动文件
mv n.txt m.txt

2.7.7浏览文件
cat 输出文件所有的内容
more 输出文档所有的内容,分页输出,空格浏览下一屏,q退出
less 用法和more相同,只是通过PgUp、PgOn键来控制
tail 用于显示文件后几号,使用频繁
tail -10 nginx.conf 查看nginx.conf的最后10行
tail –f nginx.conf 动态查看日志,方便查看日志新增的信息
ctrl+c 结束查看


2.7.8打包命令
tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成name.tar.gz的文件。
-c 创建一个新的tar文件
-v 显示运行过程的信息
-f 指定文件名
-z 调用gzip压缩命令进行压缩
-t 查看压缩文件的内容
-x 解开tar文件
tar –cvf n.tar ./*   压缩当前目录下的所有文件和目录,文件名为n.tar
tar –xvf n.tar 解压压缩包中的文件到当前目录(如果长时间未解压成功 Ctrl+C退出)
tar –cvzf m.tar ./* 解压m.tar文件到当前目录
tar -zxvf jdk.tat.gz  /* 解压m.tar文件到当前目录

2.7.9 grep命令 查询命令
grep root  /etc/passwd   在文件中查找关键字root
grep root  /etc/passwd  –-color         高亮显示
grep root  /etc/passwd  –A5 –B5         高亮显示,A后5行,B前5行
grep -n root /etc/passwd  查找并显示行数
grep -v root /etc/passwd   取反,查出不含root的数据

查询进程 ps -ef | grep redis 查询启动的redis所有进程
终止进程 kill -9 PID   关闭查询出来的进程的PID

2.7.10find命令
find [PATH] [option] [action]

# 与时间有关的参数:
-mtime n : n为数字,意思为在n天之前的“一天内”被更改过的文件;
-mtime +n : 列出在n天之前(不含n天本身)被更改过的文件名;
-mtime -n : 列出在n天之内(含n天本身)被更改过的文件名;
-newer file : 列出比file还要新的文件名
# 例如:
find /root -mtime 0 # 在当前目录下查找今天之内有改动的文件

# 与用户或用户组名有关的参数:
-user name : 列出文件所有者为name的文件
-group name : 列出文件所属用户组为name的文件
-uid n : 列出文件所有者为用户ID为n的文件
-gid n : 列出文件所属用户组为用户组ID为n的文件
# 例如:
find /home/hadoop -user hadoop # 在目录/home/hadoop中找出所有者为hadoop的文件

# 与文件权限及名称有关的参数:
-name filename :找出文件名为filename的文件
-size [+-]SIZE :找出比SIZE还要大(+)或小(-)的文件
-tpye TYPE :查找文件的类型为TYPE的文件,TYPE的值主要有:一般文件(f)、设备文件(b、c)、
             目录(d)、连接文件(l)、socket(s)、FIFO管道文件(p);
-perm mode :查找文件权限刚好等于mode的文件,mode用数字表示,如0755;
-perm -mode :查找文件权限必须要全部包括mode权限的文件,mode用数字表示
-perm +mode :查找文件权限包含任一mode的权限的文件,mode用数字表示
# 例如:
find / -name passwd # 查找文件名为passwd的文件
find . -perm 0755 # 查找当前目录中文件权限的0755的文件
find . -size +12k # 查找当前目录中大于12KB的文件,注意c表示byte
2.7.11KILL
kill -signal PID
1:SIGHUP,启动被终止的进程
2:SIGINT,相当于输入ctrl+c,中断一个程序的进行
9:SIGKILL,强制中断一个进程的进行
15:SIGTERM,以正常的结束进程方式来终止进程
17:SIGSTOP,相当于输入ctrl+z,暂停一个进程的进行
2.7.12free 命令
free 命令用于显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer
free [参数]
-b  以Byte为单位显示内存使用情况。 
-k  以KB为单位显示内存使用情况。 
-m  以MB为单位显示内存使用情况。
-g   以GB为单位显示内存使用情况。 
-o  不显示缓冲区调节列。 
-s<间隔秒数>  持续观察内存使用状况。 
-t  显示内存总和列。 
-V  显示版本信息。
2.7.13top命令
top 命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器:
top [参数]
-b 批处理
-c 显示完整的治命令
-I 忽略失效过程
-s 保密模式
-S 累积模式
-i<时间> 设置间隔时间
-u<用户名> 指定用户名
-p<进程号> 指定进程
-n<次数> 循环显示的次数
2.7.14chmod命令
chmod [-R] xyz 文件或目录
-R:进行递归的持续更改,即连同子目录下的所有文件都会更改
#同时,chmod还可以使用u(user)、g(group)、o(other)、a(all)和+(加入)、-(删除)、=(设置)跟rwx搭配来对文件的权限进行更改,编号是各种权限的数字代码,示例:
chmod 0755 file # 把file的文件权限改变为-rxwr-xr-x
chmod g+w file # 向file的文件权限中加入用户组可写权限
2.7.15wget 命令
wget 是从远程下载的工具:
wget [参数] [URL地址]
启动参数:
-V, –version 显示wget的版本后退出
-h, –help 打印语法帮助
-b, –background 启动后转入后台执行
-e, –execute=COMMAND 执行`.wgetrc’格式的命令,wgetrc格式参见/etc/wgetrc或~/.wgetrc

记录和输入文件参数:
-o, –output-file=FILE 把记录写到FILE文件中
-a, –append-output=FILE 把记录追加到FILE文件中
-d, –debug 打印调试输出
-q, –quiet 安静模式(没有输出)
-v, –verbose 冗长模式(这是缺省设置)
-nv, –non-verbose 关掉冗长模式,但不是安静模式
-i, –input-file=FILE 下载在FILE文件中出现的URLs
-F, –force-html 把输入文件当作HTML格式文件对待
-B, –base=URL 将URL作为在-F -i参数指定的文件中出现的相对链接的前缀
–sslcertfile=FILE 可选客户端证书
–sslcertkey=KEYFILE 可选客户端证书的KEYFILE
–egd-file=FILE 指定EGD socket的文件名

下载参数:
–bind-address=ADDRESS 指定本地使用地址(主机名或IP,当本地有多个IP或名字时使用)
-t, –tries=NUMBER 设定最大尝试链接次数(0 表示无限制).
-O –output-document=FILE 把文档写到FILE文件中
-nc, –no-clobber 不要覆盖存在的文件或使用.#前缀
-c, –continue 接着下载没下载完的文件
–progress=TYPE 设定进程条标记
-N, –timestamping 不要重新下载文件除非比本地文件新
-S, –server-response 打印服务器的回应
–spider 不下载任何东西
-T, –timeout=SECONDS 设定响应超时的秒数
-w, –wait=SECONDS 两次尝试之间间隔SECONDS秒
–waitretry=SECONDS 在重新链接之间等待1…SECONDS秒
–random-wait 在下载之间等待0…2*WAIT秒
-Y, –proxy=on/off 打开或关闭代理
-Q, –quota=NUMBER 设置下载的容量限制
–limit-rate=RATE 限定下载输率

目录参数:
-nd –no-directories 不创建目录
-x, –force-directories 强制创建目录
-nH, –no-host-directories 不创建主机目录
-P, –directory-prefix=PREFIX 将文件保存到目录 PREFIX/…
–cut-dirs=NUMBER 忽略 NUMBER层远程目录

HTTP 选项参数:
–http-user=USER 设定HTTP用户名为 USER.
–http-passwd=PASS 设定http密码为 PASS
-C, –cache=on/off 允许/不允许服务器端的数据缓存 (一般情况下允许)
-E, –html-extension 将所有text/html文档以.html扩展名保存
–ignore-length 忽略 `Content-Length’头域
–header=STRING 在headers中插入字符串 STRING
–proxy-user=USER 设定代理的用户名为 USER
–proxy-passwd=PASS 设定代理的密码为 PASS
–referer=URL 在HTTP请求中包含 `Referer: URL’头
-s, –save-headers 保存HTTP头到文件
-U, –user-agent=AGENT 设定代理的名称为 AGENT而不是 Wget/VERSION
–no-http-keep-alive 关闭 HTTP活动链接 (永远链接)
–cookies=off 不使用 cookies
–load-cookies=FILE 在开始会话前从文件 FILE中加载cookie
–save-cookies=FILE 在会话结束后将 cookies保存到 FILE文件中

FTP 选项参数:
-nr, –dont-remove-listing 不移走 `.listing’文件
-g, –glob=on/off 打开或关闭文件名的 globbing机制
–passive-ftp 使用被动传输模式 (缺省值).
–active-ftp 使用主动传输模式
–retr-symlinks 在递归的时候,将链接指向文件(而不是目录)

递归下载参数:
-r, –recursive 递归下载--慎用!
-l, –level=NUMBER 最大递归深度 (inf 或 0 代表无穷)
–delete-after 在现在完毕后局部删除文件
-k, –convert-links 转换非相对链接为相对链接
-K, –backup-converted 在转换文件X之前,将之备份为 X.orig
-m, –mirror 等价于 -r -N -l inf -nr
-p, –page-requisites 下载显示HTML文件的所有图片

递归下载中的包含和不包含(accept/reject):
-A, –accept=LIST 分号分隔的被接受扩展名的列表
-R, –reject=LIST 分号分隔的不被接受的扩展名的列表
-D, –domains=LIST 分号分隔的被接受域的列表
–exclude-domains=LIST 分号分隔的不被接受的域的列表
–follow-ftp 跟踪HTML文档中的FTP链接
–follow-tags=LIST 分号分隔的被跟踪的HTML标签的列表
-G, –ignore-tags=LIST 分号分隔的被忽略的HTML标签的列表
-H, –span-hosts 当递归时转到外部主机
-L, –relative 仅仅跟踪相对链接
-I, –include-directories=LIST 允许目录的列表
-X, –exclude-directories=LIST 不被包含目录的列表
-np, –no-parent 不要追溯到父目录
wget -S –spider url 不下载只显示过程
2.7.16whereis 命令
whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和locate时,会从数据库中查找数据,而不是像find命令那样,通过遍历硬盘来查找,效率自然会很高。 但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们在用whereis和locate 查找文件时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新。
whereis [-bmsu] [BMS 目录名 -f ] 文件名

 -b 定位可执行文件。
 -m   定位帮助文件。
 -s   定位源代码文件。
 -u   搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。
 -B   指定搜索可执行文件的路径。
 -M   指定搜索帮助文件的路径。
 -S   指定搜索源代码文件的路径。
2.7.17date 命令
date 命令用于显示或设定时间:
date [参数]... [+格式]

必要参数:
%H 小时(以00-23来表示)。 
%I 小时(以01-12来表示)。 
%K 小时(以0-23来表示)。 
%l 小时(以0-12来表示)。 
%M 分钟(以00-59来表示)。 
%P AM或PM。 
%r 时间(含时分秒,小时以12小时AM/PM来表示)。 
%s 总秒数。起算时间为1970-01-01 00:00:00 UTC。 
%S 秒(以本地的惯用法来表示)。 
%T 时间(含时分秒,小时以24小时制来表示)。 
%X 时间(以本地的惯用法来表示)。 
%Z 市区。 
%a 星期的缩写。 
%A 星期的完整名称。 
%b 月份英文名的缩写。 
%B 月份的完整英文名称。 
%c 日期与时间。只输入date指令也会显示同样的结果。 
%d 日期(以01-31来表示)。 
%D 日期(含年月日)。 
%j 该年中的第几天。 
%m 月份(以01-12来表示)。 
%U 该年中的周数。 
%w 该周的天数,0代表周日,1代表周一,异词类推。 
%x 日期(以本地的惯用法来表示)。 
%y 年份(以00-99来表示)。 
%Y 年份(以四位数来表示)。 
%n 在显示时,插入新的一行。 
%t 在显示时,插入tab。 
MM 月份(必要) 
DD 日期(必要) 
hh 小时(必要) 
mm 分钟(必要)
ss 秒(选择性) 

选择参数:
-d<字符串>  显示字符串所指的日期与时间。字符串前后必须加上双引号。 
-s<字符串>  根据字符串来设置日期与时间。字符串前后必须加上双引号。 
-u  显示GMT。



在Linux中安装 JDK1.8 , 首选把 JDK1.8包解压到文件夹中

1.首选切换到根目录  
	cd / 
2.然后修改 vim /etc/profile 最后81到84行 的路径 
 81 JAVA_HOME=/usr/local/src/jdk1.8
 82 JAVA_BIN=/usr/local/src/jdk1.8/bin
 83 PATH=$JAVA_HOME/bin:$PATH
 84 CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
 85 export JAVA_HOME JAVA_BIN PATH CLASSPATH
					 
3.然后在加载修改	source /etc/profile 


tar 解压 压缩的说明 

-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。

-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出

下面的参数-f是必须的

-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。

# tar -cf all.tar *.jpg
这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。

# tar -rf all.tar *.gif
这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。

# tar -uf all.tar logo.gif
这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。

# tar -tf all.tar
这条命令是列出all.tar包中所有文件,-t是列出文件的意思

# tar -xf all.tar
这条命令是解出all.tar包中所有文件,-t是解开的意思

压缩

tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg 

tar -czf jpg.tar.gz *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz

 tar -cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2

tar -cZf jpg.tar.Z *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z

rar a jpg.rar *.jpg //rar格式的压缩,需要先下载rar for linux

zip jpg.zip *.jpg //zip格式的压缩,需要先下载zip for linux

解压

tar -xvf file.tar //解压 tar包

tar -xzvf file.tar.gz //解压tar.gz

tar -xjvf file.tar.bz2   //解压 tar.bz2

tar -xZvf file.tar.Z   //解压tar.Z

unrar e file.rar //解压rar

unzip file.zip //解压zip

总结

1、*.tar 用 tar -xvf 解压

2、*.gz 用 gzip -d或者gunzip 解压

3、*.tar.gz和*.tgz 用 tar -xzf 解压

4、*.bz2 用 bzip2 -d或者用bunzip2 解压

5、*.tar.bz2用tar -xjf 解压

6、*.Z 用 uncompress 解压

7、*.tar.Z 用tar -xZf 解压

8、*.rar 用 unrar e解压

9、*.zip 用 unzip 解压

 

解压jdk到指定文件夹:

tar -xzvf jdk-8u131-linux-x64.tar.gz -C /usr/local/java

centos8查看出口ip centos8怎么查看ip_文件名_08

 2: 服务器配置 JDK 环境

1. 下载JDK环境包

链接:https://pan.baidu.com/s/1ws9QxmNGffhdEyQNVNlivw 
提取码:kiws 
--来自百度网盘超级会员V6的分享
  1. 解压JDK文件
命令: tar -xvf jdk-7u51-linux-x64.tar.gz
  1. 配置环境变量

说明:修改Linux系统中环境变量需要修改/etc/profile文件

临时关闭防火墙    service iptables stop  

临时开启防火墙    service iptables start

永久关闭防火墙 chkconfig iptables off  

永久开启防火墙   chkconfig iptables on

vim /etc/profile    进入配置文件配置

centos8查看出口ip centos8怎么查看ip_当前目录_09

按 PageDown 和 Page Up 上下页翻 修改完后保存

#set java env
JAVA_HOME=/usr/src/java/jdk1.8.0_51
JAVA_BIN=/usr/src/java/jdk1.8.0_51/bin
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH

复制路径 

centos8查看出口ip centos8怎么查看ip_centos8查看出口ip_10

centos8查看出口ip centos8怎么查看ip_centos8查看出口ip_11

 环境变量生效:

source /etc/profile
  1. 检测JDK是否生效
命令:java -version

如图-18所示

 

centos8查看出口ip centos8怎么查看ip_java_12

 3.Linux中安装 Mysql数据库

1.先下载mysql数据库 包文件

链接:https://pan.baidu.com/s/15Q6CLG-lfImg_WgsVDTYLw 
提取码:hpcw 
--来自百度网盘超级会员V6的分享

2.传到 mysql目录下

centos8查看出口ip centos8怎么查看ip_java_13

3.解压数据文件包- 这里因为是 tar包格式的所以使用的是  -xvf 不使用 -zxvf(是解压tar.gz包的) 

centos8查看出口ip centos8怎么查看ip_当前目录_14

4.windows中的安装文件是 exe格式的, 但是linux的安装文件都是 rpm格式的

删除 安装包

centos8查看出口ip centos8怎么查看ip_文件名_15

5.然后按顺序运行 rpm文件

1.56-debuginfo

2. Shared

3. Client

4. Server

如命令:

  1. rpm -ivh Percona-Server-56-debugi....rpm
  2. rpm -ivh Percona-Server-shared...rpm
  3. rpm -ivh Percona-Server-client...rpm

.......

centos8查看出口ip centos8怎么查看ip_当前目录_16

6.启动Mysql数据库

6.1 启动mysql命令:  service mysql start

   6.2 重启mysql命令:  service mysql restart

   6.2 停止mysql命令:  service mysql stop

启动后如下: 

centos8查看出口ip centos8怎么查看ip_centos8查看出口ip_17

可以 mysql -u -p 进去数据库

因为还没用设置密码

mysqladmin -u root password root

然后再 mysql -u root -p root 进入

如果要使用 数据库连接软件必须要给数据库 增加权限:

grant [权限] on [数据库名].[表名] to ['用户名']@['web服务器的ip地址'] identified by ['密码'];

grant all on *.* to 'root'@'%' identified by 'root'

或者指定IP: grant all on *.* to 'root'@'192.168.1.100' identified by 'root'

4.修改数据库密码的一种万能方法:

在linux系统中先 关闭数据库服务:  

6.1 启动mysql命令:  service mysql start

6.2 重启mysql命令:  service mysql restart

6.2 停止mysql命令:  service mysql stop

关闭后  输入:  

第二步:跳过Mysql密码验证

进入命令提示符(管理员登陆)操作,进入mysql目录中bin文件夹下,mysql8.0与其他版本不同的地方在于无法直接使用

mysqld --skip-grant-tables                      来跳过密码登录(8.0以下版本)

mysqld -console --skip-grant-tables --shared-memory来跳过权限验证。

centos8查看出口ip centos8怎么查看ip_当前目录_18

复制这个密码给 粘贴到 mysql库中的 user表中去进去;

 

centos8查看出口ip centos8怎么查看ip_java_19