Linux概述

吐槽一下居然不支持[TOC]...

Linux概述


Unix Linux
商业付费软件 免费公开源代码
多数是与硬件配套的 可运行在多种硬件平台上
对硬件的要求更为苛刻 对硬件要求没有Unix高
安装复杂 安装相对简易
使用比较复杂 使用相比Unix要简单
最稳定 稳定性次之

Linux结构

  • 硬件
  • 内核kernel
    • 操作系统的核心
    • 指挥调度linux机器的运行,直接控制计算机的资源
    • 保护用户程序不受错综复杂的硬件世界的影响
  • 外壳shell
    • 是Linux的一个特殊程序,是用户与内核之间的命令解释器
  • 应用程序

Linux特点

  • 多任务,多用户:CPU时间分片,分给不同的进程;允许多个用户同时登陆使用。
  • 管道,功能强大的shell: 管道-前一个程序的输出作为后一个程序的输入,shell是一种解释型高级语言。
  • 安全保护机制,稳定性好:防止系统及其数据未经许可而被非法访问,稳定性Unix好于Linux,Linux好于Windows。
  • 用户界面,强大的网络支持:常用命令行的方式,同时提供图形界面;TCP/IP协议就是Linux的缺省网络协议。
  • 移植性好:源代码用C语言写成,便于移植到其它计算机上。

Linux文件和目录管理


树型结构

/bin:存放的是构建最小系统所需要的命令
/sbin:即为System bin,是与操作系统有关的命令
/boot:内核与启动文件
/dev:存放的是各种设备文件
/etc:存放的是系统软件的启动和配置文件
/home:用户的主目录
/root:超级用户root的家目录
/usr:非系统的程序和命令
/var:系统专用的数据和配置文件
/opt:可选的应用软件包
/tmp:临时文件存放点

文件和目录的基本操作

  • 显示当前的工作目录:pwd
  • 变更工作目录:cd cd后面不跟任何路径,则是回到当前目录的家目录。
  • 新增目录:mkdir -m指定存取模式 -p建立目录时建立其所有不存在的父目录。
  • 删除目录:rmdir 删除空目录,如果删除非空目录,rm即可, –p删除目录及父目录
  • 复制文件或目录 :cp+源文件或目录+目的文件或目录
  • 移动文件或目录:mv +源文件或目录+目的文件或目录
  • 删除文件或目录:rm+文件或目录
  • 查找文件或目录:find +路径+参数 -name以指定字符串开头的文件名 -user 查找指定用户所拥有的文件

查看文件内容

  • cat:直接查阅文件内容,不能翻页
  • more:翻页查看文件内容
  • less:翻页阅读,和more类似。但操作按键比more更加弹性。
  • head:查看文档的前面几行内容,默认为10行
  • tail:查看文件的后面几行内容,默认为10行

Linux 文件系统管理


存储在介质中数据的三个因素

  • 文件名:定位存储的位置
  • 数据:文件的具体内容
  • 元数据:文件有关的信息,例如文件的权限、所有者、文件的修改时间等

Linux支持的文件系统类型可查看/proc/filesystems

文件系统的分类

是否有日志

  • 传统型文件系统:写入文件内容的时候,先写数据,再写元数据。例如 ext2
  • 日志型文件系统:写入文件内容的时候,先写日志记录文件(更安全)。 ext3=ext2+日志 ReiserFS基于平衡树,搜索快
    如何查找数据
  • 索引式文件系统:文件属性数据和实际内容放在不同的区块,例如Linux中默认的ext2中,文件属性数据存放在inode,实际内容放在block
  • 非索引式文件系统:只有block,数据需要一个block接一个block读取(下一个block位置存放在上一个block中),效率低。 FAT

碎片整理:就是写入的数据的block太过分散,此时读取的效率会很低。磁盘整理的目的 就是将这些分散的block尽量的集中起来。

配置文件系统分区

创建分区:fdisk+设备名,输入完该命令之后,可以通过参数m查看按键操作说明,通过参数p可以得到本磁盘的相关信息,输入n命令可以新建一个分区。使用完n之后,新建分区的步骤如下:

  1. 选择分区类型
  2. 选择分区开始的磁柱
  3. 决定分区的大小
  4. 保存新建的分区
  5. 通过重启服务器或使用partprobe命令通知内核

创建文件系统:mkfs 参数 设备名,-t指定文件系统类型 -b指定block大小,单位bytes,ext2和ext3仅支持1024/2048/4096三种

挂载文件系统:挂载的过程就是将文件系统和目录树上的某一个目录结合。mount+设备名+挂载点 -t -b同上

管理Linux文件系统

查看分区使用情况:

  • df:查看文件系统的磁盘空间占用情况 –h以容易理解的格式打印出文件系统大小 –i显示inode信息而非块使用量。
  • du:查看文件或目录的磁盘使用空间 –a显示目录下的每个文件所占的磁盘空间 –s只显示大小的总和 -h以容易理解的格式输出文件大小值

查看系统打开的文件:lsof

  • Isof filename显示打开指定文件的所有进程
  • Isof –c string显示以指定字符开头的进程所有打开的文件
  • Isof –u username显示所属user相关进程打开的文件

修复文件系统:

  • fsck检查文件系统并尝试修复错误。执行fsck时,必须将要修复的设备进行 umount后,再执行fsck命令。
  • e2fsck:检查和修复ext2和ext3文件系统

Linux用户和用户组管理


  • 用户ID信息文件 /etc/passwd
    • /etc/passwd的文件记录的是单个用户的登录信息
    • 里面有两条记录:root和smc
    • 每一条记录被冒号分割称7个字段
    • 分别是 用户名:密码:UID:GID:用户的描述:用户加目录:用户的shell类型
  • 组ID信息文件 /etc/group
    • /etc/group记录的是GID和用户组组名的一个对应关系

用户管理常用命令

  • 用户查询常用命令:id(查询当前登录用户的GID、UID)、finger(查询当前用户属性信息,如家目录和用户类型)
  • 新增用户
linux: ~ # useradd -d /home/ipcc -m -u 2000 -g mms -s /bin/csh ipcc
说明:useradd[参数] [用户名] -d: 设置用户的家目录 -m: 设置的家目录不存在时自动创建 -u: 设置用户的UID -g: 设置初始GID或者组名 -s: 指定用户的shell
如果没有设定参数,系统会自动读取/etc/default/useradd配置文件,指定相关用户组、shell等参数。
如果要查询,可以输入linux:~ # useradd -D读取基本配置。
  • 删除用户
linux:~ # userdel ipcc //删除ipcc用户 
linux:~ # userdel -r iptv //删除iptv用户及其家目录
  • 设置用户密码
linux:~ # passwd ipcc
  • 修改用户属性
usedmod [用户名] -d: 修改用户家目录 -g: 修改初始用户组

用户组管理常用命令

  • 新增用户组
linux:~ # groupadd ipcc //不指定GID
linux:~ # groupadd -g 2000 iptv //GID为2000
  • 删除用户组
linux:~ # groupdel iptv
  • 修改用户组
linux:~ # groupmod -g 2500 -n ipcc1 ipcc //修改GID为2500,组名为ipcc1

Linux LVM配置


  • Logical Volume Manager
  • 建立在硬盘和分区之间的逻辑层
  • 提高磁盘分区管理的灵活性
    • 在传统的存储模型中,文件系统是直接构建在物理分区之上的,物理分区的大小决定了其上文件系统的存储容量,调整文件系统的存储容量变得比较繁琐
    • LVM设计的主要目标是实现文件系统存储容量可扩展性,使对容量的调整更简易

架构

  • 物理分区:pp-physical partition,可以是硬盘的分区或者是RAID分区

  • 物理卷:PV-physical volume,是pp的LVM抽象,维护了pp的结构信息,是组成VG的基本逻辑单元,一般一个PV对应一个PP

  • 物理扩展单元:PE-physical extends,每个PV都会以pe为基本单元划分,是lvm的最小存储单元

  • 卷组:vg-volume group,由一个或者数个PV组成,可以看做LVM组合起来的大磁盘

  • 逻辑扩展单元:LE-logical extends,组成LV的基本单元,一个LE对应一个PE

  • 逻辑卷:LV-logical volume,建立在VG之上,文件系统之下,由若干个LE组成,文件系统是基于逻辑卷的

  • LVM是通过交换PE的方式来达到弹性变更文件系统的大小

  • 想扩增VG的容量则可以通过增加PV的方式

  • 一般LVM默认的pe的大小是4M,最多有65534个PE,所以LVM的VG最大为256G

  • LV和磁盘的dev/sda2分区类似,是用来格式化的单位。当对LV进行写入操作时LVM定位相应的LE,通过PV头部的映射表将数据写入到相应的PE上

  • LV实现的关键在于PE和LE之间建立的映射关系,不同的映射规则决定了不同的LVM存储模型

优势

  • 文件系统可以跨多个磁盘
  • 动态地扩展文件系统大小
  • 增加新磁盘到LVM的存储池中

注意要点

  • 按需分配文件系统的大小,多余的空间放在存储池中
  • 把不同的数据放在不同的卷组中,在系统升级或者数据迁移的时候较为方便

LVM的配置流程

  • 物理分区阶段
    • 通过fdisk将systernID修改为LVM标记
  • PV阶段
    • 通过pvcreate将Linux分区处理成物理卷PV
  • VG阶段(含有多个PE)
    • 通过vgcreate将创建好的物理卷处理成卷组vg
  • LV阶段(可用于格式化)
    • 通过lvcreate将卷组分成若干个逻辑卷LV
  • 操作系统使用阶段
    • 通过mkfs工具将LV格式化
    • 最后挂载格式化后的LV到文件系统 mount

物理卷管理

  • pvcreate创建物理卷
    • 将普通的分区加上pv属性
    • 例如将分区/dev/sda6创建为物理卷:pvcreate /dev/sda6
  • pvremove删除物理卷(语法和pvcreate一致)
  • pvscan查看物理卷信息
  • pvdisplay查看各个物理卷的详细参数

卷组管理命令

  • vgcreate 创建卷组
  • vgscan 查看卷组信息
  • vgdisplay 查看卷组的详细参数
  • vgreduce 缩小卷组,把物理卷从卷组中删除
  • vgextend 扩展卷组,把某个物理卷添加到卷组中
  • vgremove 删除卷组

逻辑卷管理

  • lvcreate 创建逻辑卷
  • lvscan 查看逻辑卷的信息
  • lvdisplay查看逻辑卷的具体参数
  • lvextend增大逻辑卷的大小
  • lvreduce减小逻辑卷的大小
  • lvremove 删除逻辑卷

管理文件系统空间

  • 增大文件系统空间
    • 先卸载逻辑卷
    • 然后通过vgentend,lvextend等命令增大lv的空间
    • 再使用resize2fs将逻辑卷容量增加
    • 最后将逻辑卷挂载到目录树
  • 缩小文件系统空间
    • 先卸载逻辑卷
    • 使用resize2fs将逻辑卷容量减小
    • 然后通过vgreduce,lvreduce等命令减小lv的空间
    • 最后将逻辑卷挂载到目录树

Linux 网络管理

Linux 进程管理

Linux 系统监控

你可能感兴趣的:(Linux概述)