Linux服务器运维常用命令总结

1、ip addr   查看本机IP地址

Windows上查看IP地址是ipconfig, Linux上是ifconfig,但是Linux上还有一个命令叫ip addr可以查看IP地址。

2、service network restart  重启网卡

3、wget命令  下载文件的工具

wget是Linux中的一个下载文件的工具,wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上。

它用在命令行下。对于Linux用户是必不可少的工具,尤其对于网络管理员,经常要下载一些软件或从远程服务器恢复备份到本地服务器。如果我们使用虚拟主机,处理这样的事务我们只能先从远程服务器下载到我们电脑磁盘,然后再用ftp工具上传到服务器。这样既浪费时间又浪费精力,那不没办法的事。而到了Linux VPS,它则可以直接下载到服务器而不用经过上传这一步。wget工具体积小但功能完善,它支持断点下载功能,同时支持FTP和HTTP下载方式,支持代理服务器和设置起来方便简单。下面我们以实例的形式说明怎么使用wget。

参考链接:wget命令详解

4、rpm -q centos-release  查看centos系统版本

rpm命令是RPM软件包的管理工具。RPM(Red Hat Package Manager)原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM套件管理方式的出现,让Linux易于安装、升级、删除和查询软件信息,间接提升了Linux的适用度。

rpm常见命令参数:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

 用法: rpm [选项...]

-a:查询所有套件;

-b<完成阶段><套件档>+或-t <完成阶段><套件档>+:设置包装套件的完成阶段,并指定套件档的文件名称;

-c:只列出组态配置文件,本参数需配合"-l"参数使用;

- d:只列出文本文件,本参数需配合"-l"参数使用;

-e<套件档>或--erase<套件档>:删除指定的套件;

-f<文件>+:查询拥有指定文件的套件;

-h或--hash:套件安装时列出标记;

-i:显示套件的相关信息;

-i<套件档>或--install<套件档>:安装指定的套件档;

-l:显示套件的文件列表;

-p<套件档>+:查询指定的RPM套件档;

-q:使用询问模式,当遇到任何问题时,rpm指令会先询问用户;

-R:显示套件的关联性信息;

-s:显示文件状态,本参数需配合"-l"参数使用;

-U<套件档>或--upgrade<套件档>:升级指定的套件档;

-v:显示指令执行过程;

-vv:详细显示指令执行过程,便于排错。  

5、rz 和sz 文件名   跨系统文件上传和下载

有时候想在windows和linux之间上传或下载某个文件,其实有个很简单的方法就是rz,sz命令。

首先,你的远程Linux服务器上需要安装安装lrzsz工具包,yum  install lrzsz,安装完毕即可使用。

然后,rz 与 sz 需要你的终端支持(即rz命令是在客户端里面执行的)。终端就是你用来连接远程服务器的客户端,像是 XShell、SecureCRT、rxvt、putty 什么的,用来访问管理远程或虚拟化的UNIX/Linux桌面环境,

rz,sz是便是Linux/Unix同Windows进行件传输的命令行工具

rz、sz 命令可以很方便的将本地的文件上传到服务器或者从服务器上下载文件到本地,但是一般 Linux 系统并没有默认安装这两个工具。

①Linux服务器端安装

要是Linux服务器不支持rz、sz命令的话,需要安装lrzsz 工具以支持

yum install lrzsz -y

②客户端使用

上传:

rz     本地上传文件到服务器

下载:

sz  文件名     从服务器下载文件到本地

本人使用的客户端是XShell

在XShell里面输入rz命令就可以出现本地窗口,供我们选择文件上传

6、systemctl start mysqld.service   负责控制systemd系统和服务管理器

其中的一般start或restart是没有结果直接返回的,要查看启动结果,可以用命令:systemctl status mysqld.service

以前都用service命令管理mysql,现在liunx系统升级了,又有了新的更好的方法管理系统进程,现在我们来学习如何用systemctl命令管理mysql。

Systemctl是一个systemd工具,主要负责控制systemd系统和服务管理器。
Systemd是一个系统管理守护进程、工具和库的集合,用于取代System V初始进程。Systemd的功能是用于集中管理和配置类UNIX系统。
在Linux生态系统中,Systemd被部署到了大多数的标准Linux发行版中,只有为数不多的几个发行版尚未部署。Systemd通常是所有其它守护进程的父进程,但并非总是如此。

启动mysql服务

systemctl start mysqld.service

停止mysql服务

systemctl stop mysqld.service

重启mysql服务

systemctl restart mysqld.service

查看mysql服务当前状态

systemctl status mysqld.service

设置mysql服务开机自启动

systemctl enable mysqld.service

停止mysql服务开机自启动

systemctl disable mysqld.service

7、cat filename和| grep "字符串"有什么区别

问题:

执行cat filename  | grep "字符串"和 grep "字符串" {文件名}命令,结果虽然是一样的,但是执行的流程有什么区别?

答案:

cat会一次性显示所有的内容,适合查看内容较少的文i本文件。

管道“|”用来将前一个命令的标准输出传递到下一个命令的标准输入

grep "字符串" {文件名}  根据用户指定的文本模式对目标文件进行逐行搜索,显示能够被模式所匹配到的行。

①cat filename命令

cat 命令用于连接文件并打印到标准输出设备上。

cat主要有三大功能: 1.一次显示整个文件。$ cat filename 2.从键盘创建一个文件。$ cat > filename  只能创建新文件,不能编辑已有文件. 3.将几个文件合并为一个文件: $cat file1 file2 > file

语法格式

cat [-AbeEnstTuv] [--help] [--version] fileName

参数说明:

-n 或 --number:由 1 开始对所有输出的行数编号。

-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。

-s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。

-v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。

-E 或 --show-ends : 在每行结束处显示 $。

-T 或 --show-tabs: 将 TAB 字符显示为 ^I。

-A, --show-all:等价于 -vET。

-e:等价于"-vE"选项;

-t:等价于"-vT"选项;

实例:

把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里:

cat -n textfile1 > textfile2

把 textfile1 和 textfile2 的文档内容加上行号(空白行不加)之后将内容附加到 textfile3 文档里:

cat -b textfile1 textfile2 >> textfile3

清空 /etc/test.txt 文档内容:

cat /dev/null > /etc/test.txt

cat 也可以用来制作镜像文件。例如要制作软盘的镜像文件,将软盘放好后输入:

cat /dev/fd0 > OUTFILE

相反的,如果想把 image file 写到软盘,输入:

cat IMG_FILE > /dev/fd0

  • 1. OUTFILE 指输出的镜像文件名。
  • 2. IMG_FILE 指镜像文件。
  • 3. 若从镜像文件写回 device 时,device 容量需与相当。
  • 4. 通常用制作开机磁片。

②grep命令

grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

语法:

grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]

参数:

-a或--text 不要忽略二进制的数据。
-A<显示列数>或--after-context=<显示列数> 除了显示符合范本样式的那一列之外,并显示该列之后的内容。
-b或--byte-offset 在显示符合范本样式的那一列之前,标示出该列第一个字符的位编号。
-B<显示列数>或--before-context=<显示列数> 除了显示符合范本样式的那一列之外,并显示该列之前的内容。
-c或--count 计算符合范本样式的列数。
-C<显示列数>或--context=<显示列数>或-<显示列数> 除了显示符合范本样式的那一列之外,并显示该列之前后的内容。
-d<进行动作>或--directories=<进行动作> 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。
-e<范本样式>或--regexp=<范本样式> 指定字符串做为查找文件内容的范本样式。
-E或--extended-regexp 将范本样式为延伸的普通表示法来使用。
-f<范本文件>或--file=<范本文件> 指定范本文件,其内容含有一个或多个范本样式,让grep查找符合范本条件的文件内容,格式为每列一个范本样式。
-F或--fixed-regexp 将范本样式视为固定字符串的列表。
-G或--basic-regexp 将范本样式视为普通的表示法来使用。
-h或--no-filename 在显示符合范本样式的那一列之前,不标示该列所属的文件名称。
-H或--with-filename 在显示符合范本样式的那一列之前,表示该列所属的文件名称。
-i或--ignore-case 忽略字符大小写的差别。
-l或--file-with-matches 列出文件内容符合指定的范本样式的文件名称。
-L或--files-without-match 列出文件内容不符合指定的范本样式的文件名称。
-n或--line-number 在显示符合范本样式的那一列之前,标示出该列的列数编号。
-q或--quiet或--silent 不显示任何信息。
-r或--recursive 此参数的效果和指定"-d recurse"参数相同。
-s或--no-messages 不显示错误信息。
-v或--revert-match 反转查找。
-V或--version 显示版本信息。
-w或--word-regexp 只显示全字符合的列。
-x或--line-regexp 只显示全列符合的列。
-y 此参数的效果和指定"-i"参数相同。
--help 在线帮助。

举例:

yum list installed | grep java  显示匹配已安装的java的软件包

8、more和less命令的区别
more: 顾名思义显示更多
less: 由于more不能后退,就取more的反义词less加上后退功能
所以Linux里流传着这样一句话:"less is more".

总结下more 和 less的区别:

平常工作中经常需要查看很大的文本文件,如果用vi打开的话会非常慢,我们平常都用less,less比more更强大更易用。

1.  less可以按键盘上下方向键显示上下内容,more不能通过上下方向键控制显示

2.  less不必读整个文件,加载速度会比more更快

3.  less退出后shell不会留下刚显示的内容,而more退出后会在shell上留下刚显示的内容

① more   分页显示大文本文件

格式:

more [-OPTION] [FILE]

参数:

-f:强制打开特殊文件,如目录或二进制文件

-n:每页行数。(可以理解为每按一下空格,跳转的行数)

+n:从第n行开始显示

-s:将连续空行显示为一行

+/pattern: 搜索字符串(pattern), more的搜索功能好难用,还是用less的吧。

操作:

空格键:下一页

Enter:向下一行

q:退出

②less  分页显示大文本文件,支持后退到上一页

格式:

less [-OPTION] [FILE]

参数:

-f:强制打开特殊文件,如目录或二进制文件

-i: 忽略搜索时的大小写

-s:将连续空行显示为一行

-N:显示行号

操作:

空格键:向下滚动一页

Enter:向下滚动一行

pageup:向上滚动一页

pagedown:向下滚动一页

?:向上搜索字符串

/:向下搜索字符串

n:上一个搜索结果

N:下一个搜索结果

more和less都可以直接打开文件也可以接收标准输入:

less test.txt
cat less.txt | lessmore

可以设置每页显示的行数,less不可以。但是less的搜索功能更强大,所以根据需求选择适当的命令

9、firewall防火墙相关命令

在 Centos 7 中防火墙由 firewalld 来管理,而不是 iptables。

9.0.查看已经开放的端口

firewall-cmd --list-ports  

9.1. 查看防火墙状态

firewall-cmd --state  ## 结果显示为running或not running

9.2. 关闭防火墙firewall和禁止防火墙开机启动

systemctl stop firewalld.service

systemctl disable firewalld.service

9.3. 关闭防火墙firewall后开启

systemctl start firewalld.service

9.4. 开启端口

Centos7 firewall开放3306端口:

## zone -- 作用域
## add-port=80/tcp -- 添加端口,格式为:端口/通讯协议
## permanent -- 永久生效,没有此参数重启后失效

firewall-cmd --zone=public --add-port=3306/tcp --permanent
## 开启3306端口后,workbench或naivcat 就能连接到MySQL数据库了

9.5. 重启防火墙

firewall-cmd --reload

9.6. 常用命令介绍

firewall-cmd --state                           ##查看防火墙状态,是否是running
firewall-cmd --reload                          ##重新载入配置,比如添加规则之后,需要执行此命令
firewall-cmd --get-zones                       ##列出支持的zone
firewall-cmd --get-services                    ##列出支持的服务,在列表中的服务是放行的
firewall-cmd --query-service ftp               ##查看ftp服务是否支持,返回yes或者no
firewall-cmd --add-service=ftp                 ##临时开放ftp服务
firewall-cmd --add-service=ftp --permanent     ##永久开放ftp服务
firewall-cmd --remove-service=ftp --permanent  ##永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent     ##永久添加80端口 
iptables -L -n                                 ##查看规则,这个命令是和iptables的相同的
man firewall-cmd                               ##查看帮助
systemctl status firewalld.service                               ##查看防火墙状态
systemctl [start|stop|restart] firewalld.service                 ##启动|关闭|重新启动  防火墙

##查询端口号80 是否开启
firewall-cmd --query-port=80/tcp

更多命令,使用 firewall-cmd --help 查看帮助文件

10、未完待续....

猜你喜欢

转载自blog.csdn.net/CSDN2497242041/article/details/106866921
今日推荐