新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 操作系统研究。UEFI
    [返回] 计算机科学论坛计算机理论与工程『 操作系统原理 』 → 从Linux迁移到FreeBSD [转帖] 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 5951 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: 从Linux迁移到FreeBSD [转帖] 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     firstway 帅哥哟,离线,有人找我吗?
      
      
      威望:5
      等级:大三暑假(2个月背完了红宝书)(版主)
      文章:92
      积分:947
      门派:Lilybbs.net
      注册:2005/10/31

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给firstway发送一个短消息 把firstway加入好友 查看firstway的个人资料 搜索firstway在『 操作系统原理 』的所有贴子 引用回复这个贴子 回复这个贴子 查看firstway的博客楼主
    发贴心情 从Linux迁移到FreeBSD [转帖]


    原著:nathan mace,原载freebsd week 翻译:司徒彦南

    译注:freebsd和各种linux发行版一样,是一种免费的unix类操作系统。由于freebsd的推出稍晚于linux,因此国内介绍 freebsd的文章较少,而且由于某些煤体不负责任的推波助澜,linux被过分夸大、神化了。实际上,很多大网站都在用freebsd,如 yahoo,甚至包括microsoft的hotmail(microsoft收购hotmail 4年了,但直到去年11月microsoft才宣布hotmail向windows/iis迁移,而且,至今hotmail主机群中依然包括 freebsd boxes,可见microsoft对于windows并不是真的很放心,这一事实也证明了freebsd引以为耀的稳定性)等等。和linux各种混乱不堪的发行版相比,freebsd只有唯一的版本,同时,freebsd关注的是操作系统的稳定性、性能和品质,适合作为服务器的操作系统。当然,对于选择freebsd还是某种linux发行版本作为操作系统,不同的人肯定有不同的偏爱,但译者认为,freebsd作为服务器来说,比linux更好一些,当然,如果不考虑开发成本,仅仅考虑运行效率,也更远好于windows。原因很多,有机会的话,我会在今后的文章中一一提到。

    需要说明的是,译者不认为最近一两年之内免费操作系统阵营能够和microsoft等商业系统阵营决出胜负高下,因为他们的操作系统的设计理念存在差别。我自己很喜欢命令行方式的操作,然而在图形界面方面,x window的效率是很难超过windows的,这是因为x是以用户模式运行图形界面,而windows则是以核心模式运行,这实际上就造成了unix类操作系统在图形界面上的先天不足。而且,由于microsoft的产品是要卖钱的,因此它为了维护自己的市场地位,会为客户提供比较好的服务,而免费 unix操作系统在这一点则比较困难,而且,它对用户的要求较高。在这里我不想给出一个确切的建议,如桌面操作系统应该选择什么,服务器操作系统应该选择什么,一切要从实际情况出发。请大家注意这样的事实:专业人员维护的windows服务器的安全性未必就差,非专业人员维护的*nix服务器的安全性也肯定是无法接受。在抨击nimda横行的同时,也请注意, microsoft早在nimda出现前半年的时候就已经推出了预防性的补丁;*nix一样也有非常让人难堪的安全问题,同样的,他们也会及时推出补丁,因此,绝大多数服务器的安全问题是由于管理员的疏忽造成的。选择操作系统之前,最好是先想好:什么样的配置对于您最有利,请考虑整体拥有成本(tco)而不仅仅是操作系统的价格。目前很多网站采用的、非常流行的windows 2000+apache+php+mysql组合实际上就同时牺牲了iis开发周期短和apache+unix组合相对比较容易定制的优点,可谓竹篮打水一场空。

    这篇文章比较客观地对freebsd和linux进行了对比,值得一读,所以我决定把它介绍给国内的读者。总之,think different,决定选择什么东西之前,最好先尝试一番,特别是那些同类产品。

    简介:即使是和it不沾什么边的企业信息技术人士大概也都听说过linux。有些人可能用过,或正在使用它,原因五花八门,有的甚至只是为了看看那些大肆吹嘘它的人到底说的是不是实话。然而,gnu/linux并不是可用的唯一一个“free”的unix类操作系统。freebsd和它的堂兄弟, openbsd和netbsd都是商业unix版本——berkeley software distribution免费的分支产品。这篇文章让您更多地了解freebsd,也帮助您更轻松地进行潜在的迁移过程。

    与linux使用的gpl授权不同,bsd家族的操作系统使用bsd风格的授权。用一句话来概括两种授权的不同就是,gpl要求源代码的任何衍生物也是公有的,并且使用gpl授权,而bsd授权没有这个要求。

    freebsd和主要的linux发行版本的工作方式有一定区别。这篇文章将告诉你我自己认为在把我的桌面操作系统由linux切换到freebsd时的收获。

    当然,肯定会有人坚持这样的观点:linux指的仅仅是操作系统的内核,而不是其他什么东西。在你的red hat或debian匣子中,每天使用的应用程序是由相应的发行版本提供的。而freebsd,则包括了操作系统内核和整个操作系统中的那些基本的应用程序,例如复制、移动文件的命令等等。这一区别的结果是,linux由不同的发行版本,例如mandrake, suse, debian和slackware。任何使用过mandrake和debian的人都会告诉你这两套发行版本的世界有多么大的区别。相反,只有一个 freebsd,我的freebsd和你拥有的freebsd是完全一样的,只要他们的版本一样。

    三中最主要的linux发行版本,red hat、mandrake和suse使用了rpm安装包管理器。rpm处理安装、升级、卸载,并检查安装在这些操作系统上的应用程序依赖关系。虽然在安装程序之前检查依赖关系的错误,但rpm遗留了比我们期待的更多的问题。例如,它不能自动地下载它需要的其他rpm。我知道至少3个项目试图解决这个问题, urpmi, debian的apt-get,当然,附带说一句,只是一个“仅debian采用”的特性,而且是一个rpm和apt-get的混血儿。所以,除非你打算是用上面的方法,否则你将不得不手工寻找、下载所需要的rpm。听起来很简单么?直到你用rpm安装gnome或者升级xfree的时候你才会知道事情有多么严重。而且,即使你找到了正确的rpm,如果他们是为suse设计的,而你运行的是red hat,那么你的麻烦课就大了。

    每一个linux发行版本都存在一些差异,而它们之间最大的差异则在于文件系统的结构。我肯定绝大多数人都听说过suse把kde放到/opt,而red hat则放到/usr文件夹中。更糟糕的是,rpm不能识别从源代码中编译得到的程序。所以,如果你拥有最新编译的程序,rpm甚至无法知道他们的存在。

    freebsd使用“包”来安装、卸载和升级应用程序。‘pkg_add’命令被用于安装一个你手工下载到计算机的包。你也可以用‘-r’开关来让它自动的从internet获取,当然,也包括这个包所依赖的一切。不过,freebsd包的真正美妙之处在于“连接点”(ports)树。连接点树是—— freebsd包含的应用程序之间的继承关系。每一个文件夹都包含makefile,以及让特定应用程序能够在freebsd上正确运行所需要的补丁。例如,如果我想安装apache web服务器,我所需要做的只是cd到/usr/ports/www/apache文件夹,然后运行‘make && make install’,然后去小吃售卖机前。如果我拥有一台速度够快的电脑,同时拥有一个足够大方的internet连接,当我回来的时候apache源代码的下载、补丁、编译和安装肯定都已经做完了。连接点树也能够处理apache运行依赖的那些程序,无论我用连接点树安装、手工编译,还是通过安装已经编译好的二进制包。连接点树能够通过$path找到它需要的东西。

    linux和freebsd的另一个区别在于,对于freebsd而言,你安装的连接点或者包99%都会被放到/usr/local,而在 linux上有时是/usr,有时是/opt。这可能只是一个很小的区别,但你至少可以知道你的程序安装到了/usr/local,而不是扩散到了文件系统的各个地方。

    freebsd系统使用cvsup来保持它是最新的。一旦你建立了‘sup-file’,cvsup将会把你本地的系统和cvsup服务器上的进行比较,并且下载那些修改过的东西。你可以用它来确保你的本地连接点树和freebsd源代码都是最新的。和linux不同,linux通常只有内核被半正规性的下载和变异。使用cvsup,你可以很容易地下载整个freebsd操作系统的源代码。这样做的主要理由是,它使得freebsd从一个版本升级到另一个的过程变的简单。cvsup之后,你可以用make world来编译整个操作系统,或者编译新的操作系统内核。这些都非常的简单。

    处理分区的方式也有区别。linux将一个硬盘分为不同的分区,在这些分区中,有些又包括逻辑分去。我们常说的分区在freebsd中称为片断(slices),没个片断中包括一个或多个bsd分去。bsd分区在/etc/fstab中可以找到。

    也许linux和freebsd的下一个最大的区别就是操作系统设计的基本理念。linux强调最新的操作系统特性和驱动程序(例如不开放源代码的nvidia图形卡驱动程序)。freebsd在这些方面比较保守。他们喜欢经过时间考验和测试过的东西,甚于最新特性。他们倾向于等待主要的bug被修正。对于桌面操作系统来说,如果你使用最新的硬件,追求最新的驱动程序,或那些更酷的特性,保守是freebsd的一个毛病。然而在服务器中,你肯定希望更加稳定的代码。另外,你会把一块价值200美元的显示卡放到你的不包括显示器的服务器上么?

    另一个区别是默认安装的内容。如果你接受suse的默认安装选项,那么你至少会装上1gb的软件。而freebsd只是安装那些最基本的系统(注意,我知道你会告诉suse仅仅安装‘基本系统’,但我说的是‘默认’安装)。他带给你那些最本质的东西,而你可以在以后通过连接点树安装4000多种应用程序中的任何一个。几乎所有在linux中运行的程序都已经被移植,并且能够正常运行于freebsd,唯一的区别在于在linux上,应用程序要么被 “默认安装”,要么,除非你用debian,你就必须手工下载它们。在freebsd上他们只是可选的,而且绝大多数过程已经被自动化了。另一些区别就是,linux上默认的命令行外壳是bash,而freebsd上则是tcsh。

    对于商业应用程序,如oracle或hp openmail,freebsd提供了一个“linux兼容”层。简而言之,它让freebsd能够以接近在linux上运行的速度直接运行linux 的二进制应用。应用程序是否能够在freebsd上全速运行完全取决于它是否真的愿意在linux上运行。兼容层比模拟更进一步。需要的linux库被以二进制形式安装在bsd系统中。当你试图运行linux程序时,freebsd识别它是linux程序,并简单地指明它需要的linux运行库的位置。同时,freebsd也提供了商业bsd、netbsd、openbsd和sco的模拟。每种不同的操作系统获得不同的支持,其中最完善的是商业bsd、 netbsd和openbsd。

    尽管bsd开发者更重视软件的品质和数量,但这并不意味着freebsd缺乏某些功能。预定于2002年11月推出的freebsd 5.0包括了更加精细的进程控制机制,这允许它更加有效地运行于最多32个处理器。版本5.0也将提供一个完整的devdfs设备文件系统。虽然这些在 linux上已经存在了一段时间,但你也许还没有听说过。devdfs大体上是一个允许动态变化的设备文件系统。例如,如果你接入了一个usb键盘,它将 ‘魔术般地’加入到/dev文件夹。在日志文件系统方面,4.4稳定版提供了‘soft updates’特性。尽管在技术上它也许不能北郊做日志文件系统,但它可以做得比你对日志文件系统的要求更好。

    1998-1999年.com爆炸中,linux是真正的关键词。所有地方的电脑用户都听说了一种*免费*的,正在服务器领域和桌面领域挑战 microsoft地位的操作系统。即使在今天,linux的忠实用户仍然在增加。但是,很多人只是刚刚听说freebsd。希望这篇文章能够帮助你对 freebsd有一个初步的了解,并且把它作为满足你的需求的一种选择。在最后我想说的时,既然它们都是免费的,为什么不都试一试,看看谁更满足你的需要呢?

    作者简介:
    nathan mace来自西virginia州charleston大学,主修计算机信息系统专业。他的主要研究对象是各种操作系统,特别是unix类的操作系统,如 linux,*bsd以及商业unix。nathan的邮件地址是mace_nathan@uchaswv.edu。


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/12/14 18:51:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 操作系统原理 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/4/27 8:02:53

    本主题贴数1,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    60.547ms