시스템 디스크가 고장 나기 시작해서 종료 시간 10분전에 하드가 다 떨어져 새 하드를 구입했습니다 :/ 32비트 시스템 디스크입니다. 비교적 초기에 저는 Seagate Barracuda 2TB를 검토했지만 영업사원의 설득으로 3TB WD Red NAS 드라이브를 예비용으로 구입했습니다.많은의 고객이 지난 몇 달 동안 오류가 있는 Seagate 디스크를 반품했습니다. Seagate는 다양한 색상으로 제공됩니다. 비용과 잠재의식 때문에 2TB에서 3TB로 이동그 리그– 그리고 강제로 GPT를 실행합니다. 예를 들어, NAS 디스크는 OS 디스크로 작동해야 합니다. 예를 들어, 연중무휴 24시간 실행되고 인코딩 등(예: 낮은 I/O)과 같은 많은 활동이 있고 게임이 없고 카메라 라인 변환과 같은 일부 미디어 처리, 렌더링(그러나 이는 대부분 클러스터에 의해 수행됩니다.
내 주요 질문은 다양한 도구를 사용하는 디스크 크기에 관한 것입니다.
(f) 디스크:
#fdisk -l
#disk -l
Disk /dev/sdc: 801.6 GB, 801569726464 bytes
255 heads, 63 sectors/track, 97451 cylinders, total 1565565872 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
Disk identifier: 0x00000000
lsblk:
#lsblk
sdc 8:32 0 746.5G 0 disk
창사:
#lshw -class disk
*-disk
description: SCSI Disk
physical id: 0.0.0
bus info: scsi@2:0.0.0
logical name: /dev/sdc
size: 746GiB (801GB)
configuration: sectorsize=512
둘 다 764GiB를 생성하는 이유는 무엇입니까? 문제가 있을까요?
여기에는 GPT가 필요하므로 주의해야 할 사항이 있나요? 예를 들어 32비트에 문제가 있나요?
영리한:
모두 완료되었으며 smartctl -t <conveyance|short>
결과는 괜찮습니다.
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Short offline Completed without error 00% 0 -
# 2 Conveyance offline Completed without error 00% 0 -
SMART는 또한 정확한 치수를 생성합니다(분명히).
# smartctl --info /dev/sdc
smartctl 5.43 2012-06-30 r3573 [i686-linux-3.5.0-51-generic] (local build)
=== START OF INFORMATION SECTION ===
Device Model: WDC WD30EFRX-68EUZN0
Serial Number: WD-XXXXXXXXXXXX
LU WWN Device Id: X XXXXXX XXXXXXXXX
Firmware Version: 82.00A82
User Capacity: 3,000,592,982,016 bytes [3.00 TB]
Sector Sizes: 512 bytes logical, 4096 bytes physical
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 8
ATA Standard is: ACS-2 (revision not indicated)
Local Time is: Sat Jan 10 18:40:58 2015 CET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
그다지 관련성은 없지만 다양한 테스트 등에 1시간을 사용하면 다음과 같은 결과가 나옵니다.
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x002f 100 253 051 Pre-fail Always - 0
3 Spin_Up_Time 0x0027 100 253 021 Pre-fail Always - 0
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 1
5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always - 0
7 Seek_Error_Rate 0x002e 100 253 000 Old_age Always - 0
9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 1
10 Spin_Retry_Count 0x0032 100 253 000 Old_age Always - 0
11 Calibration_Retry_Count 0x0032 100 253 000 Old_age Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 1
192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 0
193 Load_Cycle_Count 0x0032 200 200 000 Old_age Always - 6
194 Temperature_Celsius 0x0022 131 125 000 Old_age Always - 19
196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always - 0
197 Current_Pending_Sector 0x0032 200 200 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0030 100 253 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x0032 200 253 000 Old_age Always - 0
200 Multi_Zone_Error_Rate 0x0008 100 253 000 Old_age Offline - 0
하위 질문:
위의 모든 사항이 정상이라면 디스크에 OS를 설치하기 전에 수행해야 할 다른 조치가 있습니까?
답변1
Debian-Ubuntu 기반 시스템(예: Linux Mint)을 사용하는 경우 fdisk (util-linux 2.20.1)
GPT를 이해하지 못할 것입니다.
parted -l
드라이브 파티셔닝/포맷을 시도해야 합니까 ? gparted
(GUI를 사용하는 경우) 사용하기가 더 쉬울 수 있습니다.
잘 모르겠습니다 lsblk
. 에서 읽는다고 합니다 sysfs
. 드라이브에 작은 파티션만 있거나 이상한 MBR/GPT가 있을 수 있습니다.
그러나 Cristian Ciupitu의 의견과 Seagate의 링크는 매우 유망해 보이지만 Windows 드라이버에 관한 것 같습니다...
수색"분리 오류: /dev/sdc: 인식할 수 없는 디스크 레이블"이 링크를 열면 원하는 대로 작동하는 것 같습니다.Linux에서 Parted GPT를 사용하여 크기가 2TB보다 큰 파티션을 만드는 방법. 굵게 표시했습니다(과장된?) 오류 메시지는 GPT가 생성된 후에 사라져야 합니다. ( gparted
비슷하거나 사용하기 더 쉬울 것이라고 확신합니다 .)
아래와 같이 parted의 mklabel 명령을 사용하여 디스크 레이블을 GPT로 설정합니다.
# parted /dev/sdb
GNU Parted 2.1
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Error: /dev/sdb: unrecognised disk label
(parted) mklabel gpt
(parted) print
Model: Unknown (unknown)
Disk /dev/sdb: 5909GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Number Start End Size File system Name Flags
[그런 다음 계속해서 파티션을 생성하지만 위의 명령이 가장 관련성이 있어 보입니다.]
Parted mkpart를 사용하여 >2TB 파티션 생성
2TB보다 큰 파티션을 생성하려면 아래와 같이 parted의 mkpart 명령을 사용하십시오. 이 예에서는 약 6TB 크기의 파티션을 생성합니다.
# parted /dev/sdb
(parted) mkpart primary 0GB 5909GB
(parted) print
Model: Unknown (unknown)
Disk /dev/sdb: 5909GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Number Start End Size File system Name Flags
1 1049kB 5909GB 5909GB primary
GPT 생성 시도가 실패하면 검색할 수 있는 몇 가지 좋은 오류 메시지가 있어야 합니다. 또는 여전히 크기가 800GB만 보고되면 디스크에 문제가 있을 수 있다고 의심하기 시작하지만 SMART에서는 괜찮다고 생각하므로 Linux 드라이버/커널이 남습니다.
당신은요아니요일종의 외부 USB 인클로저를 사용합니까? 내장 하드 드라이브처럼 컴퓨터에 직접 연결됩니까?
답변2
당신은 당신 자신의 커널을 구축한 것 같은데, 그것은 32비트 전용입니다. 2TB가 넘는 디스크에 액세스하려면 활성화해야 합니다.CONFIG_LBDAF(대형(2TB+) 블록 장치 및 파일 지원) 그러나 그것이 없으면 크기는 32비트 모듈로로 래핑하는 대신 2TB로 제한될 것이라고 확신할 수 있습니다.
답변3
게시하다"답변", 이 정보를 사용하면 질문이 약간 혼란스럽고 길어질 수 있기 때문에 이는 관찰에 가깝습니다.
몇 가지 테스트를 더 수행했습니다. 및 를 사용하는 간단한 ioctl()
C 코드입니다 lseek()
.
ioctl BLKGETSIZE64 : 801569726464 (Same value as the tools)
ioctl BLKGETSIZE : 1565565872 (Same as sectors reported by fdisk)
lseek Size : 801569726464
소스 코드를 잠깐 살펴보면 모두 sysfs를 사용하여 크기 데이터를 얻는다는 lsblk
것을 알 수 있습니다 . (가져가다fdisk
lshw
ioctl()
"그들은 사용한다"몇 가지 온라인 리소스를 살펴봤기 때문에 여기서는 매우 간단합니다. )
lsblk
섹터( /sys/block/sdc/size
)를 사용하여 왼쪽으로 9만큼 이동합니다. (× 512 또는 × 2^9라고도 함)
Sectors: 1565565872 (From printout in Q)
1565565872 << 9 = 801569726464
보고서 크기를 자세히 살펴보고 내 두뇌를 십진수 대신 이진수로 전환하는 것도 금방 깨달았습니다.
3000592982016 = 00101011101010100001010001110110000000000000 (44-bits (48))
801569726464 = 1011101010100001010001110110000000000000 (40-bits)
또한:
Size by SMART - Size by tools (in effect kernel)
3000592982016 - 801569726464 = 2199023255552 == 2^32 * 512 or 2^32 << 9
fdisk
일부 컨트롤러 문제를 나타낼 수 있는 SMART의 4096과 달리 물리적 섹터 크기도 512로 보고됩니다.
답변4
나에게 문제는 외부 USB 인클로저와 함께 (동일한 드라이브 모델)을 사용하고 있다는 것입니다. SATA 커넥터에 직접 꽂았더니 3TB로 인식되기 시작하더군요. 동일한 문제가 발생하고 USB 커넥터를 사용하여 드라이브를 연결하는 경우 드라이브를 SATA 연결에 직접 연결해 보십시오.
@phuclv가 지적했듯이 SuperUser는 이에 대해 잘 설명합니다.https://superuser.com/questions/1101839/why-would-a-3tb-disk-show-as-being-746gib