当前位置:Linux教程 - Linux - Linux的基本概念

Linux的基本概念



        

    当您在自己的电脑上安装Linux后,面对的只是几个目录,却不知道接下来Linux到底该怎么玩?笔者劝您先别急,看完一下的一些概念再说吧!

    1.系统管理者(root)

    因为Linux是一个多人多工的作业系统,这也就是说,Linux可以同时有许多的使用者在您的电脑中做他们各自的工作,并不影响彼此,这些人在Linux都有自己的帐号,帐号就如同是一个身份对应着一个密码,想当然的,这样子的系统必须有一个系统的管理者来掌控整个系统的最高权力,您若曾使用过WindowsNT的话,root就相当於NT上的administrator帐号,是整个系统的最高总指挥官。root有权利修改,删除Linux上任何其他帐号使用者的档案或正在执行中的程式。

    2.使用者群组(group)

    使用者群组是一个将使用者分类的观念,简单的说就是方便管理,将不同领域的使用者规划到不同的群组中,只有相同群组可以共享一些群组内的资料,这样可以让使用者间可以轻易组成一个个的group来合作发展他们各自的目标;举个例子来说,若是我们现在一群使用者想要一起合作发展一个计划,希望我们这些使用者都可以共享计划里的相关资料,但是又不希望其他非我们这群使用者的人来看这些资料时,就可以建立一个群组(group)来达到这样的目的。

    3.档案权限与Process权限

    在一个多人多工的系统中,每位系统使用者的个人隐私是非常重要的,因此Linux的设计里,每个帐号都有属於其个人的目录用以存放档案资料,此外,每个档案都有其档案的权限,用来限定档案的所有人与群组(group)和其他人对此一档案的读取,写入与执行的权限,只有符合这个权限设定的使用者才能对这个档案采取正确的动作(root除外,因为root最大嘛!:P),其实不只是档案有权限的限定,就连目录也有权限喔!(请参考下一节所介绍的ls与chmod指令)

    谈完了档案权限,该来说明一下什麽是Process权限了,Linux可以同时间执行许多使用者的程式,而这麽多的使用者同时间执行的许多程式,我们可以叫这些正在执行的程式为Process(ps.严格的Process定义并非如此),也可以看做是系统目前正在执行的工作,既然同时间有许多人的工作正在进行,为了不让使用者间的工作影响到其他人,或是为了确保自己的工作不会被其他人所影响,因此每个Process都必须要限定权限,只有启动这个Process的使用者本身才能够暂停或终止这个Process(root还是除外)。

    4.UID&PID

    UID(USERID)其实就是数字型的帐号,是作业系统本身在运作时用来判别使用者的依据,相关的设定请参考待会儿介绍的密码设定档(/etc/pa-sswd)与adduser指令;PID(ProcessID)则是系统中目前正在执行的所有Process都会有其不同的编号,供系统运作时判别,与此相关的指令是kill,将在下面会说明。

    5.Links

    在Windows95下有个功能称做「捷径」,功能就相当於Linux下的Links,主要的功能是当在不同的目录中需要相同的档案时,可以不需要重新复制一分相同大小的档案,以节省空间,若是有更新动作时更可以只要更新一份就等於全部更新了。与此功能相关的指令是ln稍等将会介绍。

    6.shell&kernel

    shell(壳)的功能就如同是DOS下的comm-and.com,是一种命令解译器,我们若是在DOS下输入一些dir、cd等非程式的命令时,则由命令解译器来负责执行我们使用者所输入的指令,所以当我们输了错误的命令时,系统会回应comm-andnotfound的原因了,上面这种解释shell是站在以DOS使用者的立场来说明的,若是站在Linux的角度来说明,就正如同shell的意思(壳)一样,shell是站在使用者与作业系统核心(kernel)的中间,负责处理使用者输入的命令并传达给系统核心去处理命令的工作,shell就像是保护kernel的壳一样。

    至於Linux的壳可不像DOS(4DOS)只有一两种,不同的壳有不同的长相与功能,可以依照使用者的喜好来选择使用。常见的shell有tcsh、csh、sh、bcsh等等。Kernel是Linux的系统核心,负责分配处理系统中所有的Process,例如决定什麽时间该将那一个Process送往CPU执行,并依照不同优先的顺序来决定下一个该执行的是那一个Proce-ss,此外,系统核心还掌控着系统的一切资源,如记忆体、周边设备等等。

    7.<&>&¦

    看到<和>可别吓一跳,其实代表的不是数学上的小於和大於喔!而是代表一种档案输入输出转向的功能,这功能在DOS下也有,只是不常使用而已,但是在Linux下,它们可是不可少的功能喔!至於|,英文叫它pipe(管线),功能就和水管差不多,可以连接前後两个程式,若a|b则表示将a的输出直接变成b的输入,与档案转向符号不同的是,b必须是一个可执行的程式。

    8.Device

    Linux对於电脑周边设备的处理方式与其他作业系统有很大的不同,它是将这些周边装置(如滑鼠、印表机、音效卡......etc)当做档案来处理的,这麽做的好处是可以简化与周边设备相关的程式。

    9.daemon(伺服程式)

    Linux上可以同时间提供许多的Service,例如WWWServer、BBS、FTPServer等等,能够提供这些Service的程式都统称为daemon程式了,通常这些daemon大都是由root来启动的背景执行程式。

    10.前景执行与背景执行(&)

    由使用者所启动执行的程式有两种执行的模式,一种是前景执行,即是程式执行後,使用者的终端画面将会锁定接收此一程式的输出,直到程式执行完毕後才会跳回shell的命令提示状态;另一种则是背景执行模式,此种模式下执行的程式将不会锁定使用者的终端画面,因此使用者可以在程式执行中马上跳回shell的命令提示,还可以继续做其他的工作,通常在命令後空一格键入&,即以背景模式执行此一命令。例如:以手动方式来驱动WWWServer(apache),在命令提示下键入httpd&即可。

    11.make(编译)

    Linux是一套可以自我升级的作业系统,那是因为Linux本身即包含了几种不同的CorC++Compiler,使用者若是有安装这些Compiler,即可以在Linux下直接来编译程式,而这些编译程式的动作,我们一般又称做make,在Linux下使用者可以对软体有很大的掌握能力的原因之一,是因为Linux下的软体大都由使用者来make原始程式码,如此依照每个人的不同配备来做最佳的编绎,使用者功力若是足够甚至可以自行修改程式码,做出符合您理想中的软体,Linux吸引人的地方在此,也不言可喻。
    发布人:netbull 来自:非常Linux