Linux简介

Linux是什么

与大家熟知的 Windows 操作系统软件一样,Linux 也是一个操作系统软件。与 Windows 不同之处在于,Linux 是一套开放源代码程序的、可以自由传播的类 Unix 操作系统软件。
Linux严格来说是单指操作系统的内核,因操作系统中包含了许多用户图形接口和其他实用工具。如今Linux常用来指基于Linux的完整操作系统,内核则改以Linux内核称之。
相对于Windows来说,Linux是完全免费的,开放源码,为用户提供了最大限度的自由度。且Linux更加稳定更加安全,所以通常作为服务器的操作系统使用。

自由软件与FSF

自由软件

简单地理解,自由软件的核心就是没有商业化软件版权制约,源代码开放,可无约束自由传播。

自由软件基金会FSF

FSF(Free Software Foundation)的中文意思是自由软件基金会,是Richard Stallman与1984年发起和创办的。FSF的主要项目是GNU项目。它的目标是建立自由发布和可移植的类Unix操作系统产品。GNU项目本身产生的主要软件包括:Emacs编辑软件、gcc编译软件、bash命令解释程序和编程语言,以及gawk(GNU's awk)等。

FHS和Linux磁盘分区

FHS的概念

FHS是文件系统层次化标准的缩写,绝大多数Linux版本采用这种文件组织形式,类似于Windows操作系统中c盘的文件目录,FHS采用树形结构组织文件。FHS定义了系统中每个区域的用途、所需要的最小构成的文件和目录,同时还给出了例外处理与矛盾处理。
FHS依据文件系统使用的频繁与否以及是否允许用户随意改动,将目录定义为四种交互作用的形态:

  • 可分享的:可以分享给其他系统挂载使用的目录,所以包括执行文件与用户的邮件等数据, 是能够分享给网络上其他主机挂载用的目录;
  • 不可分享的:自己机器上面运作的装置文件或者是与程序有关的socket文件等, 由于仅与自身机器有关,所以当然就不适合分享给其他主机了.
  • 不变的:有些数据是不会经常变动的,跟随着distribution而不变动. 例如函式库、文件说明文件、系统管理员所管理的主机服务配置文件等等;
  • 可变动的:经常改变的数据,例如登录文件、一般用户可自行收受的新闻组等.

Linux目录树结构

Linux简介_第1张图片

目录
/bin 存放二进制可执行文件(ls,cat,mkdir等),常用命令一般都在这里。
/etc 存放系统管理和配置文件
/home 存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示
/usr 用于存放系统应用程序,比较重要的目录/usr/local 本地系统管理员软件安装目录(安装系统级的应用)。这是最庞大的目录,要用到的应用程序和文件几乎都在这个目录。
/usr/x11r6 存放x window的目录
/usr/bin 众多的应用程序
/usr/sbin 超级用户的一些管理程序
/usr/doc Linux文档
/usr/include linux下开发和编译应用程序所需要的头文件
/usr/lib 常用的动态链接库和软件包的配置文件
/usr/man 帮助文档
/usr/src 源代码,linux内核的源代码就放在/usr/src/linux里
/usr/local/bin 本地增加的命令
/usr/local/lib 本地增加的库
/opt 额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里。
/proc 虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息。
/root 超级用户(系统管理员)的主目录(特权阶级^o^)
/sbin 存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等。
/dev 用于存放设备文件。
/mnt 系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统。
/boot 存放用于系统引导时使用的各种文件
/lib 存放跟文件系统中的程序运行所需要的共享库及内核模块。共享库又叫动态链接共享库,作用类似windows里的.dll文件,存放了根文件系统程序运行所需的共享文件
/tmp 用于存放各种临时文件,是公用的临时文件存储点。
/var 用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等。)等。
/lost+found 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里

文件系统与目录树

所谓的『挂载』就是利用一个目录当成进入点,将磁盘分区的资料放置在该目录下; 也就是说,进入该目录就可以读取该分区的意思。这个动作我们称为『挂载』,那个进入点的目录我们称为『挂载点』。 由于整个Linux系统最重要的是根目录,因此根目录一定需要挂载到某个分区的。 至于其他的目录则可依使用者自己的需求来给予挂载到不同的分区

Linux系统的启动至少要有一个根(/)分区,用来存放系统文件及程序。其大小至少在5GB以上,相当于Windows操作系统中c盘。以及一个 /boot分区(这个分区不是必须的),这是Linux系统的引导分区,用于存放系统引导文件,如Linux内核等。在Windows操作系统中,这个分区一般是隐藏的(EFI分区)。

Linux主要发行的版本

Linux简介_第2张图片

包管理器

在Windows下我们是怎么安装软件的?
打开浏览器,进入软件官网的下载软件,安装软件
而在Linux中,只需要一行命令:

apt install [package]

你也可以在一行命令中同时安装多个软件:

apt install [package1] [package2] [package3] [package4]

Linux软件包管理工具是一组命令的集合,其作用是提供在操作系统中安装,升级,卸载需要的软件的方法,并提供对系统中所有软件状态信息的查询。在Linux操作系统中,RPM 和DPT为最常见的两类软件包管理工具,他们分别应用于基于 rpm 软件包的 Linux 发行版本和基于deb软件包的 Linux 发行版本。

版本 前端 后端 包格式
Debian, Ubuntu等 dpkg-deb/apt-get DPT管理器 deb
RedHat,Centos等 yum RPM管理器 rpm

你可能感兴趣的