doc/migrating-storage-device: show how to resize the fs
This commit is contained in:
@@ -1,18 +1,18 @@
|
|||||||
## migrating a host to a new drive
|
## migrating a host to a new drive
|
||||||
1. copy persistent data off of the host:
|
### 1. copy persistent data off of the host:
|
||||||
```sh
|
```sh
|
||||||
$ mkdir -p mnt old/persist
|
$ mkdir -p mnt old/persist
|
||||||
$ mount /dev/$old mnt
|
$ mount /dev/$old mnt
|
||||||
$ rsync -arv mnt/persist/ old/persist/
|
$ rsync -arv mnt/persist/ old/persist/
|
||||||
```
|
```
|
||||||
|
|
||||||
2. flash the new drive
|
### 2. flash the new drive
|
||||||
```
|
```
|
||||||
$ nix-build -A hosts.moby.img
|
$ nix-build -A hosts.moby.img
|
||||||
$ dd if=$(readlink ./result) of=/dev/$new bs=4M oflag=direct conv=sync status=progress
|
$ dd if=$(readlink ./result) of=/dev/$new bs=4M oflag=direct conv=sync status=progress
|
||||||
```
|
```
|
||||||
|
|
||||||
3. expand the partition and filesystem
|
### 3.1. expand the partition
|
||||||
```sh
|
```sh
|
||||||
$ cfdisk /dev/$new
|
$ cfdisk /dev/$new
|
||||||
# scroll to the last partition
|
# scroll to the last partition
|
||||||
@@ -21,24 +21,29 @@ $ cfdisk /dev/$new
|
|||||||
> Write
|
> Write
|
||||||
type "yes"
|
type "yes"
|
||||||
> Quit
|
> Quit
|
||||||
$ btrfs filesystem resize max /dev/$new
|
```
|
||||||
|
### 3.2. expand the filesystem
|
||||||
|
```
|
||||||
|
$ mkdir -p /mnt/$new
|
||||||
|
$ mount /dev/$new /mnt/$new
|
||||||
|
$ btrfs filesystem resize max /mnt/$new
|
||||||
```
|
```
|
||||||
|
|
||||||
4. copy data onto the new host
|
### 4. copy data onto the new host
|
||||||
```
|
```
|
||||||
$ mkdir new
|
$ mkdir /mnt/$new
|
||||||
$ mount /dev/$new new
|
$ mount /dev/$new /mnt/$new
|
||||||
# if you want to use btrfs snapshots (e.g. snapper), then create the data directory as a subvolume:
|
# if you want to use btrfs snapshots (e.g. snapper), then create the data directory as a subvolume:
|
||||||
$ sudo btrfs subvolume create new/persist
|
$ btrfs subvolume create /mnt/$new/persist
|
||||||
# restore the data
|
# restore the data
|
||||||
$ rsync -arv old/persist/ new/persist/
|
$ rsync -arv old/persist/ /mnt/$new/persist/
|
||||||
```
|
```
|
||||||
|
|
||||||
5. ensure/fix ownership
|
### 5. ensure/fix ownership
|
||||||
```
|
```
|
||||||
$ chmod -R a+rX new/nix
|
$ chmod -R a+rX /mnt/$new/nix
|
||||||
# or, let the nix daemon do it:
|
# or, let the nix daemon do it:
|
||||||
$ nix copy --no-check-sigs --to new $(nix-build -A hosts.moby)
|
$ nix copy --no-check-sigs --to /mnt/$new $(nix-build -A hosts.moby)
|
||||||
```
|
```
|
||||||
```
|
|
||||||
6. insert the disk into the system, and boot!
|
### 6. insert the disk into the system, and boot!
|
||||||
|
Reference in New Issue
Block a user