目录

一、linux进程常用命令
<https://blog.csdn.net/qq_38469439/article/details/82150056#linux%E8%BF%9B%E7%A8%8B>

1、top、chkconfig、ps
<https://blog.csdn.net/qq_38469439/article/details/82150056#1%E3%80%81top%E3%80%81chkconfig%E3%80%81ps>

2、systemctl(centos 7版本命令)
<https://blog.csdn.net/qq_38469439/article/details/82150056#4.systemctl%EF%BC%88centos%207%E7%89%88%E6%9C%AC%E5%91%BD%E4%BB%A4%EF%BC%89>

3、firewalld
<https://blog.csdn.net/qq_38469439/article/details/82150056#5.firewalld(centos%207%E9%98%B2%E7%81%AB%E5%A2%99%E5%91%BD%E4%BB%A4)>
命令(详解已更新)

二、linux磁盘常用命令
<https://blog.csdn.net/qq_38469439/article/details/82150056#linux%E7%A3%81%E7%9B%98%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4>

1、df、du、free、fdisk、blkid、mount...
<https://blog.csdn.net/qq_38469439/article/details/82150056#1%E3%80%81df%E3%80%81du%E3%80%81free%E3%80%81fdisk%E3%80%81blkid%E3%80%81mount...>

三、日志
<https://blog.csdn.net/qq_38469439/article/details/82150056#%E4%B8%89%E3%80%81%E6%97%A5%E5%BF%97>

1、linux日志文件
<https://blog.csdn.net/qq_38469439/article/details/82150056#1%E3%80%81linux%E6%97%A5%E5%BF%97%E6%96%87%E4%BB%B6>

2、Linux日志分析常用基本工具命令(less/more/tail/head)
<https://blog.csdn.net/qq_38469439/article/details/82150056#2%E3%80%81Linux%E6%97%A5%E5%BF%97%E5%88%86%E6%9E%90%E5%B8%B8%E7%94%A8%E5%9F%BA%E6%9C%AC%E5%B7%A5%E5%85%B7%E5%91%BD%E4%BB%A4%EF%BC%88less%2Fmore%2Ftail%2Fhead%EF%BC%89>

四、用户密码
<https://blog.csdn.net/qq_38469439/article/details/82150056#%E5%9B%9B%E3%80%81%E7%94%A8%E6%88%B7%E5%AF%86%E7%A0%81>

1、chage 查看用户密码是否过期
<https://blog.csdn.net/qq_38469439/article/details/82150056#1%E3%80%81chage%20%E6%9F%A5%E7%9C%8B%E7%94%A8%E6%88%B7%E5%AF%86%E7%A0%81%E6%98%AF%E5%90%A6%E8%BF%87%E6%9C%9F>
​ <https://blog.csdn.net/qq_38469439/article/details/82150056#%E2%80%8B>

2、与用户相关的配置文件
<https://blog.csdn.net/qq_38469439/article/details/82150056#2%E3%80%81%E4%B8%8E%E7%94%A8%E6%88%B7%E7%9B%B8%E5%85%B3%E7%9A%84%E9%85%8D%E7%BD%AE%E6%96%87>

3、用户分类
<https://blog.csdn.net/qq_38469439/article/details/82150056#3%E3%80%81%E7%94%A8%E6%88%B7%E5%88%86%E7%B1%BB>

4、用户登录出现问题如何处理
<https://blog.csdn.net/qq_38469439/article/details/82150056#4%E3%80%81%E7%94%A8%E6%88%B7%E7%99%BB%E5%BD%95%E5%87%BA%E7%8E%B0%E9%97%AE%E9%A2%98%E5%A6%82%E4%BD%95%E5%A4%84%E7%90%86>

5、查询用户的操作(last、history)
<https://blog.csdn.net/qq_38469439/article/details/82150056#5%E3%80%81%E6%9F%A5%E8%AF%A2%E7%94%A8%E6%88%B7%E7%9A%84%E6%93%8D%E4%BD%9C%EF%BC%88last%E3%80%81history%EF%BC%89>

五、常用服务端口
<https://blog.csdn.net/qq_38469439/article/details/82150056#%E4%BA%94%E3%80%81%E5%B8%B8%E7%94%A8%E6%9C%8D%E5%8A%A1%E7%AB%AF%E5%8F%A3>

六、跟网络有关的命令工具
<https://blog.csdn.net/qq_38469439/article/details/82150056#%E5%85%AD%E3%80%81%E8%B7%9F%E7%BD%91%E7%BB%9C%E6%9C%89%E5%85%B3%E7%9A%84%E5%91%BD%E4%BB%A4%E5%B7%A5%E5%85%B7>

1、不同系统重启网络服务命令
<https://blog.csdn.net/qq_38469439/article/details/82150056#6%E3%80%81%E4%B8%8D%E5%90%8C%E7%B3%BB%E7%BB%9F%E9%87%8D%E5%90%AF%E7%BD%91%E7%BB%9C%E6%9C%8D%E5%8A%A1%E5%91%BD%E4%BB%A4>

2、ping、netstat、traceroute、telnet、tcpdump(抓包)
<https://blog.csdn.net/qq_38469439/article/details/82150056#2%E3%80%81ping%E3%80%81netstat%E3%80%81traceroute%E3%80%81telnet%E3%80%81tcpdump(%E6%8A%93%E5%8C%85)>
、curl、tracepath

3、跳板机无法远程连接虚机排错方法
<https://blog.csdn.net/qq_38469439/article/details/82150056#3%E3%80%81%E8%B7%B3%E6%9D%BF%E6%9C%BA%E6%97%A0%E6%B3%95%E8%BF%9C%E7%A8%8B%E8%BF%9E%E6%8E%A5%E8%99%9A%E6%9C%BA%E6%8E%92%E9%94%99%E6%96%B9%E6%B3%95>

七、其他
<https://blog.csdn.net/qq_38469439/article/details/82150056#%E5%85%AD%E3%80%81%E5%85%B6%E4%BB%96%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4>

1、crontab、date
<https://blog.csdn.net/qq_38469439/article/details/82150056#1%E3%80%81crontab%E3%80%81date>

2、客户端同步ntp服务器时间
<https://blog.csdn.net/qq_38469439/article/details/82150056#2%E3%80%81%E5%AE%A2%E6%88%B7%E7%AB%AF%E5%90%8C%E6%AD%A5ntp%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%97%B6%E9%97%B4>

未完待续~
<https://blog.csdn.net/qq_38469439/article/details/82150056#%E6%9C%AA%E5%AE%8C%E5%BE%85%E7%BB%AD~>

一、linux进程常用命令

1、top、chkconfig、ps

* top
查看cpu负载、正在运行的进程信息、内存使用信息

* chkconfig
用于设定系统的各种服务,例如设置crontab服务开机自启:chkconfig –level 35 crond on

* ps
命令默认情况下,只会显示运行在当前控制台下的属于当前用户的进程

ps命令的常用参数有:

* -e,-A 显示所有进程
* -f 显示完整格式的输出
* -l 显示长列表
* -a,所有进程,加上-x参数会显示没有控制终端的进程
* -u username,显示指定用户的进程,例如ps -u ltc
* -aux 按照CPU或者内存用量来筛选进程,例如ps -aux --sort -pcpu或ps -aux --sort -pmem
* -C cmdlist,显示包含在cmdlist列表中的进程,例如ps -C test
* -L 显示进程中的线程,例如ps -L 123,123为进程ID
* -j 显示任务信息
* -H 用层级显示进程,树状结构
2、systemctl(centos 7版本命令)

systemctl是centos7版本的命令,类似于之前版本的services,用于启动/关闭服务、查询服务状态等

systemctl start/stop/restart firewalld 更改防火墙的状态

systemctl list-unit-files     查询所有系统服务

3、firewalld(centos 7防火墙命令)

firewall-cmd 是
firewalld的字符界面管理工具,firewalld是centos7的一大特性,最大的好处有两个:支持动态更新,不用重启服务;第二个就是加入了防火墙的“zone”概念。

firewalld跟iptables比起来至少有两大好处:

firewalld可以动态修改单条规则,而不需要像iptables那样,在修改了规则后必须得全部刷新才可以生效。 
firewalld在使用上要比iptables人性化很多,即使不明白“五张表五条链”而且对TCP/IP协议也不理解也可以实现大部分功能。 
firewalld自身并不具备防火墙的功能,而是和iptables一样需要通过内核的netfilter来实现,也就是说firewalld和
iptables一样,他们的作用都是用于维护规则,而真正使用规则干活的是内核的netfilter,只不过firewalld和iptables的结
构以及使用方法不一样罢了。

 etc/sysconfig/firewalld  防火墙配置文件 

防火墙命令:
# 安装firewalld yum install firewalld firewall-config systemctl start firewalld
# 启动 systemctl status firewalld # 或者 firewall-cmd --state 查看状态 systemctl
disable firewalld # 停止 systemctl stop firewalld # 禁用 # 关闭服务的方法 #
你也可以关闭目前还不熟悉的FirewallD防火墙,而使用iptables,命令如下: systemctl stop firewalld systemctl
disable firewalld yum install iptables-services systemctl start iptables
systemctl enable iptables
 配置firewalld
firewall-cmd --version # 查看版本 firewall-cmd --help # 查看帮助 # 查看设置: firewall-cmd
--state # 显示状态 firewall-cmd --get-active-zones # 查看区域信息 firewall-cmd
--get-zone-of-interface=eth0 # 查看指定接口所属区域 firewall-cmd --panic-on # 拒绝所有包
firewall-cmd --panic-off # 取消拒绝状态 firewall-cmd --query-panic # 查看是否拒绝
firewall-cmd --reload # 更新防火墙规则 firewall-cmd --complete-reload #
两者的区别就是第一个无需断开连接,就是firewalld特性之一动态添加规则,第二个需要断开连接,类似重启服务 # 将接口添加到区域,默认接口都在public
firewall-cmd --zone=public --add-interface=eth0 # 永久生效再加上 --permanent
然后reload防火墙 # 设置默认接口区域,立即生效无需重启 firewall-cmd --set-default-zone=public #
查看所有打开的端口: firewall-cmd --zone=dmz --list-ports # 加入一个端口到区域: firewall-cmd
--zone=dmz --add-port=8080/tcp # 若要永久生效方法同上 #
打开一个服务,类似于将端口可视化,服务需要在配置文件中添加,/etc/firewalld 目录下有services文件夹,这个不详细说了,详情参考文档
firewall-cmd --zone=work --add-service=smtp # 移除服务 firewall-cmd --zone=work
--remove-service=smtp # 显示支持的区域列表 firewall-cmd --get-zones # 设置为家庭区域
firewall-cmd --set-default-zone=home # 查看当前区域 firewall-cmd --get-active-zones #
设置当前区域的接口 firewall-cmd --get-zone-of-interface=enp03s # 显示所有公共区域(public)
firewall-cmd --zone=public --list-all # 临时修改网络接口(enp0s3)为内部区域(internal)
firewall-cmd --zone=internal --change-interface=enp03s #
永久修改网络接口enp03s为内部区域(internal) firewall-cmd --permanent --zone=internal
--change-interface=enp03s
 服务管理
显示服务列表 Amanda, FTP, Samba和TFTP等最重要的服务已经被FirewallD提供相应的服务,可以使用如下命令查看:
firewall-cmd --get-services # 允许SSH服务通过 firewall-cmd --enable service=ssh #
禁止SSH服务通过 firewall-cmd --disable service=ssh # 打开TCP的8080端口 firewall-cmd
--enable ports=8080/tcp # 临时允许Samba服务通过600秒 firewall-cmd --enable service=samba
--timeout=600 # 显示当前服务 firewall-cmd --list-services # 添加HTTP服务到内部区域(internal)
firewall-cmd --permanent --zone=internal --add-service=http firewall-cmd
--reload # 在不改变状态的条件下重新加载防火墙
 端口管理
# 打开443/TCP端口 firewall-cmd --add-port=443/tcp # 永久打开3690/TCP端口 firewall-cmd
--permanent --add-port=3690/tcp #
永久打开端口好像需要reload一下,临时打开好像不用,如果用了reload临时打开的端口就失效了 # 其它服务也可能是这样的,这个没有测试
firewall-cmd --reload # 查看防火墙,添加的端口也可以看到 firewall-cmd --list-all
直接模式
# FirewallD包括一种直接模式,使用它可以完成一些工作,例如打开TCP协议的9999端口 firewall-cmd --direct
-add-rule ipv4 filter INPUT 0 -p tcp --dport 9000 -j ACCEPT firewall-cmd
--reload
控制端口 / 服务

          可以通过两种方式控制端口的开放,一种是指定端口号另一种是指定服务名。虽然开放 http 服务就是开放了 80
端口,但是还是不能通过端口号来关闭,也就是说通过指定服务名开放的就要通过指定服务名关闭;通过指定端口号开放的就要通过指定端口号关闭。还有一个要注意的就是指定端口的时候一定要指定是什么协议,tcp
还是 udp。知道这个之后以后就不用每次先关防火墙了,可以让防火墙真正的生效。
firewall-cmd --add-service=mysql # 开放mysql端口 firewall-cmd
--remove-service=http # 阻止http端口 firewall-cmd --list-services # 查看开放的服务
firewall-cmd --add-port=3306/tcp # 开放通过tcp访问3306 firewall-cmd
--remove-port=80tcp # 阻止通过tcp访问3306 firewall-cmd --add-port=233/udp #
开放通过udp访问233 firewall-cmd --list-ports # 查看开放的端口
<>伪装 IP
firewall-cmd --query-masquerade # 检查是否允许伪装IP firewall-cmd --add-masquerade #
允许防火墙伪装IP firewall-cmd --remove-masquerade# 禁止防火墙伪装IP
端口转发

          端口转发可以将指定地址访问指定的端口时,将流量转发至指定地址的指定端口。转发的目的如果不指定 ip 的话就默认为本机,如果指定了 ip
却没指定端口,则默认使用来源端口。 如果配置好端口转发之后不能用,可以检查下面两个问题:

* 比如我将 80 端口转发至 8080 端口,首先检查本地的 80 端口和目标的 8080 端口是否开放监听了
* 其次检查是否允许伪装 IP,没允许的话要开启伪装 IP firewall-cmd
--add-forward-port=port=80:proto=tcp:toport=8080 # 将80端口的流量转发至8080 firewall-cmd
--add-forward-port=proto=80:proto=tcp:toaddr=192.168.1.0.1 #
将80端口的流量转发至192.168.0.1 firewall-cmd
--add-forward-port=proto=80:proto=tcp:toaddr=192.168.0.1:toport=8080 #
将80端口的流量转发至192.168.0.1的8080端口
* 当我们想把某个端口隐藏起来的时候,就可以在防火墙上阻止那个端口访问,然后再开一个不规则的端口,之后配置防火墙的端口转发,将流量转发过去。
* 端口转发还可以做流量分发,一个防火墙拖着好多台运行着不同服务的机器,然后用防火墙将不同端口的流量转发至不同机器。
 

二、linux磁盘常用命令

1、df、du、free、fdisk、blkid、mount...

* df
显示磁盘分区可用磁盘空间,常用参数有:-h(以kb以上格式显示数字)、-a(显示全部)



* du
查看文件或目录的磁盘使用空间:



* free
查看系统内存和swap分区使用情况:-b,-k,-m,-g参数表示数据以什么单位显示



* fdisk

命令给磁盘分区,查询磁盘分区情况,常用参数-l(列出所有分区信息),分区内置参数:n(新建分区)、p(显示硬盘所有分区)、t(转换分区格式)、w(保存分区并退出)



* blkid
主要用来对系统的块设备(包括交换分区)所使用的文件系统类型、LABEL、UUID进行查询



* mount
主要用于文件系统挂载,常用参数有-o(异步模式、同步模式)、-t(要挂载的文件系统类型)

三、日志

1、linux日志文件

* 存放日志文件目录:/var/log
* /var/log/messages —
包括整体系统信息,其中也包含系统启动期间的日志。此外,mail,cron,daemon,kern和auth等内容也记录在var/log/messages日志中。
* /var/log/boot.log — 包含系统启动时的日志
* /var/log/dpkg.log – 包括安装或dpkg命令清除软件包的日志
* /var/log/daemon.log — 包含各种系统后台守护进程日志信息。
* /var/log/kern.log – 包含内核产生的日志,有助于在定制内核时解决问题。
* /var/log/lastlog — 记录所有用户的最近信息。
* /var/log/user.log — 记录所有等级用户信息的日志。
* /var/log/cron — 每当cron进程开始一个工作时,就会将相关信息记录在这个文件中。
* /var/log/mail/ –  这个子目录包含邮件服务器的额外日志。
2、Linux日志分析常用基本工具命令(less/more/tail/head)

* less/more 常用于日志文件阅读, less可上下翻页、more只能下翻页、Q退出阅读。
* tail/head  常用于日志文件阅读,tail从文件末尾取几行显示、head从文件首取几行阅读,常用格式:cat
/var/log/boot.log | tail -n 20 


四、用户密码

1、chage 查看用户密码是否过期

常用命令格式:chage -l root;

* last password change 密码最后一次的修改日期
* password expires 密码到期时间
* password inactive 密码失效时间
* account expires 账户到期时间


chage的参数包括 :
-m 密码可更改的最小天数。为零时代表任何时候都可以更改密码。 
-M 密码保持有效的最大天数。 
-W 用户密码到期前,提前收到警告信息的天数。 
-E 帐号到期的日期。过了这天,此帐号将不可用。 
-d 上一次更改的日期 
-i 停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。 
-l 例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。

2、与用户相关的配置文件
[root@svn /]# ll /etc/passwd /etc/shadow /etc/group /etc/gshadow -rw-r--r-- 1
root root 594 Jul 3 14:01 /etc/group #——>用户组的信息 ---------- 1 root root 484 Jul
3 14:01 /etc/gshadow #——>用户组的密码文件信息 -rw-r--r-- 1 root root 1091 Jul 3 13:56
/etc/passwd #——>用户的信息
3、用户分类

①超级用户:root,UID为0

②普通用户:centos 7以前版本,UID是500-65535的用户,centos7中UID是1000-65535的用户

③虚拟用户:centos
7以前版本,UID在1-499的用户,centos7中UID在1-999,一般不能登录,满足文件或服务启动的需要,/sbin/nologin

4、用户登录出现问题如何处理

[root@svn ~]# su - oldboy
-bash-4.1$ 
-bash-4.1$ 
解答:原因是这个oldboy用户家目录下的环境变量文件被删除了,只需到/etc/skell/目录下,复制
.bash_profile
.bashrc到当前用户下,然后重新登录oldboy用户即可

5、查询用户的操作(last、history)

liinux系统中last查询用户登录历史、history查询用户使用过的操作命令

Windows 从任务管理器中查看用户再登情况

五、常用服务端口

* ssh--22
* 1521--oracle
* 443--https
* 80--http
六、跟网络有关的命令工具

1、不同系统重启网络服务命令

* 红帽:/etc/rc.d/init.d/network restart
* centos 6:service network restart
* centos 7:systemctl restart network
* windows08:service network restart
* ubuntu:service network-manager restart
2、ping、netstat、traceroute、telnet、tcpdump(抓包)

* ping 常用参数
 -l   定义发送数据包的大小,默认情况下是32字节,利用它可以最大定义到65500字节 

-n  定义向目标地址发送数据包的次数

-t   表示不间断向目标地址发送数据包,直到我们强迫其停止



* tcpdump是一个抓包工具命令,需要用yum安装后使用,
yum install tcpdump  安装

tcpdump -i ens33  抓取网卡ens33(centos 7中称ens33,centos6.5称eth0)包



* telnet远程连接工具
常用格式:telnet +IP 或者 telnet + IP + 端口

例如:telnet 10.16.0.23                      telnet 10.16.0.23 1521(端口号)



 

* traceroute路由跟踪 (centos 7无此命令,需要yum安装traceroute包:yum install traceroute)
如果用traceroute -q 4 www.58.com,表示向每个网关发送4个数据包。有时我们traceroute一台主机时,会看到有一些行是以
星号表示的。出现这样的情况,可能是防火墙封掉了ICMP的返回信息
,所以我们得不到什么相关的数据包返回数据。有时我们在某一网关处延时比较长,有可能是某台网关比较阻塞,也可能是物理设备本身的原因。当然如果某台DNS出现问题时,不能解析主机名、域名时,也会 有延时长的现象;您可以加
-n参数来避免DNS解析,以IP格式输出数据。

* netstat 监听端口(centos 7无此命令,需要yum安装net-tools包)
常用命令格式:

netstat -nat 查看正在监听的端口状态

netstat -ntlp  查看udp协议端口和在此端口开启的进程



netstat -nulp  查看udp协议端口和在此端口开启的进程



netstat -a 查看所有端口

3、跳板机无法远程连接虚机排错方法

* 查看远程连接端口有没有打开
* 打开虚机的远程设置(若虚机为window08)
* 查看虚机的防火墙设置
* 虚机ping跳板机看通不通,不通的话排查网卡
* 虚机尝试用telnet命令远程连接跳板机(若虚机为Linux)
七、其他

1、crontab、date

* crontab 
crontab周期性任务,常用参数:

-e:编辑某个用户的crontab文件内容。

-l:显示某个用户的crontab文件内容,

-r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。

格式如下:* * * * * +命令,前五个字段代表的意思是 分、时、日、月、周

与crontab相关的文件:

/etc/cron.deny  不允许使用crontab服务的用户名单

/etc/cron.allow  允许使用crontab服务的用户名单

/var/spool/cron 存放crontab文件的目录,以用户命名

~注,有些系统默认没有crontab服务,此时需要用yum安装:yum install crontabs;  /sbin/service crond
start//启动服务

* date
date 查看本地时间

date -s 18:09:01 临时更改本地时间

date -s 991128 设置时间为1999年11月28号     

date -s "2008-08-08 12:00:00" 设置时间伟2008年8月8号12:00

2、客户端同步ntp服务器时间

1、客户端必须有ntp服务,先用rpm -qa ntp*查询是否安装ntp服务

2、若系统没有该服务,则yum安装,yum install ntp



3、which ntpdate查询ntpdate服务位置

  

4、加入定时任务:crontab -e编辑周期性,任务命令格式 */5 * * * * /sbin/ntpdate
+域名或IP(世界时间域名time.nist.gov、time.windows.com、也可以是公司自己ntp服务器的域名或IP),

  

5、检验是否时间是否能同步:先更改当前时间date -s +时间;一个任务周期后看时间是否同步ntp服务   

未完待续~

本篇防火墙部分博文转载地址 
https://blog.csdn.net/GMingZhou/article/details/78090963
<https://blog.csdn.net/GMingZhou/article/details/78090963>

 

 

 

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:637538335
关注微信