Linux系统最初由芬兰赫尔辛基大学的Andrew S.Tanenbaum写的MINIX操作系统演变而来,这是一个小型操作系统,主要用于教学,1991年1月,Tanenbaum的学生Linus Torvalds发现老师的操作系统 不能满足自己的需要,自己开始研发操作系统,1991年9月,Linux0.0.1出现,Linus将系统放于互联网上,互联网上的计算机爱好者和开发人员以及众多其他支持者开始对此系统进行完善。

Linux最初的名字叫Freax,是Free(自由)、Freak(奇异)、X(Unix)的合写 ,后来在赫尔辛基大学的FTP上发布时觉得不大好听,更名为Linux

1996年6月,Linux2.0推出,Linus Torvalds选择了一个企鹅图标作为Linux的标志和吉祥物

Linux标志和吉祥物

linux的版本号又分为两部分:内核(Kernel)版本和发行(Distribution)版本

国外主要发行版本
1.Red Hat Linux
2.SuSE Linux
3.   Turbo Linux
4.   Ubuntu
国内主要发行版本
1.红旗Linux
2.中标普华Linux
3.   蓝点Linux

Linux内核主要功能是能与计算机硬件进行交互,实现对硬件对编程控制和接口操作,调度对硬件资源对访问,并为计算机上的用户程序提供一个高级的执行环境和对硬件对虚拟接口

相比Windows系统来说,Linux之所以这么受欢迎,广泛应用于各大公司的服务器在于它的可靠性高,具有良好的可移植性,且其代码是开源的,良好的开放性,这就给各类技术人才提供了极大的方便。其强大的网络功能,可以充当应用服务器、文件服务器、打印服务器、邮件服务器、新闻 服务器等 ,此外Linux强大的数据库支持,支持Oracle、Sqlite、Sybase、DB2、MySQL、PostgreSQL等各种数据库。同时,Linux支持多种文件系统 、多用户功能

由此,Linux广受企业欢迎就不足为奇了。

要了解Linux,就一定要知道它的文件目录结构,对Linux来说,一切皆文件,任何命令都是以文件的方式存放在系统中

Linux下一切皆文件

树状结构,/为最高的根目录
root:root用户的个人文件夹(家目录)
bin:存放多数用户可用的命令
boot:存放启动文件和配置信息,系统启动时会用
dev:存放设备文件,/dev/hdc代表光驱
etc:存放服务配置文件
home:其他用户的家目录
lib:存放程序运行所需要的库文件
media:可移动设备的挂载目录
mnt:设备挂载目录
usr:用户程序存放目录
var:存放经常改动的数据文件
tmp:存放临时文件

Linux共有7个运行级别,分别对应0——6

init [0123456]

0:关机

1:单用户

2:多用户状态没有网络服务

3:多用户状态有网络服务

4:系统未使用保留给用户

5:图形界面

6:系统重启

常用的运行级别是3和5,修改默认的运行级别可以通过修改文件/etc/inittab的id:5:initdefault:这一行数字

想更深层次的了解Linux一定要了解它的分区

首先先介绍一下分区,无论是Windows系统,还是Linux系统,或是其他一些系统,硬盘的分区主要分为基本分区和扩展分区两种,且基本分区和扩展分区的数目之和不能大于4个。基本分区可以立即被使用淡不能再分区,扩展分区必须再进行分区后才能使用,即需要二次分区。

那么,扩展分区再分下去的是什么呢?它就是逻辑分区,而且逻辑分区没有数量限制。

Windows系统分区示例

对Windows系统来说,有几个分区就有几个驱动器,并且每个分区都有一个字母表标识符,他们的文件结构都是独立的,比较容易理解,但对于Linux系统来说,理解起来可就有点恼人了。

对于Linux系统来说,无论有几个分区,归根到底就只有一个根目录!Linux系统的每个分区都是用来组成整个文件系统的一部分,它采用一种叫“载入”的处理方法。它的整个文件系统中包含了一整套的文件和目录,并且将一个分区和一个目录联系起来,要载入的分区将使它的存储空间在一个目录下获得。

想要查看Linux具体分区情况可用fdisk -l命令查看

如想要查看某个目录在哪个分区下可用df [目录全路径]命令

简单来说就是Linux的分区是挂载在目录下的,下面举例说明一下

现在boot下存储有这下文件

卸下分区后该目录下无存储文件

重新挂载后分区又存储在/boot目录下

浅谈Linux的更多相关文章

  1. 浅谈Linux中的信号处理机制(二)

    首先谢谢 @小尧弟 这位朋友对我昨天夜里写的一篇<浅谈Linux中的信号处理机制(一)>的指正,之前的题目我用的“浅析”一词,给人一种要剖析内核的感觉.本人自知功力不够,尚且不能对着Lin ...

  2. 浅谈 Linux 内核无线子系统

    浅谈 Linux 内核无线子系统 本文目录 1. 全局概览 2. 模块间接口 3. 数据路径与管理路径 4. 数据包是如何被发送? 5. 谈谈管理路径 6. 数据包又是如何被接收? 7. 总结一下 L ...

  3. []转帖] 浅谈Linux下的五种I/O模型

    浅谈Linux下的五种I/O模型 https://www.cnblogs.com/chy2055/p/5220793.html  一.关于I/O模型的引出 我们都知道,为了OS的安全性等的考虑,进程是 ...

  4. Java网络编程和NIO详解7:浅谈 Linux 中NIO Selector 的实现原理

    Java网络编程和NIO详解7:浅谈 Linux 中NIO Selector 的实现原理 转自:https://www.jianshu.com/p/2b71ea919d49 本系列文章首发于我的个人博 ...

  5. 浅谈linux中shell变量$#,$@,$0,$1,$2,$?的含义解释

    浅谈linux中shell变量$#,$@,$0,$1,$2,$?的含义解释 下面小编就为大家带来一篇浅谈linux中shell变量$#,$@,$0,$1,$2的含义解释.小编觉得挺不错的,现在就分享给 ...

  6. 【VS开发】【DSP开发】浅谈Linux PCI设备驱动(二)

    我们在 浅谈Linux PCI设备驱动(一)中(以下简称 浅谈(一) )介绍了PCI的配置寄存器组,而Linux PCI初始化就是使用了这些寄存器来进行的.后面我们会举个例子来说明Linux PCI设 ...

  7. 浅谈Linux下/etc/passwd文件

    浅谈Linux 下/etc/passwd文件 看过了很多渗透测试的文章,发现在很多文章中都会有/etc/passwd这个文件,那么,这个文件中到底有些什么内容呢?下面我们来详细的介绍一下. 在Linu ...

  8. (转)浅谈 Linux 内核无线子系统

    前言 Linux 内核是如何实现无线网络接口呢?数据包是通过怎样的方式被发送和接收呢? 刚开始工作接触 Linux 无线网络时,我曾迷失在浩瀚的基础代码中,寻找具有介绍性的材料来回答如上面提到的那些高 ...

  9. 浅谈linux IO csy 360技术 2021-01-18

    浅谈linux IO csy 360技术 2021-01-18

  10. 浅谈Linux下如何修改IP

    linux 下命令之浅谈//cd ..  //返回上一级//创建文件夹touch test.txt//Linux不区分大小写//往一个文件中追加内容echo "****" > ...

随机推荐

  1. html5 manifest 离线缓存知识点

    1.最大缓存容量为 5M. 2.manifest文件需要配置正确的MIME-type,即“text/cache-manifest”,这个是在web服务器上进行配置. ②编写.manifest文件,文件 ...

  2. javascript闭包(Module模式)的用途和高级使用方式

    javascript闭包(Module模式)的用途和高级使用方式 javascript闭包的用途:1. 匿名自执行函数:或者可以理解为,避免污染全局变量2. 缓存:源于闭包的核心特性便是保存状态,应用 ...

  3. MySQL数据库----存储过程

    存储过程 存储过程包含了一系列可执行的sql语句,存储过程存放于MySQL中,通过调用它的名字可以执行其内部的一堆sql -- 存储过程的优点: -- 1.程序与数据实现解耦 -- 2.减少网络传输的 ...

  4. python文件操作-r、w、a、r+、w+、a+和b模式

    对文件操作的基本步骤 f=open('a.txt','r',encoding='utf-8') data=f.read() print(data) f.close() 文件的打开和关闭使用open() ...

  5. P3810 【模板】三维偏序(陌上花开)

    P3810 [模板]三维偏序(陌上花开) cdq分治+树状数组 三维偏序模板题 前两维用cdq分治,第三维用树状数组进行维护 就像用树状数组搞逆序对那样做--->存权值的出现次数 attenti ...

  6. servlet+jsp+java实现Web应用

    servlet+jsp+java实现Web应用 环境: 1,eclipse 2,tomcat3,eclipse tomcat 插件 开发过程: 1,建立一个Dynamic Web Project 2, ...

  7. 20165310_Exp2实验二《Java面向对象程序设计》

    实验二<Java面向对象程序设计> TDD与单元测试 前期准备: 什么是单元测试? 单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证.对于单元测试中单元的含 ...

  8. linux下如何查看当前机器提供了哪些服务

    答:使用netstat工具 在命令行下输入netstat -atun即可列出当前机器提供的服务 netstat各选项解析: -a 列出所有服务 -t 列出tcp相关 -u 列出udp相关 -n 以数字 ...

  9. C#学习笔记(四):switch语句

    条件语句 switch语句快速生成枚举方法,复制枚举名在switch()里,双击TAB 快速生成方法,用纠错功能 随机数 using System; using System.Collections. ...

  10. 配置文件(Machine.config、Web.config、App.config)

    Machine.config1.该文件在Windows目录下\Microsoft.net\framework\[version]\Config\2.为了提高性能,该文件只包含不同于默认值的设置.并且定 ...