Làm thế nào để phân vùng đĩa 22TB?


33

Tôi có một đĩa 22TB trên /dev/sdb. Làm cách nào để tạo phân vùng 22TB? Không thực sự quan tâm đến hệ thống tập tin - ext4hoặc zfslà tốt.

Chạy CentOS 6.2 - Phân vùng sẽ được sử dụng làm kết xuất dữ liệu. Chỉ có một luồng dữ liệu duy nhất trở nên kén chọn / kén chọn đối với hệ thống tệp nào không thực sự là mối quan tâm ngay bây giờ. Đĩa được hình thành từ các ổ đĩa SAS gần 12x2TB và bộ điều khiển Dell Perc.

Tôi chỉ muốn một phân vùng 22TB.


1
một vài thông tin sẽ có ích bạn đang sử dụng hệ điều hành nào? loại hiệu suất nào bạn mong đợi hoặc cần nhận được từ nó? phần cứng cơ bản là gì? nó đã là một cuộc đột kích? nó có dư thừa không? Bạn có cần các tính năng bảo vệ dữ liệu bổ sung của zfs không?
Tim Kennedy

3
Mà cố gắng đã thất bại cho đến nay? fdisk, cfdisk?
Nils

Câu trả lời:


44

Giải pháp đơn giản nhất là sử dụng phân vùng GPT , phiên bản 64 bit của Linux và XFS :

  • GPT là cần thiết vì bảng phân vùng MBR kiểu MS-DOS được tạo bởi fdiskbị giới hạn ở 2 đĩa TiB. Vì vậy, bạn cần sử dụng partedhoặc một chương trình phân vùng nhận biết GPT khác thay vì fdisk. ( gdisk, gparted, Vv)

  • Một hạt nhân 64 bit là cần thiết vì các hạt nhân 32 bit giới hạn bạn trong các hệ thống tệp nhỏ hơn bạn yêu cầu. Bạn có thể đạt giới hạn kích thước dựa trên số nguyên 32 bit hoặc cuối cùng không thể giải quyết đủ RAM để hỗ trợ hệ thống tệp đúng cách.

  • XFS không phải là giải pháp duy nhất, nhưng theo tôi nó là giải pháp dễ nhất cho các hệ thống RHEL.

    Bạn không thể sử dụng ext4 cho điều này trong RHEL 6. Mặc dù hệ thống tệp được thiết kế để hỗ trợ 1 hệ thống tệp EiB , nhưng có giới hạn kích thước âm lượng 16 TiB nhân tạo trong phiên bản được e2fsprogsbao gồm trong RHEL 6 và các dẫn xuất của nó. Cả Red HatCentOS đều gọi điều này trong tài liệu của họ. (Giới hạn ext4 16 TiB đã được tăng lên đáng kể trong RHEL 7 đến 50 TiB.)

    ZFS có thể không thực tế trong tình huống của bạn . Do một số hạn chế về pháp lý và kỹ thuật, tôi không thể hoàn toàn khuyến nghị điều đó trừ khi bạn cần thứ gì đó chỉ ZFS cung cấp cho bạn.

    Đã loại trừ hai hệ thống tập tin đã chọn của bạn, tôi đề nghị XFS. Đây là hệ thống tập tin mặc định trong RHEL 7, nó có sẵn dưới dạng hệ thống tập tin được hỗ trợ trong tất cả các phiên bản RHEL 6 và được đưa vào bản phát hành sau của RHEL 5 sau khi RHEL 6 ra mắt.

Đây là quá trình:

  1. Kiểm tra xem bạn đã mkfs.xfscài đặt bằng cách chạy nó mà không có đối số. Nếu nó không xuất hiện, hãy cài đặt các công cụ XFS của người dùng:

    # yum install xfsprogs
    

    Nếu thất bại, có thể là do bạn đang sử dụng hệ điều hành cũ không có cái này trong kho gói mặc định của nó. Bạn thực sự nên nâng cấp, nhưng nếu điều đó là không thể, bạn có thể lấy cái này từ CentOSPlus hoặc EPEL . Bạn cũng có thể cần phải cài đặt kmod_xfsgói.

  2. Tạo phân vùng:

    Vì bạn nói rằng âm lượng 22 TiB của bạn được bật /dev/sdb, nên các lệnh cho partedlà:

    # parted /dev/sdb mklabel gpt
    # parted -a optimal -- /dev/sdb mkpart primary xfs 1 -1
    

    Điều đó khiến nó chiếm toàn bộ âm lượng với một phân vùng duy nhất. Trên thực tế, nó bỏ qua 1 MiB đầu tiên của âm lượng, để đạt được sự liên kết 4 KiB cần thiết để có được hiệu suất đầy đủ từ ổ cứngSSD định dạng nâng cao .

    Bạn có thể bỏ qua bước này và định dạng toàn bộ âm lượng với XFS. Đó là, bạn sẽ sử dụng /dev/sdbtrong ví dụ dưới đây thay vì /dev/sdb1. Điều này tránh được vấn đề liên kết ngành. Trong trường hợp âm lượng mà chỉ hệ điều hành dựa trên Linux của bạn sẽ nhìn thấy, không có nhược điểm nào đáng nói, nhưng tôi thận trọng không thực hiện điều này trên một ổ đĩa rời hoặc trên một ổ đĩa trong máy tính đa khởi động , vì một số Các hệ điều hành (ví dụ Windows và macOS) sẽ cung cấp định dạng ổ cứng không phân vùng cho bạn mỗi khi nó xuất hiện. Đặt hệ thống tập tin vào một phân vùng sẽ giải quyết điều này.

  3. Định dạng phân vùng:

    # mkfs.xfs -L somelabel /dev/sdb1
    
  4. Thêm /etc/fstabmục:

    LABEL=somelabel    /some/mount/point    xfs     defaults   0 0
    
  5. Lên núi!

     # mount /some/mount/point
    

Nếu bạn muốn đi xuống đường dẫn LVM , các bước trên về cơ bản chỉ là phiên bản chi tiết hơn của bộ lệnh thứ hai trong câu trả lời của người dùng bsdbên dưới . Bạn phải thực hiện bộ lệnh đầu tiên của mình trước các lệnh trên.

LVM cung cấp một số lợi thế nhất định với chi phí phức tạp. Chẳng hạn, sau này bạn có thể "phát triển" một nhóm âm lượng LVM bằng cách thêm nhiều khối lượng vật lý vào nó, từ đó tạo không gian để tăng âm lượng logic ("phân vùng" kinda, sorta), từ đó cho phép bạn phát triển hệ thống tệp sống theo logic âm lượng. (Xem những gì tôi muốn nói về sự phức tạp? :))


4
Phần ZFS đang gây tranh cãi. Cổng Linux đã đi một chặng đường dài kể từ năm 2010 và so với XFS, nó có nhiều lợi thế
TheLQ

Về GPT / MBR, không thực sự chỉ áp dụng nếu /bootlà một phần của /? MBR không quan tâm nó lớn đến mức nào /nếu nó chỉ phải lắp một cái nhỏ /bootphải không? Tôi có thể sai.
jonescb

1
@jonescb: Vị trí của /bootkhông có bất kỳ ảnh hưởng nào đến các hạn chế của MBR. Nếu bạn cần phân vùng trên 2 TB, bạn không thể sử dụng phân vùng MBR. Đó sự thật, tuy nhiên, nó có thể làm việc xung quanh thiếu sự hỗ trợ BIOS để khởi động từ GPT bằng cách đặt /boottrên một đĩa MBR-partitioned nhỏ hơn. Khi kernel đã hoạt động, bạn không phải lo lắng về các giới hạn của BIOS vì nó biết cách diễn giải bảng phân vùng GPT. Nếu máy của bạn dựa trên EFI, bạn không cần thực hiện điệu nhảy này, vì EFI hiểu GPT.
Warren Young

16

Cũng như một thay thế cho các đề xuất khác.
Bạn không cần phải phân vùng đĩa.
Bạn có thể đơn giản tạo Nhóm Tập , với một hoặc nhiều Tập hợp lý .

pvcreate /dev/sdb
vgcreate data /dev/sdb
lvcreate --name dump -L '100%VG' data

Bây giờ bạn có một khối lượng logic mà bạn có thể định dạng với bất kỳ loại hệ thống tập tin nào bạn muốn.

mkfs.XXXX /dev/mapper/data-dump #<- XXXX can be ext4, xfs, btrfs, reiser
mount /dev/mapper/data-dump /mntpt

LVM về cơ bản là một hình thức phân vùng nâng cao. Sử dụng LVM là vô nghĩa nếu bạn chỉ tạo một LV duy nhất bằng cách sử dụng tất cả không gian, vì vậy bạn cũng có thể chỉ cần mkfs trực tiếp trên toàn bộ thiết bị đĩa.
psusi

4
không có công cụ bổ sung nào của LV để chụp nhanh dữ liệu trực tiếp, có thể thay đổi kích thước, nhiều bản sao siêu dữ liệu; linh hoạt hơn nhiều so với một fs đơn giản trên thiết bị.
bsd

1
Bạn không cần nhiều bản sao siêu dữ liệu khi bạn không có siêu dữ liệu (bảng phân vùng) ở vị trí đầu tiên. Ảnh chụp nhanh yêu cầu không gian trống, cũng như thêm / mở rộng âm lượng, do đó tại sao nó được hiển thị vô nghĩa nếu bạn chỉ tạo một khối logic duy nhất bằng cách sử dụng tất cả không gian ngay lập tức. Nếu bạn muốn các tính năng của LVM, thì bạn nên bắt đầu với âm lượng nhỏ hơn để bạn có nhiều không gian trống để sử dụng sau này.
psusi

Tôi đã không đề xuất LVM trong trường hợp cá nhân này, chỉ đơn giản là liệt kê nó như một giải pháp thay thế cho các câu trả lời / giải pháp phân vùng, không phân vùng. Tùy thuộc vào cô ấy để đọc tất cả các phản hồi, theo dõi nghiên cứu của chính mình và sau đó quyết định hành động nào phù hợp nhất với nhu cầu của cô ấy.
bsd

3
Một lợi thế của LVM ngay cả khi bạn chỉ có một LV là nó cho phép bạn dễ dàng thêm dung lượng sau này.
cắm

6

Câu hỏi cho câu hỏi: Bạn đã hỏi ' cách phân vùng đĩa 22TB' và sau đó trong câu hỏi một lần nữa, bạn nói, bạn chỉ muốn một phân vùng 22TB. Vì vậy, đây là ambiguos ở vị trí đầu tiên.

Nếu bạn đã có một thiết bị khối đơn có thể hỗ trợ 22TB dung lượng trên đó, thì bạn đã sở hữu toàn bộ phân vùng 22TB. Tất cả những gì bạn cần là một hệ thống tập tin bên trên nó, nó sẽ làm cho thiết bị có thể gắn kết và có thể sử dụng để đọc / ghi bởi các quy trình hệ thống. Hơn bao giờ hết, bạn cần phải có nhân Linux chạy ở chế độ 64 bit với mô-đun / trình điều khiển hệ thống tập tin hỗ trợ và tăng tỷ lệ tăng trưởng dữ liệu lên 22TB, có thể xử lý việc quản lý dữ liệu trên thiết bị khối (đơn) với giảm bớt. Hiệu suất hoàn toàn là một khía cạnh khác cho nó. Trong trường hợp như vậy, tôi sẽ chọn chọn XFSlàm hệ thống tệp của mình, vì lý do đó là hệ thống tệp 64 bit và có khả năng xử lý các hệ thống tệp lớn tới một triệu terabyte. Nó hỗ trợ tối đa 9 EXABYTES.

2^63  = 9 x 1018 = 9 exabytes 

Để biết thêm chi tiết về XFS: http://oss.sgi.com/projects/xfs/

Nếu bạn đang tìm kiếm phân vùng tiếp theo cho thiết bị khối 22TB khổng lồ, thì hãy sử dụng gpartedđể chia thiết bị thành các phân vùng có thể sử dụng và sau đó định dạng chúng với các hệ thống tệp để làm cho chúng có thể gắn kết.

Có vẻ như bạn đã có bộ điều khiển RAID phần cứng, vì bạn đề cập rằng bạn đã có bộ điều khiển RAID DELL perc - điều đó có nghĩa là, bạn phải cho biết cấu hình RAID nào (chính xác là bạn đang sử dụng cấp RAID nào?) Và trong hầu hết các trường hợp, bạn sẽ không nhận được 22TB dung lượng để sử dụng, tôi có thể sai.


Tôi cũng sẽ đề xuất xfs, nhưng xfs_check sẽ chiếm một lượng lớn bộ nhớ và một thời gian dài để chạy w / 22G fs. Giữa vật lý và trao đổi, người ta sẽ cần ít nhất 32G để kiểm tra, đó là nếu anh ta quan tâm để kiểm tra fs trên 'datadump' (bất kể đó là gì;)
bsd

@bdowning, bạn có thể muốn sửa nó thành 22T fs :)
Nikhil Mulley

Đó là Raid 22TB 5. Tôi có rất nhiều đĩa :)
LVLAaron

Đó là một lỗi đánh máy (rắm não). Tôi có cùng một thiết bị, 10TB, với LSI Megaraid (cùng thẻ với Dell Perc)
bsd

@bdowning: xfs_checkthực sự sử dụng rất nhiều bộ nhớ, nhưng trang thủ công (8) có đề cập: " Lưu ý rằng xfs_checkkhông nên sử dụng. xfs_repair -nThay vào đó, vui lòng sử dụng thay thế, để có khả năng mở rộng và tốc độ tốt hơn. "
Cristian Ciupitu

4

Bạn không cần phân vùng khi sử dụng ZFS, chỉ cần tạo nhóm ZFS trên thiết bị 22 TB của bạn và hệ thống tệp trong đó nếu bạn không muốn sử dụng mặc định và đó là phân vùng. Nếu vì lý do nào đó, zpool không hỗ trợ sử dụng toàn bộ đĩa, trước tiên hãy tạo nhãn EFI và phân vùng sử dụng toàn bộ không gian có sẵn bên trong sau đó sử dụng phân vùng đó để tạo nhóm.

Vì nhiều lý do, tôi không khuyên bạn nên sử dụng bất cứ thứ gì ngoài ZFS cho một hệ thống tệp lớn như vậy. Rõ ràng nhất là nếu bạn bị tắt nguồn tàn bạo (ví dụ: hoảng loạn hạt nhân hoặc thiếu điện), fsck có thể mất nhiều thời gian để khôi phục hệ thống tệp truyền thống. Mặt khác, ZFS không cần fsck nên sẽ nhập nhóm ngay lập tức.

Lưu ý rằng bạn nên phá vỡ cấu hình RAID phần cứng và sử dụng mười hai thiết bị làm JBOD để xây dựng nhóm ZFS với việc tận dụng các khả năng RAID của phần mềm. Nếu mục tiêu của bạn là hiệu suất, bạn có thể phản chiếu các cặp đĩa và nếu mục tiêu của bạn là không gian tối đa, bạn có thể sử dụng cấu hình RAIDZ, RAIDZ2 hoặc RAIDZ3. Làm điều đó sẽ phần lớn cải thiện độ tin cậy của dữ liệu của bạn và khả năng chịu lỗi của giải pháp.


1
Tôi biết đây là một câu trả lời cũ cho một câu hỏi cũ, nhưng .... nếu sử dụng ZFS, tùy chọn tốt nhất là phá hủy mảng RAID, định cấu hình bộ điều khiển RAID cho JBOD để linux nhìn thấy từng đĩa riêng lẻ, sau đó tạo các cặp được nhân đôi (dung lượng ít hơn, hiệu năng tuyệt vời) hoặc RAIDZ / Z2 / Z3 (dung lượng nhiều hơn, hiệu suất mờ nhạt) từ các đĩa riêng lẻ. Bạn sẽ mất nhiều lợi ích của ZFS nếu bạn đặt nó lên trên RAID hiện tại thay vì để nó tự xử lý các đĩa. Điều tương tự áp dụng cho btrfs.
cas

@cas Bạn chắc chắn đúng, trả lời cập nhật. Tôi đã tập trung vào câu hỏi OP mặc dù "cách phân vùng đĩa 22TB" chứ không phải "bạn muốn làm gì với cấu hình đĩa của tôi".
jlliagre

3

Tôi không chắc chắn điều này hiện có thể sử dụng bảng phân vùng tiêu chuẩn. Trong sơ đồ bảng phân vùng tiêu chuẩn, khối lượng được giới hạn ở 2 32 cung . Với 512 byte cho mỗi sector, bạn chỉ cần chạy hết số để gán cho các sector khoảng 2TB.

Tuy nhiên, bạn phải có thể làm điều này nếu bạn sử dụng Bảng phân vùng GUID thay vì bảng tiêu chuẩn. Bảng phân vùng GUID cho phép các khối lượng mở rộng vào phạm vi zettabyte. Hầu hết các bản phân phối Linux đều có khả năng khởi động từ một khối GUID, tuy nhiên hiện tại không có phiên bản Windows nào (ngoại trừ Windows 7 trên EFI).

Một số công cụ như fdisk không thể hoạt động với khối lượng GUID, tuy nhiên các công cụ khác như GParted có thể. Khi bạn tạo bảng phân vùng GUID, bạn phải có thể tạo một ổ đĩa bằng cách sử dụng một trong một số hệ thống tệp phổ biến hỗ trợ âm lượng có kích thước đó (ví dụ EXT4.)


Trên hệ thống 32 bit có thể. Tôi đã có thể tạo phân vùng 3,5TB trên máy chủ Ubuntu 64 bit được hỗ trợ theo phiên bản 8.04 trở lên. Nói về cyberciti.biz/tips/ trộm
Karlson

Theo hiểu biết của tôi, bạn thậm chí có thể không cần một bảng phân vùng để đặt một hệ thống tập tin vào ổ cứng. Ngoài ra, theo OP, đây không phải là ổ đĩa khởi động mà chỉ là một không gian lớn.
Karlson

3

Đối với bảng phân vùng của bạn, như đã đề cập ở nơi khác, GPT là một tùy chọn tuyệt vời, vì nó hỗ trợ các phân vùng có kích thước lên tới 9,4 ZiB (9,4 × 10 21 byte), vượt xa mọi thứ bạn cần với 22 TiB.

Đối với hệ thống tệp của bạn, trên Linux BTRFS là một hệ thống tệp sao chép tuyệt vời:

  1. Thuộc tính copy-on-write của nó có nghĩa là không có tệp trùng lặp nào được lưu trữ hai lần.
  2. Nó có tính năng nén nhanh chóng để dữ liệu của bạn được chạy qua LZO hoặc GZip trước khi được ghi và đọc từ đĩa, tiết kiệm không gian đĩa vật lý.
  3. Nó hỗ trợ dự phòng trong các cấu hình RAID-1, RAID-10, RAID-5 và RAID-6 mà không cần bất kỳ chi phí nào.
  4. Nó cũng hỗ trợ RAID-0, nếu tốc độ là điều cốt yếu.
  5. Nó cũng có tính năng subvolume, ảnh chụp nhanh, và nhiều hơn nữa.
  6. Hầu như tất cả các tác vụ của hệ thống tệp được thực hiện trực tuyến , do đó bạn thường không phải ngắt kết nối hệ thống tệp để sửa chữa mọi thứ.

Nó tương tự như ZFS trong các tính năng, nhưng là một phần của nhân Linux chính.


Câu hỏi thường gặp về BTRFS cảnh báo không sử dụng tính năng RAID tương đương của nó ngoại trừ mục đích thử nghiệm và phát triển. Nó đã biết các lỗi có thể ăn hệ thống tập tin của bạn. Thêm thông tin tại liên kết.
Warren Young

1

Nếu bạn không tìm kiếm sự dư thừa hoặc khả năng sao lưu, bạn có thể làm:

mkfs -t ext4 /dev/sdb

4
Bạn đã thử chưa? Tôi đã thay đổi mkfsđể chỉ định hệ thống tập tin
Karlson

1
@AaronJAnderson một lời giải thích sẽ giúp.
n0pe

Lệnh đó sẽ không hoạt động nếu thiết bị có dung lượng trên 2TB
LVLAaron

1
@AaronJAnderson Tôi đã tạo ra âm lượng 3,5TB bằng cách sử dụng reiserfsext3do đó, nếu các ext4khiếu nại có kích thước tối đa là 16 exabyte, tôi không thấy bất kỳ lý do nào khiến 22TB không hoạt động.
Karlson

1
phiên bản e2fsutils xuất xưởng với phiên bản linux này (và hầu hết các phiên bản khác tại thời điểm này không hỗ trợ trên 16TB)
LVLAaron
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.