루트 파티션에만 런타임에 시스템의 크기를 늘릴 수 있습니까?
I have a 파티션에만 할당할지 않은 루트 파티션에만 (수도 있는 ext4), 어떻게 그 후 추가 공간을 루트 파티션에만 할당되었는지 할당되지 않은 공간이 필요 없이 hutdown 서버만을?
GUI (우분투 14.04 이상) *: GParted, 나중에 좋은 v0.17 제공하십시오 GUI 엔드입니다. (이전 버전은 크기조절하기 마운트되었습니다 파티션에만 거부).
명령행을 :* (모든 unbuntu 버전) 이 세 가지 단계를.
1. 단계 첫 번째 파티션 크기를 조정할 수 있어야 합니다. # 39 의 경우, it& you& # 39, re lvm 을 사용하여 쉽게, 그리고 당신은 아마도 얼마나 진행합니다. # 39 의 경우, 클래식, re you& 사용하여 좀 더 복잡해지고 있으며, 5월 * # 39 파티션당 it& 재부트해야만 (귀의하지않는다고 부트하도록 경우에도 다른 시스템이나 라이브 CD).
This is how I do it. Fdisk 를 사용하여 삭제하시겠습니까 파티션에만 '1' (이 가설로는 디스크에 데이터가 보존되는) 한 후, 더 큰 크기의 이와 함께 조심스럽게 재생성합니다 포지셔닝하십시오.
예:
$ sudo fdisk /dev/sda
Command (m for help): p
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 9437183 4717568 83 Linux
Command (m for help): d
Selected partition 1
Command (m for help): p
Device Boot Start End Blocks Id System
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4, default 1): 1
First sector (2048-10485759, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-10485759, default 10485759):
Using default value 10485759
Command (m for help): p
Device Boot Start End Blocks Id System
/dev/sda1 2048 10485759 5241856 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
다시 새로운 파티션에만 이전 같은 블록) 로 시작하여 하는 것이 중요합니다. 이제라도 Id 해당되어서는 (83 linux*용 시스템). 모든 데이터를 안전하게 손실됩니다 http://support. 왠지 오식 준비를 해야 합니다.
수 있는 안전한 복원하십시오 플래깅 부팅하십시오 때는기대어 수도 있습니다 (이 [따르면 위키백과] (https://en.wikipedia.org/wiki/Boot_flag) 가 여전히 필요한 일부 컴퓨터의) 를 눌러 'a'.
어떻게 해야 할지 셀명 단면을 볼 경우 스왑이란 파티션에만 가로막고 있다.
왜 사람들이 해야 할 것으로 보인다 '는 지금까지 라이브 CD 를 사용하는 것이 좋습니다. -)
2.* 단계 Fdisk 로 파티션 테이블 계속하기 전에 리로드하려면 합니다 '' 유용하게 알려 줍니다. 가장 안전한 방법은 단순히 재부트. 확장하지만 파르트 프로베 사파르스 ' [(자세한 내용은)]' 또는 '도 사용할 수 있다' (https://serverfault.com/questions/36038/reread-partition-table-without-rebooting).
3.* 단계 일단 파티션은 파티션 테이블 및 크기조정 다시 로드했습니다 it& # 39 의 간단한 사건 ',' 실행 파일 시스템에서 진실이며당신이 resize2fs it& # 39 의 루트로 파티션에만 마운트되었습니다 경우에도 이러한 작업을 할 수 있습니다.
예:
$ sudo resize2fs /dev/sda1
이는 온라인 크기조정할 수행할 수 있는 경우에도 # 39 의 ext4 파일 시스템을 it& 너회의 스크립트루트 파티션에만. '명령' resize2fs 사용합니다.
sudo resize2fs /dev/sda1
편집: 온-라인 축소 허용되지 않습니다.
root@brunojcm-htpc:/home# resize2fs /dev/sda5 2654693
resize2fs 1.42 (29-Nov-2011)
Filesystem at /dev/sda5 is mounted on /; on-line resizing required
resize2fs: On-line shrinking not supported
사용 '크로퍼트 쉽게 솔루션이므로 < device>; <, partition>, ':
growpart /dev/xvda 1 # Grows the partition; note the space
resize2fs /dev/xvda1 # Grows the filesystem
언제나 그렇듯이, 백업하십시오 파티션 테이블 ('- d / dev / 스베다 sfdisk 를 >. 만일에 대비하는거야 partition_bak.dmp ').
예 , 축소 / 이동 / 성장할 수 있는 온라인 스크립트루트 파티션에만 없이 재부팅되기 (disk_b_s10database 라이브 cd, disk_b_s10database 자바키): tjkdesign. 이 질문에. # 39 의 it& 수 있으며, 비록 매우 잘 았겠습니다 기록되었으므로 준수하십시오 길고 약간 받는다. 그래서 경우에만 ext4 파티션에만 성장시키십시오 할 수 있습니다 "resize2fs" 일반 스틱 apc® 솔루션뀉뀉뀉뀉.
트우드. 이 솔루션은 迈向 "pivot_root" 를 의미하는 "tmpfs" 네 "umount" 수 있도록 스크립트루트 파티션에만 안전하게 라이브 및 바이올린 진행합니다. # 39, ll you& 끝나면 다시 "pivot_root" 고객의 새로운 루트 파티션에만.
이렇게 하면 거의 모든 조작 루트 파일 시스템에 (이동시키십시오 변경하십시오 it& # 39 의 파일 시스템, 변화하는 물리적 디바이스입니다.).
아니, 이 과정에서 재부트 필요합니다 수행되었는지 건너뛰려면 제한은라이센스 "ext4" 의 "resize2fs" 파티션당 줄일 수 없게 됩니다.
제가 개인적으로 사용한 이 및 작동하잖아 잘 았겠습니다 debian 시스템에도 도왔으매 unbuntu 작업을 합니다. 조금 더 많이 볼 수 없는 매우 i& # 39, m 이 심층 솔루션 공급 계약을 체결하고 있는 스타케스창레 질문에는 링크됨 많은 웹 사이트 같은 문제를 해결할 수 있습니다.
한 동안 라이브 시스템을 루트 (root 파티션에만 ext4 의 마운트합니다 마친 직후에 크기조절하기 있었다.
[root@habib i686]# resize2fs /dev/vg_habib/lv_root
resize2fs 1.42 (29-Nov-2011)
Filesystem at /dev/vg_habib/lv_root is mounted on /; on-line resizing required
old_desc_blocks = 4, new_desc_blocks = 10
Performing an on-line resize of /dev/vg_habib/lv_root to 38427648 (4k) blocks.
The filesystem on /dev/vg_habib/lv_root is now 38427648 blocks long.
[root@habib i686]#
답을 할 수 있는 싶다 확장명으로 @S& # # 248, 248, 렌 L& 바버그: 확장 파티션에만 스왑이란 파티션에만 함께 참석했다.
이후 첫 번째 디스크의 레이아웃뿐만 연장됨:
$sudo parted /dev/sda 'unit s print' free
Model: ATA VBOX HARDDISK (scsi)
Disk /dev/sda: 14336000s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
63s 2047s 1985s Free Space
1 2048s 10485759s 10483712s primary ext4 boot
10485760s 10487805s 2046s Free Space
2 10487806s 12580863s 2093058s extended
5 10487808s 12580863s 2093056s logical linux-swap(v1)
12580864s 14335999s 1755136s Free Space
그래서 sda1 확장할 필요가 있는 디스크 여유 공간이 있지만, 그 사이에 스왑이란 파티션에만 끝에 있다. 이것은 어떻게 할 수 있어.
먼저 비활성화해야 할 스왑이란. 끌 수 있다면 얼마나 확인란 사용되고 있다.
$ free -h
total used free shared buff/cache available
Mem: 992M 52M 464M 3.2M 475M 784M
Swap: 1.0G 0B 1.0G
그래서 우리는 여기서 비사용률 스왑할 끌 수 있다.
$sudo swapoff /dev/sda5
이제 변경하십시오 table: 파티션에만
$sudo fdisk /dev/sda
(참고: 2048년 경우 발생할 수 있는 첫 번째 파티션 섹터 (63) 에서 시작 대신 추가해야 합니다 dos '옵션' -c '=)
Welcome to fdisk (util-linux 2.27.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): p
Disk /dev/sda: 6.9 GiB, 7340032000 bytes, 14336000 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: dos
Disk identifier: 0x9e11c6df
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 10485759 10483712 5G 83 Linux
/dev/sda2 10487806 12580863 2093058 1022M 5 Extended
/dev/sda5 10487808 12580863 2093056 1022M 82 Linux swap / Solaris
Command (m for help): d
Partition number (1,2,5, default 5): 2
Partition 2 has been deleted.
Command (m for help): d
Selected partition 1
Partition 1 has been deleted.
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): 1
First sector (2048-14335999, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-14335999, default 14335999): 12242941
Created a new partition 1 of type 'Linux' and of size 5.9 GiB.
Command (m for help): n
Partition type
p primary (1 primary, 0 extended, 3 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2): 2
First sector (12242942-14335999, default 12242944):
Last sector, +sectors or +size{K,M,G,T,P} (12242944-14335999, default 14335999):
Created a new partition 2 of type 'Linux' and of size 1022 MiB.
Command (m for help): a
Partition number (1,2, default 2): 1
The bootable flag on partition 1 is enabled now.
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Re-reading the partition table failed.: Device or resource busy
The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8).
참고: 크기는 총 섹터입니다 뺀 섹터 크기를 sda1 는 고객의 스왑이란 파티션에만: 12242941 14335999-2093058 =
Fdisk 를 언급하고 있다. 그래서 이 파티션 테이블을 사용하는 기존의 리로드하려면 커널 여전히 필요하다.
$partprobe
이제 우리가 할 일 resize2fs 실행하십시오 sda1 (이 것을 잊지 마십시오!)
$resize2fs /dev/sda1
resize2fs 1.42.12 (29-Aug-2014)
Filesystem at /dev/sda1 is mounted on /; on-line resizing required
old_desc_blocks = 3, new_desc_blocks = 10
The filesystem on /dev/sda1 is now 38833617 (4k) blocks long.
아직 끝나지 않았다는 것을 이제 있다. # 39 로 you& 아마도 sda2 유형으로 파티션되었는지 linux*용 것을, ve (Ext4). Fdisk 유형을 선택할 수 있는 몇 가지 이유로 길이 없다. 그래서 우리는 사용하여 해당 cf디스크 '대체'
$ sudo cfdisk
'82 linix 스왑이란 / solris' 유형을 선택할 sda2 및 변경 및 smartupdate 쓸 수 있습니다 (유형 그러하너라 무시하려면)
이제 다음 명령을 사용하여 스왑이란
$mkswap /dev/sda2
/dev/sda2
UUID=d58bf1cb-d27a-487d-b337-056767fd5ad6 none swap sw 0 0
마지막으로 켭니다.
$swapon /dev/sda2
우리는 우리가 해야 할 유일한 것은 fstab 업데이트하려면 마운트합니다 스왑이란 파티션에만 부트하는 시 자동으로
$sudo nano /etc/fstab
Uuid 의 출력 및 변경하십시오 스왑이란 파티션에만 그들위에:
# swap was on /dev/sda5 during installation
UUID=d58bf1cb-d27a-487d-b337-056767fd5ad6 none swap sw 0 0
이제 모든 재부트 문제 없이 잘 할 수 있습니다.
그냥 '없이', ',' 임시 제거 또는 umount 성공적으로 이런게야 pivot_root 사용하여 16.04 unbuntu 대한 기본 파티션에만 헤어졌다 3.2, 4.4.0 사용되었다. 제가 한 가상 콘솔을 통해 신중한 접근이 설명하였노라 네트워킹으로의 비활성화됨 한 뒤, 하지만 만일의 사태에 대비해 미리, t 스냅샷이란 스냅샷에는 wasn& 필요한 것처럼, 그래서 이런 일을 잘 할 수 있는 # 39 를 변경하지 않고 SSH, 런레벨을.
파티션 크기를 결정합니다. ',' isk.gb" " 그레프 /dev/sda1 인쇄하십시오 헤어졌다.
다중 사용자 모드 전환 없이 선택적으로 네트워킹 (콘솔에서 수행해야 할 것이 아니라, SSH):
runlevel # remember the original runlevel
init 2
Vm 스냅숏을 선택적으로 할 수 있다.
크기조정할 파티션에만:
parted
p
resizepart NUMBER SIZE
# answer "Yes" when asked about resizing a live partition.
q
크기조정할 파일 시스템: '' resize2fs /dev/sda1
뭔가있다면 복원하십시오 스냅샷입니다 목마르겠구나 문제가 발생할 수 있습니다. 좋아, 만약 모든 갔다 놓으면 정상 (취득됩니다 위) - 일반적으로 5: init '5'. 이 시점에서 모든 것을 확인할 수 있도록 하는 것이 좋습니다 전체 재부트 뒤로를 않했노라 제대로 (ntp 실행하십시오. 날짜 / 전 그 이후).
다음 단계에 따라.
앞서 설명한 것처럼.
live from 확장하는지 루트 시스템을 구축할 수 있다. (# 39 로 옮길 수 없는 어려운 부팅하십시오 ain& 섹선에서, t)
축소 라이브입니다 해야 부팅하십시오 스크립트루트 파티션에만 외부 장치 (부팅하십시오 라이브 cd / 유에스비 메모리 시스템) 과 장애가 발생한 경우, 불일치입니다 자우하티브리유르 의 시스템 작동이 중지되는지 재부트 합니다, 결국 제대로 부트하도록 수 없습니다.
하지만 나는 어떤 종류의 " 그것을했다 및 it works"; 순수한 운빨이야.