linux系列之常用运维命令整理笔录 您所在的位置:网站首页 交大优秀学生自我鉴定范文 linux系列之常用运维命令整理笔录

linux系列之常用运维命令整理笔录

2023-06-11 06:04| 来源: 网络整理| 查看: 265

系列博客专栏:

JVM系列博客专栏SpringBoot系列博客

本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新,本博客命令基于Centos系统

在这里插入图片描述

文章目录 一、系统命令1、free命令使用2、ulimit命令使用3、top命令使用4、df命令使用5、ps命令使用6、crontab 命令7、检查时区 二、文件操作1、tail查看文件2、查看文件情况3、文件权限设置4、文件上传下载5、压缩文件解压6、查看文件夹大小7、文件数据排序8、去除文件重复行9、vim命令10、删除文件夹11、创建文件夹12、打印当前目录 三、网络通信1、netstat监控命令2、linux检查网络3、SELinux简介4、防火墙设置5、CURL命令使用5.1 查看curl帮助5.2 查看curl手册5.3 提取指定网页5.4 用curl进行认证5.5 curl文件操作5.6 设置cookie5.7 RESTFul API 四、系统管理1、查看内核版本2、查看linux系统ip3、查看ip是否被占用4、uptime命令使用5、telnet命令使用6、关机重启命令7、查看系统当前登录用户8、切换登录用户9、免密切换服务器

一、系统命令 1、free命令使用

free命令简介 free 命令能够显示系统中物理上的空闲和已用内存,还有交换内存,同时,也能显示被内核使用的缓冲和缓存

free命令语法

语法:free [param]

param可以为:

-b:以Byte为单位显示内存使用情况;

-k:以KB为单位显示内存使用情况;

-m:以MB为单位显示内存使用情况;

-o:不显示缓冲区调节列;

-s:持续观察内存使用状况;

-t:显示内存总和列;

-V:显示版本信息。

free命令使用 在这里插入图片描述 Mem:表示物理内存统计

total:表示物理内存总数(total=used+free)

used:表示系统分配给缓存使用的数量(这里的缓存包括buffer和cache)

free:表示未分配的物理内存总数

shared:表示共享内存

buffers:系统分配但未被使用的buffers 数量。

cached:系统分配但未被使用的cache 数量。

-/+ buffers/cache:表示物理内存的缓存统计

(-buffers/cache) 内存数: (指的第一部分Mem行中的used – buffers – cached)(+buffers/cache) 内存数: (指的第一部分Mem行中的free + buffers + cached)

(-buffers/cache)表示真正使用的内存数, (+buffers/cache) 表示真正未使用的内存数

Swap:表示硬盘上交换分区的使用情况

2、ulimit命令使用

ulimit用于显示系统资源限制的信息 语法:ulimit [param] param参数可以为:

-a  显示目前资源限制的设定。-c  设定core文件的最大值,单位为区块。-d  程序数据节区的最大值,单位为KB。-f  shell所能建立的最大文件,单位为区块。-H  设定资源的硬性限制,也就是管理员所设下的限制。-m  指定可使用内存的上限,单位为KB。-n  指定同一时间最多可开启的文件数。-p  指定管道缓冲区的大小,单位512字节。-s  指定堆叠的上限,单位为KB。-S  设定资源的弹性限制。-t  指定CPU使用时间的上限,单位为秒。-u  用户最多可开启的程序数目。-v  指定可使用的虚拟内存上限,单位为KB

在这里插入图片描述

3、top命令使用

top命令可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具,TOP命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,有点像window系统的任务管理器

语法:top [param]

param为:

-b:以批处理模式操作;-c:显示完整的治命令;-d:屏幕刷新间隔时间;-I:忽略失效过程;-s:保密模式;-S:累积模式;-u [用户名]:指定用户名;-p [进程号]:指定进程;-n [次数]:循环显示的次数。-H:查看进程下面的子线程

top命令分为上下两个部分:

系统统计信息系统进程信息 在这里插入图片描述 系统统计信息 top - 11:38:01 up 231 days, 2:06, 1 user, load average: 0.88, 0.22, 0.18 Tasks: 170 total, 1 running, 169 sleeping, 0 stopped, 0 zombie %Cpu(s): 38.7 us, 3.5 sy, 0.0 ni, 42.0 id, 15.5 wa, 0.0 hi, 0.3 si, 0.0 st KiB Mem : 8010580 total, 927820 free, 2411572 used, 4671188 buff/cache KiB Swap: 4063228 total, 2933688 free, 1129540 used. 5153128 avail Mem

row1:任务队列信息,同 uptime 命令的执行结果 top - 11:38:01 up 231 days, 2:06, 1 user, load average: 0.88, 0.22, 0.18

11:38:01 (当前系统时间)up 231 days, 2:06(系统运行时间)1 user (当前登录用户数)load average: 0.88, 0.22, 0.18 (系统的平均负载数,表示 1分钟、5分钟、15分钟到现在的平均数)

row2:进程统计信息 Tasks: 170 total, 1 running, 169 sleeping, 0 stopped, 0 zombie

170 total(系统当前总进程总数)1 running (正在运行的进程数)169 sleeping(睡眠进程数)0 stopped (停止进程数)0 zombie (僵尸进程数)

row3:CPU 统计信息 %Cpu(s): 38.7 us, 3.5 sy, 0.0 ni, 42.0 id, 15.5 wa, 0.0 hi, 0.3 si, 0.0 st

38.7 us, (用户空间CPU占用率)3.5 sy (内核空间CPU占用率)0.0 ni (用户进程空间改变过优先级的进程CPU的占用率)42.0 id(空闲CPU占有率)15.5 wa (等待输入输出的CPU时间百分比)0.0%hi (硬件中断请求)0.3%si (软件中断请求)0.0%st (分配给运行在其它虚拟机上的任务的实际 CPU时间)

row4:内存状态 KiB Mem : 8010580 4671188 , 927820 free, 2411572 used, 4671188 buff/cache

4671188 total (物理内存总量 )2411572 used (已使用的内存 )927820 free (空闲内存 )4671188 buffers (内核缓存使用) ps:以k为单位

row5:swap交换分区信息 KiB Swap: 4063228 total, 2933688 free, 1129540 used. 5153128 avail Mem

4063228 total (交换分区总量 )1129540 used (已使用交换分区内存 )2933688 free (空闲交换分区 )5153128 cached (缓冲交换区 )

在这里插入图片描述

系统进程信息

PID :进程idUSER :进程所有者的用户名PR :进程优先级NI :nice值。负值表示高优先级,正值表示低优先级VIRT :进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RESRES :进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATASHR :共享内存大小,单位kbS :进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程%CPU :上次更新到现在的CPU时间占用百分比%MEM :进程使用的物理内存百分比TIME+ :进程使用的CPU时间总计,单位1/100秒COMMAND :进程名称[命令名/命令行]

在这里插入图片描述

按“1”键,可打开或关闭显示详细CPU统计信息: 在这里插入图片描述 按字母“B”键,可打开或关闭当前进程的显示效果 在这里插入图片描述 top -H -p pid,查看进程pid下面的子线程 在这里插入图片描述

4、df命令使用

df命令用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

语法:df(选项)(参数)

选项:

-a或–all:包含全部的文件系统; –block-size=:以指定的区块大小来显示区块数目; -h或–human-readable:以可读性较高的方式来显示信息; -H或–si:与-h参数相同,但在计算时是以1000 Bytes为换算单位而非1024 Bytes; -i或–inodes:显示inode的信息; -k或–kilobytes:指定区块大小为1024字节; -l或–local:仅显示本地端的文件系统; -m或–megabytes:指定区块大小为1048576字节; –no-sync:在取得磁盘使用信息前,不要执行sync指令,此为预设值; -P或–portability:使用POSIX的输出格式; –sync:在取得磁盘使用信息前,先执行sync指令; -t或–type=:仅显示指定文件系统类型的磁盘信息; -T或–print-type:显示文件系统的类型; -x或–exclude-type=:不要显示指定文件系统类型的磁盘信息; –help:显示帮助; –version:显示版本信息。

参数:

文件:指定文件系统上的文件。

比较常用的有:

df -a 查看全部的文件系统df -h查看磁盘使用情况df -i 查看inode使用情况

在这里插入图片描述 df -h 在这里插入图片描述

5、ps命令使用

ps命令用于查看进程统计信息

常用参数:

a:显示当前终端下的所有进程信息,包括其他用户的进程。u:使用以用户为主的格式输出进程信息。x:显示当前用户在所有终端下的进程。-e:显示系统内的所有进程信息。-l:使用长(long)格式显示进程信息。-f:使用完整的(full)格式显示进程信息。-T:查看进程下面的子线程

在使用中可以加上grep命令一起使用,也可以单独使用

# ps命令单独使用的情况 ps -elf tomcat #结合管道操作和grep命令进行过滤,用于查询某一个进程的信息 ps -elf | grep tomcat

查看进程下面的子线程可以使用命令ps -T -p pid 在这里插入图片描述

6、crontab 命令

crontab 命令,用于定时程序的命令 -e : 执行文字编辑器来设定时程表,内定的文字编辑器是 VI,如果你想用别的文字编辑器,则请先设定 VISUAL 环境变数来指定使用那个文字编辑器(比如说 setenv VISUAL joe) -r : 删除目前的时程表 -l : 列出目前的时程表

7、检查时区

确认系统时区

date

如果时区是EST或者其他,要修改为CST(中国时区)

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 二、文件操作 1、tail查看文件

tail 命令可用于查看文件的内容,语法为

tail [param] [filename]

其中param可为:

-f :循环读取-q :不显示处理信息-v :显示详细的处理信息-c [数目]: 显示的字节数-n [行数]: 显示文件的尾部 n 行内容–pid=PID :与-f合用,表示在进程ID,PID死掉之后结束-q, --quiet, --silent :从不输出给出文件名的首部-s, --sleep-interval=S :与-f合用,表示在每次反复的间隔休眠S秒 2、查看文件情况

ll命令,可以用于查看文件情况,罗列出当前文件或目录的详细信息,含有时间、读写权限、大小、时间等信息。可以理解为 ll 和 ls -ll 的功能是相同的, ll 是ls -ll的别名。

ll -ah

ls 命令仅罗列出当前文件名或目录名

ls -ll 3、文件权限设置

Linux的文件基本权限有9个,分别是owenr、group、others三种身份各自有自己的r、w和x,比如“rwxrwxrwx”,就表示owener具有r(read 读)、w(write 写)、x(execute 访问)权限,同样group和others同样具有r、w、x权限,可以用xftp查看文件权限

在这里插入图片描述

可以使用数字表示权限:

r->4

w->2

x->1

当文件权限为“rwxrwxrwx”时,分数是:

owner->4+2+1=7

group->4+2+1=7

others->4+2+1=7

此时文件的权限数字就是777

然后要给文件file赋权的话,就可以使用Linux命令:

chmod 777 file

owner、group和others三种身份各自的三个权限,用u、g、o代表三种身份,用a(all)代表所有身份,所以还有下面的Linux命令

chmod u|g|o|a =(设置权限)|+(添加权限)|-(减少权限) r|w|x 文件或者目录

eg:给文件file赋值权限

chmod u=rwx file 4、文件上传下载

在不使用xftp等linux工具的情况,可以通过linux命令,sz命令是利用ZModem协议来从Linux服务器传送文件到本地,一次可以传送一个或多个文件。

下载文件 sz命令发送文件到本地: sz filename

在这里插入图片描述 敲命令之后,直接弹出下载保存窗口页面

上传文件 rz

敲命令之后,直接弹出上传窗口页面 在这里插入图片描述

rz、sz命令需要有如下条件:

linux系统root权限lrzsz安装包

lrzsz安装步骤:

// 编译安装 //root 账号登陆后,依次执行以下命令: tar zxvf lrzsz-0.12.20.tar.gz cd lrzsz-0.12.20 ./configure make make install //上面安装过程默认把lsz和lrz安装到了/usr/local/bin/目录下,现在我们并不能直接使用,下面创建软链接,并命名为rz/sz: cd /usr/bin ln -s /usr/local/bin/lrz rz ln -s /usr/local/bin/lsz sz

Centos可以直接这样安装

yum install lrzsz -y 5、压缩文件解压

linux解压zip压缩文件可以用unzip命令,如果没安装,可以先安装

yum install -y unzip zip

语法一般为:unzip [选项] [压缩文件名]

-c 将解压缩的结果显示到屏幕上,并对字符做适当的转换。-f 更新现有的文件。-l 显示压缩文件内所包含的文件。-p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。-t 检查压缩文件是否正确。-u 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中。-v 执行是时显示详细的信息。-z 仅显示压缩文件的备注文字。-a 对文本文件进行必要的字符转换。-b 不要对文本文件进行字符转换。-C 压缩文件中的文件名称区分大小写。-j 不处理压缩文件中原有的目录路径。-L 将压缩文件中的全部文件名改为小写。-M 将输出结果送到more程序处理。-n 解压缩时不要覆盖原有的文件。-o 不必先询问用户,unzip执行后覆盖原有文件。-P 使用zip的密码选项。-q 执行时不显示任何信息。-s 将文件名中的空白字符转换为底线字符。-V 保留VMS的文件版本信息。-X 解压缩时同时回存文件原来的UID/GID。[.zip文件] 指定.zip压缩文件。[文件] 指定要处理.zip压缩文件中的哪些文件。-d 指定文件解压缩后所要存储的目录。-x 指定不要处理.zip压缩文件中的哪些文件。-Z unzip -Z等于执行zipinfo指令。 6、查看文件夹大小 du [选项][文件]

-a或-all 显示目录中个别文件的大小。 -b或-bytes 显示目录或文件大小时,以byte为单位。 -c或–total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。 -k或–kilobytes 以KB(1024bytes)为单位输出。 -m或–megabytes 以MB为单位输出。 -s或–summarize 仅显示总计,只列出最后加总的值。 -h或–human-readable 以K,M,G为单位,提高信息的可读性。 -x或–one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。 -L或–dereference 显示选项中所指定符号链接的源文件大小。 -S或–separate-dirs 显示个别目录的大小时,并不含其子目录的大小。 -X或–exclude-from= 在指定目录或文件。 –exclude= 略过指定的目录或文件。 -D或–dereference-args 显示指定符号链接的源文件大小。 -H或–si 与-h参数相同,但是K,M,G是以1000为换算单位。 -l或–count-links 重复计算硬件链接的文件。

常用命令: 查看opt目录下面所有文件大小

du -sh /opt

查看当前目录所有文件

du -sh *

查看具体文件大小

[root@localhost ~]# du -sh 文件名.doc 4.0K 文件名.doc 7、文件数据排序

sort命令可以用于文件数据排序,然后将排序结果打印出来。

语法:

sort [选项] [文件]

常用选项:

选项含义-b忽略每行前面开始出的空格字符-c检查文件是否已经按照顺序排序-d排序时,处理英文字母、数字及空格字符外,忽略其他的字符-f排序时,将小写字母视为大写字母-i排序时,除了040至176之间的ASCII字符外,忽略其他的字符-m将几个排序号的文件进行合并-M将前面3个字母依照月份的缩写进行排序-n依照数值的大小排序-o 将排序后的结果存入制定的文件-r以相反的顺序来排序-t 指定排序时所用的栏位分隔字符-k指定需要排序的栏位 8、去除文件重复行

使用uniq这个命令只能去除连续的的重复行。所以需要结合sort命令使用,先sort排序,然后uniq去除重复的

语法:

uniq [选项] [文件] 选项含义-c打印每行在文本中重复出现的次数-d只显示有重复的纪录,每个重复纪录只出现一次-u只显示没有重复的纪录 9、vim命令

vi和vim是Linux很常用的文本编辑器,两种功能类似也稍有不同,鉴于命令操作比较多,本博客只挑vim命令,介绍一些比较常用的

vim命令使用,直接加上文件名就行

vim file1

vim的模式

Normal 模式:进入Vim后的一般模式Insert 模式:按下i键后进入该模式,可以修改文档。Visual 模式:按下v键后进入该模式,可以选择文档内容。

vim退出

:q:退出。:q!:强制退出,放弃所有修改。:wq:保存修改并退出。

一些快捷键

方向键也可以用h、j、k、l。:0到行首,:$到行尾。按/查找,输入关键字查找,n下一个,N上一个 10、删除文件夹

示例:

rm -rf /var/log

删除文件:rm -f /var/log/test.log

注意:使用这个rm -rf的时候一定要格外小心,最好备份一下,linux没有回收站的

11、创建文件夹

创建文件夹a,使用如下命令

mkdir a  12、打印当前目录

打印当前的目录路径,使用pwd命令

pwd

pwd:是 Print Working Directory (打印工作目录)的缩写,显示用户当前所处的工作目录

三、网络通信 1、netstat监控命令

netstat命令是用于监控进出网络的包和网络接口统计的命令行工具

语法:netstat [param]

param参数可以为:

-h : 查看帮助-r : 显示路由表-i : 查看网络接口 2、linux检查网络

到网络配置文件目录

cd /etc/sysconfig/network-scripts

查看目录下的文件,找到ifcfg开头的文件

ls -ll

en33这个后缀不固定,根据自己系统的查看

vi /etc/sysconfig/network-scripts/ifcfg-en33

修改ONBOOT=yes,ONBOOT是指明在系统启动时是否激活网卡,只有在激活状态的网卡才能去连接网络,进行网络通讯其中en33是设备名,设置了linux网络,需要重启网络,可以用命令:

service network restart 3、SELinux简介

SELinux全称是 Security-Enhanced Linux,它是由美国国家安全局(NSA)贡献的,它为 Linux 内核子系统引入了一个健壮的强制控制访问Mandatory Access Control架构。详情可以参考SELinux 入门,SELINUX工作原理

其实SELinux的功能也就是类似于防火墙的功能,不过安全相对比较好,ok,所以本博客介绍一下SELinux的使用命令

getenforce命令,这个是查看当前SELinux的运行模式的指令,SEliunx有三种模式。分别是:

Enforcing:强制模式。代表SELinux在运行中,且已经开始限制domain/type之间的验证关系Permissive:宽容模式。代表SELinux在运行中,不过不会限制domain/type之间的验证关系,即使验证不正确,进程仍可以对文件进行操作。不过如果验证不正确会发出警告Disabled:关闭模式。SELinux并没有实际运行

SEliunx模式快捷转换

# 转换为Permissive宽容模式 setenforce 0 # 转换为Enforcing强制模式 setenforce 1

查看selinux状态

getenforce

SELINUX模式可能会影响一下应用使用,临时禁用SELINUX(学习用的linux才可以禁用,生产的不建议禁用SELINUX)

setenforce

永久禁用SELINUX(学习用的linux才可以禁用,生产的不建议禁用SELINUX)

# 将SELINUX=enforce改成SELINUX=disabled vi /etc/selinux/config 4、防火墙设置

查询linux系统防火墙开启状态

firewall-cmd --state

临时关闭防火墙(学习用的linux才可以禁用,生产的不建议禁用)

systemctl stop firewalld.service

永久关闭防火墙(学习用的linux才可以禁用,生产的不建议禁用)

systemctl disable firewalld.service

查询防火墙规则列表

iptables -L

把默认策略改成ACCEPT

iptables -P INPUT ACCEPT

清除防火墙规则

iptables -F

配置防火墙允许ip

iptables -I INPUT -s 192.168.0.0 -j ACCEPT

-A INPUT只在INPUT链中插入一条规则,-s匹配源地址,这里的0/0指可以是任何地址,-i指定网络接口 -d匹配目的地址 -p匹配协议类型,-j指定要采取的操作,这 ACCEPT表示允许连接

5、CURL命令使用

curl命令是一个利用URL规则在shell终端命令行下工作的文件传输工具;curl命令作为一款强力工具,curl支持包括HTTP、HTTPS、ftp等众多协议,还支持POST、cookies、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征; 在这里插入图片描述 语法:语法格式:curl [参数] [网址]

5.1 查看curl帮助 查看命令参数 curl的参数很多,可以用命令curl --help查看: [root@localhost ~]# curl --help

国内翻译过来的curl文档:curl参数介绍

5.2 查看curl手册 查看详细使用 也可以使用curl --manual查看基本用法例子: 在这里插入图片描述 5.3 提取指定网页 查看网页源码 语法:curl uri [root@localhost ~]# curl www.baidu.com 百度一下,你就知道 新闻 hao123 地图 视频 贴吧 登录 document.write('登录'); 更多产品

关于百度 About Baidu

©2017;Baidu;使用百度前必读; 意见反馈;京ICP证030173号;

显示头信息 curl -i https://www.baidu.com

打印信息:

[root@localhost ~]# curl -i https://www.baiud.com curl: (7) Failed connect to www.baiud.com:443; Connection refused [root@localhost ~]# curl -i https://www.baidu.com HTTP/1.1 200 OK Accept-Ranges: bytes Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform Connection: keep-alive Content-Length: 2443 Content-Type: text/html Date: Mon, 13 Jul 2020 07:22:02 GMT Etag: "588603eb-98b" Last-Modified: Mon, 23 Jan 2017 13:23:55 GMT Pragma: no-cache Server: bfe/1.0.8.18 Set-Cookie: BDORZ=27315; max-age=86400; domain=.baidu.com; path=/ ... 显示通信过程 curl -v www.baidu.com curl -v www.baidu.com * About to connect() to www.baidu.com port 80 (#0) * Trying 182.61.200.7... * Connected to www.baidu.com (182.61.200.7) port 80 (#0) > GET / HTTP/1.1 > User-Agent: curl/7.29.0 > Host: www.baidu.com > Accept: */* >


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有