Linux 服务的一般排错方法

对于 Linux 服务,想排错得心应手的话,先要养成良好的操作习惯。

(1)错误信息

一定要仔细查看接收到的错误信息。如果有错误提示的话,根据错误提示,去判断产生问题所在。

(2)配置文件

配置文件存放服务的设置信息, 用户可以修改配置文件, 以实现服务的特定功能。 但是,用户的配置失误, 会造成服务无法正常运行。 为了减少输入引起的错误, 很多服务的软件包,都自带配置文件检查工具,用户可以通过这些工具,对配置文件进行检查。

(3)日志文件

一旦服务出现问题,不要惊慌,用组合键 Ctrl+Alt+F1 到 F6 切换到另外一个文字终端,使用 tail 命令来动态监控日志文件。

[root@RHEL4 ~]#  testparm  -F  /var/log/messages

当遇到问题时查看日志是比较效率的解决方法。在Linux系统中,有三个主要的日志子系统:

1、连接时间日志

2、进程统计

3、错误日志

常用的日志文件如下:

access-log 纪录HTTP/web的传输

acct/pacct 纪录用户命令

aculog   纪录MODEM的活动

btmp    纪录失败的纪录

lastlog  纪录最近几次成功登录的事件和最后一次不成功的登录

messages  从syslog中记录信息(有的链接到syslog文件)

sudolog  纪录使用sudo发出的命令

sulog   纪录使用su命令的使用

syslog   从syslog中记录信息(通常链接到messages文件)

utmp    纪录当前登录的每个用户

wtmp    一个用户每次登录进入和退出时间的永久纪录

xferlog  纪录FTP会话

who:who命令查询utmp文件并报告当前登录的每个用户。Who的缺省输出包括用户名、终端类型、登录日期及远程主机。

w:w命令查询utmp文件并显示当前系统中每个用户和它所运行的进程信息。

last:last命令往回搜索wtmp来显示自从文件第一次创建以来登录过的用户。

ac:ac命令根据当前的/var/log/wtmp文件中的登录进入和退出来报告用户连结的时间(小时),如果不使用标志,则报告总的时间。

ac -d(回车)显示每天的总的连结时间

ac -p (回车)显示每个用户的总的连接时间

lastlog:lastlog文件在每次有用户登录时被查询。

可以使用lastlog命令来检查某特定用户上次登录的时间,并格式化输出上次登录日志/var/log/lastlog的内容。它根据UID排序显示登录名、端口号(tty)和上次登录时间。如果一个用户从未登录过,lastlog显示”**Never logged**。注意需要以root运行该命令,

二、网络排错的基本思路

    基本思路如下,这跟网上的大多数人写的应该是差不多的。

(1)检查物理链路是否有问题

(2)查看本机IP地址、路由、DNS的设置是否有问题

(3)测试网关或路由器的通畅情况。先测网关然后再测路由器,一级一级地测试

(4)测试ping公网ip的通畅情况(平时要记几个外部IP)

(5)测试DNS的通畅情况,可以直接ping网站地址

    下面的第三部分,就针对上面的基本思路来进行详细的说明。

    原文作者:极客与宽客
    原文地址: https://www.jianshu.com/p/2a5a75eba15d
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞