Pages

Thursday, 5 April 2012

archlinux和gentoo

这两个发行版跟以前接触过的有很大的不一样。最明显的一个特点就是采用滚动升级,而不是像其他发行版那样的跨版升级,这样的好处就是不用像其他发行版那样频繁的升级,而且维护起来方便,因为一般的跨版发行都会有支持的时间,滚动升级就不存在这样的现象。
另外一个更突出的特点就是这两个版本的包管理机制了。熟悉一套包管理机制,可能就熟悉了一个发行版的一大半了。我个人感觉这俩发行版的一些根本理念 还是很相近的,表面上看也有很多类似的地方,arch虽然是用pacman安装二进制包,但是也支持用abs下载代码自己编译,编译完之后再打包安 装,gentoo的portage则是直接编译代码,在网上看到信息说也可以直接安装编译好的包,但是我还不知道是怎么来弄,并且两个版本同样可以根据自 己的架构编译代码的时候进行优化,arch编译并且打包的工具叫makepkg,在/etc/makepkg.conf里可以指定参数,在编译时得到优 化,gentoo的是在portage的配置文件/etc/make.conf里进行修改。另一个就是自动化编译源码时的配置文件,arch用的是 PKGBUILD,gentoo用的是ebuild,里面的功能也类似,指定源码下载的网址,还有编译时的一些命令。abs和portage都是采用的 BSD上的port机制,所以两者才会有很多相似地方。
从我个人的感觉,根本理念相似,具体实现的程度不同,像gentoo这种,所有的软件都是自己编译,很费时间,一个简单的vim和links都要半 天,不过倒是减少了网络负载,因为它只下载源码和一些配置文件。arch相当于在提供这种自己编译代码的方式的同时,加入了安装二进制包的方式,这样大大 加快了安装过程,并且在性能上并没有损失多少,喜欢arch的人有一句话,arch可能用10分钟装好一个完整的系统,但是gentoo可能要10个小 时。
另外arch上的pacman是个轻量级的包管理工具,当初开发的时候就是因为rpm太过于臃肿,想做一个简洁高效的。我对这个东西理解的不是很 深,但是在安装arch的时候,想装个桌面环境,装了xfce4,安装很顺利,装完想卸载的时候,各种依赖关系,没办法卸载,只要手动把一些依赖的卸载 掉,我想可能是依赖关系比较复杂,pacman处理不了。简洁高效肯定有它的好处,但是肯定也有它功能上的短处。
在配置文件方面,感觉arch更像BSD,因为启动脚本就是BSD风格的,gentoo的启动脚本虽然看起来跟别的发行版不太一样,没有rc.d,rc.0这样的目录,但是本质上还是根据运行级,这跟其他发行版是一样的。
这两个版本的安装过程有很多需要自己来设定,不像其他发行版那样,这个过程可以加深对linux的认识。arch的安装还好,跟其他发行版的步骤都 差不多,只不过有很多自己配置的部分,gentoo就跟别的有很大不同了,gentoo的安装过程可以简单的理解为下载一个stage3,解压得到一个文 件系统,下载一个portage,解压得到一个portage tree,然后chroot进去gentoo这个文件系统,安装配置自己想要的东西就完了。所幸这两个官方手册都写得比较详细,也有中文版,即使对于新手 来说,看仔细点也不会出什么大错。

No comments:

Post a Comment