AI智能
改变未来

『学了就忘』Linux基础 — 16、Linux系统与Windows系统的不同

[toc]

这篇文章主要罗列Windows系统和Linux系统最常见的一些区别。

1、Linux严格区分大小写

Linux是严格区分大小写的,这一点和Windows系统不一样,所以操作时要注意区分大小写。

包括文件名和目录名、命令、命令选项、配置文件设置选项等。

Tips:

  • Linux系统中大写的不多,常用就几个,遇到用心记一下就行。
  • Linux系统中的命令,是没有大写的,命令后跟的选项是有大写的。

2、Linux一切皆文件

Linux中所有内容都是以文件的形式保存和管理的,硬件设备也是文件,这和Windows完全不同。Windows是通过设备管理器来管理硬件的。Linux的设备文件保存在

/dev/

目录中,硬盘文件是

/dev/sd[a-p]

,光盘文件是

/dev/hdc

等。

注意:

到底一个配置会不会永久生效,就看一件事,配置会不会写入对应的配置文件中。

如果写入了配置文件中,这就会是个永久生效,否则反之。

大多数通过命令生效的都是临时生效,要想永久生效,一般会修改配置文件。

说明:

  • 永久生效:无论关机还是重启,配置都不会消失的。
  • 临时生效:现在生效,重启就不在生效了。

3、Linux不靠扩展名区分文件类型

(1)Windows系统中的文件类型

Windows是依赖扩展名区分文件类型的,一个文件的名称组成是文件名+扩展名。而文件的类型,就看扩展名来决定。比如,

.txt

是文本文件、

.exe

是执行文件、

.ini

是配置文件、

.mp4

是小电影等。

说明:

Windows系统,基本上每一种类型的软件,都有对应的扩展名。

换句话说, 每一个不同类型的扩展名文件,都需要不同的软件才能打开。

(2)Linux系统中的文件类型

Linux不是靠扩展名区分文件类型的

Linux是靠权限位标识来确定文件类型的,而且文件类型的种类也不像Windows下那么多,常见的文件类型只有普通文件、目录、链接文件、块设备文件、字符设备文件等几种。

说明:

Linux中文件的类型,你写也行,不写也行,没有硬性要求。比如你创建一个

abc.exe

文件,在Windows系统系统中就是一个可执行文件,而在Linux系统中,就是一个普通文本。

但是,我们绝大多数的人都是先接触Windows系统操作系统,而Windows系统通过扩展名来标识文件类型也相对于Linux系统更为清晰,所以在Linux系统中创建常用的文件,文件名还是写上对应的扩展名,这样好分别,好记忆,尽管只是个名称。

提示:Linux系统下常见的文件类型为7种,如果在加上Unix和一些不常见的文件类型,大概有12种左右。

(3)Linux的可执行文件不过就是普通文件被赋予了可执行权限而已

但Linux中的一些特殊文件还是强制要求写“扩展名”的,但是大家小心,并不是Linux一定要靠扩展名来识别文件类型,写这些扩展名是为了帮助管理员来区分不同的文件类型。这样的文件扩展名主要有以下几种。

  • 压缩包:Linux下常见的压缩文件名有:

    .gz

    .bz2

    .zip

    .tar.gz

    .tar.bz2

    .tgz

    等。

    为什么压缩包一定要写扩展名呢?

    原因是Linux系统中的压缩类型比Windows系统的要多(Windows系统常见的压缩格式:

    .zip

    .rar

    .7z,

    而Linux系统有十几种之多),如果不写清楚扩展名,那么管理员不容易判断压缩包的格式。

    而且Linux系统每种不同的压缩包,解压缩的命令或者方式是不一样的。

    之前上边说过Linux系统中文件是不强制写扩展名的,但之所以强制推荐要写上,不是方便Linux系统进行区分,而是方便管理员来进行区分的。

    虽然有命令可以帮助判断,但是直观一点更加方便。另外,就算没写扩展名,在Linux中一样可以解压缩,不影响使用。

  • 二进制软件包:CentOS中所使用的二进制安装包,是RPM包。所有的RPM包都用

    .rpm

    扩展名结尾,目的同样是让管理员一目了然。

  • 程序文件(或者脚本):Shell脚本一般用

    .sh

    扩展名结尾,其他还有用

    .c”

    扩展名结尾的C语言文件等。

    原因一:也是给管理员查看方便的。原因二:Linux系统默认可以识别一些脚本,如果是可识别的脚本Shell脚本,如果你把文件的扩展名写上

    .sh

    ,Linux就知道你写的程序是Shell脚本。编辑的时候就会有颜色,格式等出现提示。

  • 网页文件:网页文件一般使用

    .html

    .php

    等结尾,不过这是网页服务器的要求(如Apache),而不是Linux的要求(强制)。

4、Linux中所有的存储设备都必须在挂载之后才能使用

Linux中所有的存储设备都有自己的设备文件名,这些设备文件必须在挂载之后才能使用,包括硬盘、U盘和光盘。

挂载:简单的说就是把设备文件(如

/dev/sdb

)和挂载点(已经建立的空目录)连接的过程叫作挂载。相当于在Windows系统中给你的存储设备分配盘符。

而Windows中的盘符用英文字母表示,而Linux中的盘符则是一个已经建立的空目录。我们把这些空目录叫作挂载点(可以理解为Windows的盘符)。

扩展了解:

Linux中硬盘是全自动挂载的(如

/dev/sdb

),开机之后自动进行挂载,而U盘和光盘需要手动进行挂载。

既然Linux系统识别自动挂载,为什么U盘和光盘也设置设置成自动挂载?不行的,因为Linux系统是无条件信任管理员,如果设置成开机自动挂载U盘和光盘,那么Linux系统开机的时候,就必须一定要挂载U盘和光盘。万一有一次在开机时候忘记放U盘和光盘,Linux系统会认为你欺骗了它纯洁感情,它会死给你看的(导致直接系统启动失败)。这种启动失败修复并不难,但是要修复就一定要拿到本机的,因为服务器一般都不放到本地的,是放在远程机房管理的。

5、Windows下的程序不能直接在Linux中使用

Linux和Windows是不同的操作系统,可以安装和使用的软件也是不同的,所以能够在Windows中安装的软件是不能在Linux中安装的。

有好处吗?当然有,那就是能够感染Windows的病毒和木马都对Linux无效。

有坏处吗?也有,那就是所有的软件要想在Linux中安装,必须单独开发针对Linux的版本,或者依赖模拟器软件运行。

很多软件也会同时推出针对Windows和Linux的版本,如大家熟悉的即时通信软件QQ。

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » 『学了就忘』Linux基础 — 16、Linux系统与Windows系统的不同