1.如何有效的对Linux进行管理?以Linux的思路去思考问题!
1)对于Windows用户来说,一开始面对Linux,可能觉得无从下手。Linux传承于UNIX,因此管理方法和UNIX基本类似,那么,如何最快的了解Linux、管理Linux呢?正确答案是,以Linux的思维方式系统性思考问题。
2)如何迅速定位问题?如何有效解决问题?如何判断系统是否异常?对于不熟悉Linux思维方式的用户来说,会觉得一头雾水,毫无概念,而当用户熟悉了Linux的思维方式,以Linux思路去考虑问题之后,就能快速有效的定位并解决问题。
3)Linux是一个面向文件的操作系统。所有的应用、管理都是基于文件的。例如:修改系统配置是修改配置文件,检查或修改系统当前运行内存数据也可以通过文件进行。所以刚入门的用户一定要首先树立一切都是文件的思想;碰到任何问题或需要任何操作的时候,首先想到的就是检查、执行或修改某个文件,然后再查看新出现的情况。
4)基本上,Linux是一个以命令行为主要管理方式的操作系统,当然它也有图形窗口操作界面,在我看来,很多操作特别是高级管理命令都是通过命令行执行效率最高的。
5)其次,Linux的日志非常完善,也至关重要,尤其是对于管理员来说,系统的一切情况和状态基本都来自日志。理解并使用Linux日志,是正确管理Linux一个必不可少的环节。
6)Linux是一个以配置文件为管理基础的操作系统,它的配置文件是分离的,很可能一个软件的配置文件有好几个,系统的各方面配置都以各自的配置文件形式出现,这样,某个地方配置的改变,很容易管理,不会影响到系统其他配置,出现问题也容易排除。不像Windows什么数据、信息都放到一个注册表中,既互相影响又难于检索和管理。
7)最后,Linux的所有应用、管理和配置,都有很多程序来辅助完成,在管理过程中,如果懂得程序的基本思想如变量、流程控制等,那么将对理解和管理Linux起到事半功倍的效果。
2.出现问题时,如何处理?
1)首先,出现问题可以分为两种场景,一种是已正确运行的系统出现了问题,另一种是新的操作或配置造成了问题
2)解决思路一:对于已经正确运行的系统出现问题,首先要做的是,保护现场,呵呵,没错,不对系统做任何可能改变系统或文件状态的操作,而应当以查看模式如less、more、cat、tail或head去查看文件,也不要删除、更名任何目录或文件,以防止误操作破坏现场,造成问题原因无法找到。
3)解决思路二:对于系统问题,特别是怀疑有人为破坏、入侵或病毒的情况,应当马上备份日志,将系统和应用日志复制到其他机器或本地。
4)解决思路三:对于新的操作或配置导致的问题,最好的办法是养成良好的习惯,定期备份重要文件,并在修改任何配置文件前都首先保存一份该文件然后进行编辑,这样,在出现问题时,可以比照新、旧两个文件,很容易找到问题的所在。
5)解决思路四:如果凭自己的力量无法解决问题,Internet是最好的老师,对搜索引擎善加利用,一定能对问题有更加深入的认识。
6)具体查找命令建议:假设我要系统中文件名包含armjishu字符串的文件,那么find命令它会找出所有文件名中带armjishu的文件,而locate只会在一个数据库文件中查找armjishu(这个数据库保存系统中的所有文件名和路径,以便于快速查找,可以用工具updatedb来更新、对于未加入该数据库中的文件,如用户新创建的文件,locate是不会去找的),whereis默认规则会在可执行命令、源程序和man手册中查找armjishu。
3.关于文件,一切都是文件!!!
1)Linux与Windows在概念上的一个显著的区别,也是初学者觉得很难理解的一点,就是Linux没有Windows下那些分门别类的设备、资源和管理方式,取而代之的是文件,所有的对象,如内存数据、设备、资源和系统状态都是以文件的形式展现在用户面前的,而用户也是通过对这些文件的管理来完成对系统的配置和管理的。
2)在Windows下查看系统中拥有的设备,需要在系统属性中查看,使用某个设备更是需要不同的方式;而在Linux下,所有的设备,从硬盘到U盘,从声卡到鼠标,都是通过/dev/下的文件来体现的。
3)Linux一切都是文件!!!好处有哪些呢?第一个好处大大简化Linux自身的管理开销,由于所有的设备都映射为某个文件,那么对所有设备的操作都容易实施统一的基本管理接口;这样就引申出第二个好处,编程的大大简化,系统本身将所有设备映射为文件系统,那么程序也只需要通过操作系统实施对文件的操作,就能达到控制设备、使用设备的目的。
4)一切都是文件的后果,就是所有系统配置都是文件,所有系统状态也通过文件去访问,这是Windows不可能做到的,这也是Linux高效、精练的一个原因。例如:我们通过/etc/sysconfig/network-scripts/ifcfg-xxx设置网卡的IP地址等属性等,通过查看/proc/cpuinfo的内容来得到系统CPU信息,通过查看/proc/meminfo的内容来得到系统内存容量及使用情况,更加有趣的是,我们可以通过修改某些文件的内容来达到修改系统内存,从而实时改变系统配置的目的。
5)大家一定会觉得奇怪,为什么使用这么怪异的方式来获得系统信息呢?其实,这一点也不怪异,正是通过这种方式,系统和应用程序可以很方便、高效的交换信息,无需任何中间接口,应用程序就能快速得到系统的所有信息和状态,这种效率比在外面包装一层系统API调用要高得多。
6)我们可以豪不夸张的说,只要理解了Linux的文件管理,Linux管理就已经入门了。
|