|
|
Penguins Unbound > Past Meetings > 20071117 Unix Questions > How to Move a filesystem
How to Move a filesystemTable of contentsNo headersThis assumes the file system is a Linux ext3 file system
Prepare the disk to be a file system. fdisk /dev/sda # partition the disk mke2fs /dev/sda1 tune2fs -J /dev/sda1 # make the ext2 file system a ext3 file system mount /dev/sda1 /new_home
You could also use cfdisk rather than fdisk to partition the disk.
cd /home find . -depth -print | cpio -padmv /new_home
*** I have had problems moving large files ***
Install new filesystem # /etc/fstab: static file system information. # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 # /dev/sda1 UUID=a09531bf-f49f-46a8-b29b-96bc9ba22e14 / ext3 defaults,errors=remount-ro 0 1 # /dev/sda2 UUID=906ec64c-6d9b-495d-9ea5-f88c13cf3756 none swap sw 0 0 /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec 0 0 # 10.2.0.75:/server /server nfs intr,noauto 0 0
To find the UUID you can use tune2fs thesystem$ sudo tune2fs -l /dev/sda1 tune2fs 1.40.2 (12-Jul-2007) Filesystem volume name: <none> Last mounted on: <not available> Filesystem UUID: a09531bf-f49f-46a8-b29b-96bc9ba22e14 Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal resize_inode dir_index filetype needs_recovery sparse_super large_file Filesystem flags: signed directory hash Default mount options: (none) Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 3662848 Block count: 7323624 Reserved block count: 366181 Free blocks: 6365412 Free inodes: 3540948 First block: 0 Block size: 4096 Fragment size: 4096 Reserved GDT blocks: 1022 Blocks per group: 32768 Fragments per group: 32768 Inodes per group: 16352 Inode blocks per group: 511 Filesystem created: Fri Nov 9 11:12:55 2007 Last mount time: Sat Nov 17 10:02:05 2007 Last write time: Sat Nov 17 10:02:05 2007 Mount count: 12 Maximum mount count: 24 Last checked: Fri Nov 9 11:12:55 2007 Check interval: 15552000 (6 months) Next check after: Wed May 7 12:12:55 2008 Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 128 Journal inode: 8 Default directory hash: tea Directory Hash Seed: 3a54a714-4936-4c2d-8519-7048d8c3e7ba Journal backup: inode blocks
To move the root file system you need to also tell the boot loader where the new filesystem is. For a system using grub you need to edit the /boot/grub/menu.lst and modify the 'root=' to the new partition for your linux boot.
sudo vi /boot/grub/menu.lst
# menu.lst - See: grub(8), info grub, update-grub(8) # grub-install(8), grub-floppy(8), # grub-md5-crypt, /usr/share/doc/grub # and /usr/share/doc/grub-doc/. ## default num # Set the default entry to the entry number NUM. Numbering starts from 0, and # the entry number 0 is the default if the command is not used. # # You can specify 'saved' instead of a number. In this case, the default entry # is the entry saved with the command 'savedefault'. # WARNING: If you are using dmraid do not use 'savedefault' or your # array will desync and will not let you boot your system. default 0 ## timeout sec # Set a timeout, in SEC seconds, before automatically booting the default entry # (normally the first entry defined). timeout 3 ## hiddenmenu # Hides the menu by default (press ESC to see the menu) hiddenmenu # Pretty colours #color cyan/blue white/blue ## password ['--md5'] passwd # If used in the first section of a menu file, disable all interactive editing # control (menu entry editor and command-line) and entries protected by the # command 'lock' # e.g. password topsecret # password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/ # password topsecret # # examples # # title Windows 95/98/NT/2000 # root (hd0,0) # makeactive # chainloader +1 # # title Linux # root (hd0,1) # kernel /vmlinuz root=/dev/hda2 ro # # # Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST ### BEGIN AUTOMAGIC KERNELS LIST ## lines between the AUTOMAGIC KERNELS LIST markers will be modified ## by the debian update-grub script except for the default options below ## DO NOT UNCOMMENT THEM, Just edit them to your needs ## ## Start Default Options ## ## default kernel options ## default kernel options for automagic boot options ## If you want special options for specific kernels use kopt_x_y_z ## where x.y.z is kernel version. Minor versions can be omitted. ## e.g. kopt=root=/dev/hda1 ro ## kopt_2_6_8=root=/dev/hdc1 ro ## kopt_2_6_8_2_686=root=/dev/hdc2 ro # kopt=root=UUID=a09531bf-f49f-46a8-b29b-96bc9ba22e14 ro ## Setup crashdump menu entries ## e.g. crashdump=1 # crashdump=0 ## default grub root device ## e.g. groot=(hd0,0) # groot=(hd0,0) ## should update-grub create alternative automagic boot options ## e.g. alternative=true ## alternative=false # alternative=true ## should update-grub lock alternative automagic boot options ## e.g. lockalternative=true ## lockalternative=false # lockalternative=false ## additional options to use with the default boot option, but not with the ## alternatives ## e.g. defoptions=vga=791 resume=/dev/hda5 # defoptions=quiet splash ## should update-grub lock old automagic boot options ## e.g. lockold=false ## lockold=true # lockold=false ## Xen hypervisor options to use with the default Xen boot option ## Xen hypervisor options to use with the default Xen boot option # xenhopt= ## Xen Linux kernel options to use with the default Xen boot option # xenkopt=console=tty0 ## altoption boot targets option ## multiple altoptions lines are allowed ## e.g. altoptions=(extra menu suffix) extra boot options ## altoptions=(recovery) single # altoptions=(recovery mode) single ## controls how many kernels should be put into the menu.lst ## only counts the first occurence of a kernel, not the ## alternative kernel options ## e.g. howmany=all ## howmany=7 # howmany=all ## should update-grub create memtest86 boot option ## e.g. memtest86=true ## memtest86=false # memtest86=true ## should update-grub adjust the value of the default booted system ## can be true or false # updatedefaultentry=false ## should update-grub add savedefault to the default options ## can be true or false # savedefault=false ## ## End Default Options ## title Ubuntu 7.10, kernel 2.6.22-14-generic root (hd0,0) kernel /boot/vmlinuz-2.6.22-14-generic root=UUID=a09531bf-f49f-46a8-b29b-96bc9ba22e14 ro quiet splash initrd /boot/initrd.img-2.6.22-14-generic quiet title Ubuntu 7.10, kernel 2.6.22-14-generic (recovery mode) root (hd0,0) kernel /boot/vmlinuz-2.6.22-14-generic root=UUID=a09531bf-f49f-46a8-b29b-96bc9ba22e14 ro single initrd /boot/initrd.img-2.6.22-14-generic title Ubuntu 7.10, memtest86+ title Ubuntu 7.10, memtest86+ root (hd0,0) kernel /boot/memtest86+.bin quiet ### END DEBIAN AUTOMAGIC KERNELS LIST
*** Note the boot loader needs to be on the first drive. **** |