Linux常用命令汇总

Linux目录介绍

目录
/bin存放二进制可执行文件(ls,cat,mkdir等),常用命令一般都在这里。
/etc存放系统管理和配置文件
/home存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示
/usr用于存放系统应用程序,比较重要的目录/usr/local 本地系统管理员软件安装目录(安装系统级的应用)。这是最庞大的目录,要用到的应用程序和文件几乎都在这个目录。 /usr/x11r6 存放x window的目录 /usr/bin 众多的应用程序 /usr/sbin 超级用户的一些管理程序 /usr/doc linux文档 /usr/include linux下开发和编译应用程序所需要的头文件 /usr/lib 常用的动态链接库和软件包的配置文件 /usr/man 帮助文档 /usr/src 源代码,linux内核的源代码就放在/usr/src/linux里 /usr/local/bin 本地增加的命令 /usr/local/lib 本地增加的库
/opt额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里。
/proc不能动,虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息。
/sys不能动,linux内核, 硬件设备的驱动程序信息
/root超级用户(系统管理员)的主目录(特权阶级o
/sbin存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等。
/dev用于存放设备文件。
/mnt系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统。
/boot存放用于系统引导时使用的各种文件,启动时的核心文件
/lib存放跟文件系统中的程序运行所需要的共享库及内核模块。共享库又叫动态链接共享库,作用类似windows里的.dll文件,存放了根文件系统程序运行所需的共享文件。
/tmp用于存放各种临时文件,是公用的临时文件存储点。
/var用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等。)等。
/lost+found这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里
/srv不能动,service缩写,存放一些服务启动之后需要提取的数据,

vim使用

注意区分 一般模式和编辑模式
vim 无法修改只读文件,可以修改后 输入 :w !sudo tee % --强制保存  然后按 Ctrl + z 退出即可
进入一般模式后
yy   拷贝当前行  p粘贴   5yy   拷贝当前行向下的5行
dd   删除当前行  5dd		删除当前行向下的五行
在vim底端命令行输入  /要查找的内容  即可找到第一个  输入n寻找下一个  输入N寻找上一个
命令行输入  set nu			 --显示行号		set nonu --不显示行号
撤销之前的编辑命令			--在一般模式下输入u
光标定位 			 --一般模式下 行号 shift+g	 注意这里是看不到输入的行号的

关机重启

shutdown -h now  		--立刻关机
shutdown -h 1 	 		--1分钟后关机
shutdown -r now			--立刻重启
halt					--关机,作用同上
reboot					--重启,作用同上
sync					--把内存的数据同步到磁盘

用户管理

useradd -d /home 用户名   		--添加用户,目录在home下(不添加默认home),默认建一个与其同名的用户组
passwd 用户名  输入密码即可		--为新用户设置密码
id 用户名						--查看用户所属组
userdel	用户名					--删除用户,但是保留家目录
userdel -r 用户名				--删除用户,同时删除家目录
whoami						  --查看当前用户信息
groupadd 用户组名			    --添加用户组
groupdel 用户组名				--删除用户组
useradd -g 组名 用户名		   --添加用户的同时将其加入指定组

用户组相关文件

  • /etc/passwd文件

    用户的配置文件,记录用户各种 信息

    每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell

  • /etc/shadow文件

    口令的配置文件

    每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

  • /etc/group文件

    组的配置文件,记录Linux包含的组的信息

    每行含义:组名:口令:组标识号:组内用户列表

运行级别

运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
运行级别2:多用户状态(没有NFS),没有网络连接。
运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式		最常用,Linux服务器
运行级别4:系统未使用,保留
运行级别5:X11控制台,登陆后进入图形GUI模式						
运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动
init 3										--切换运行级别
systemctl get-default						--获取当前运行级别
systemctl get-default mlti-user.target		--设置为运行级别3

找回root密码

1、首先启动系统,进入开机界面,在界面中按’e’进入编辑界面,注意要快 15s

2、进入编辑页面,使用键盘上下键将光标移动,找到以“Linux16”开头的内容所在的行,在行的最后输入:init=/bin/sh

3、输入Ctrl+x启动,进入单用户模式

4、接着在光标闪烁的位置输入mount -o remount,rw / (各个单词之间有空格),完成后按回车键

5、在新的一行输入passwd ,按回车输入密码,然后再次确认密码即可

6、接着,在鼠标闪烁的位置(最后一行)插入:touch /.autorelabel(注意touch与/间有一个空格),完成后回车

7、继续在光标闪烁的位置,输入:exec /sbin/init(exec与/之间有空格),完成后回车,等待即可,系统会自动重启

帮助指令

man 命令						--获得帮助信息
  ls -a						 --查看所有文件,包括隐藏文件,linux下以.开头的文件为隐藏文件
  ls -l						 --单列显示ls		还可以ls -la/ls -al
help 						 --获得shell内置命令的帮助信息

文件目录

pwd								--显示当前工作目录的绝对路径
cd ~ 							--家目录
cd /							--根目录
mkdir							--创建目录  		    md /home/animal
mkdir -p						--创建多级目录	   	   md -p /home/animal/dog
rmdir 目录		   			   --删除空目录			  rm /home/animal
rmdir -rf 目录	   			   --递归删除整个目录		rm -rf /home/animal
cp 1.txt /test					 --拷贝文件到指定目录
cp -r /home/svicen /home/test	 --递归拷贝整个目录到指定目录,将svicen整个给test
\cp -r /home/svicen /home/test	 --递归拷贝,强制覆盖原来的文件
rm								 --删除文件或目录	 -r递归删除整个文件夹 	-f强制删除不提示
mv test0 test01					 --移动文件与目录或从重命名  如果两文件在同一目录则为重命名
mv test /root/test01			 --移动文件并从重命名
mv /opt/bbb /home				 --移动整个目录及其下的文件
cat [-n] 文件名				   --查看文件内容		-n 显示行号
cat -n test | more				 --为了浏览方便,一般会加上 管道符|+more  more往往是用来展示的
more --  空格->向下翻一页  回车->向下翻一行  q->离开more  Ctrl+F->向下滚动一屏 Ctrl+B->向上一屏 :f->输出文件名和当前行号
less 要查看的文件					--分配查看文件,与more类似,但并不是一次全部加载,根据显示需要加载,效率更高 
echo $PATH						--输出内容到控制台
head -n 5 						--显示文件前5行,默认显示前10行
tail -n 5						--显示后五行
taile -f 文件名				  --监视制定文件,如果其内内容发生变化,在此可以展示变化
重定向  >  --覆盖内容		>>  --追加内容
ls -l /home > /home/info.txt	--将home目录下文件以单列显示方式写入到info.txt中
ln -s 源文件或目录 软链接名 		 --软连接 ln -s /root /home/myroot  ->  访问myroot就相当于访问root目录
history							--查看历史命令
!历史命令编号						--可以执行历史命令

时间日期指令

date 							--显示当前时间,年月日时分秒
date '+%Y-%m-%d'				--显示年月日,以-分隔  注意大小写
date -s "2022-04-04 14:23:10"	--设置系统日期
cal								--查看本月日历	  cal 2022 显示2022整年的日历

查找指令

find /home -name hello.txt		--在指定目录下找着指定名的文件
find /opt -user root | more		--查找指定目录下用户名称为root的文件
find / size +200M				--查找整个linux系统下大于200M的文件 -200M为小于 默认为等于	
ls -lh							--按照人更直观的方式显示文件大小
updatedb; locate 搜索文件		 --可以快速定位文件路径 注意需要先写 updatedb
cat 1.txt | grep -n "hello"		--grep过滤查找,管道符| 表示将前一个命令的结果传递给后面的命令处理
grep -n "hello" /home/1.txt		--与上相同

压缩和解压

gzip /home/hello.txt				--压缩文件
gunzip /home/hello.txt.gz			--解压文件

zip									--压缩文件或文件夹,在项目打包发布中很有用 
zip -r myhome.zip /home/			--将home及home目录下的所有文件及文件夹都压缩   -r 递归压缩
unzip								--解压缩文件/文件夹
unzip -d /opt/tmp /home/myhome.zip	--解压到opt/tmp文件夹下

tar									--打包命令,最后打包好的是.tar.gz文件
-c 产生.tar打包文件	-V 显示详细信息  -f  指定压缩后文件名  -z 打包同时压缩  -x  解压.tar文件
tar -zcvf pc.tar.gz /home/pig.txt /home/cat.txt		多个文件压缩为pc.tar.gz
tar -zxvf pc.tar.gz -C opt/tmp 		--解压缩到指定目录opt/tmp	

Linux组

对于linux的文件,有三个概念所有者,所在组,其他组
所有者-谁创建的谁为所有者		查看文件所有者ls -ahl 或者 ll
组的创建 groupadd		当一个用户创建一个文件时,该文件所属的组就是该用户所属的组
chgrp 组名 文件名 					--修改文件所在组
其他组 --除了所在组及所有者,系统的其他用户所在组都是其他组
usermod -g 新组名 用户名				--修改用户所在组
usermod -d 目录名 用户名				--改变用户初始目录, 前提用户需要有进入到该目录的权限

权限管理

在这里插入图片描述

最左边一列有10位
1.第0位确定文件类型(d是目录,l是链接,b是块设备,硬盘  -是普通文件 c是字符设备文件,鼠标键盘)
2.第1-3为确定所有者(该文件的所有者)拥有该文件的权限 ---User
3.第4-6位确定所属组拥有该文件的权限		  	   --group
4.第7-9位确定其他用户拥有该文件的权限			   --other
左数第二列的数字:文件即为1,为目录即其子目录数与子文件总和
左数第三四列:文件所有者 和 文件所在组
左数第五列:文件大小按字节数
左数第六列:最近修改日期

rwx作用详解

  • rwx作用到文件
1.[r]代表read,可以读取,查看
2.[w]代表write,可以修改,但是不一定可以删除该文件,删除一个文件的前提是对该文件所在的目录有写权限。
3.[x]代表execute,可以执行
r=4,w=2,x=1 因此 rwx=4+2+1=7	
  • rwx作用到目录
1.[r]代表read,可以读取,ls查看目录内容
2.[w]代表write,可以修改,对目录内创建文件、删除文件,重命名目录
3.[x]代表execute,可以进入该目录,但不可以ls	
chmod修改文件或目录的权限		u-所有者  g-所有组  o-其他  a-所有人
第一种方式:+ - = 变更权限
chmod u=rwx,g=rx,o=x 文件/目录名				
chmod o+w 文件/目录名				--给文件的其他用户赋予修改权限
chmod a-x 文件/目录名				--对所有人去掉可执行权限
第二种方式:通过数字变更权限	r=4,w=2,x=1
chmod u=rwx,g=rx,o=x abc 相当于 chmod 751 abc

修改文件所有者-chown
chown newowner 文件/目录			--改变文件所有者为王newowner
chown -R newowner /home/test	   --递归改变文件和其目录下所有文件的所有者为newowner

修改文件/目录所在组chgrp
chgrp newgroup 文件/目录			--改变所在组
chgrp -R newgroup /home/test	   --递归修改test目录下所有文件的所在组为newgroup			

对于目录

1.被赋予x执行权限的用户,该用户可以进入目录,但不能读取目录,不能使用ls,但是对于该目录下的文件该拥有的权限还是有的
	可以修改或读取有指定权限的文件			1.txt的内容因此被修改
2.赋予w写权限的用户,可以对该目录下的文件进行创建、修改   --可以把目录看成文件  一切皆文件
3.赋予r读权限的用户,可以在进入该目录后ls,但只赋予读权限是不能进入文件目录的

crond任务调度

  • 常用选项
-e					编辑crontab定时任务
-l					列出当前有哪些crontab任务
-r					删除当前用户所有的crontab任务
  • 命令介绍
*/1****ls -l /etc/ > /tmp/to.txt
意思是每小时的每分钟执行ls -l /etc/ > /tmp/to.txt目录
  • 五个占位符说明
项目含义范围
第一个*一小时当中的第几分钟0-59
第二个*一天当中的第几小时0-23
第三个*一个月当中的第几天1-31
第四个*一年当中的第几月1-12
第五个*一周当中的星期几0-7(0和7都代表星期日)
crontab -e						--编辑定时任务
  • 特殊符号的说明
特殊符号含义
*代表任何时间
,代表不连续的时间,比如"0 8,12,16 * * *"命令代表在每天的8点0分,12点0分,16点0分都执行一次命令
-代表连续的时间范围,比如"0 5 * * 1-6"命令代表在周一到周六的凌晨5点0分执行命令
*/n代表每隔多久执行一次,比如"* /10* * * *"命令代表每隔10分钟执行一次命令

0 0 1,15 * 1 命令表示每月1号和15号且是周一的凌晨0点0分执行命令,注意星期几和几号最好不要同时写

at任务调度

  • 基本介绍

    1.at命令是一次性定时任务,at的守护进程atd会以后台模式运行,检查作业队列来运行

    2.默认情况下,atd守护进程每60秒检查作业队列,有作业时,会检查作业运行时间,如果时间与当前时间匹配,则运行该作业

    3.at命令是一次性定时任务,执行完一个任务后便不再执行

    4.在使用at命令时,一定要保证atd进程的启动,可以使用相关指令来查看 ps -ef | grep atd

  • at命令格式

at [选项] [时间]			写完后两次Ctrl + D代表输入结束
at now + 2 minutes
>at date > /home/mydate.log			两分钟后执行该命令,先要将at服务启动sudo /etc/init.d/atd start

at 5pm tomorrow
>at /bin/sh ls /home				明天下午5点用sh执行ls命令

at 5pm + 2 days
>at /root/my.sh						两天后5点执行脚本my.sh,前提脚本存在且有执行权限

atrm 2								删除任务队列号为2的任务
atq									查看当前任务队列

在这里插入图片描述

磁盘分区、挂载

  • 分区的方式

    • mbr分区
      • 最多支持四个主分区
      • 系统只能安装在主分区
      • 扩展分区要占一个主分区
      • MBR最大只支持2TB,但拥有最好的兼容性
    • gpt分区
      • 支持无限多个主分区(但操作系统可能限制,比如windows下最多128个分区)
      • 最大支持18EB的大容量(1EB=1024PB,PB=1024TB)
      • windows7 64位以后支持gpt
  • Linux分区

    • Linux来说无论有几个分区,分给哪一个目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构,Linux中每个分区都是用来组成整个文件系统的一部分。
    • Linux采用了一种叫做“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目录,且将一个分区和一个目录联系起来。这时要载入的一个分区将使它的存储空间在一个目录下获得。
  • 硬盘说明

    • Linux硬盘分IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘
    • 对于IDE硬盘,驱动器标识符为"hdx~",其中"hd"表明分区所在设备的类型,这里是指IDE硬盘,“x"为盘号(a为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属盘),” ~"代表分区,前四个分区用数字1到4表示,他们是主分区或扩展分区,从5开始就是逻辑分区。例:hda3表示为第一个IDE硬盘上的第三个主分区或扩展分区,hdb2表示第二个IDE硬盘的第二个主分区或扩展分区
    • 对于SCSI硬盘则标识为"sdx~",SCSI硬盘使用"sd"来表示分区所在设备的类型的,其余和IDE硬盘表示方法一样
    • lsblk -f:查看当前系统的分区和挂载情况。(list block)
  • 挂载的经典案例

    • 需求是给我们的Linux系统增加一个新的硬盘,并且挂载到/home/newdisk
    1. 虚拟机添加硬盘 —设置->硬盘->添加

    2. 分区:fdsk /dev/sdb – 设置分区号 Ctrl + backspace 删除 回车确认 命令哪里输入w 写入并退出

    3. 格式化:mkfs -t ext4 /dev/sdb1 格式化后就有了UUID号

    4. 挂载:新建目录:mkdir /home/newdisk;挂载:mount /dev/sdb1 /home/newdisk

      命令行下挂载,重启命令行便无效了

    5. 设置可以自动挂载(永久挂载):重启系统后,仍然可以挂载。vim etc/fstab 增加挂载信息赋值修改 UUID或者在UUID的位置写设备名/dev/sdb1,之后输入mount -a或reboot生效

    • 取消挂载:unmount /dev/sdb1
  • 磁盘情况查询:df -h / df -l

在这里插入图片描述

  • 查询指定目录的磁盘占用情况:du -h /目录,默认为当前目录

    • -s:指定目录占用大小汇总
    • -h:带计量单位
    • -a:含文件
    • –max-depth=1:子目录深度为1
    • -c:列出明细的同时,增加汇总值

    示例:du -hac --max-depth=1 /opt

  • 磁盘情况-工作实用指令

    1. 统计/home文件夹下文件的个数:ls -l /home | grep "^-" | wc -l 以 - 开头的为文件

    2. 统计/home文件夹下目录的个数:ls -l /home | grep "^d" | wc -l 以 d 开头的为文件夹

    3. 统计/home文件夹下文件的个数,包括子文件夹里的:ls -lR /home | grep "^-" | wc -l

    4. 统计文件夹下目录的个数,包括子文件夹里的:ls -lR /home | grep "^d" | wc -l

    5. 以树状显示目录结构:首先安装tree指令:yum install tree,tree /home

      tree /home -d --仅列出目录 tree -l 不给出指定目录则为当前目录

网络配置

  • 指定固定IP:直接修改配置文件来指定IP,并可以连接到外网,编辑:vim /etc/sysconfig/network-scripts/ifcfg-eth0

    修改:静态分配IP:BOOTPROTO=“static”

    IP地址:IPADDR=192.168.1.100

    网关:GATEWAY = 192.168.200.2

    DNS域名解析器DNS1=192.168.200.2

    接着打开虚拟机,编辑->虚拟网络编辑器->Vmnet8 -> 下的子网IP改为 192.168.200.1 与网卡和DNS解析器在同一网段

    同时在虚拟网络编辑器下 - > NAT设置 -> 修改网关IP为 192.168.200.2

  • 重启网络服务:service network restart

  • 设置主机名和hosts映射

    在Windows下 C:\Windows\System32\drivers\etc\hosts

    在Linux下 在/etc/hosts文件指定 写上 IP地址 和 主机名映射 即可

    主机名解析机制

    1.浏览器先检查浏览器缓存中有没有该域名解析IP地址,有就先调用这个IP完成解析,如果没有则检查DNS解析器缓存,如果有直接返回IP完成解析。 这两个缓存可以理解为本地解析器缓存。

    2.一般来说,当电脑第一次成功访问某一网站后,在一定时间内,浏览器或操作系统会缓存他的IP地址(DNS解析记录)

    ipconfig /displaydns				//DNS域名解析缓存
    ipconfig /flushdns					//手动清理DNS缓存
    

    3.如果本地解析器缓存没有找到对应映射,检查系统中hosts文件中有没有配置对应的域名IP映射,有则完成解析

    4.如果本地DNS解析器缓存和hosts文件中均没有找到对应IP则到DNS服务器进行解析

进程管理

  • 在Linux中,每个执行的**程序(代码)**都称为一个进程。每个进程都分配一个ID号

  • 每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。例如www服务器。

  • 每个进程都可能以两种方式存在:前台和后台。

    • 前台进程:用户目前的屏幕上可以进行操作的。比如说Vim
    • 后台进程:实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。比如说数据库
  • 一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才结束。

  • 显示系统执行的进程

    • ps:查看目前系统中,有哪些正在执行,以及它们执行的状况。可以不加任何参数。PID:进程识别号;TTY:终端机号;TIME:此进程所消耗的CPU时间;CMD:正在执行的命令或进程名; RSS:占物理内存的情况 VSZ: 占虚拟内存的情况

      STAT:进程状态,S-睡眠 R-正在运行 D-短期等待 Z-僵死进程,需要定时清除 T-被跟踪或者被停止

    • ps -a:显示当前终端的所有进程信息。

    • ps -u:以用户的格式显示进程信息。

    • ps -x:显示后台进程运行的参数。

    • ps -axu | grep xxx:过滤得到xxx的信息。 ps -axu | grep sshd

    • ps -ef:以全格式显示当前所有的进程,查看进程的父进程PPID。

    • -e:显示所有进程。

    • -f:全格式。

  • 终止进程

    • kill [选项] 进程号:通过进程号杀死进程

    • killall 进程名称:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用

    • -9:表示强迫进程立刻停止

    • 案例1:踢掉非法用户:kill 进程号

    • 案例2:终止远程登录服务sshd,在适当时候再次重启sshd服务

      kill sshd对应的进程号; /bin/systemctl start sshd.service --重启sshd服务

    • 案例3:终止多个gedit编辑器:killall 进程名称

      killall gedit

    • 案例4:强制杀掉一个终端:kill -9 进程号 对于正在运行的终端直接kill 进程号 系统会认为是误操作

  • 查看进程树:pstree [选项]

    • -p:显示进程的PID
    • -u:显示进程的所属用户
  • 服务(service)管理

    • service管理指令:service 服务名 [start | stop | restart | reload | status]

    • 在CentOS7.0之后,不再使用service,而是systemctl,被service管理的服务主要是/etc/init.d下的服务

      service network stop --停止网络服务 service network start --启动网络服务

    • 查看防火墙情况:

      • service iptables status
      • systemctl status firewalld(7.0之后的版本)
    • 测试某个端口是否在监听:telnet

    • 查看服务名:

      • 方式1:使用setup->系统服务就可以看到

        前面带*的为自启动的,光标停在上面按空格可以取消自启动 按tab退出

      • 方式2:/etc/init.d/服务名称 ls -l /etc/init.d --查看init.d下的服务名称

    • 服务的运行级别(runlevel):

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Qb7FjTDX-1649384726270)(C:\Users\Lenovo\AppData\Roaming\Typora\typora-user-images\image-20220406111908609.png)]

      • 查看或修改默认级别:systemctl get-default --查看当前服务级别 systemctl set-default multi-user. target

        vim /etc/inittab

      • 每个服务对应的每个运行级别都可以设置

    • 如果不小心将默认的运行级别设置成0或者6,怎么处理?

      • 进入单用户模式,修改成正常的即可。
    • chkconfig:可以给每个服务的各个运行级别设置自启动/关闭 —不适用于Ubuntu系统可用 sudo apt-get install sysv-rc-conf

      • 查看xxx服务:chkconfig –list | grep xxx

      • 查看服务的状态:chkconfig 服务名 --list

      • 给服务的运行级别设置自启动:chkconfig –level 5 服务名 on/off

      • 要所有运行级别关闭或开启:chkconfig 服务名 on/off

    • 应用实例查看防火墙状况,关闭和重启防火墙

      • systemctl status firewalld ubuntu下 ufw status

      wsl2里面没有 systemd 命令,我们需要用 sudo /etc/init.d/docker start 代替 sudo systemctl start docker

      • systemctl stop firewalld systemctl start firewalld 临时生效

      • systemctl is-enabled firewalld --判断是否是自启动 systemcal disable firewalld --设置为开机不自启动

        注:上面两个命令对于Centos 7 以后的系统的3和5运行级别同时生效

    • firewall指令

      • firewall-cmd --permanent --add-port=111/tcp --在防火墙中开放端口111打开后需 firewall-cmd --reload
      • firewall-cmd --permanent --remove-port=111/tcp --在防火墙中关闭端口111 reload
      • firewall-cmd --permanent --query-port=111/tcp —查询端口是否开放
  • 动态监控进程

    • top [选项]

    • top和ps命令很相似。它们都用来显示正在执行的进程。top和ps最大的不同之处在于top在执行一段时间可以更新正在运行的进程。

    • -d 秒数:指定top命令每隔几秒更新。默认是3秒。

    • -i:使top不显示任何闲置或者僵死进程。

    • -p:通过指定监控进程ID来仅仅监控某个进程的状态。

    • 案例1:监控特定用户:top查看进程;u输入用户名。

      top ; u ; 输入用户: Tom

    • 案例2:终止指定的进程:top查看进程;k输入要结束的进程。

    • 案例3:指定系统状态更新的时间(每隔10秒自动更新,默认是3秒):top -d 10

    • 交互操作说明:

      • P:以CPU使用率排序,默认就是此项
      • M:以内存的使用率排序
      • N:以PID排序
      • q:退出top
  • 监控网络状态

    • netstat [选项]
    • -an:按一定顺序排列输出
    • -p:显示哪个进程在调用

RPM

  • RPM:RedHat Package Manager,红帽软件包管理工具。

  • RPM查询已安装的rpm列表:rpm -qa | grep xx

    示例:查看当前系统是否安装Firefox:rpm -qa | grep firefox

  • rpm包的其它查询指令:

    • rpm -qa:查询所安装的所有rpm软件包
    • rpm -qa | more
    • rpm -qa | grep xx
    • rpm -q xx:查询xx软件包是否安装
    • rpm -qi xx:查询软件包信息
    • rpm -ql xx:查询软件包中的文件
    • rpm -qf 文件全路径名:查询文件所属的软件包
  • 卸载rpm包:rpm -e 软件包名称 强制删除 rpm -e --nodeps foo

  • 删除时可能会发生依赖错误,忽视依赖强制删除的方法:rpm -e --nodeps 软件包名称

  • 安装rpm包:rpm -ivh 软件包全路径名称

    • i=install:安装
    • v=verbose:提示
    • h=hash:进度条

YUM

  • YUM:是一个shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。使用yum的前提是联网。
  • yum list | grep xx:查询yum服务器是否有需要安装的软件
    • Ubuntu下 apt list | grep
  • yum install xx:安装指定的yum包
  • yum -y remove xx:卸载指定的yum包
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值