zoukankan      html  css  js  c++  java
  • Linux 使用fdisk添加新分区

    Linux系统由于数据累计增长、前期存储规划不合理等诸多因素,出现存储不够用的情况时,此时就需要扩展逻辑分区或添加新的逻辑分区。下面介绍一下通过使用fdsik添加新的逻辑分区。

     

    首先使用df命令检查文件系统的磁盘空间占用情况

    [root@DB-ONE-SERVER~]# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/VolGroup00-sda3
                           30G  2.4G   26G   9% /
    /dev/sda1              99M   23M   71M  25% /boot
    tmpfs                 4.0G     0  4.0G   0% /dev/shm
    You have new mail in /var/spool/mail/root

    然后使用fdisk -l查看分区表信息

    [root@DB-ONE-SERVER~]# fdisk -l
     
     
    Disk /dev/sda: 42.9 GB, 42949672960 bytes
    255 heads, 63 sectors/track, 5221 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
     
     
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *           1          13      104391   83  Linux
    /dev/sda2              14        5221    41833260   8e  Linux LVM
     
     
    Disk /dev/sdb: 21.4 GB, 21474836480 bytes
    255 heads, 63 sectors/track, 2610 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
     
     
    Disk /dev/sdb doesn't contain a valid partition table
     
     
    Disk /dev/dm-0: 32.3 GB, 32346472448 bytes
    255 heads, 63 sectors/track, 3932 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
     
     
    Disk /dev/dm-0 doesn't contain a valid partition table
     
     
    Disk /dev/dm-1: 10.4 GB, 10468982784 bytes
    255 heads, 63 sectors/track, 1272 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
     
     
    Disk /dev/dm-1 doesn't contain a valid partition table

    fdisk命令参数介绍

         p、打印分区表。

         n、新建一个新分区。

         d、删除一个分区。

         m、输出菜单

         q、退出不保存。

         w、把分区写进分区表,保存并退出。

    [root@DB-ONE-SERVER~]# fdisk /dev/sdb
    Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
    Building a new DOS disklabel. Changes will remain in memory only,
    until you decide to write them. After that, of course, the previous
    content won't be recoverable.
     
     
     
     
    The number of cylinders for this disk is set to 2610.
    There is nothing wrong with that, but this is larger than 1024,
    and could in certain setups cause problems with:
    1) software that runs at boot time (e.g., old versions of LILO)
    2) booting and partitioning software from other OSs
       (e.g., DOS FDISK, OS/2 FDISK)
    Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
     
     
    Command (m for help): m
    Command action
       a   toggle a bootable flag
       b   edit bsd disklabel
       c   toggle the dos compatibility flag
       d   delete a partition
       l   list known partition types
       m   print this menu
       n   add a new partition
       o   create a new empty DOS partition table
       p   print the partition table
       q   quit without saving changes
       s   create a new empty Sun disklabel
       t   change a partition's system id
       u   change display/entry units
       v   verify the partition table
       w   write table to disk and exit
       x   extra functionality (experts only)
     
     
     
     
    Command (m for help): p
     
     
    Disk /dev/sdb: 21.4 GB, 21474836480 bytes
    255 heads, 63 sectors/track, 2610 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
     
     
       Device Boot      Start         End      Blocks   Id  System
     
     
    Command (m for help): n
    Command action
       e   extended
       p   primary partition (1-4)
    p
    Partition number (1-4): 1
    First cylinder (1-2610, default 1): 1
    Last cylinder or +size or +sizeM or +sizeK (1-2610, default 2610): 
    Using default value 2610
     
     
    Command (m for help): p
     
     
    Disk /dev/sdb: 21.4 GB, 21474836480 bytes
    255 heads, 63 sectors/track, 2610 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
     
     
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1               1        2610    20964793+  83  Linux
     
     
    Command (m for help): w
    The partition table has been altered!
     
     
    Calling ioctl() to re-read partition table.
    Syncing disks.
    [root@DB-ONE-SERVER~]#  fdisk -l /dev/sdb
     
     
    Disk /dev/sdb: 21.4 GB, 21474836480 bytes
    255 heads, 63 sectors/track, 2610 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
     
     
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1               1        2610    20964793+  83  Linux

    使用 mkfs.ext4 命令格式化磁盘成格式化成ext4各式的文件系统。

    [root@DB-ONE-SERVER~]# mkfs.ext4 /dev/sdb1
    mke4fs 1.41.12 (17-May-2010)
    Filesystem label=
    OS type: Linux
    Block size=4096 (log=2)
    Fragment size=4096 (log=2)
    Stride=0 blocks, Stripe width=0 blocks
    1310720 inodes, 5241198 blocks
    262059 blocks (5.00%) reserved for the super user
    First data block=0
    Maximum filesystem blocks=4294967296
    160 block groups
    32768 blocks per group, 32768 fragments per group
    8192 inodes per group
    Superblock backups stored on blocks: 
            32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
            4096000
     
     
    Writing inode tables: done                            
    Creating journal (32768 blocks): done
    Writing superblocks and filesystem accounting information: done
     
     
    This filesystem will be automatically checked every 36 mounts or
    180 days, whichever comes first.  Use tune4fs -c or -i to override.

    系统启动时自动挂载/dev/sdb1,编辑/etc/fstab文件,指定挂载目录为/u02

    [root@DB-ONE-SERVER~]# vi /etc/fstab
     
     
    /dev/VolGroup00/sda3    /                       ext3    defaults        1 1
    /dev/sdb1               /u02                    ext4    defaults        1 2
    LABEL=/boot             /boot                   ext3    defaults        1 2
    tmpfs                   /dev/shm                tmpfs   defaults        0 0
    devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
    sysfs                   /sys                    sysfs   defaults        0 0
    proc                    /proc                   proc    defaults        0 0
    /dev/VolGroup00/sda4    swap                    swap    defaults        0 0
    ~
     
    [root@DB-ONE-SERVER~]# cd /
    [root@DB-ONE-SERVER/]# mkdir u02
    [root@DB-ONE-SERVER/]# mount -a
    [root@DB-ONE-SERVER/]# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/VolGroup00-sda3
                           30G  2.4G   26G   9% /
    /dev/sda1              99M   23M   71M  25% /boot
    tmpfs                 4.0G     0  4.0G   0% /dev/shm
    /dev/sdb1              20G  172M   19G   1% /u02
    [root@DB-ONE-SERVER/]# 

     

    下面来看看虚拟上Linux的添加新的逻辑分区的步骤,其实操作是一样的,只是顺带介绍一下虚拟机如何添加硬盘

     
    [root@oracle_server ~]# fdisk -l
     
    Disk /dev/sda: 584.6 GB, 584646328320 bytes
    255 heads, 63 sectors/track, 71079 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
     
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *           1       19441   156151808   83  Linux
    Partition 1 does not end on cylinder boundary.
    /dev/sda2           19441       44937   204796672   83  Linux
    Partition 2 does not end on cylinder boundary.
    /dev/sda3           44937       57685   102398336   83  Linux
    Partition 3 does not end on cylinder boundary.
    /dev/sda4           57685       71080   107595584    5  Extended
    Partition 4 does not end on cylinder boundary.
    /dev/sda5           57685       70433   102398336   83  Linux
    /dev/sda6           70433       70949     4144768   82  Linux swap
    /dev/sda7           70949       71080     1052288   83  Linux
     
    Disk /dev/sdb: 146.1 GB, 146156158976 bytes
    2 heads, 24 sectors/track, 5947109 cylinders
    Units = cylinders of 48 * 512 = 24576 bytes
     
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1               3     5947064   142729472   83  Linux
    [root@oracle_server ~]# 

    此时需要选择“添加”选项,增加一个磁盘。

    clip_image001

    如下所示,我们选择“创建新的虚拟磁盘”

    clip_image002

    容量选择100G, 磁盘置备我们选择“Thin Provison”,表示用多少分配多少,最大分配100G,而不是一开始就分配100G(厚置被延迟置零)

    clip_image003

    clip_image004

    clip_image005

    [root@oracle_server ~]# fdisk -l
     
    Disk /dev/sda: 584.6 GB, 584646328320 bytes
    255 heads, 63 sectors/track, 71079 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
     
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *           1       19441   156151808   83  Linux
    Partition 1 does not end on cylinder boundary.
    /dev/sda2           19441       44937   204796672   83  Linux
    Partition 2 does not end on cylinder boundary.
    /dev/sda3           44937       57685   102398336   83  Linux
    Partition 3 does not end on cylinder boundary.
    /dev/sda4           57685       71080   107595584    5  Extended
    Partition 4 does not end on cylinder boundary.
    /dev/sda5           57685       70433   102398336   83  Linux
    /dev/sda6           70433       70949     4144768   82  Linux swap
    /dev/sda7           70949       71080     1052288   83  Linux
     
    Disk /dev/sdb: 146.1 GB, 146156158976 bytes
    2 heads, 24 sectors/track, 5947109 cylinders
    Units = cylinders of 48 * 512 = 24576 bytes
     
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1               3     5947064   142729472   83  Linux

    此时使用fdisk -l 依然看不到添加的磁盘,此时可以通过重启或执行下面命令

    [root@oracle_server ~]# echo "- - -" > /sys/class/scsi_host/host0/scan
    [root@oracle_server ~]# fdisk -l
     
    Disk /dev/sda: 584.6 GB, 584646328320 bytes
    255 heads, 63 sectors/track, 71079 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
     
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *           1       19441   156151808   83  Linux
    Partition 1 does not end on cylinder boundary.
    /dev/sda2           19441       44937   204796672   83  Linux
    Partition 2 does not end on cylinder boundary.
    /dev/sda3           44937       57685   102398336   83  Linux
    Partition 3 does not end on cylinder boundary.
    /dev/sda4           57685       71080   107595584    5  Extended
    Partition 4 does not end on cylinder boundary.
    /dev/sda5           57685       70433   102398336   83  Linux
    /dev/sda6           70433       70949     4144768   82  Linux swap
    /dev/sda7           70949       71080     1052288   83  Linux
     
    Disk /dev/sdb: 146.1 GB, 146156158976 bytes
    2 heads, 24 sectors/track, 5947109 cylinders
    Units = cylinders of 48 * 512 = 24576 bytes
     
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1               3     5947064   142729472   83  Linux
     
    Disk /dev/sdc: 107.3 GB, 107374182400 bytes
    255 heads, 63 sectors/track, 13054 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
     
    Disk /dev/sdc doesn't contain a valid partition table

    clip_image006

    [root@oracle_server ~]# fdisk /dev/sdc
    Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
    Building a new DOS disklabel. Changes will remain in memory only,
    until you decide to write them. After that, of course, the previous
    content won't be recoverable.
     
     
    The number of cylinders for this disk is set to 13054.
    There is nothing wrong with that, but this is larger than 1024,
    and could in certain setups cause problems with:
    1) software that runs at boot time (e.g., old versions of LILO)
    2) booting and partitioning software from other OSs
       (e.g., DOS FDISK, OS/2 FDISK)
    Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
     
    Command (m for help): m
    Command action
       a   toggle a bootable flag
       b   edit bsd disklabel
       c   toggle the dos compatibility flag
       d   delete a partition
       l   list known partition types
       m   print this menu
       n   add a new partition
       o   create a new empty DOS partition table
       p   print the partition table
       q   quit without saving changes
       s   create a new empty Sun disklabel
       t   change a partition's system id
       u   change display/entry units
       v   verify the partition table
       w   write table to disk and exit
       x   extra functionality (experts only)
     
    Command (m for help): p
     
    Disk /dev/sdc: 107.3 GB, 107374182400 bytes
    255 heads, 63 sectors/track, 13054 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
     
       Device Boot      Start         End      Blocks   Id  System
     
    Command (m for help): n
    Command action
       e   extended
       p   primary partition (1-4)
    p
    Partition number (1-4): 1
    First cylinder (1-13054, default 1): 
    Using default value 1
    Last cylinder or +size or +sizeM or +sizeK (1-13054, default 13054): 
    Using default value 13054
     
    Command (m for help): w
    The partition table has been altered!
     
    Calling ioctl() to re-read partition table.
    Syncing disks.
     
    [root@oracle_server u04]# mkfs.ext3 /dev/sdc1
    mke2fs 1.35 (28-Feb-2004)
    Filesystem label=
    OS type: Linux
    Block size=4096 (log=2)
    Fragment size=4096 (log=2)
    13107200 inodes, 26214055 blocks
    1310702 blocks (5.00%) reserved for the super user
    First data block=0
    Maximum filesystem blocks=29360128
    800 block groups
    32768 blocks per group, 32768 fragments per group
    16384 inodes per group
    Superblock backups stored on blocks: 
            32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
            4096000, 7962624, 11239424, 20480000, 23887872
     
    Writing inode tables: done                            
    Creating journal (8192 blocks): done
    Writing superblocks and filesystem accounting information: done
     
    This filesystem will be automatically checked every 32 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.
     
    [root@oracle_server ~]$ more /etc/fstab
    # This file is edited by fstab-sync - see 'man fstab-sync' for details
    LABEL=/1                /                       ext3    defaults        1 1
    none                    /dev/pts                devpts  gid=5,mode=620  0 0
    none                    /dev/shm                tmpfs   defaults        0 0
    none                    /proc                   proc    defaults        0 0
    none                    /sys                    sysfs   defaults        0 0
    LABEL=/tmp              /tmp                    ext3    defaults        1 2
    LABEL=/u01              /u01                    ext3    defaults        1 2
    LABEL=/u02              /u02                    ext3    defaults        1 2
    LABEL=/u03              /u03                    ext3    defaults        1 2
    LABEL=SWAP-sda6         swap                    swap    defaults        0 0
    /dev/sdb1               /u03/flash_recovery_area        ext3    defaults        1 2
    /dev/hda                /media/cdrecorder       auto    pamconsole,exec,noauto,managed 0 0
    /dev/fd0                /media/floppy           auto    pamconsole,exec,noauto,managed 0 0
     
    vi
     
    [oracle@get-orasvr02 ~]$ vi /etc/fstab
    # This file is edited by fstab-sync - see 'man fstab-sync' for details
    LABEL=/1                /                       ext3    defaults        1 1
    none                    /dev/pts                devpts  gid=5,mode=620  0 0
    none                    /dev/shm                tmpfs   defaults        0 0
    none                    /proc                   proc    defaults        0 0
    none                    /sys                    sysfs   defaults        0 0
    LABEL=/tmp              /tmp                    ext3    defaults        1 2
    LABEL=/u01              /u01                    ext3    defaults        1 2
    LABEL=/u02              /u02                    ext3    defaults        1 2
    LABEL=/u03              /u03                    ext3    defaults        1 2
    LABEL=SWAP-sda6         swap                    swap    defaults        0 0
    /dev/sdb1               /u03/flash_recovery_area        ext3    defaults        1 2
    /dev/sdc1               /u04                            ext3    defaults        1 2
    /dev/hda                /media/cdrecorder       auto    pamconsole,exec,noauto,managed 0 0
    /dev/fd0                /media/floppy           auto    pamconsole,exec,noauto,managed 0 0
     
    [root@oracle_server ~]# mkdir /u04
    [root@oracle_server ~]# mount -a
     
    [root@oracle_server  ~]$ df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/sda1             147G   86G   54G  62% /
    /dev/sda7            1012M   34M  927M   4% /tmp
    /dev/sda5              97G   73G   19G  80% /u01
    /dev/sda3              97G   84G  7.6G  92% /u02
    /dev/sda2             193G  133G   51G  73% /u03
    /dev/sdb1             134G   74G   54G  59% /u03/flash_recovery_area
    /dev/sdc1              99G   93M   94G   1% /u04
  • 相关阅读:
    Linux和widow下 Docker开启远程连接访问
    关于Vue+ElementUI 动态表单验证无效的问题解决
    关于Vue中,fullpage全屏滚动插件的使用方法
    关于小程序云开发数据库的增删改查操作
    关于Echarts柱状图点击事件的实现方法
    关于Vue中,使用watch同时监听多个值的实现方法
    关于Vue+ElementUI中,给input手动赋值之后无法修改的问题解决
    关于微信小程序分享/转发功能的实现方法
    关于微信小程序iOS端时间格式兼容问题
    关于Vue+ElementUI修改默认样式不成功问题解决
  • 原文地址:https://www.cnblogs.com/kerrycode/p/3913606.html
Copyright © 2011-2022 走看看