《鸟哥的linux私房菜(基础篇)》学习笔记_第1页
《鸟哥的linux私房菜(基础篇)》学习笔记_第2页
《鸟哥的linux私房菜(基础篇)》学习笔记_第3页
《鸟哥的linux私房菜(基础篇)》学习笔记_第4页
《鸟哥的linux私房菜(基础篇)》学习笔记_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《鸟哥的linux私房菜(基础篇)》学习笔记李晶目录第一部分:linux的规划与安装 11. linux历史与简介: 12. 分区: 13. 多重引导: 2第二部分:linux文件,目录与文件系统格式 21. 管理文件权限: 22. 管理文件以及目录: 33. 管理磁盘与文件系统: 34. 文件的打包压缩: 4第三部分:shell 41. vim: 42. shell: 53. 正则表达式: 64. shell编程: 7第四部分:用户管理 81. 用户账号及权限: 82. 磁盘管理: 83. crontab: 84. 作业管理: 9第五部分:系统管理员 101. 系统服务: 102. 软件安装: 113. x-window: 114. 内核编译: 11第一部分:linux的规划与安装这里个人相对来说比较熟悉,对于如何安装linux书上有详细介绍。不过我一般用的都是ubuntu,这个发行版的安装并不是很复杂。linux历史与简介: 计算机是由一堆硬件所组成的,操作系统是为了更加有效地控制和使用这些硬件资源。我们最熟悉的windows就是一种操作系统。但是linux是完全不同于windows的一种操作系统。众所皀知癿,Linux癿核心是由LinusTorvalds在1991年癿时候给他开发出来的。linux沿袭了unix的许多良好的特性,最重要的也是现今非常受欢迎的原因之一就是linux是开源的,并且在其之上的软件也是免费开源的,以此为基本最后发展出来了开源社区,对整个计算机科学的发展都有很重要的作用。 linux目前有着众多的发行版,RedHat,SuSE,Ubuntu,Fedora,Debian。我个人使用的是ubuntu-10.10。 linux的发展路径:Unix癿前身是由贝尔实验室(Belllab.)癿KenThompson利用汇编语言写成的,后来在1971-1973年间由DennisRitchie以C语言重新改写,才称为Unix。 1977年由BillJoy开发出BSD(BerkeleySoftwareDistribution),这些称为Unix-like的操作系统。 1984年由AndrewTannenbaum制作出Minix操作系统,该系统可以提供原始码以及软件; 1984年由RichardStallman提倡GNU计划,倡导自由软件(Freesoftware),强调其软件可以自由获得,修改,再发行。 1991年由芬兰大学生LinusTorvalds开发出Linux操作系统。Linux成功主要在于:Minix(Unix),GNU,Internet,POSIX及虚拟团队的产生。 Linux本身就是个操作系统,其开发网站在,我们亦称Linux操作系统最核心的数据为内核Kernel。 目前Linux核心的发展分为两种版本,分别是稳定版本偶数版,如2.6.X,适合商业和家用环境使用;一种是发展中版本如2.5.X版,适合开发特殊功能的环境。 Linuxdistributions的组成有:『LinuxKernel+FreeSoftware+Documentations(Tools)+可完全安装的程序』所制成癿一套完整的系统。分区:目前各种机器安装linux都比较方便了,特别是像我使用ubuntu10.10,基本上全是自动安装的,不过经常困惑我们的一般都是分区。如何分区才合理呢,对于初学者,分区可以直接只分一个根分区和交换(SWAP)分区。这里值得说一下的是磁盘只能分四个主分区。不过可以通过扩展分区来扩充,这样的话就是三个主分区和多个逻辑分区。SWAP分区的大小一般建议2倍于你的物理内存。将/home等数据量会较大的目录单独分区是一个非常不错的做法,具体分配多少容量,看你最终的数据量,估算后尽量多分。多重引导:目前我们使用学习linux的最大的苦恼就是关于如何与windows共存的问题了。书中详细介绍了如何安装centOS,附带很多截图,并且也描述了在已经装了windows的情况下如何设置多重引导。这个我也有过很多关于引导的经历。现在绝大多数的引导程序都会选择使用GRUB,这是一个交互式的引导程序。当我们的引导程序如果出现故障,或者是重装了windows的时候,我们将无法正常进入linux,如果使用的系统是ubuntu这个时候可以使用如下方法:用ubuntu9.10以上(9.10以下的就是修复grub1(如不会,在我博客另一章里有介绍))的系统盘,启动光盘选择“试用而不安装”,进入后打开终端(注意命令间的空格,特别是mnt前面有空格)1.sudo-i2.mount/dev/sda6/mnt3.mount/dev/sdaX/mnt/boot这一步是有给/boot单独分区的命令,若没单独分区跳过这步4.grub-install--root-directory=/mnt//dev/sda5.重启grub>提示符下输入find/boot/grub/core.img(若boot单独分区则:find/grub/core.ima)此命令会得到个结果:(hdx,y)8.root(hdx,y)9.kernel/boot/grub/core.img(boot单独分区则:kernel/grub/core.img)10.boot执行该命令后就转入到GRUB菜单,此时选择进入Ubuntu11.在ubuntu下启动终端12.sudogrub-install/dev/sda此命令用作修复grub,如果使用的是很早前的版本很类似并且简单很多的。第二部分:linux文件,目录与文件系统格式管理文件权限:Linux文件以及目录都会有所有者,而所有者又会处于某个用户组,这样导致了文件的权限有了对象。也就是三种对象,对于文件所有者,以及对于所有者所在的组,然后就是其他的人。权限分为三种,读,写,执行。使用ls–al命令可以查看当前目录下的文件的各种属性,如下所示。其中drwxr-xr-x中的rwx代表的就是权限。$ls-altotal2593852drwxr-xr-x153rdwork8192Jan611:59.drwxr-xr-x26rootroot4096Nov262009..-rw-r--r--1rdwork59311Nov1320080-rw-r--r--1rdwork595Nov1320080.sh这里有10位,第一位代表文件类型,比如d代表目录,l代表链接,-代表普通文件。后面是连续的rwx,每三位分别对应于文件所有者,所有者组,其他人,其中rwx代表拥有读写执行权限,若相应的位上是’-‘代表不拥有相应权限。如何改变权限,使用chgrp,chown,chmod分别可以改变文件的所有者,文件所有者组,文件的权限。使用chmod有两种重要的方式。一是使用8进制数字模式rwxrwxrwx对应于777,rw-r—r—对应于644,例如chmod777file,另外一种是使用字符模式:Chmodu+xabc.sh就是为文件abc.sh增加执行权限。特别值得说一下的是目录的权限,由于目录与普通文件有区别,因此这个权限的含义也是有很大的不同的。R代表拥有对目录结构列表的读取权限,这样也就是说用vim可以直接打开目录,看到其中的一些文件名称,所以使用ls是可以列出其中的文件或目录。W代表你可以改变目录的结构列表,这样一位这你拥有很多权利,比如建立新的文件或目录,删除文件或目录(忽略其本身的权限),重命名以及移动文件或目录。X意味着你是否可以进入此目录将其作为当前的工作目录。管理文件以及目录:“.”代表当前目录,“..”代表父目录,“~”代表家目录。pwd显示当前的工作目录。cd进入目录将该目录作为工作目录。mkdir创建目录。rmdir删除空目录。ls最常见的一个命令,列出目录下的文件的信息。cp复制一个文件或者目录。rm删除一个文件或目录。mv移动一个目录或文件,可以实现重命名。cat 由第一行开始显示文件内容。tac从最后一行开始显示,可以看出tac是cat的倒写。nl显示的时候,输出行号。more分页的显示档案内容。less与more类似,但是比more更好的是,他可以往前翻页。head查看头几行tail查看尾几行od以二进制的方式读取文件内容!touch更改文件的相关属性,文件不存在时会创建文件。环境变量$PATH保存着这些命令的目录,使得键入命令式不用输入目录,系统会自动去搜索。另外文件还有很多属性,比如suid等。管理磁盘与文件系统:Linux下的标准文件系统为ext2,现在已经有ext3,ext4等,不过它所支持的文件系统就很多了。windows下的FAT16,FAT32,NTFS等等几乎所有的文件系统,linux都是可以很好的支持的。对于ext2,其中包含有超级块,block,还有inode等数据结构来保证文件系统的正常使用,个人觉得这个地方比较难理解,这些数据结构的结构和每个项的意义都是需要我们对操作系统有一定了理解能力的。每个filesystem都有独立的inode/block/superblock等信息,这些文件系统都是鼓励的,必须要与目录树连接上,才能够被我们正常使用。这个链接就是mount(挂载)。Linux是通过VFS(VirtualFilesystemSwitch)来统一管理系统所支持的各种文件系统的。下面说一下基本的文件系统的操作:df:列出文件系统的整体磁盘使用量。du:计算文件系统的磁盘使用量(常用在计算目录所占容量)。ln:创建链接。有两种情况,1.软连接,就是常说的快捷方式,此种链接被删除或者操作是不会影响源文件的。2.硬链接,这种方式不能跨文件系统。由于是直接引用相同的inode信息,所以对其修改就会修改原文件,因为这个链接与原文件的地位相当。fdisk:对磁盘进行分区mkfs:对磁盘进行格式化处理mount:挂载文件系统fsck:用来检查文件系统是否出错开机自动挂载可以在/etc/fstab文件中设置,设置完成以后,一定记得使用mount–a选项来验证语法是否正确。文件的打包压缩:Linux下的压缩指令实在是很多,因此产生了众多的压缩文件的后缀名:gzip,bzip2目前是最流行的压缩程序。但是这些程序只能针对单个文件进行压缩,因此需要进行打包,由此tar完成了这个任务。tar的基本用法如下:其中下划线的字母代表了它的动作。备份与还原:dump和restore第三部分:shellvim:vim是一个强大的编辑器。与emacs是linux世界的两个使用人数最多的编辑器。由于这两个编辑器在绝大多数linux发行版中都会自己包含,linux0.11内核中就已经集成了简单的vi工具,因此我们必须至少掌握其中的一个。书中介绍的是VIM,我个人使用的也是VIM,不过还有很大一部分人使用得是Emacs。VIM的使用与我们在windows下图形编辑器有很大的差别。它有三种模式,插入(编辑)模式,编辑模式,命令模式。下面是书中关于这三个模式的一个转换图。在一般模式中hjkl这四个键控制光标移动。还有很多其他的控制键。在命令模式中w是写入,q是退出,!是执行SHELL命令,/是搜索字符串在编辑模式中就是可以直接编辑文本内容。ESC可以返回一般模式。Vim拥有许多插件,支持各种语言的语法高亮,可以自动补全,还拥有多窗口,多标签等功能,总之使用好了vim对平常的管理,还有编写程序会有很大的帮助。shell:操作系统为用户解决了大多数的苦难,使得我们不用再和系统底层打交道,但是我们最终还必须和计算机有交流啊,因此操作系统提供了shell来处理我们与系统的交互。书上说的是操作系统将所有重要的资源以及函数等都封装在内核中,而我们能够通过shell输入指令来与其更好的沟通,是内核能够更加正确的操作硬件。Shell有很多种类,例如bsh,csh,ksh。。。,我们经常使用是BASH,shell有以下的几种功能:命令编程;命令与文件名补全功能;命令别名设置功能;作业控刢、前景背景控刢;程序化脚本;通配符。Shell变量:就是使用标识符来代替一些数据或者程序。Shell变量主要分为环境变量和自定义变量。env可以查看所有的环境变量。export可以将自定义变量转化为环境变量。set可以查看当前bash下的所有变量。特殊变量:bash癿配置文件主要分为loginshell与non-loginshell。loginshell主要读取/etc/profile与~/.bash_profile,non-loginshell则仅读取~/.bashrc。shell支持文件通配符:*代表0-无穷多个字符,?代表至少一个字符,[]代表[]中的字符一定有一个。shell还有一个特征就是支持数据重定向。当我们从键盘输入从屏幕上显示的时候,输入设备的文件描述符是STDIN,输出的是STDOUT,错误输出是STDERR,假如我们想从文件in从读取数据,输出到out文件,将错误输出至err文件,那么我们可以使用如下方法:$命令<in>out2>err>是覆盖方式输出,>>是追加方式输出。/dev/null这个文件是一个黑洞,写进去的东西就再也读不出来了。shell命令有时候需要一行执行多个,可以直接用’;’隔开,就会执行完一条命令后继续执行下一条。还有两个分隔&&与||,cmd1&&cmd2表示只有cmd1正确执行了cmd2才会执行。cmd1||cmd2表示cmd1执行完成后返回值$?!=0,即是cmd1执行出错了,cmd2才会执行。shell另外的一个强大之处在于shell管道“|”。cmd1|cmd2会将cmd1的标准输出当做cmd2的标准输入而传给cmd2,这样使得cmd2可以直接使用cmd1的执行结果。这样程序间的协作将会使的功能变得异常强大。常用管道命令:cut:将一段信息的某一段给窃取出来。grep:这个是很强大的一个行提取工具,使用正则表达式进行匹配,提取出那些与我们定的规则相匹配的行。sort:对输出的结果进行排序。wc:统计输出的结果有多少行。uniq:去除重复行。tee:将输出拷贝一份到文件中。tr:替换删除字符。正则表达式:书中主要是结合了几种工具对正则表达式的理解。先看一下正则表达式的基本元字符:grep:相信grep是UNIX和LINUX中使用最广泛的命令之一。grep(全局正则表达式版本)允许对文本文件进行模式查找。grep常用的选项:-c只输出匹配行的计数。-i不区分大小写(只适用于单字符)。-h查询多文件时不显示文件名。-l查询多文件时只输出包含匹配字符的文件名。-n显示匹配行及行号。-s不显示不存在或无匹配文本的错误信息。-v显示不包含匹配文本的所有行。sed:sed是一个非交互性文本流编辑器。它编辑文件或标准输入导出的文本拷贝。标准输入可能是来自键盘、文件重定向、字符串或变量,或者是一个管道的文本。sed从文件的一个文本行或从标准输入的几种格式中读取数据,将之拷贝到一个编辑缓冲区,然后读命令行或脚本的第一条命令,并使用这些命令查找模式或定位行号编辑它。重复此过程直到命令结束。调用sed有三种方式:在命令行键入命令;将sed命令插入脚本文件,然后调用sed;将sed命令插入脚本文件,并使sed脚本可执行。使用sed命令行格式为:sed[选项]sed命令输入文件。记住在命令行使用sed命令时,实际命令要加单引号。sed也允许加双引号。使用sed脚本文件,格式为:sed[选项]-fsed脚本文件输入文件要使用第一行具有sed命令解释器的sed脚本文件,其格式为:sed脚本文件[选项]输入文件sed定位文本的方式如下:awk: awk用来格式化报文或从一个大的文本文件中抽取数据包。【备注】关于sed与awk的一些知识后续还会在《sedandawk》这本书的读书笔记中详细阐述。 shell编程:shellscripts就是shell脚本程序。就是利用shell编写的脚本程序,该程序将shell命令利用一些控制结构组合在一起完成一些复杂的功能。关于这些命令,已经接触了很多了。shell使得linux的管理更加自动化,并且能够更好的追踪与管理系统的重要任务。条件测试:对文件、字符串和数字使用test命令。对数字和字符串使用expr命令。字符串测试格式[expr1OPexpr2]格外注意[]中前后会空格,OP是操作符例如=相等,!=不等,-n非空,-z空串。数值测试格式[num1OPnum2],这里的OP和我们平常使用的符号有些不一样,导师和汇编语言中的很类似,大致有以下几类:-eq数值相等;-ne数值不相等;-gt第一个数大于第二个数;-lt第一个数小于第二个数;-le第一个数小于等于第二个数;-ge第一个数大于等于第二个数。控制流结构:任何命令在退出的时候都会返回一个状态这个状态在shell里使用$?,它代表着命令是否执行成功,一般规定0是成功返回。使用这个变量就可以有效的进行条件判断。这里要写的控制流结构分为流控制与循环控制。分别包括ifthenelse,case,while,for,until等语句结构。ifthenelse:If条件1如果条件1为真Then那么命令1执行命令1elif条件2如果条件1不成立then那么命令2执行命令2else如果条件1,2均不成立命令3那么执行命令3fi完成case:case值in模式1}命令1...;;模式2)命令2...;;esac while:while命令do命令1命令2...done for:for变量名in列表do命令1命令2⋯done until:until条件命令1...done其中until的条件测试是放在语句块尾,也就是说,循环至少会执行一次,这是与while的区别之处。第四部分:用户管理用户账号及权限:每个登入系统的用户,都会被分配两个ID,一个是用户ID(UID),另一个是组ID(GID),用来标识用户,在后续的权限管理中使用。用户的登入信息都会存放在/etc/passwd和/etc/group中。增加和删除用户账号:useradd用来增加新用户;用户修改密码使用passwd命令,用户只能修改自己的密码,另外有chage与密码修改有关。当我们使用useradd添加用户的时候不小心输入错的数据或者是用户本身的数据有了变动,那么我们可以使用usermod命令来修改。最后可以使用userdel来删除与用户相关的数据,与用户相关的数据有:用户账号/密码相关参数:/etc/passwd,/etc/shadow使用者群组相关参数:/etc/group,/etc/gshadow用户个人数据:/home/username,/var/spool/mail/username等等。相应的groupadd,groupmod,groupdel也是完成相对应的与群组有关的功能。ACL(ACCESSCONTROLLIST)权限控制:主要目的是提供传统的权限之外的较详细的权限的设定。ACL针对单一使用者,单一文件或目录来进行rwx的权限规范,对于需要特殊权限的使用情况非常有用。一旦确定系统的文件系统支持了ACL后,就可以使用getfacl,setfacl来进行ACL的一些设置了。用户切换:一般情况下处于对安全的考虑我们应该尽量使用普通用户账号来操作使用系统,但是特殊其况下我们又需要root的权限去执行一些服务。因此我们会经常用到用户身份的切换。以su直接将身份变成root即可,但是这个指令即需要root的密码,也就是说,如果你要以su变成root的话,一般使用者就必须要有root的密码才行;以sudo指令执行root的指令串,由亍sudo需要事先设定妥当,因此sudo需要输入用户自己的密码,因此多人共同管理主机时,sudo要比su好!至少root密码不会泄露!查询用户的信息:w,who,last,lastlog,idfinger等相关指令可以查询。write,mesg,wall等指令可以进行用户之间的信息传递。磁盘管理:这一块后续会有更加详细的笔记。crontab:对作业的控制一般有两种at与cron,at一般使用在那些只需要执行一次的任务中,而cron就是用于那些循环的作业。每一个用户都可以有自己的crontab文件,但在一个较大的系统中,系统管理员一般会禁止这些文件,而只在整个系统保留一个这样的文件。系统管理员是通过cron.deny和cron.allow这两个文件来禁止或允许用户拥有自己的crontab文件。crontab文件中每一个条目对应一个任务,每个条目有六个域分别是:分钟1-59,小时0-23,日1-31,月1-12,星期0-6,要运行的命令。条目格式为:分<>时<>日<>月<>星期<>要运行的命令其中<>表示的是空格。crontab条目举例这里有crontab文件条目的一些例子:3021***/apps/bin/cleanup.sh上面的例子表示每晚的21:30运行/apps/bin目录下的cleanup.sh。4541,10,22**/apps/bin/backup.sh上面的例子表示每月1、10、22日的4:45运行/apps/bin目录下的backup.sh。101**6,0/bin/find-name"core"-execrm{}\;上面的例子表示每周六、周日的1:10运行一个find命令。0,3018-23***/apps/bin/dbcheck.sh上面的例子表示在每天18:00至23:00之间每隔30分钟运行/apps/bin目录下的dbcheck.sh。023**6/apps/bin/qtrend.sh上面的例子表示每星期六的11:00pm运行/apps/bin目录下的qtrend.sh。crontab命令的一般形式为:Crontab[-uuser]-e-l-r其中:-u用户名。-e编辑crontab文件。-l列出crontab文件中的内容。-r删除crontab文件。作业管理:进程与程序:程序是静态的二进制文件。当程序被系统调入内存并分配执行空间开始运行后就生成了一个进程,一个程序可以有多个进程与之对应。说起进程就会涉及到进程的许多概念。由于进程中可以再产生进程,因此有了父进程,与子进程的概念。linux中所有的进程都是由init这个进程直接或者间接产生的,使用fork与exec系统调用产生一个进程。可以使用pstree看出系统中整个进程关系的结构图。进程管理:ps静态查看进程的状态,top动态查看进程的状态,pstree使用图形查看进程的基本结构。系统资源:free查看内存的使用情况,uname查看系统与内核相关的信息,uptime查看系统启动时间已经系统的工作负载,netstat查看当前网络的连接状态,dmesg分析内核产生的信息,vmstat检测系统资源的变化,Linux是一个多任务的操作系统,系统上同时运行着多个进程,正在执行的一个或多个相关进程称为一个作业。使用作业控制,用户可以同时运行多个作业,并在需要时在作业之间进行切换。作业的启动:手工启动由用户输入命令,直接启动一个进程便是手工启动进程。但手工启动进程又可以分为很多种,根据启动的进程类型不同、性质不同,实际结果也不一样,下面分别介绍。1.前台启动这或许是手工启动一个进程的最常用的方式。一般地,用户键入一个命令“ls–l”,这就已经启动了一个进程,而且是一个前台的进程。这时候系统其实已经处于一个多进程状态。或许有些用户会疑惑:我只启动了一个进程而已。但实际上有许多运行在后台的、系统启动时就已经自动启动的进程正在悄悄运行着。还有的用户在键入“ls–l”命令以后赶紧使用“ps–x”查看,却没有看到ls进程,也觉得很奇怪。其实这是因为ls这个进程结束太快,使用ps查看时该进程已经执行结束了。如果启动一个比较耗时的进程:find/-name*.jpg然后再把该进程挂起,使用ps查看,就会看到一个find进程在里面。2.后台启动直接从后台手工启动一个进程用得比较少一些,除非是该进程甚为耗时,且用户也不急着需要结果的时候。假设用户要启动一个需要长时间运行的格式化文本文件的进程。为了不使整个shell在格式化过程中都处于“瘫痪”状态,从后台启动这个进程是明智的选择。$troff–menotes>note_form&[1]4513jobs可以查看系统中的作业,fg,bg可以对作业进行前后台的切换,kill可以删除作业。第五部分:系统管理员系统服务:daemon进程是后台运行并且不依赖前端终端的进程。一般都是从开机开始就启动了,为系统提供关键的服务。一般分为两类,一类是独立启动的,另外一类是超级daemon,就是通过超级服务管理来统一的管理的。常用的系统服务:atd:配置文件:/etc/at.allow,/etc/at.deny预设端口:无说明:一个自动化运行任务。是否需要启动:通常需要启动。不过如果你一直使用cron,那么也可以不启动。crond:配置文件:/etc/crontab预设端口:无说明:用来执行例行性命令的守护程序。是否需要启动:必须启动。httpd:配置文件:/etc/httpd/httpd.conf,/etc/sysconfig/httpd预设端口:80,443说明:提供www服务。是否需要启动:安装www服务就启动它。iptables:配置文件:/etc/sysconfig/iptables预设端口:无说明:是Linux上有名的防火墙,如果连上Internet,一定要开启这个。是否需要启动:连上Internet的主机务必启动。network:配置文件:/etc/sysconfig/network/etc/sysconfig/network-scripts/*预设端口:无说明:是用来管理网络的,所以当然要启动,不论你有没有网卡,这个服务也要启动,因为至少network会驱动lo这个网络介面。是否需要启动:必须启动。sshd:配置文件:OpenSSH服务器配置文件:/etc/ssh/sshd_configOpenSSH客户端配置文件:/etc/ssh/ssh_config预设端口:22说明:SecureShellProtocol,实现安全地远程登录管理主机。是否需要启动:如果想实现远程管理,就需要启动。syslog:配置文件:/etc/syslog.conf预设端口:无说明:记录所有的系统行为。是否需要启动:必须启动。vsftpd:配置文件:/etc/vsftpd/vsftpd.conf预设端口:21,20说明:FTP服务器软件。是否需要启动:如果要提供FTP服务就启动。xinetd配置文件:/etc/xinetd.conf预设端口:不一定,要看设定值。说明:xinetd作为inetd的后续版本,负责管理系统中不频繁使用的服务,这些服务程序在有请求时才由xinetd服务负责启动运行,一旦完成服务请求服务程序结束运行,这样可以有效地减少对系统资源的占用率。通常,xinetd管理的程序有telnet、ftp、rsh和rlogin。关闭inetd也就关闭了这些由它管理的服务。是否需要启动:必须启动。另外还有很多服务。软件安装:linux下的软件绝大多数属于开源软件,都是提供原代码的,因此各个不同的发行版都可以使用直接从源码安装软件。使用源码安装软件的时候由于系统的配置有很多差异,因此必须使用configure来检查配置,然后根据此生成makefile,这样的话用户就可以直接使用make程序来编译源代码生成可执行程序,这样软件就安装成功了。由于各发行版还会自己附带一些简化安装过程的工具,因此安装软件也可以使用。一般情况下rpm,srpm,yum,apt这四套工具总会有一套是存在于你的系统中的,当然也有例外(要是这样就只能通过源码来安装了)。x-window:linux早期是没有图形界面的,由于在图形接口方面也有需要,因此开发了一套图形管理程序。这套程序就是X-Window-System,这个系统采用的CS模式,一般服务器成为X服务端,而我们所使用的界面都是一个客户端。因此这也注定linux的图形界面与windowsNT是有本质区别的。这

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论