ext4가 포함된 4TB Verbatim 외장 하드 드라이브가 있습니다.
내 Raspberry Pi에 성공적으로 마운트할 수 있습니다.
SSH 루트 액세스 권한이 있는 WD Mybook Live Duo 장치에 연결하려고 합니다.
장치를 연결하면 다음 dmesg
메시지가 나타납니다.
usb 1-1: new high speed USB device using dwc_otg and address 2
usb 1-1: New USB device found, idVendor=18a5, idProduct=0400
usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-1: Product: USB 3.0 Desktop HD
usb 1-1: Manufacturer: Verbatim
usb 1-1: SerialNumber: 306239230569
usb 1-1: configuration #1 chosen from 1 choice
usbcore: registered new interface driver libusual
Initializing USB Mass Storage driver...
scsi2 : SCSI emulation for USB Mass Storage devices
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usb-storage: device found at 2
usb-storage: waiting for device to settle before scanning
scsi 2:0:0:0: Direct-Access ST4000DM 000-1F2168 CC52 PQ: 0 ANSI: 6
sd 2:0:0:0: Attached scsi generic sg2 type 0
sd 2:0:0:0: [sdc] Very big device. Trying to use READ CAPACITY(16).
usb-storage: device scan complete
sd 2:0:0:0: [sdc] 7814037168 512-byte logical blocks: (4.00 TB/3.63 TiB)
sd 2:0:0:0: [sdc] Write Protect is off
sd 2:0:0:0: [sdc] Mode Sense: 1f 00 00 08
sd 2:0:0:0: [sdc] Assuming drive cache: write through
sd 2:0:0:0: [sdc] Very big device. Trying to use READ CAPACITY(16).
sd 2:0:0:0: [sdc] Assuming drive cache: write through
sdc: sdc1
sd 2:0:0:0: [sdc] Very big device. Trying to use READ CAPACITY(16).
sd 2:0:0:0: [sdc] Assuming drive cache: write through
sd 2:0:0:0: [sdc] Attached SCSI disk
4TB 크기는 제대로 인식되는 것 같습니다.
메시지는 Very big device. Trying to use READ CAPACITY(16).
내 Raspberry에서도 발생하므로 오류가 아닌 것 같지만 모든 것이 잘 작동합니다.
장비 /dev/sdc
및 /dev/sdc1
외관. 그래서 적어도 파티션 테이블을 인식한다고 생각합니다.
(장치에 설치되어 있지 않아서 실행할 수 없고 fdisk -l
장치에 너무 많이 끼어들고 싶지도 않습니다)
실행하면 mount /dev/sdc1 ./mymountpoint/
다음 오류가 발생합니다 dmesg
.
EXT4-fs (sdc1): filesystem too large to mount safely on this system
hdparm -I /dev/sdc
절대 쓰레기 표시:
NAS:/DataVolume# hdparm -I /dev/sdc
/dev/sdc:
SG_IO: bad/missing sense data, sb[]: 70 00 05 00 00 00 00 0a 00 00 00 00 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
ATA device, with removable media
Serial Number: abhs¦UU
Media Serial Num: ¦U¦¦yYT¦UU
Media Manufacturer: H
Transport: Parallel, ATA8-APT
Standards:
Used: unknown (minor revision code 0x5555)
Supported: 9 7 6 5
Likely used: 9
Configuration:
Logical max current
cylinders 21845 0
heads 4352 0
sectors/track 61711 0
--
Logical Sector size: 512 bytes
Physical Sector size: 4096 bytes
Logical Sector-0 offset: 2796032 bytes
device size with M = 1024*1024: 2864663189 MBytes
device size with M = 1000*1000: 3003817068 MBytes (3003817 GB)
cache/buffer size = unknown
Nominal Media Rotation Rate: 11884
Capabilities:
IORDY(may be)(can be disabled)
Standby timer values: spec'd by Vendor
R/W multiple sector transfer: Max = 0 Current = ?
Recommended acoustic management value: 18, current value: 0
DMA: sdma15
PIO: unknown
* READ BUFFER DMA command
* Long physical sector diagnostics
* CFast specification support
Security:
Master password revision code = 112
supported
enabled
locked
not frozen
expired: security count
supported: enhanced erase
Security level high
Logical Unit WWN Device Identifier: 776f000000000013
NAA : 7
IEEE OUI : 76f000
Unique ID : 000000013
Integrity word not set (found 0x1400, expected 0xbaa5)
NAS:/DataVolume# lsusb
보여주다:
Bus 001 Device 003: ID 18a5:0400 Verbatim, Ltd
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
이 시스템에서 하드 드라이브가 작동하도록 하려면 어떻게 해야 합니까?
rsync
( 내 네트워크가 매우 느리기 때문에 이것을 백업 생성에 사용하고 싶습니다 )
라즈베리 기반 리눅스:
uname --all
Linux raspberrypi 3.12.22+ #691 PREEMPT Wed Jun 18 18:29:58 BST 2014 armv6l GNU/Linux
NAS의 리눅스:
uname --all
Linux NAS 2.6.32.11-svn70860 #1 Thu May 17 13:32:51 PDT 2012 ppc GNU/Linux
고쳐 쓰다
hdparm
Raspberry Pi 또는 Ubuntu Live CD에서 얻은 올바른 정보 는 다음과 같습니다 .
desinfect@desinfect:/dev$ sudo hdparm -I /dev/sdb
/dev/sdb:
ATA device, with non-removable media
Model Number: ST4000DM000-1F2168
Serial Number: Z300ZT7T
Firmware Revision: CC52
Transport: Serial, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
Standards:
Used: unknown (minor revision code 0x0029)
Supported: 8 7 6 5
Likely used: 8
Configuration:
Logical max current
cylinders 16383 16383
heads 16 16
sectors/track 63 63
--
CHS current addressable sectors: 16514064
LBA user addressable sectors: 268435455
LBA48 user addressable sectors: 7814037168
Logical Sector size: 512 bytes
Physical Sector size: 4096 bytes
Logical Sector-0 offset: 0 bytes
device size with M = 1024*1024: 3815447 MBytes
device size with M = 1000*1000: 4000787 MBytes (4000 GB)
cache/buffer size = unknown
Form Factor: 3.5 inch
Nominal Media Rotation Rate: 5900
Capabilities:
LBA, IORDY(can be disabled)
Queue depth: 32
Standby timer values: spec'd by Standard, no device specific minimum
R/W multiple sector transfer: Max = 16 Current = ?
Advanced power management level: 128
Recommended acoustic management value: 208, current value: 0
DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 udma5 *udma6
Cycle time: min=120ns recommended=120ns
PIO: pio0 pio1 pio2 pio3 pio4
Cycle time: no flow control=120ns IORDY flow control=120ns
Commands/features:
Enabled Supported:
* SMART feature set
Security Mode feature set
* Power Management feature set
* Write cache
* Look-ahead
* Host Protected Area feature set
* WRITE_BUFFER command
* READ_BUFFER command
* DOWNLOAD_MICROCODE
* Advanced Power Management feature set
Power-Up In Standby feature set
* SET_FEATURES required to spinup after power up
SET_MAX security extension
* 48-bit Address feature set
* Device Configuration Overlay feature set
* Mandatory FLUSH_CACHE
* FLUSH_CACHE_EXT
* SMART error logging
* SMART self-test
* General Purpose Logging feature set
* WRITE_{DMA|MULTIPLE}_FUA_EXT
* 64-bit World wide name
Write-Read-Verify feature set
* WRITE_UNCORRECTABLE_EXT command
* {READ,WRITE}_DMA_EXT_GPL commands
* Segmented DOWNLOAD_MICROCODE
* Gen1 signaling speed (1.5Gb/s)
* Gen2 signaling speed (3.0Gb/s)
* Gen3 signaling speed (6.0Gb/s)
* Native Command Queueing (NCQ)
* Phy event counters
* unknown 76[15]
DMA Setup Auto-Activate optimization
Device-initiated interface power management
* Software settings preservation
* SMART Command Transport (SCT) feature set
* SCT LBA Segment Access (AC2)
unknown 206[7]
unknown 206[12] (vendor specific)
Security:
Master password revision code = 65534
supported
not enabled
not locked
not frozen
not expired: security count
supported: enhanced erase
508min for SECURITY ERASE UNIT. 508min for ENHANCED SECURITY ERASE UNIT.
Logical Unit WWN Device Identifier: 5000c500651cc162
NAA : 5
IEEE OUI : 000c50
Unique ID : 0651cc162
Checksum: correct
desinfect@desinfect:/dev$ sudo fdisk -l /dev/sdb
Warnung: GPT (GUID-Partitionstabelle) auf '/dev/sdb' erkannt! Das Hilfsprogramm Fdisk unterstützt GPT nicht. Verwenden Sie GNU Parted.
Disk /dev/sdb: 4000.8 GB, 4000787030016 bytes
255 Köpfe, 63 Sektoren/Spur, 486401 Zylinder, zusammen 7814037168 Sektoren
Einheiten = Sektoren von 1 × 512 = 512 Bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Festplattenidentifikation: 0x7453181c
Gerät boot. Anfang Ende Blöcke Id System
/dev/sdb1 1 4294967295 2147483647+ ee GPT
하드 드라이브에는 GPT가 있습니다. gparted는 분할되지 않은 4MB의 영역을 표시하며 나머지 3.6TB는 ext4 파티션에 사용됩니다. parted
다음과 같이 나타납니다.
$ parted --list
Modell: ST4000DM 000-1F2168 (scsi)
Festplatte /dev/sdb: 4001GB
Sektorgröße (logisch/physisch): 512B/512B
Partitionstabelle: gpt
Nummer Anfang Ende Größe Dateisystem Name Flags
1 4194kB 4001GB 4001GB ext4 linux
NAS는 2개의 4TB 하드 드라이브를 사용하고 미러링을 위해 mdraid를 사용합니다. NAS에서는 왜 사용하는데 문제가 없는지 궁금합니다.
답변1
fdisk
4TB 장치에 이미 512b 섹터에 대한 최대 MBR의 두 배가 있으므로 이 작업을 수행할 수 없습니다 . GPT로 포맷하셔야 합니다.
~에서위키피디아:
MBR의 파티션 테이블 구성은 디스크의 주소 지정 가능한 최대 저장 공간을 2TB(232 × 512바이트)로 제한합니다.
gdisk
패키지를 다운로드 하고 디스크를 다시 포맷하세요.(내 생각에는 이미 그래야 하지만). 디스크를 탑재할 수 없는 컴퓨터에서 GPT 디스크를 보는 경우 보호 MBR은 횡설수설을 해석합니다 hdparm
.
또한 물리적 섹터 크기가 4kb로 표시되어 있어 더 이해하기 쉽고 MBR이 가능하지만 보시다시피 꽤 투박합니다. 해결책은 파티션 테이블을 업데이트하는 데 있습니다.
더 많은 것위키피디아
파티션 정보는 시작 블록 주소와 길이를 사용하여 MBR 파티션 테이블에 저장되므로 이론적으로 512바이트 섹터가 있는 디스크에 할당된 공간이 전체 크기가 4TB에 가까운 방식으로 파티션을 정의할 수 있습니다. 파티션 중 하나가 2TB 제한보다 낮고 마지막 파티션이 블록 232-1 또는 그 근처에서 시작하도록 지정되었으며 크기는 최대 232-1로 지정되어 파티션 대신 33이 필요합니다. 액세스할 섹터 주소에는 32비트가 사용됩니다. 그러나 실제로는 LBA-48을 지원하는 특정 운영 체제(내부적으로 64비트 섹터 주소를 사용하는 Linux, FreeBSD 및 Windows 7 포함)만이 실제로 이를 지원합니다.
코드 공간 제한과 MBR 파티션 테이블의 32비트 전용 특성으로 인해 부트 섹터는 전체 파티션 테이블을 지원하도록 특별히 설계되지 않은 한 LBA-28이 아닌 LBA-48을 지원하도록 활성화된 경우에도 32비트 계산을 사용하는 경우가 많습니다. LBA-48 주소 범위를 보완하거나 64비트 플랫폼에서만 실행됩니다. 내부적으로 32비트 섹터 주소를 사용하는 모든 부팅 코드나 운영 체제는 해당 파티션에 액세스하기 위해 주소를 래핑하게 되므로모든 파티션의 심각한 데이터 손상.
섹터 크기가 512바이트가 아닌 디스크(예: USB 외부 드라이브)에도 제한이 있습니다. 섹터 크기가 4,096이면 MBR을 사용하여 정의된 파티션 크기가 8배 증가하여 최대 16TiB(232 × 4096바이트)의 파티션 크기를 허용합니다. Mac OS X뿐만 아니라 Windows XP보다 최신 Windows 버전은 더 큰 섹터 크기를 지원하며 Linux 커널은 2.6.31 또는 2.6.32 이후 더 큰 섹터 크기를 지원했지만 부트로더, 파티셔닝 도구 및 BIOS 구현 문제는 다음과 같습니다. 섹터 버퍼용으로 512바이트만 예약하도록 하드와이어되어 있는 경우가 많기 때문에 다소 제한적입니다.섹터 크기가 커서 덮어썼습니다.. 이는 예측할 수 없는 동작으로 이어질 수도 있으므로 호환성 및 표준 준수가 문제인 경우에는 피해야 합니다.
다음은 매우 큰 드라이브에서 더 큰 MBR 섹터 크기를 사용할 수 있는 가능성을 논의하는 Western Digital .pdf에 대한 링크입니다. 분명히 2.6.32 커널은 이 기능을 지원하는 최초의 커널이었습니다. 컴파일 타임 옵션인지는 모르겠지만, 자체 NAS 커널을 구축할 때 너무 새로운 것일 수도 있습니다.
분명히 다른 가능성도 있습니다. ~에서.pdf
Older Linux Kernel version (all 2.4 and pre‐2.6.32) computing
environments with a legacy BIOS and MBR partition table scheme
encounter a barrier at 2.19 TB because they can address only up
to 232 logical blocks. Be sure to use kernels that contain support
for drives greater than 2.19TB. The kernels released after April
2010 have support for large capacity drives using 4096 sector sizes.
...
How You Can Take Advantage of Large Capacity Drives in Linux
• Use fdisk from util‐linux‐ng >= 2.17.2 or parted/gparted
• Use +size {M, G} convention to specify "Last sector"
(e.g. +5G to create 5GiB partition) then fdiskl aligns the
size to physical block boundary
• Remember that fdisk(8) always follows your wishes ‐‐ it means
that if you explicitly define first/last sector number then
the partition could be misaligned.
• Start the extended partition at sector 64 (the default is 63),
and end it at sector (total amount of sectors on the drive – 1)