zoukankan      html  css  js  c++  java
  • 自建NAS如何使用大于2TB的硬盘(从分区开始)

    自建NAS如何使用大于2TB的硬盘(从分区开始)


    需求说明:
    自建NAS,自备了两块3T的硬盘,如何操作才能正常的使用?
    思路说明:

    • 按照自己的需求对两块3T硬盘分区;
    • 对分区进行格式化;
    • 挂载到某一目录(需设置开机自动挂载)
    • 上传文件测试;

    硬盘分区

    最常见的分区如下所示:

    #系统
    kyeup@kyeup-nas:~$ lsb_release -a
    No LSB modules are available.
    Distributor ID:	Debian
    Description:	Debian GNU/Linux 9.4 (stretch)
    Release:	9.4
    Codename:	stretch
    kyeup@kyeup-nas:~$ sudo fdisk -l
    [sudo] kyeup 的密码:
    Disk /dev/sda: 74.5 GiB, 80026361856 bytes, 156301488 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: gpt
    Disk identifier: E57E46D1-111A-4C41-BAFD-62AA237015D1
    
    Device         Start       End   Sectors  Size Type
    /dev/sda1       2048   1050623   1048576  512M EFI System
    /dev/sda2    1050624 148615167 147564544 70.4G Linux filesystem
    /dev/sda3  148615168 156301311   7686144  3.7G Linux swap
    
    
    Disk /dev/sdc: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/sdb: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    kyeup@kyeup-nas:~$ sudo fdisk /dev/sdb
    
    Welcome to fdisk (util-linux 2.29.2).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.
    
    Device does not contain a recognized partition table.
    The size of this disk is 2.7 TiB (3000592982016 bytes). DOS partition table format can not be used on drives for volumes larger than 2199023255040 bytes for 512-byte sectors. Use GUID partition table format (GPT).
    
    Created a new DOS disklabel with disk identifier 0x4d35f874.
    
    Command (m for help): n
    Partition type
       p   primary (0 primary, 0 extended, 4 free)
       e   extended (container for logical partitions)
    Select (default p): p
    Partition number (1-4, default 1): 
    First sector (2048-4294967295, default 2048): 
    Last sector, +sectors or +size{K,M,G,T,P} (2048-4294967294, default 4294967294):   
    
    Created a new partition 1 of type 'Linux' and of size 2 TiB.
    
    Command (m for help): p
    Disk /dev/sdb: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    Disklabel type: dos
    Disk identifier: 0x4d35f874
    
    Device     Boot Start        End    Sectors Size Id Type
    /dev/sdb1        2048 4294967294 4294965247   2T 83 Linux
    
    Command (m for help): q
    

    根据上面的提示:

    The size of this disk is 2.7 TiB (3000592982016 bytes). DOS partition table format can not be used on drives for volumes larger than 2199023255040 bytes for 512-byte sectors. Use GUID partition table format (GPT).
    
    Device     Boot Start        End    Sectors Size Id Type
    /dev/sdb1        2048 4294967294 4294965247   2T 83 Linux
    

    MBR 分区表类型最大支持2T,对于大于2T的硬盘需要使用GPT分区。另外,fdisk只对mbr分区有效,故而使用parted分区

    MBR(Master Boot Record)

      主引导记录,是传统的分区机制,应用于绝大多数使用BIOS的PC设备

      MBR支持32位和64位系统。

      MBR支持分区数量有限。

      MBR只支持不超过2T的硬盘,超过2T的硬盘将只能用2T空间(有第三方解决方法)。
    GPT(GUID Partition Table)

      全局唯一标识分区表,是一个较新的分区机制,解决了MBR很多缺点。

      支持超过2T的磁盘(64位寻址空间)。fdisk最大只能建立2TB大小的分区,创建一个大于2TB的分区使用parted。

      向后兼容MBR。

      必须在支持uEFI的硬件上才能使用(Intel提出,用于取代BIOS)。

      必须使用64位系统。

      Mac、Linux系统都能支持GPT分区格式。

      Windows 7/8 64bit、Windows Server 2008 64bit支持GPT。

      以上就是Linux系统MBR和GPT分区的区别,总得来说GPT比MBR更先进,但是MBR的兼容性比GPT要好。

    kyeup@kyeup-nas:/sys/block$ sudo parted /dev/sdb
    GNU Parted 3.2
    Using /dev/sdb
    Welcome to GNU Parted! Type 'help' to view a list of commands.
    (parted) p                                                                
    Model: ATA WD30EZRZ-64D85Y0 (scsi)
    Disk /dev/sdb: 3001GB
    Sector size (logical/physical): 512B/4096B
    Partition Table: gpt
    Disk Flags: 
    
    Number  Start  End  Size  File system  Name  Flags
    
    (parted) mkpart                                                           
    Partition name?  []? fun1
    File system type?  [ext2]? ext4
    Start? 0%
    End? 1T
    (parted) p                                                                
    Model: ATA WD30EZRZ-64D85Y0 (scsi)
    Disk /dev/sdb: 3001GB
    Sector size (logical/physical): 512B/4096B
    Partition Table: gpt
    Disk Flags: 
    
    Number  Start   End     Size    File system  Name  Flags
     1      1049kB  1000GB  1000GB  ext4         fun1
    
    (parted) mkpart                                                           
    Partition name?  []? fun2                                                 
    File system type?  [ext2]? ext4
    Start? 1T                                                                 
    End? 100%                                                                 
    (parted) p                                                                
    Model: ATA WD30EZRZ-64D85Y0 (scsi)
    Disk /dev/sdb: 3001GB
    Sector size (logical/physical): 512B/4096B
    Partition Table: gpt
    Disk Flags: 
    
    Number  Start   End     Size    File system  Name  Flags
     1      1049kB  1000GB  1000GB  ext4         fun1
     2      1000GB  3001GB  2001GB  ext4         fun2
    
    (parted) quit
    Information: You may need to update /etc/fstab.
    
    kyeup@kyeup-nas:~$ sudo parted /dev/sdc
    GNU Parted 3.2
    Using /dev/sdc
    Welcome to GNU Parted! Type 'help' to view a list of commands.
    (parted) p                                                                
    Model: ATA WD30EFRX-68EUZN0 (scsi)
    Disk /dev/sdc: 3001GB
    Sector size (logical/physical): 512B/4096B
    Partition Table: gpt
    Disk Flags: 
    
    Number  Start  End  Size  File system  Name  Flags
    
    (parted) mkpart                                                           
    Partition name?  []? work1                                                
    File system type?  [ext2]? ext4
    Start? 0%                                                                 
    End? 1T                                                                   
    (parted) mkpart                                                           
    Partition name?  []? work2
    File system type?  [ext2]? ext4                                           
    Start? 1T                                                                 
    End? 100%                                                                 
    (parted) p                                                                
    Model: ATA WD30EFRX-68EUZN0 (scsi)
    Disk /dev/sdc: 3001GB
    Sector size (logical/physical): 512B/4096B
    Partition Table: gpt
    Disk Flags: 
    
    Number  Start   End     Size    File system  Name   Flags
     1      1049kB  1000GB  1000GB  ext4         work1
     2      1000GB  3001GB  2001GB  ext4         work2
    
    (parted) quit                                                             
    Information: You may need to update /etc/fstab.
    
    kyeup@kyeup-nas:~$ sudo fdisk -l
    Disk /dev/sda: 74.5 GiB, 80026361856 bytes, 156301488 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: gpt
    Disk identifier: E57E46D1-111A-4C41-BAFD-62AA237015D1
    
    Device         Start       End   Sectors  Size Type
    /dev/sda1       2048   1050623   1048576  512M EFI System
    /dev/sda2    1050624 148615167 147564544 70.4G Linux filesystem
    /dev/sda3  148615168 156301311   7686144  3.7G Linux swap
    
    
    Disk /dev/sdc: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    Disklabel type: gpt
    Disk identifier: 16CD8258-758E-4FE4-B198-DF40ABE49BE3
    
    Device          Start        End    Sectors   Size Type
    /dev/sdc1        2048 1953124351 1953122304 931.3G Linux filesystem
    /dev/sdc2  1953124352 5860532223 3907407872   1.8T Linux filesystem
    
    
    Disk /dev/sdb: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    Disklabel type: gpt
    Disk identifier: BD41449F-41EB-43DB-B797-185363963AE1
    
    Device          Start        End    Sectors   Size Type
    /dev/sdb1        2048 1953124351 1953122304 931.3G Linux filesystem
    /dev/sdb2  1953124352 5860532223 3907407872   1.8T Linux filesystem
    

    Start? 0%
    End? 1T
    (parted) mkpart
    Partition name? []? work2
    File system type? [ext2]? ext4
    Start? 1T
    End? 100%
    注意此处是0% 100%

    对分区进行格式化

    kyeup@kyeup-nas:~$ sudo fdisk -l
    Disk /dev/sda: 74.5 GiB, 80026361856 bytes, 156301488 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: gpt
    Disk identifier: E57E46D1-111A-4C41-BAFD-62AA237015D1
    
    Device         Start       End   Sectors  Size Type
    /dev/sda1       2048   1050623   1048576  512M EFI System
    /dev/sda2    1050624 148615167 147564544 70.4G Linux filesystem
    /dev/sda3  148615168 156301311   7686144  3.7G Linux swap
    
    
    Disk /dev/sdc: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    Disklabel type: gpt
    Disk identifier: 16CD8258-758E-4FE4-B198-DF40ABE49BE3
    
    Device          Start        End    Sectors   Size Type
    /dev/sdc1        2048 1953124351 1953122304 931.3G Linux filesystem
    /dev/sdc2  1953124352 5860532223 3907407872   1.8T Linux filesystem
    
    
    Disk /dev/sdb: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    Disklabel type: gpt
    Disk identifier: BD41449F-41EB-43DB-B797-185363963AE1
    
    Device          Start        End    Sectors   Size Type
    /dev/sdb1        2048 1953124351 1953122304 931.3G Linux filesystem
    /dev/sdb2  1953124352 5860532223 3907407872   1.8T Linux filesystem
    kyeup@kyeup-nas:~$ sudo mkfs.ext4 /dev/sdb1
    mke2fs 1.43.4 (31-Jan-2017)
    创建含有 244140288 个块(每块 4k)和 61038592 个inode的文件系统
    文件系统UUID:a5fc03f1-255b-4561-b3b2-9c17c324d935
    超级块的备份存储于下列块: 
    	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    	4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
    	102400000, 214990848
    
    正在分配组表: 完成                            
    正在写入inode表: 完成                            
    创建日志(262144 个块)完成
    写入超级块和文件系统账户统计信息: 已完成   
    
    kyeup@kyeup-nas:~$ sudo mkfs.ext4 /dev/sdb2
    mke2fs 1.43.4 (31-Jan-2017)
    创建含有 488425984 个块(每块 4k)和 122109952 个inode的文件系统
    文件系统UUID:b4e66cc9-f7c0-489b-beda-8e5a481c61e0
    超级块的备份存储于下列块: 
    	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    	4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
    	102400000, 214990848
    
    正在分配组表: 完成                            
    正在写入inode表: 完成                            
    创建日志(262144 个块)完成
    写入超级块和文件系统账户统计信息: 已完成     
    
    kyeup@kyeup-nas:~$ sudo mkfs.ext4 /dev/sdc1
    mke2fs 1.43.4 (31-Jan-2017)
    创建含有 244140288 个块(每块 4k)和 61038592 个inode的文件系统
    文件系统UUID:b568092d-ccba-47ca-ba38-af90db375983
    超级块的备份存储于下列块: 
    	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    	4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
    	102400000, 214990848
    
    正在分配组表: 完成                            
    正在写入inode表: 完成                            
    创建日志(262144 个块)完成
    写入超级块和文件系统账户统计信息: 已完成   
    
    kyeup@kyeup-nas:~$ sudo mkfs.ext4 /dev/sdc2
    mke2fs 1.43.4 (31-Jan-2017)
    创建含有 488425984 个块(每块 4k)和 122109952 个inode的文件系统
    文件系统UUID:837dfafb-3cff-4c15-9bea-33cc18abc3bb
    超级块的备份存储于下列块: 
    	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    	4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
    	102400000, 214990848
    
    正在分配组表: 完成                            
    正在写入inode表: 完成                            
    创建日志(262144 个块)完成
    写入超级块和文件系统账户统计信息: 已完成    
    

    挂载到某一目录(需设置开机自动挂载)

    kyeup@kyeup-nas:~$ sudo blkid
    /dev/sda1: UUID="8982-B086" TYPE="vfat" PARTUUID="b5461768-be0f-4ff2-bccb-44ebc7f84a5d"
    /dev/sda2: UUID="17dbffb4-ff98-4ba4-b0c0-270d0ac12f07" TYPE="ext4" PARTUUID="4be18a0f-4d18-47a5-8c94-580251b97803"
    /dev/sda3: UUID="effcd1ac-b4ed-4c62-894c-66aca5fc61f2" TYPE="swap" PARTUUID="4a1dfc34-9c37-4345-8516-7e5d868eaef6"
    /dev/sdc1: UUID="b568092d-ccba-47ca-ba38-af90db375983" TYPE="ext4" PARTLABEL="work1" PARTUUID="e57513c5-a3d4-4b5d-a4a7-0ab1980f153b"
    /dev/sdc2: UUID="837dfafb-3cff-4c15-9bea-33cc18abc3bb" TYPE="ext4" PARTLABEL="work2" PARTUUID="0a993b35-34b6-49fc-80e3-aac086304ff0"
    /dev/sdb1: UUID="a5fc03f1-255b-4561-b3b2-9c17c324d935" TYPE="ext4" PARTLABEL="fun1" PARTUUID="00edb0eb-153a-41bd-9aa8-99749c1dac4a"
    /dev/sdb2: UUID="b4e66cc9-f7c0-489b-beda-8e5a481c61e0" TYPE="ext4" PARTLABEL="fun2" PARTUUID="dc10cdd3-4d52-47f7-be6d-85e04f7c1acd"
    #新建挂载的目录 
    kyeup@kyeup-nas:~$ sudo mkdir /fun1 /fun2 /work1 /work2
    #编辑 /etc/fstab
    kyeup@kyeup-nas:~$ sudo cat /etc/fstab
    # /etc/fstab: static file system information.
    #
    # Use 'blkid' to print the universally unique identifier for a
    # device; this may be used with UUID= as a more robust way to name devices
    # that works even if disks are added and removed. See fstab(5).
    #
    # <file system> <mount point>   <type>  <options>       <dump>  <pass>
    # / was on /dev/sda2 during installation
    UUID=17dbffb4-ff98-4ba4-b0c0-270d0ac12f07 /               ext4    errors=remount-ro 0       1
    # /boot/efi was on /dev/sda1 during installation
    UUID=8982-B086  /boot/efi       vfat    umask=0077      0       1
    # swap was on /dev/sda3 during installation
    UUID=effcd1ac-b4ed-4c62-894c-66aca5fc61f2 none            swap    sw              0       0
    
    UUID=a5fc03f1-255b-4561-b3b2-9c17c324d935		/fun1	ext4	defaults	0      0
    
    UUID=b4e66cc9-f7c0-489b-beda-8e5a481c61e0		/fun2	ext4	defaults	0      0
    
    UUID=b568092d-ccba-47ca-ba38-af90db375983		/work1	ext4	defaults	0      0
    
    UUID=837dfafb-3cff-4c15-9bea-33cc18abc3bb		/work2	ext4	defaults	0      0
    kyeup@kyeup-nas:~$ sudo mount -a
    kyeup@kyeup-nas:~$ df -h
    文件系统        容量  已用  可用 已用% 挂载点
    udev            1.8G     0  1.8G    0% /dev
    tmpfs           362M  5.5M  356M    2% /run
    /dev/sda2        69G  3.5G   62G    6% /
    tmpfs           1.8G     0  1.8G    0% /dev/shm
    tmpfs           5.0M  4.0K  5.0M    1% /run/lock
    tmpfs           1.8G     0  1.8G    0% /sys/fs/cgroup
    /dev/sda1       511M  132K  511M    1% /boot/efi
    tmpfs           362M     0  362M    0% /run/user/1000
    /dev/sdb1       916G   77M  870G    1% /fun1
    /dev/sdb2       1.8T   77M  1.7T    1% /fun2
    /dev/sdc1       916G   77M  870G    1% /work1
    /dev/sdc2       1.8T   77M  1.7T    1% /work2
    
    

    上传文件测试;

    kyeup@kyeup-nas:/fun2$ ls /fun[12] /work[12]
    /fun1:
    lost+found
    
    /fun2:
    lost+found
    
    /work1:
    lost+found
    
    /work2:
    lost+found
    kyeup@kyeup-nas:/fun1$ sudo mkdir movie
    kyeup@kyeup-nas:/fun1$ ls
    lost+found  movie
    kyeup@kyeup-nas:~$ sudo chown kyeup:kyeup /fun1/movie/
    kyeup@kyeup-nas:/fun1/movie$ mkdir study
    
    

    补充

    在分区的时候一定格外注意:

    kyeup@kyeup-nas:~$ sudo parted /dev/sdc
    GNU Parted 3.2
    Using /dev/sdc
    Welcome to GNU Parted! Type 'help' to view a list of commands.
    (parted) mktable                                                          
    New disk label type? work1
    parted: invalid token: work1
    New disk label type? gpt                                                  
    (parted) mkpart
    Partition name?  []? work1                                                
    File system type?  [ext2]? ext4                                           
    Start? 0                                                                  
    End? 1T                                                                   
    Warning: The resulting partition is not properly aligned for best performance.
    Ignore/Cancel? i                                                          
    (parted) mkpart
    Partition name?  []? work2                                                
    File system type?  [ext2]? ext4                                           
    Start? 1T                                                                 
    End? 100%                                                                 
    (parted) p                                                                
    Model: ATA WD30EFRX-68EUZN0 (scsi)
    Disk /dev/sdc: 3001GB
    Sector size (logical/physical): 512B/4096B
    Partition Table: gpt
    Disk Flags: 
    
    Number  Start   End     Size    File system  Name   Flags
     1      17.4kB  1000GB  1000GB  ext4         work1
     2      1000GB  3001GB  2001GB  ext4         work2
    

    在start的时候,不能输入 0 或者 1,在网上大多采用这种方法,但是在后面的格式化中出现:

    kyeup@kyeup-nas:~$ sudo mkfs.ext4 /dev/sdb1
    mke2fs 1.43.4 (31-Jan-2017)
    /dev/sdb1 未对齐,偏移了 3072 个字节。
    这可能导致性能下降,建议重新进行分区。
    创建含有 244140620 个块(每块 4k)和 61038592 个inode的文件系统
    文件系统UUID:d16b9bfe-8485-4795-a4ef-aeb6bf2d914e
    超级块的备份存储于下列块: 
      32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
      4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
      102400000, 214990848
    
    正在分配组表: 完成                            
    正在写入inode表: 完成                            
    创建日志(262144 个块)完成
    写入超级块和文件系统账户统计信息: 已完成   
    

    所以出现了“4K对齐”的问题,网上有解决办法,但是试过不行之有效,所以最好的办法是使用百分比(%)的方式划分。

    希望大家遇到此类问题能很快的解决!o(∩_∩)o

  • 相关阅读:
    接口interface实现与显示实现
    Binding ,抄自 http://www.cnblogs.com/cnblogsfans/archive/2011/02/19/1958586.html
    绑定 Binding Path=.,Binding.,Binding Source={StaticResource ResourceKey="Hello"} xmlns:sys="clr-namespace:System;assembly=mscorlib"
    WPF绑定 mode Using System.ComponentModel; IPropertyChanged, if(this.PropertyChanged!=null){ this.PropertyChanged.Invoke(this,new PropertyChangedEventArgs("Name"))
    C# 方法默认访问级别 : private C# 类默认访问级别 : internal
    html和css的编码规范
    JSON.stringify()和JOSN.parse()
    js的几种数据类型
    sass的四种css编译风格
    angularJs
  • 原文地址:https://www.cnblogs.com/kyeup/p/9286712.html
Copyright © 2011-2022 走看看