> > Then > copy /usr over: > mount -o bind / /mnt > mount -o remount,ro /usr > cp -a /usr/* /mnt/ > The bind moun t makes the root FS appear in a 2nd place, without /usr > being populated by the content of your /usr partition. > Don't forget to remove /usr from /etc/fstab. >
I can recommend using rsync instead of cp. Main advantage is rsync can be stopped (ie. killed) mid-way and resumed later. No big deal, but if your /usr is as large as mine, you might like this! If transfering very large files, instead of restarting the large file from scratch, using the --append option will write the partial data in the destination file. If killed and resumed, rsync will find the dst file is smaller than it should and will continue from where it left. If the data is absolutely crictical important, you can also use the -c option to force rsync to do a checksum of the files to compare, it will recopy anything that's not right. I normally use a -c check if I used --append and had to kill it (because I'm paranoid AND patient). Although I have seen zero cases where the -c found errors. Note the slashes at end of directories mean something with rsync, in my example below, it means make usr and mnt identical, having rsync /usr /mnt/ means copy usr into /mnt/ (giving /mnt/usr/). So "cp -a /usr/* /mnt/" becomes: rsync -ah --progress /usr/ /mnt/ Enjoy!