这些原创博文是本人近期学习的课程笔记整理,发表为博客,既是为了梳理自己的思路,也是为更多linux初级爱好者提供一个入门学习的思路。


磁盘结构及概念

 

每个扇区(sector),512字节

每个磁道(track)划分为63个扇区

逻辑磁头(盘面)数设为255

-- > 一个柱面(cylinder)的大小

            = 255 x 63 x 512 字节 = 8MB

-- > 硬盘或分区的容量

            = 柱面大小 柱面数

 

 

一、磁盘分区及格式化(新创建的磁盘不能使用acl功能,需挂载-o选项添加)

磁盘分区步骤:

1>识别硬盘ls /dev/sdb 系统识别了就会显示

2>规划分区(分区工具:fdiskparted

3>格式化mkfs

4>挂载(mountfstab)

5>读写数据到硬盘(cd touchecho)

 

 

1. 两种硬盘分区方案

 

MSDOS —— Master Boot Record —— 第1个扇区(512),用来记录引导程序和分区表。

    ** 4个主分区(3个主分区+1个扩展分区)+很多逻辑分区

    不足:最多4个主分区、最大磁盘2.2TB

 

GPT —— GUID Partition Table

    最大支持18EB磁盘,128个主分区

    ** 1 EB = 1024 PB = 1024 x 1024 TB = 1024 x 1024 x 1024GB

 

 

2. 分区工具:

fdisk【只支持MSDOS分区布局】(交互式分区)  

parted【支持MSDOSGPT分区布局】(交互式与非交互式分区)

 

3. fdisk  -l  查看当前磁盘分区

4. fdisk  /dev/sda(对整块硬盘分区,而不是某个分区)  对/dev/sda进行分区

 

fdisk分区步骤:

    fdisk  /dev/sda    进入分区

    p                查看现有分区表

    n                创建新分区(默认)

    回车             从默认柱面开始新分区

+1G              分区大小

  (t                 可更改分区系统类型)

p                 查看新添加分区

w                保存退

 

 

 

5. parted分区工具用法(支持命令缩写tab引出

    查看分区表:                      parted   /dev/sdb   print

    进入交互分区模式:                parted  /dev/sdb

    获取交互指令帮助:                (parted) help

新增分区:                        mkpart primary|logical|extended】      

分区类型:                       ext4|vfatext4

    分区开始点:                      226G    

    分区结束点,新分区10G:          236G   

    查看分区列表:                   partp   

    删除分区:                        rm partition序号】

    此分区方式会自动保存分区,直接退出即可:(partq

 

 

    GPT分区操作:

         parted  /dev/sdb

        (parted) mktable选择分区类型,GPTMBR)  gpt  

                                                    【建立GPT分区表】

        (parted) mkpart  primary  ext4  0  20G      【建第120GBext3主分区】

        (parted) mkpart  primary  ext4  20G  40G    【建第220GBext3主分区】

        (parted) mkpart  primary  ext4  40G  100%   【剩余所有空间作一个分区】

        (parted) quit                               【退出】  

 

6. partx -a /dev/sda 获取新分区表,让系统可以识别。(或者partprobe5版本适用)

 

 

7. 格式化(不能格式swap):

   1>mkfs  -t  文件类型(ext4/swap) /dev/sda

   2>mkfs . 文件类型(ext4/swap)      /dev/sda

 

8.扩展swap分区:

   mkswap /dev/sda6/dev/sda格式化成swap类型分区

   swapon /dev/sda6启用/dev/sdaswap分区中

   swapoff  /dev/sda6停用/dev/sda

   swapon  -s        查看swap分区

   free  -m          查看swap分区与内存的使用情况


9.利用文件创建SWAP分区【将文件空间转换为swap分区,此方法用于解决硬盘空间紧缺的问题】

[root@svr5 ~]# dd if=/dev/zero(大量数据的来源) of=/tmp/swap.db(生成的大文件存放位置) bs=1M(每次读写的数据大小)count=2048(重复读写次数)

记录了2048+0 的读入

记录了2048+0 的写出

2147483648字节(2.1 GB)已复制,18.2815 秒,117 MB/

[root@svr5 ~]# ls -lh /tmp/swap.db 

-rw-r--r-- 1 root root 2.0G 11月 21 11:37 /tmp/swap.db

[root@svr5 ~]# mkswap /tmp/swap.db 

Setting up swapspace version 1, size = 2006929 kB

[root@svr5 ~]# swapon /tmp/swap.db //启用交换分区

[root@svr5 ~]# swapon  -s  //查看交换分区

Filename                   Type            Size    Used    Priority

/dev/sda3                  partition       2096472 0       -1

/tmp/swap.db  partition       1959888 0       -2

[root@svr5 ~]# swapoff /tmp/swap.db //停用交换分区

[root@svr5 ~]# swapon  -s  

Filename                   Type            Size    Used    Priority

/dev/sda3                  partition       2096472 0       -1