今天看到这个解释,觉得比较有趣,转自:http://bbs.zdnet.com.cn/viewthread.php?tid=115998

Linux操作系统为何会对计算机病毒免疫?
    可能不少人持这样一种观点,认 为 Linux 病毒少是因为Linux不像Windows那么普及,其实这种观点很早已经被人批驳过了,[b]一个最有力的论据是:如果写病毒的人写 Windows 病毒是因为 Windows 用户多而因此破坏性大,那么 Internet 上大多数服务器都是基于 Unix/Linux 的,攻击这些服务器,破坏性岂不是更大么?
    对一个二进制的 Linux 病毒,要感染可执行文件,这些可执行文件对启动这个病毒的用户一定要是可写的。而实际情况通常并不是这样的。实际情况通常是,程序被 root 拥有,用户通过无特权的帐号运行。而且,越是没有经验的用户,他拥有可执行文件的可能性就越小。因此,越是不了解这种危险的用户的主目录越不适合病毒繁殖。
    即使这个病毒成功地感染了这个用户拥有的一个程序,由于这个用户权限受限,它进一步传播的任务也会非常困难(当然,对于运行单用户系统的 Linux 新手,这个论证可能不适用。这样的用户可能会对 root 帐户比较粗心)。
    Linux 网络程序构建地很保守,没有使现在 Windows 病毒如此快速传播变的可能的高级宏工具。这并不是 Linux 的固有特征;它仅仅是两种用户基础的不同和这种不同导致的在这两种市场中的成功产品的不同的反映。通过观察这些问题学到的经验也会被用到将来的 Linux 产品中。
    Linux的应用软件和系统软件几乎都是开源的。这对病毒有两方面的影响。首先,病毒很难藏身于开源的代码中间。其次,对仅有二进制的病毒,一次新的编译安装就截断了病毒一个主要的传播途径。虽然 Linux 发行商也提供大量的二进制软件包,但是用户大都是从发行商提供的可靠的软件仓库中下载这些软件包,大都具有 md5 验证机制,安全性极高。
    这些障碍每一个都是病毒成功传播的一个重要阻碍。然而当把他们放在一起考虑的时候,基本的问题才浮现出来。
    一个计算机病毒,像生物病毒一样,要想传播开来,其繁殖速度必须超过其死亡(被消 灭)的速度。上面提到的障碍有效地降低了 Linux 病毒的繁殖速度。如果它的繁殖速度降到取代原来种群所需要的阈值之下,那么这个病毒的厄运从一开始就注定了--甚至在潜在受害人意识到它们之前。
    我们没有看到一个真正的 Linux 病毒疯狂传播,原因就在于存在的 Linux 病毒中没有一个能够在 Linux 提供的敌对的环境中茁壮成长。现在存在的 Linux 病毒仅仅是技术上的好奇;现实是没有能养得活的 Linux 病毒。
    当然,这并不意味着永远没有 Linux 病毒能够流行。然而它确实意味着一个成功的 Linux 病毒要在不适合生存的 Linux 生态系统中存活下来必须是精心制作并具创新的。

Linux操作系统为何会对计算机病毒免疫相关推荐

  1. 项目一:认识Linux操作系统

    任务一:查找Linux系统的基本概况 任务实施: 第一步:通过搜索引擎搜索"Linux" 在百度以及Google等搜索引擎中搜索"UNIX"."Lin ...

  2. 项目一 认识Linux操作系统

    项目一   认识Linux操作系统 [项目说明] 随着人们对开源软件的不断热爱,Linux操作系统越来越受到人们的关注,对于想从事Linux岗位的人,最关注的问题莫过于这个行业到底怎么样,我需要做什么 ...

  3. 项目一 认识Linux 操作系统

    任务一   查找Linux系统的基本概况 第1步:通过搜索引擎搜索"Linux" 在百度以及Google等搜索引擎中搜索"UNIX"."Linux&q ...

  4. Linux服务器运维管理 项目一 认识Linux操作系统

    任务一 查找Linux系统的基本概况 第一步 通过搜索引擎搜索"Linux" 第二步 收集整理搜索到的网页 一.Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torva ...

  5. 项目一 认识Linux 操作系统

    任务一   查找Linux系统的基本概况 第1步:通过搜索引擎搜索"Linux" 在百度以及Google等搜索引擎中搜索"UNIX"."Linux&q ...

  6. 项目一,认识linux操作系统

    项目一,认识linux操作系统 任务一:查找Linux的基本概况: Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系 ...

  7. 【项目一】 认识linux操作系统

    项目一      认识linux操作系统 [项目实施] 要实施完成此项目需要完成以下4个任务. 任务一:查找linux系统的基本概况: 任务二:总结linux系统的最初十年: 任务三:研究linux系 ...

  8. 项目一 认识Linux操作系统

    任务一     查找Linux系统的基本概况 第1步:通过搜索引擎搜索"Linux" 第2步:收集整理搜索到的网页强大 (1)UNIX操作系统(尤尼斯),是一个强大的多用户.多任务 ...

  9. 实验报告Linux操作系统基本命令,linux操作系统实验报告全部.doc

    linux操作系统实验报告全部 计算机操作系统 实验报告 学 号:姓 名:提交日期:2014.12.15成 绩: 东北大学秦皇岛分校 [实验题目]熟悉Linux/UNIX操作系统[实验目的]1.熟悉L ...

最新文章

  1. (翻译) MongoDB(2) 数据库和集合
  2. 系统向腾讯通RTX发提醒消息,“应用SDK:连接SDK服务器错误”
  3. 基于Web用户控件的Portal
  4. Vue监听滚动条事件 点击回到顶部
  5. learning to rank评价指标
  6. springboot的原生cache_springboot-shiro-redis-session-cache
  7. Leetcode--5081. 步进数
  8. 幼儿园的孩子怎么才可以锻炼其自理能力呢?
  9. EF异常:“System.InvalidOperationException”类型的未经处理的异常在 mscorlib.dll 中发生
  10. C++类成员函数的传参问题
  11. python+grpc+yolo 目标检测实践
  12. zabbix-3.0.3 mysql表分区的方法
  13. MAC编译OpenJDK8:iostream file not found(独家解决办法)
  14. c++线程类 linux,C++进阶学习——线程基类的设计(Linux)
  15. 蓝天采集器:一个开源的PHP爬虫系统,可视化的采集器
  16. Java反序列化漏洞:在受限环境中从漏洞发现到获取反向Shell
  17. 做uni-app时,遇到后台返回base64码,将base64码转为图片,但是图片没有显示出来的解决方法
  18. Android电子白板
  19. 叶俊:让能量爆棚的秘诀
  20. 量化投资学习——技术指标介绍

热门文章

  1. 安装vsftpd-3.0.2.tar.gz源码
  2. c# WINFORM SOCKET编程-简单聊天程序(服务端)
  3. 安卓菜单选项 Popup_Menu / Context_Menu / Option_Menu
  4. python ssh连接_python 建立SSH连接发送指令
  5. 【学习笔记】Vue的动态循环插入v-for
  6. 浏览器上的HTML5语音识别功能实例页面
  7. MYSQL5.7 忘记ROOT密码/初始化ROOT密码
  8. iOS Xcode工程目录的 folder 和 group的区别(蓝色和黄色文件夹的区别)
  9. MySQL批量插入数据的几种方法
  10. USACO3.32Shopping Offers(DP)