But I would personally use the root split method over the old one.

On Tue, Sep 20, 2016 at 3:10 PM, Мартин Бохниг via openindiana-discuss
<openindiana-discuss@openindiana.org> wrote:
> Hello,
>
> I have no login credentials nor anything else other than ML access (and never 
> needed it nor asked for).
> But here is some info you may find useful:
>
> A) As always in all periods/epochs/ages, I took wget copies of all important 
> sites.
> So if anybody ever needs any mailing list copy, bugs database or download 
> central stuff from opensolaris.org, schillix, belenix, opensparc.net,  or oi 
> or illumos etc, I can help you in most cases
>
> B) It took me 10 to 15 seconds from your question to google to finding the 
> links you are referring to (down atm) to google cache.
> The content a few lines lower  ...
>
> C) While not most but definitely at lot of most lightweight stuff should 
> always make it into webarchive.org.
>
>
> Now your requested content:
>
>
> MfG, %martin
>
>
> How to migrate the root pool
> Skip to end of metadata
> *  Page restrictions apply
> *  Added by  Gary Mills , last edited by  Predrag Zečević on Dec 05, 2013   ( 
> view change ) Go to start of metadata
> *
> I recently wanted to migrate the root pool to a new device.  This turned out 
> to be easy to do, using extisting facilities.  The original root pool was on 
> an old 80-gig disk.  This system also had a data pool on a newer 1 TB disk.  
> Here's what the `format' command showed for them:
>        0. c2t0d0 <Unknown-Unknown-0001 cyl 9726 alt 2 hd 255 sec 63>
>           /pci@0,0/pci1043,8389@11/disk@0,0
>        1. c2t2d0 <ATA-ST31000524AS-JC4B-931.51GB>
>           /pci@0,0/pci1043,8389@11/disk@2,0I
> *  wanted to migrate the root pool to a new SSD.  The `format' command was 
> available to prepare the SSD.  I could use the `zpool' command to create the 
> pool on that new device, and `beadm' and `installgrub' to perform the 
> migration.  That part worked out nicely.  I had to use a variety of commands 
> to complete the migration.
> *  Add the SSD: Just shut down the computer, install the SSD hardware, and 
> boot the system.  Here's the new output from `format':
>        0. c2t0d0 <Unknown-Unknown-0001 cyl 9726 alt 2 hd 255 sec 63>
>           /pci@0,0/pci1043,8389@11/disk@0,0
>        1. c2t1d0 <ATA-SanDiskSDSSDP06-0 cyl 9966 alt 2 hd 224 sec 56>
>           /pci@0,0/pci1043,8389@11/disk@1,0
>        2. c2t2d0 <ATA-ST31000524AS-JC4B-931.51GB>
>           /pci@0,0/pci1043,8389@11/disk@2,0
> *  Prepare the SSD: Create the fdisk partition within `format':
>     format> fdisk
>     No fdisk table exists. The default partition for the disk is:
>       a 100% "SOLARIS System" partition
>     Type "y" to accept the default partition,  otherwise type "n" to edit the
>      partition table.
>     y
>
> *  Create the slice:
>     partition> 0
>     Part      Tag    Flag     Cylinders        Size            Blocks
>       0 unassigned    wm       0               0         (0/0/0)            0
>     Enter partition id tag[unassigned]: root
>     Enter partition permission flags[wm]:
>     Enter new starting cyl[1]: 3
>     Enter partition size[0b, 0c, 3e, 0.00mb, 0.00gb]: $
>     partition> p
>     Current partition table (unnamed):
>     Total disk cylinders available: 9965 + 2 (reserved cylinders)
>     Part      Tag    Flag     Cylinders        Size            Blocks
>       0       root    wm       3 - 9964       59.59GB    (9962/0/0) 124963328
>       1 unassigned    wm       0               0         (0/0/0)            0
>       2     backup    wu       0 - 9964       59.61GB    (9965/0/0) 125000960
>       3 unassigned    wm       0               0         (0/0/0)            0
>       4 unassigned    wm       0               0         (0/0/0)            0
>       5 unassigned    wm       0               0         (0/0/0)            0
>       6 unassigned    wm       0               0         (0/0/0)            0
>       7 unassigned    wm       0               0         (0/0/0)            0
>       8       boot    wu       0 -    0        6.12MB    (1/0/0)        12544
>       9 unassigned    wm       0               0         (0/0/0)            0
>     partition> l
>     Ready to label disk, continue? y
> *  Get the root pool version:
>     # zpool get all rpool
>     NAME   PROPERTY               VALUE                  SOURCE
>     rpool  size                   74G                    -
>     ...
>     rpool  version                28                     local
>
> *  Try to create the new root pool, with a new pool name:
>     # zpool create -o version=28 rpool1 c2t1d0s0
>     invalid vdev specification
>     use '-f' to override the following errors:
>     /dev/dsk/c2t1d0s0 overlaps with /dev/dsk/c2t1d0s2
>
> *  Try again with the force option:
>     # zpool create -f -o version=28 rpool1 c2t1d0s0
>     # zpool list
>     NAME     SIZE  ALLOC   FREE  EXPANDSZ    CAP  DEDUP  HEALTH  ALTROOT
>     dpool    928G  85.6G   842G     2.50M     9%  1.00x  ONLINE  -
>     rpool     74G  7.05G  66.9G         -     9%  1.00x  ONLINE  -
>     rpool1  59.5G   108K  59.5G         -     0%  1.00x  ONLINE  -
>
> *  Create the BE, on the new device with a new name:
>     # beadm create -p rpool1 oi_151a6x
>     WARNING: menu.lst file /rpool1/boot/grub/menu.lst does not exist,
>              generating a new menu.lst file
>     Created successfully
>
> *  Verify that it exists:
>     # beadm list
>     BE          Active Mountpoint Space Policy Created
>     oi_151a6    NR     /          5.98G static 2012-09-13 16:33
>     oi_151a6x   R      -          4.15G static 2013-06-06 15:55
>     openindiana -      -          13.5M static 2012-09-13 08:55
>
> *  Install the boot blocks:
>     # installgrub -m /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c2t1d0s0
>     Updating master boot sector destroys existing boot managers (if any).
>     continue (y/n)?y
>     stage2 written to partition 0, 277 sectors starting at 50 (abs 12594)
>     stage1 written to partition 0 sector 0 (abs 12544)
>     stage1 written to master boot sector
>
> *  Change the BIOS boot order by shutting the system down and entering the 
> BIOS setup.  Then put the SSD first in the boot order and reboot.
> *  At this point, I upgraded to oi_151a7.  This confirmed that the new root 
> pool was functional.  Here's the initial boot environment:
>     # beadm list
>     BE          Active Mountpoint Space Policy Created
>     oi_151a6    R      -          6.01G static 2012-09-13 16:33
>     oi_151a6x   NR     /          4.33G static 2013-06-06 15:55
>     openindiana -      -          13.5M static 2012-09-13 08:55
>
> *  Upgrade:
>     # pkg image-update --be-name oi_151a7
>     WARNING: The boot environment being modified is not the active one.  
> Changes    made in the active BE will not be reflected on the next boot.
>                 Packages to update: 895
>            Create boot environment: Yes
>     Create backup boot environment:  No
>     ...
>     A clone of oi_151a6x exists and has been updated and activated.
>     On the next boot the Boot Environment oi_151a7 will be
>     mounted on '/'.  Reboot when ready to switch to this updated BE.
>
> *  Check the BEs again:
>     # beadm list
>     BE          Active Mountpoint Space Policy Created
>     oi_151a6    R      -          6.01G static 2012-09-13 16:33
>     oi_151a6x   N      /          101K  static 2013-06-06 15:55
>     oi_151a7    R      -          5.31G static 2013-06-06 16:56
>     openindiana -      -          13.5M static 2012-09-13 08:55
>
> *  Shut down OS:
>     # init 5
>     updating //platform/i86pc/boot_archive
>     updating //platform/i86pc/amd64/boot_archive
>
> *  Press the `Power' button to reboot.  Confirm that the upgrade was 
> successful.  Notice that there are still two active boot environments:
>     $ beadm list
>     BE          Active Mountpoint Space Policy Created
>     oi_151a6    R      -          6.01G static 2012-09-13 16:33
>     oi_151a6x   -      -          16.8M static 2013-06-06 15:55
>     oi_151a7    NR     /          5.33G static 2013-06-06 16:56
>     openindiana -      -          13.5M static 2012-09-13 08:55
>
> *  Some of the old root pool is still in use.  My home directory was on 
> rpool/export/home/mills .  To simplify this migration, I decided to move it 
> to the data pool.  First, create new filesystems on the data pool:
>     # zfs create dpool/export
>     # zfs create dpool/export/home
>
> *  My home directory in the /etc/passwd file was automounted to /home/mills 
> from /export/home/mills .  The first thing I did was to copy it to 
> /dpool/export/home/mills using `cpio'.  Then I edited /etc/passwd to change 
> my home directory to /dpool/export/home/mills .  After that change, it was no 
> longer automounted.  After a reboot, I confirmed that the old root pool was 
> no longer needed for my home directory:
>     # zfs unmount rpool/export/home/mills
>     # zfs unmount rpool/export/home
>     # zfs unmount rpool/export
>
> *  Still, there are a few pieces left:
>     # zfs list | egrep 'dump|swap'
>     rpool/dump                895M  65.5G   895M  -
>     rpool/swap                952M  65.8G   637M  -
>
> *  To move the dump device, first get the properties of the old one:
>     $ zfs get all rpool/dump | egrep 'SOURCE|local'
>     NAME        PROPERTY                  VALUE                       SOURCE
>     rpool/dump  volsize                   895M                        local
>     rpool/dump  checksum                  off                         local
>     rpool/dump  compression               off                         local
>     rpool/dump  refreservation            none                        local
>     rpool/dump  dedup                     off                         local
>
> *  Create another one on rpool1:
>     # zfs create -o checksum=off -o compression=off -o refreservation=none -o 
> dedup=off -V 895M rpool1/dump
>
> *  Try to move it:
>     # dumpadm -d /dev/zvol/dsk/rpool1/dump
>     dumpadm: dump device /dev/zvol/dsk/rpool1/dump is too small to hold a 
> system dump
>     dump size 1812297728 bytes, device size 938475520 bytes
>     # dumpadm
>          Dump content: kernel pages
>            Dump device: /dev/zvol/dsk/rpool/dump (dedicated)
>     Savecore directory: /var/crash/ati
>       Savecore enabled: no
>        Save compressed: on
>
> *  Expand the volume and try again:
>     # dumpadm -d /dev/zvol/dsk/rpool1/dump
>           Dump content: kernel pages
>            Dump device: /dev/zvol/dsk/rpool1/dump (dedicated)
>     Savecore directory: /var/crash/ati
>       Savecore enabled: no
>        Save compressed: on
> *  Now, get the properties of the old swap device:
>     $ zfs get all rpool/swap | egrep 'SOURCE|local'
>     NAME        PROPERTY                  VALUE                       SOURCE
>     rpool/swap  volsize                   895M                        local
>     rpool/swap  refreservation            952M                        local
>
> *  Create a new one on rpool1:
>     # zfs create -o refreservation=952M -V 895M rpool1/swap
>
> *  Move the swap device by editing /etc/vfstab:
>     o Move the swap device by editing /etc/vfstab:
>     root@ati:/etc# cp -p vfstab vfstab-
>     root@ati:/etc# ex vfstab
>     root@ati:/etc# diff vfstab- vfstab
>     12c12
>     < /dev/zvol/dsk/rpool/swap  -               -               swap    -     
>   no      -
>     ---
>     > /dev/zvol/dsk/rpool1/swap -               -               swap    -     
>   no      -
>
> *  Reboot and confirm that rpool is no longer used:
>     # dumpadm
>           Dump content: kernel pages
>            Dump device: /dev/zvol/dsk/rpool1/dump (dedicated)
>     Savecore directory: /var/crash/ati
>       Savecore enabled: no
>        Save compressed: on
>     # swap -l
>     swapfile             dev    swaplo   blocks     free
>     /dev/zvol/dsk/rpool1/swap 96,2         8  1832952  1832952
>     # beadm list                                                          BE
>       Active Mountpoint Space Policy Created
>     oi_151a6    R      -          6.01G static 2012-09-13 16:33
>     oi_151a6x   -      -          16.8M static 2013-06-06 15:55
>     oi_151a7    NR     /          5.34G static 2013-06-06 16:56
>     openindiana -      -          13.5M static 2012-09-13 08:55
>     # zpool list
>     NAME     SIZE  ALLOC   FREE  EXPANDSZ    CAP  DEDUP  HEALTH  ALTROOT
>     dpool    928G  85.6G   842G     2.50M     9%  1.00x  ONLINE  -
>     rpool     74G  6.19G  67.8G         -     8%  1.00x  ONLINE  -
>     rpool1  59.5G  7.17G  52.3G         -    12%  1.00x  ONLINE  -
>
> *  Export the pool and observe the result:
>     # zpool export rpool
>     # zpool list
>     NAME     SIZE  ALLOC   FREE  EXPANDSZ    CAP  DEDUP  HEALTH  ALTROOT
>     dpool    928G  85.6G   842G     2.50M     9%  1.00x  ONLINE  -
>     rpool1  59.5G  7.18G  52.3G         -    12%  1.00x  ONLINE  -
>     # zfs list
>     NAME                    USED  AVAIL  REFER  MOUNTPOINT
>     dpool                  85.6G   828G    24K  /dpool
>     dpool/export           83.8G   828G    22K  /dpool/export
>     dpool/export/home      83.8G   828G  83.8G  /dpool/export/home
>     dpool/opt              1.82G   828G  1.82G  /dpool/opt
>     dpool/opt/local          21K   828G    21K  /dpool/opt/local
>     rpool1                 8.10G  50.5G  36.5K  /rpool1
>     rpool1/ROOT            5.17G  50.5G    31K  legacy
>     rpool1/ROOT/oi_151a6x  16.8M  50.5G  4.33G  /
>     rpool1/ROOT/oi_151a7   5.16G  50.5G  4.27G  /
>     rpool1/dump            2.00G  50.5G  2.00G  -
>     rpool1/swap             952M  51.4G    16K  -
>     # getent passwd mills
>     mills:x:107:10:Gary Mills:/dpool/export/home/mills:/bin/ksh
>     # beadm list
>     BE        Active Mountpoint Space Policy Created
>     oi_151a6x -      -          16.8M static 2013-06-06 15:55
>     oi_151a7  NR     /          5.34G static 2013-06-06 16:56
>
> *  I could have resumed automounting my home directory by changing the mount 
> point of dpool/export to /export, but I decided to leave it the way it was.
> *  Here's another upgrade, just to confirm that the new root pool was correct:
>     # pkg image-update --be-name oi_151a8
>                 Packages to remove:  16
>                Packages to install:   6
>                 Packages to update: 879
>            Create boot environment: Yes
>     Create backup boot environment:  No
>     DOWNLOAD                                  PKGS       FILES    XFER (MB)
>     Completed                              901/901 22745/22745  566.2/566.2
>     PHASE                                        ACTIONS
>     Removal Phase                            13844/13844
>     Install Phase                            12382/12382
>     Update Phase                             23637/23637
>     PHASE                                          ITEMS
>     Package State Update Phase                 1780/1780
>     Package Cache Update Phase                   895/895
>     Image State Update Phase                         2/2
>     ...
>     root@ati:~# beadm list
>     BE        Active Mountpoint Space Policy Created
>     oi_151a6x -      -          16.8M static 2013-06-06 15:55
>     oi_151a7  N      /          11.4M static 2013-06-06 16:56
>     oi_151a8  R      -          8.76G static 2013-08-11 16:12
>     # bootadm list-menu
>     the location for the active GRUB menu is: /rpool1/boot/grub/menu.lst
>     default 2
>     timeout 30
>     0 oi_151a6x
>     1 oi_151a7
>     2 oi_151a8
>     # init 5
>
> *  Press the power switch to reboot.  The upgrade was successful, completing 
> the migration to a new device.
>
> Labels:
> None  Edit Labels
> 3 Comments
> Hide/Show Comments
> *
> Dec 06, 2013
> Predrag Zečević
> Hi,
> I have also wanted to try SSD (Samsung SSD 840, 120 GB). My current rpool was 
> on 160 GB HD 7200RPM. I have used slightly different approach, which worked 
> (I am now writing this from system booted from SSD).
> First, I have created same partition layout as existing rpool had (slices 0, 
> 2 and 8 - similar like in this example). BTW, I have attached SSD disk via 
> USB docking station...
> Then I have created new pool (I have found disk ID using  format and  fdisk 
> utilities in steps mentioned at the beginning of this page):
>
> Next phase is to take recursive snapshot of rpool and to send (verbose= -v , 
> recursive= -R ) it to  and receive it (keep structure= -d , force= -F ) to 
> new rpool (I have named it RPOOL):
>
> BTW, my installation has user home directories on second HD, as well as  /opt 
>   directory. Boot disk ( rpool in such environment) has occupied 26 GB of 
> space and system took 28 minutes under normal activities to send/receive 
> pool...
> Now, we need to make new disk bootable. Check (compare and set  bootfs 
> property of new root pool):
>
> After this, new pool has to be exported and grub installed:
>
> Now, you can shutdown system and shuffle disks. If you have put SSD disk to 
> same controller, nothing to do... But, if you have changed location of it, 
> then you have to fix BIOS boot order.
> I found easy enough to boot system FIRST from latest /hipster USB text 
> installation image (less than 1GG, easy to create - and my installation IS 
> /hipster one) in order to import copy of rpool under new name:
>
> After you have started reboot, skip step of booting from removable device and 
> your system should be started from SSD now.
> My impression is that all this is NOT enough to have all benefits of SSD disk 
> usage...
> Actually, I could not say that systems is significantly faster than boot from 
> normal HD, but it might be needed to do some optimizations.
> This is how I did moved rpool to SSD (pardon me on my mistakes in English).
> Regards.
> P.S. Resources used (beside this page):
> *  http://ptribble.blogspot.de/2012/09/recursive-zfs-send-and-receive.html
> *  http://waddles.org/content/replicating-zfs-root-disks
>
> *  Permalink
> *
> Nov 15, 2014
> Jon Strabala
> Predrag
> You might be able to do this via "zpool split" without using snapshots ( I 
> have not tried all these spteps ... yet )
> Lets's assume
> *  you have a rpool that is a bare drive or a mirrored set with the drive or 
> one of the members "c1t0d0s0"
> *  you want to migrate the root pool to a new disk (same size or maybe 
> bigger) to a new disk "c1t2d0s0"
> *  Note I'm not sure about any issues that might be caused via a 512 byte vs 
> 4K disk sector mismatch
> so lets assume the sector sizes match on all the disks (old and new) .
> Note "zpool split" is not documented in in the illumos man page Bug #2897
> Step 1 - I imaging  a "cleaner procedure' with out relying on snapshots might 
> be doing something like the following:
>   # zpool attach rpool c1t0d0s0 c1t2d0s0
> # zpool status rpool
> *** wait for resilver to complete ****
> Step 2 - Now split off the new device it's a perfect clone (by default it 
> takes the last one added - but we could specify  c1t2d0s0 as the last arg )
> # zpool split rpool rpool2
>   # installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c1t2d0s0
> [Optional] You have your clone albiet with a different pool name, however 
> what if your new drive is larger - your not using the space - but you can
> #  zfs list
> # zpool set autoexpand=on rpool2
> [Optional] not done yet look at how much space you can expand and use and 
> then use your new space
> #  zpool get expandsize  rpool2
> #  zpool online -e  rpool2
> #  zfs list
> # zpool set autoexpand=off rpool2
> [Optional] at this point the new cloned disk may be bigger than the disks you 
> cloned from if so no more using those old disks later as part of a mirror 
> with the new disk
> Step 3. Time to set up the cloned disk to boot (we need to change it's pool 
> name ) so shut down and power off
> # init 0
> Step 4. Remove the old OS drive (or drives) which is either the original 
> stand alone disk or the entire original mirror set .
> Step 5. Boot from the  latest /hipster USB text image - only way I know of to 
> change the pool name back to 'rpool'
> Step 6. Now import the device and change its name from rpool2 to rpool
> # zpool import -f rpool2 rpool
> # init 6
> IMHO Step 1 & 2 make a perfect clone except for the pool name - it would be 
> cool if there was a zpool command to rename the split e.g. rpool2 to rpool 
> WITHOUT bringing it online as it would have a "name" conflict and then you 
> remove it offsite as a hot spare OS clone backup without rebooting to a 
> /hipster image to rename it.
>
> *  Permalink
> *
> Sep 03, 2014
> Stefan Müller-Wilken
> Procedure for SPARC (as reported by igork on #oi-dev): need install zfs boot 
> block by: installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk 
> /dev/rdsk/c2t1d0s0
> *  Permalink
>
> Powered by a free  Atlassian Confluence Community License granted to 
> OpenIndiana.  Evaluate Confluence today .
> *  Powered by  Atlassian Confluence 4.1.7 , the  Enterprise Wiki
> *  Printed by Atlassian Confluence 4.1.7, the Enterprise Wiki.
> *   ·   Report a bug
> *   ·   Atlassian News
>
>
>
>
>
>
>>Вторник, 20 сентября 2016, 10:25 UTC от "Hans J. Albertsson" 
>><hans.j.alberts...@gmail.com>:
>>
>>Was going to refer to an old document on migrating the root pool, but I
>>get 503 Service unavailable from anywhere on wiki.openindiana.org.
>>
>>Is anyone  looking after this site? Will it reappear??
>>Is Gary Mills' short piece on migrating the root pool available elsewhere??
>>
> _______________________________________________
> openindiana-discuss mailing list
> openindiana-discuss@openindiana.org
> https://openindiana.org/mailman/listinfo/openindiana-discuss



-- 
---
Praise the Caffeine embeddings

_______________________________________________
openindiana-discuss mailing list
openindiana-discuss@openindiana.org
https://openindiana.org/mailman/listinfo/openindiana-discuss

Reply via email to