Linux概述

Linux是一种操作系统

Linux的历史

Multics

早期的系统,太过庞大复杂

Unix
  • Thompson
  • 前身为Multics
  • 由c语言编写核心
  • 半开源状态(不可对学生提供源码)

两个重要的概念:

  • 所有的程序或系统装置都是档案
  • 不管建构编辑器还是附属档案,所写的程序只有一个目的,且要有效的完成目标
GNU计划
  • 目的:建立一个自由、开放的Unix操作系统
  • 成果:Emacs、GNU C(GCC)、GUN C library(glibc)、Bash shell
自由软件:
  取得软件与源码
  复制
  修改
  再发行
  回馈
  不可修改授权
  不可单纯贩卖
Minix
  • 前身为Unix
  • 移植到x86架构
  • 半开源(只需一点点money)
Linux
  • 前身为Minix
  • 稳定的系统
  • 免费或少许费用
  • 安全性、漏洞额快速修补
  • 多任务、多使用者
  • 使用者与群组的规划
  • 相对比较不耗资源的系统
  • 适合需要小核心程序的嵌入式系统
  • 整合度佳且多样的图形用户接口
核心版本:
  主版本.次版本.释出版本-修改版本
  主、次版本为奇数:发展中版本
  主、次版本为偶数:稳定版本

各硬件装置在Linux中的文件名

在Linux系统中,每一个装置都被当成一个档案来对待

装置 文件名
IDE硬盘机 /dev/hd[a-d]
SCSI/SATA/USB硬盘机 /dev/sd[a-p]
USB快闪碟 /dev/sd[a-p]
软盘驱动器 /dev/f[0-1]
打印机 25针:/dev/lp[0-2] USB:/dev/usb/lp[0-15]
鼠标 USB:/dev/usb/mouse[0-15] PS2:/dev/psaux
当前CDROM/DVDROM /dev/cdrom
当前鼠标 /dev/mouse
磁带机 IDE:/dev/ht0 SCSI:/dev/st0

磁盘分区

磁盘组成

扇区+磁柱

第一个扇区

  • 主要启动记录区(Master Boot Record,MBR):可以安装开机管理程序的地方,有446bytes
  • 分割表(partition table):记录整颗硬盘分割的状态,有64bytes

磁盘分区表

  • 按磁柱号码对磁盘进行分割
  • 主要分割槽+延伸分割槽<=4
  • 命名:/dev/hda[1-4]

分割的好处

  • 数据的安全性
  • 系统的效能考虑

主要分割、延伸分割和逻辑分割的特性

  • 主要分割与延伸分割最多可以有4个(硬盘限制)
  • 延伸分割最多只能有一个(操作系统限制)
  • 逻辑分割是由延伸分割持续切割出来的分割槽
  • 能够被格式化后,作为数据存取的分割槽为主要分割与逻辑分割。延伸分割无法格式化
  • 逻辑分割的数量依操作系统而不同,在Linux中,IDE硬盘最多有59个逻辑分割(5-63),SATA硬盘则有11个逻辑分割(5-15)

开机流程

  1. BIOS:开机主动执行的韧体,会认识第一个可开机的装置
  2. MBR:第一个可开机装置的第一个扇区内的主要记录模块,内含开机管理程序
  3. 开机管理程序(boot loader):一个可读取核心档案来执行的软件
  4. 核心档案:开始操作系统的功能

boot loader:是操作系统安装在MBR上的一套软件(先windows后linux的原因)

  • 提供选单:用户可以选择不同的开机项目,这也是多重引导的重要功能
  • 载入核心档案:直接指向可开机的程序区段来开始操作系统
  • 转交其他loader:将开机管理功能转交给其他loader负责

目录树结构

以根目录为主,然后向下呈现分支状的目录结构的一种档案架构

文件系统与目录树的关系(挂载)

所谓挂载就是利用一个目录当成进入点,将磁盘分区槽的数据放置在该目录下

命令行概述

command [-options] parameter1 parameter2 ...

基础指令

date:显示日期
date +%Y%m%d

cal:显示日历
cal [month] [year]

bc:计算器

在线求助

man page

man [number] command

number:表示command类型的代号
  1:用户在shell环境中可以操作的指令或可执行文件
  2:系统核心可呼叫的函数与工具等
  3:一些常用的函数与函数库,大部分为C的函数库
  4:装置档案的说明,通常在/dev下的档案
  5:配置文件或者是某些档案的样式
  6:游戏
  7:惯例与协议等,例如Linux文件系统、网络协议、ASCII code 等等的说明
  8:系统管理员可用的管理指令
  9:跟kernel有关的文件

man page的内容划分:
  NAME:简短的指令、数据名称说明
  SYNOPSIS:简短的指令下达语法简介
  DESCRIPTION:较为完整的说明
  OPTIONS:针对SYNOPSIS部分中,有列举的所有可用的选项说明
  COMMANDS:当这个程序在执行的时候,可以在此程序中下达的指令
  FILES:这个程序或数据所使用或参考或链接到的某些档案
  SEE ALSO:可以参考的,跟这个指令或数据相关的其他说明
  EXAMPLE:一些可以参考的范例
  BUGS

man page的常用按键:
  space:向下翻页
  page down:向下翻页
  page up:向上翻页
  home:到第一页
  end:到最后一页
  /string:向下搜寻string
  ?string:向上搜寻string
  n:继续搜寻
  N:反向搜寻
  q:结束

info page

略(看不懂)

关机方法

sync:将数据同步写入硬盘

shutdown:惯用的关机指令

shutdown [-t 秒] [-arkhncfF] 时间 [警告讯息]

-t:后接秒数,即过几秒后关机
-k:不是真的关机,只是将警告讯息发送出去
-r:在将系统的服务停掉后就重新启动(常用)
-h:将系统的服务停掉后,立即关机(常用)
-n:不经过init程序,直接以shutdown的功能来关机
-f:系统重新启动后,强制略过fsck的磁盘检查
-F:系统重新启动后,强制进行fsck的磁盘检查
-c:取消已经在进行的shutdown指令内容
时间:一定要加入的参数,指定系统关机的时间

reboot,halt,poweroff:重新启动,关机

results matching ""

    No results matching ""