来自Ubuntu中文论坛的wangguangping写道:
linux软件安装位置极度混乱,居然还号称优秀的文件系统?
我经常为找软件安装后的文件在哪要找半天,这个目录有下几个,那个目录下又有几个,实在让人受不了。有人说linux的文件系统如何如何好,其实我看是极度混乱。为什么一个软件不能集中将文件放在一个目录下,删也好删,找也好找。
呵呵,看起来说的没错.但首先我们需要明白一点,"软件安装位置"和"文件系统"是没有什么关联的,Linux的文件系统的确很优秀,几乎没有磁盘碎片,Linux内核也是抗碎片的,文件系统更是有追踪日志形式的,实时存储数据,你似乎是可以像电视机一样关机的,就是直接拔掉电源.
而"软件安装位置"混乱问题,可以说的确存在,但只有脑子不好使的人才会这么说,传说的Windows思维的毒害.Linux系统大多使用软件包管理器管理系统文件和软件,可直接操作升级和卸载,没必要自己去查找.
大家都知道,Windows程序通常会被安装到系统分区下的Program Files文件夹下面,当然还可以是其他位置,如某些人喜欢安装到D盘,E盘等等.这样看来,Windows软件安装位置才是极度混乱呢!因为它们可以随 意安装,没有什么规矩.而较有规则的就是安装到系统分区下的Program Files文件夹下面了,而具体的位置同样还是比较混乱的,个人软件直接创建一个文件夹,大公司的软件还会安装到公司名称的文件夹下面,然后再分类.某些 流氓还会将自己安装文件放到系统关键位置,还可能包括配置文件,那是相当混乱的.
Windows软件位置的特点就是将一个软件放同一个一个文件夹里面,软件配置什么都在一个文件夹下面,系统图标也是如此,系统重装软件配置大多都会丢失,其他如系统主题也不能统一更改,一个字概括:乱!乱得像一盒快餐,饭菜汤都放一块.
看看Windows下的Firefox,配置,dll和ini,主题和扩展都放一块了
而Linux的软件位置非常清晰,Linux程序可能会使用通用的程序文件,如程序库和类,图标等,安装的程序是"分散"的,会被分配到多个特定目录下, 但这样并不会乱,因为软件包的文件会被登记到系统的软件包管理器里面,卸载的时候就可以直接使用软件包管理器,文件又将会按照文件列表来删除,而曾经共享 使用的类文件并不会被删掉,因为其他程序还会使用到.不被使用的文件即是不具有依赖性,软件包会提示你处理,可以选择是否删除.
Linux软件安装后会被分门别类地分散放置到各个指定目录下,如程序主体放到/usr/bin,文件类放到/usr/lib等文件列表统一交付系统软件包管理器集中处理.可以说文件是井井有条的,文件读写权限也非常分明.所以Linux的程序就像一桌美味,四菜一汤更有香槟小酒各一壶,摆放整齐飘香四邻与八方友人共享.
Firefox依赖图形界面GTK+,数据存储依赖Sqlite,没有它们Firefox就不能运行,GTK和Sqlite 的文件位置也是固定的,Firefox调用的时候不会读取错误,无论是Firefox升级还是gtk或者sqlite升级,都不会改变.而Windows 的软件位置通常会附带软件版本号,位置是常变的,其他软件将无法兼容交互.
Firefox主程序放置到/usr/bin下面,Firefox升级也不会改变文件位置.
Firefox的图标会放置到/usr/share/pixmaps/下面,这样系统其他软件(如快捷方式等)也可以方便调用显示,系统更改主题也更方便了.
总的来说,Linux的程序文件资源是开放共享的,便于交互可相互操作的,这样的系统运资源利用率就很高.
恩,大多数人都只能吃上快餐.