『学了就忘』Linux基础 — 16、Linux系统与Windows系统的不同
这篇文章主要罗列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。
『学了就忘』Linux基础 — 16、Linux系统与Windows系统的不同的更多相关文章
- 『学了就忘』Linux基础 — 14、Linux系统的设备文件名和挂载
目录 1.设备文件名 (1)为什么需要设备文件名 (2)硬件设备文件名命名规则 2.挂载点 3.挂载 (1)什么是挂载 (2)挂载前的分区要求 (3)小结(重点) 1.设备文件名 (1)为什么需要设备 ...
- 『学了就忘』Linux基础 — 6、VMware虚拟机安装Linux系统(超详细)
目录 1.打开VMware虚拟机软件 2.选择Linux系统的ISO安装镜像 3.开启虚拟机安装系统 (1)进入Linux系统安装界面 (2)硬件检测 (3)检测光盘 (4)欢迎界面 (5)选择语言 ...
- 『学了就忘』Linux基础 — 1、UNIX系统介绍
目录 (一)UNIX系统介绍 1.UNIX系统发展历史 2.UNIX 主要发行版本 (二)GNU计划 1.GNU计划介绍 2.为何Stallman会发起这个GNU计划呢? 3.GNU的通用公共许可证: ...
- 『学了就忘』Linux基础 — 5、使用VMware创建虚拟机
目录 1.在VMware中创建虚拟机 (1)点击[创建新的虚拟机]. (2)选择系统安装方式 (3)选择客户机操作系统 (4)自定义虚拟机的名称和安装位置. (5)指定系统硬盘容量 (6)完成创建 2 ...
- 『学了就忘』Linux基础 — 13、Linux系统的分区和格式化
目录 1.Linux系统的分区 (1)磁盘分区定义 (2)两种分区表形式 (3)MBR分区类型 2.Linux系统的格式化 (1)格式化定义 (2)格式化说明 1.Linux系统的分区 (1)磁盘分区 ...
- 『学了就忘』Linux基础 — 15、了解Linux系统的目录结构
目录 1.一级目录说明 (1)一级目录列表 (2)/bin/和/sbin/目录说明 (3)/boot/目录说明 (4)/lib/和/lib64/目录说明 (5)/lost+found/目录说明 (6) ...
- 『学了就忘』Linux基础命令 — 22、Linux中的硬链接和软链接
目录 1.文件和目录的基本存储 2.In命令介绍 (1)我们来看看ln命令的基本信息 (2)ln命令的基本格式 3.创建硬链接 (1)如何创建硬链接 (2)硬链接特征 (3)硬连接原理 4.创建软链接 ...
- 『学了就忘』Linux基础命令 — 23、文件基本权限的介绍和作用
目录 1.基本权限的介绍 (1)权限位的含义 (2)权限的优先级 2.权限的基本作用 (1)权限含义的解释 (2)目录权限说明 1.基本权限的介绍 (1)权限位的含义 前面讲解ls命令时,我们已经知道 ...
- 『学了就忘』Linux基础命令 — 24、文件基本权限的相关命令
目录 1.chmod命令 2.权限模式 (1)用户身份. (2)赋予方式. (3)权限. 3.数字权限 4.文件常用权限 5.chown命令 6.chgrp命令 7.总结 常用基本权限操作命令: ch ...
随机推荐
- umi request 请求资源库详解
umi-request: 网络请求库,基于fetch封装,兼具fetch 和 axios 的所有特点,具有缓存,超时,字符编码处理,错误处理等常用功能. 1 支持url 参数自动序列化. 2 post ...
- HCNP Routing&Switching之路由策略工具Route-Policy
前文我们了解了路由过滤和路由过滤工具Filter-Policy使用相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15316188.html:今天我们来 ...
- 启动springboot出现错误 Caused by: java.net.BindException: Address already in use: bind
如果运行过程中出现端口被占用 抛出了这个异常 首先可以在cmd中调出命令窗口然后 执行命令 netstat -ano 可以查看所有活动的连接 找到你被占用的端口 可以看到我被占用的端口的进程是 4 ...
- cgroup之cpu关键参数
cpu.cfs_period_us specifies a period of time in microseconds (µs, represented here as "us" ...
- virtualbox linux客户机中安装增强功能包缺少kernel头文件问题解决
linux客户机中安装增强功能包总会提示缺少kernel头文件 根据发行版的不同,用命令行软件包管理命令安装dkms build-essential linux-headers-$(uname -r) ...
- 鸿蒙内核源码分析(原子操作篇) | 是谁在为原子操作保驾护航 | 百篇博客分析OpenHarmony源码 | v34.02
百篇博客系列篇.本篇为: v34.xx 鸿蒙内核源码分析(原子操作篇) | 谁在为原子操作保驾护航 | 51.c.h .o 本篇说清楚原子操作 读本篇之前建议先读鸿蒙内核源码分析(总目录)系列篇. 基 ...
- [模板]多项式全家桶小记(求逆,开根,ln,exp)
前言 这里的全家桶目前只包括了\(ln,exp,sqrt\).还有一些类似于带余数模,快速幂之类用的比较少的有时间再更,\(NTT\)这种前置知识这里不多说. 还有一些基本的导数和微积分内容要了解,建 ...
- nginx默认端口80被系统占用解决办法
1.输入netstat -aon|findstr "80"查看端口占用情况 (ano 和aon好像是一样的) 上面可看到是pid值(进程ID)为4 2.输入tasklist|fin ...
- 【vue】两个页面间传参 - props
目录 Step1 设置可以 props 传递数据 Step2 跳转前页面中传递数据 Step3 跳转后的页面接收数据 从 A 页面跳转到 B 页面, 参数/数据通过 props 传递到 B 页面,这种 ...
- Java 将Word转为HTML的方法
本文介绍如何在JAVA程序中将Word文档通过 Document.saveToFile() 方法转换为HTML文档.编辑代码前,参考如下环境配置,导入jar包. [程序环境] 1. IntelliJ ...