当前位置: 首页 > 科技观察

教你五步处理Linux系统问题_0

时间:2023-03-20 19:00:00 科技观察

我们一直有这样一个愿望,我们身边的一切,比如车上的系统,家庭影院系统,电脑系统,或者Linux系统都能无误运行和。这个想法听起来不错,一般生活也是如此。  其实这是一分钱一分货。此外,除了供应商之外,您还可以从各种网站和论坛获得帮助。Linux用户组和您所在地区的其他Linux用户将非常乐意为您提供帮助。不要犹豫,利用这些资源!  其实很多时候,我们大多数Linux系统用户更喜欢自己去检修,自己解决自己在使用系统过程中遇到的问题。  我们不得不承认,解决任何类型的问题都是一门艺术和技能。解决技术问题,例如计算机故障,需要一系列的专业知识。  但是在我们实际解决问题的过程中,我们需要的不仅仅是问题和解决步骤的列表。这种只靠步骤清单来解决问题的方法就是我们俗称的“对症下药”。它来自观念陈旧的管理者(他们大多缺乏基本实践),听起来很理想,但经不起实践。那么,我们应该如何正确处理问题呢?  1。总结  以下是我解决Linux使用问题的五个基本步骤:  1。储备知识  2。观察问题  3.推测原因  4.自己动手  5.测试效果  但是当你在处理一个问题的时候,虽然你可能已经按照上面的步骤做了并没有真正意识到这一点。如果你每次急于解决问题时都遵循这个过程,那么你很可能在大多数时候都能成功解决它。这些方法步骤是通用的,适用于解决大多数问题,而不仅限于解决Linux或计算机问题。  多年来,我一直在使用这些方法步骤来解决电子和计算机问题,却没有意识到我在使用它。当我遇到难题时,标准化的解题流程让我更有效地解决问题。在处理问题的过程中,我会不断回顾自己走过的步骤,判断自己在哪一步,真正需要的时候也会重复一个合适的步骤。  您过去可能听说过一些其他方法适用于该问题。此过程的前三个步骤也称为识别问题,即找出问题的原因。最好的两个步骤是解决问题。  1。储备知识  拥有足够的知识是解决问题的第一步。至少要了解Linux的基础知识,甚至要熟悉Linux系统运行可能涉及的硬件、网络等可能影响Linux的环境因素,如温度、湿度、电气环境等。  获取知识的途径有很多种。您可以阅读相关书籍和杂志,并参加课程、研讨会和其他会议。您还可以与其他也使用Linux的知识渊博的人建立联系。  我个人的偏好是“玩”Linux。其实更准确的说法是用Linux进行实验性操作,比如搭建网络,然后把自己通过听课得到的经验和知识理顺一下。  记住,没有足够的知识,“抵抗是徒劳的”(借用博格的一句话)。知识就是力量。  2。观察问题  解决问题的第二步是观察问题的症状。重要的是要注意所有问题的特征。在解决问题之前观察哪些工作正常也很重要。  不是解决问题的时候,你只需要观察问题。  观察的重要部分之一是问问自己看到了什么,没有看到什么。除了你要问自己的具体问题外,还有一些一般性的问题要问自己:  这个问题的原因是硬件,Linux系统本身,应用软件,或者缺乏知识和培训相关人员。误操作?  ◆我以前遇到过这样的问题吗?  ◆有没有错误提示?  ◆日志里有关于这个问题的记录吗?电脑的最佳操作是什么?  ◆如果没有出现这个问题,正确的结果应该是什么?  ◆最近是否更改了与系统硬件和/或软件相关的设置?  这些问??题将在您努力寻找答案时自行揭晓。对您来说,收集尽可能多的信息更为重要。这将增加您对此类问题的理解以及彻底解决这些问题的知识。  利用网上资源搜索类似的错误,也许有人已经报告过这个问题并给出了解决方案。  当你收集数据时,永远不要假设你从别人那里得到的数据是正确的。请注意观察您工作的所有细节。如果您与远方的人一起工作,这可能是一个主要问题。这时候,细心的询问就变得至关重要了。当您试图确认您自己提供的信息时,允许远程访问系统问题的工具会非常有用。  在远程站点询问某人时,切勿提出引导性问题。他们会尽力帮助您并回答您的任何问题。  其他时候,你得到的答案通常取决于你问的人有多少Linux和计算机知识。当一个人了解或认为他了解计算机时,您得到的答案可能包含难以反驳的假设。与其问“你检查了吗?”,不如安排另一个人实际执行任务所需的检查。而且,与其告诉一个人他/她应该看到什么结果,不如简单地要求用户解释和描述他/她看到了什么。同样,远程访问机器允许您确认您提供的信息。  ***问题解决者是那些从不认为事情是理所当然的人。他们从不假设他们拥有的信息是100%正确和完整的。当你掌握的信息看起来自相矛盾时,如果你无能为力,那就重新开始。  3。推测原因  根据观察到的情况推断出问题的可能原因。  艺术也适用于解决问题。根据你的知识和过去的经验看问题是一种演绎的艺术,有点神奇。伴随着科学的方法,依靠灵感、直觉,或者神秘的心理过程,寻找一些有助于找到问题根源的蛛丝马迹。  在某些情况下,这是一个相当简单的过程。假设您看到一个错误代码,并通过查找现有文档来弄清楚它的含义。然后,运用你所知道的海量知识来推测问题的原因(这是解题过程中最艺术的一步)。在某些情况下,这种推测可能难以用作问题确定过程的一部分。  这种思辨过程有助于记忆问题特征而不是记忆问题。问题产生特征现象。但是你要解决的是问题而不是问题的特征。#p#  4。动手解决  现在是解决问题的时候了。不要害怕,这通常是最简单的部分,最难的部分(分析如何解决问题)刚刚过去。当您知道问题的原因时,正确解决问题就很容易了。  有多种解决方法,可能需要更换硬件驱动,或者更新一些软件程序。  对于一些有bug的软件,如果你或者你所在的组织没有足够的能力修复它,至少你可以通过适当的方式向作者或者其他组织报告bug。我已经使用Bugzila向RedHat报告了几个错误。任何人都可以创建自己的Bugzila帐户并查找现有错误或报告新错误。  5.测试效果  采取修复措施后,应进行测试。通常,这意味着从任务失败的地方重新运行和重复实验。  如果修复不起作用,您应该尝试从错误开始的地方再次运行该程序。由于错误可能会因您的修复而发生变化,因此请注意这一点并记录程序结果和问题特征,以便您可以为下一次修复迭代相应地修改您的解决方案。即使未能解决问题,问题特征的变化在后续处理中也有很大的参考价值。  2.举个例子  这是我几年前发生的一个案例。那时,我曾在实验室兼职担任Linux系统管理员。问题相当简单,但足以说明我概述的方法的步骤。  我收到了一封来自我们的一位测试人员的电子邮件。邮件说他安装的一款测试用软件崩溃了。错误消息是系统交换空间(SWAP)不足。这是用户在使用后给我的初步反馈和观察。  据我所知,用于测试应用程序的系统具有高达16GB的RAM和2GB的交换空间。而以往的使用经验也表明,这些电脑的swap空间几乎没有被使用,内存使用率往往低于25%。  根据以上几点,我推断问题不是真正的交换空间,因为这几乎是不可能的。但我仍然对此持怀疑态度,即使这种可能性很小。事实上,您可能还会发现很多程序提供的错误提示具有误导性,您自己观察的结果可以让您获得更多有用的信息。  我为测试者提供一些自己的意见。我登录到计算机并使用free命令检查内存和交换使用情况。我发现还有很多内存是空闲的,交换空间也没有被使用。据我所知,如果交换空间的实际使用为零,那么很有可能是可用的交换空间在开机后一直没有分配,内存没有进行分页。  根据我以往的经验,解决问题的关键是错误信息提示。从提示来看,程序似乎是想向系统申请一些资源,但是失败了。对于电脑来说,其他消耗性资源主要是CPU和硬盘空间。  看起来不像是CPU问题。于是用df命令查看文件系统,发现var文件夹满了。我推断完整的/var空间是问题的原因。  我们的系统通常为var文件夹设置1.5GB的大小。通常,我们将应用程序安装在/opt中。这也是我们测试的软件安装的地方。  我和测试人员讨论了这个问题,他告诉我他确实在/var目录中安装了应用程序。我告诉他先从/var中卸载已安装的应用程序,然后在/opt中重新安装。采取此措施后,我示意程序员进行测试,不出所料,问题顺利解决。  一般来说,要解决一个问题,至少需要重复一些步骤。例如,如果执行给定的修复不能解决问题,您可能需要尝试另一种方法,或者您可能需要返回到观察步骤并收集有关该问题的更多信息。  3。必要的过程分析  多年来,我一直在教别人如何修复硬件和软件问题。我也一直在思考人们使用的解决问题的思路是否已经足够标准化。当我被教导这个解决问题方法的步骤时,它让我非常清楚自己在尝试解决问题时的位置。这使我能够分析我哪里出错了并回到正轨。  您解决问题的方法可能会有所不同。也许你还没有意识到你的思考是一个描述性的、可重复的过程。但是,如果您已经成功解决了计算机的问题,那么您采用的方法就是一个很好的方法。了解这个解题方法流程,不管对你有用与否,都会帮助你解决以后遇到的问题。