다음과 같은 쿼리가 있습니다.
나는I/O 크기(최소/최적)CentOS.
기본적으로 값은 512바이트입니다. 이 값을 512바이트로 늘리고 싶습니다.262144바이트/524288바이트.
현재 fdisk -l
명령을 실행하면 다음과 같은 결과가 나타납니다.
경고: fdisk GPT 지원은 현재 새로운 기능이므로 실험적입니다. 각자의 판단에 따라 사용해 주십시오. 디스크 /dev/sda: 53.7GB, 53687091200바이트, 104857600 섹터 단위 = 1 * 512 = 512바이트 섹터 섹터 크기(논리적/물리적): 512바이트 / 512바이트 I/O 크기(최소/최적): 512바이트 / 512바이트 디스크 레이블 유형: gpt 디스크 식별자: D9567AE9-EB97-4AD7-BA7B-9A2C0EE06951 # 시작 끝 크기 유형 이름 1 2048 411647 200M EFI 시스템 EFI 시스템 파티션 2 411648 2508799 1G 마이크로소프트 기본 3 2508800 104855551 48,8G 리눅스 LVM 디스크 /dev/sdb: 42.9GB, 42949672960바이트, 83886080 섹터 단위 = 1 * 512 = 섹터 섹터의 512바이트 크기(논리적/물리적): 512바이트/512바이트 I/O 크기(최소/최적): 512바이트/512바이트 디스크 레이블 유형: dos 디스코 식별자: 0x62b5095d 처분. Comienzo Fin Bloques Id Sistema 시작 /dev/sdb1 2048 83886079 41942016 8e 리눅스 LVM 경고: fdisk GPT 지원은 현재 새로운 기능이므로 실험적입니다. 각자의 판단에 따라 사용해 주십시오. 디스크 /dev/sdc: 21.5GB, 21474836480바이트, 41943040 섹터 단위 = 1 * 512 = 512바이트 섹터 섹터 크기(논리적/물리적): 512바이트/512바이트 I/O 크기(최소/최적): 512바이트 / 512바이트 디스크 레이블 유형: gpt 디스크 식별자: 98228612-062D-4DDC-9CC6-4B849FA55DAF # 시작 끝 크기 유형 이름 1 2048 41943006 20G Linux 파일 시스템
답변1
여기서 말하는 것은 fdisk
하드웨어가 수행하는 작업입니다. 하드웨어는 물리적으로 512바이트 섹터를 가지며 논리적으로 512바이트 블록으로 주소 지정되기를 원합니다. 를 사용하여 논리적 크기를 설정하는 것이 가능하지만 hdparm --set-sector-size
매뉴얼 페이지에 그렇게 하는 것에 대한 큰 경고가 있으며 원하는 크기는 지원되지 않습니다.
또한, 할 수 있더라도 원하지 않을 것입니다. 왜냐하면 섹터 크기를 늘리면 파일 시스템이 그러한 크기를 지원해야 하고(지원하지 않음) 파일 시스템이 지원할 수 있는 가장 작은 크기는 다음과 같기 때문입니다. 즉, 많은 작은 파일을 저장하는 것은 매우 비효율적입니다. 또한 논리적 크기보다 작은 블록을 쓸 때마다 디스크에서 전체 블록을 읽고 전체 블록을 다시 쓰는 비용이 발생하므로 성능이 저하됩니다.
프로그램의 I/O 작업 크기를 변경하려면 프로그램의 소스 코드를 사용하고 사용되는 버퍼의 크기를 변경할 수 있습니다. 그러나 일반적으로 불필요하고 커널이 자동으로 가장 효율적인 작업을 수행하므로 시스템 전체에서 이 작업을 수행할 수 있는 방법은 없습니다. 무엇을 하고 싶은지 자세히 설명해주시면 도와드릴 수도 있습니다.