Move root partition to home partition

If you have made these mistakes when installing your Linux Debian Server at home or work, this article might help you.

Mistakes:
* You split the drive into / (root portion) and /home portion. 3 years later and 1-2 Debian upgrades you run out of space on root. You need to move it off to home partition that has 400GB+.
* You have installed ext3 on your / (root partition) instead of xfs for your server. You are finding that mdadm and ext3 and long running servers are not playing so nicely when things go not as planned. Your home partition is xfs so now you would like to move it off to home to be on xfs.

Moving root partition to home. This process should not be taken lightly. You should not be doing this if you are not having any problems. You are doing it at your own risk and as a result you need to read up on what each of these commands might do to your system. You should not be replacing, deleting any data. You should not be deleting old root until a week later when you confirmed it all worked.

Prep Work:
When your computer boots and grub menu shows up press “e” to see what your grub is doing and write it down. Mine was doing below. When I search for some troubleshooting howto solutions the key why they didn’t work is because these modules were not loaded. insmod part_gpt and insmod ext2
in grub menu
insmod part_gpt
insmod ext2
set root='(hd0,gpt1)'
search --fs-uuid --set a80.....
linux /vmlinuz-3.2.9-4-amd64 root=/dev/mapper/my_lvmgroup_root

*Download Debian live cd
*My case, gpt partitions. sda only has my boot partiton. My sdb,sdc,sdd contain 4TB raid 5 with 3 lvm groups for root,swap,home.

*Use lucasmanual to mount the raid lvm from a live Debian Cd

*Mount source (root partition) and destination (home partition)
#root access
sudo -i
cd /mnt
mkdir src
mkdir dest
mount /dev/mapper/my_lvmgroup_root src
mount /dev/mapper/my_lvmgroup_home dest

*Now the key is that you will need to create a home folder inside your home partition and move all the files there.
cd /mnt/dest/
mkdir home

#now move the files you need. This will make current system accessible only through shell. You will need to access it via pressing for example Alt +F2 and using command line. So be prepared to have a backup tablet to troubleshoot.
#cp /mnt/dest/lucas /mnt/dest/home/lucas
#….keep going.

*Now lets sync root partition onto home. Many web pages says to exclude proc,sys,tmp,etc but I decided to copy it since it should work either way.
*I have added other excludes as I see fit

rsync -aAXv --exclude=/lost+found --exclude=/root/trash/* --exclude=/var/tmp/* /mnt/src/* /mnt/dest/

*If your boot partition is located elsewhere. (You can tell if its mounted to a different partition in /mnt/src/etc/fstab. you need to mount it in dest.

*Mount the uuid of the boot into the /mnt/dest/boot
mount UUID=abc...123 /mnt/dest/boot

*I made a copy of that just in case in
#cp -r /mnt/dest/boot /mnt/dest/boot_copy

*Next day when a copy is done. Its time to update grub and /etc/fstab

umount /mnt/src
*Lets create a root folder where we will mount old partition.
mkdir /mnt/dest/root_old

*Lets update /etc/fstab aka
vi /mnt/dest/etc/fstab
#And change your /home partition to /
#Change your old / to /root_old
#The last item on the line is the order for fsck. 0 = nocheck, 1 = check first, 2=secondary check. So update your new / to 1 so that fsck gets it checked as needed.

*First in order to update grub we need real dev,proc,sys from the currently running system. (not these are from the live cd not /mnt/src)

mount -o bind /proc /mnt/dest/proc
mount -o bind /dev /mnt/dest/dev
mount -o bind /sys /mnt/dest/sys

*Now we will chroot…this changes the “/” to point elsewhere in my shell temporally.
chroot /mnt/dest
update-grub

*You should see
Generating grib.cfg
Found background image....
Found linux image....
found initrd image....
....
Found Debian GnuLinux 7.8 on /dev/mapper...
#Note for some reason my always says it found it on my root lvm not home lvm..but these instructions did work

*Install grub on your first device where you have current grub. This was required for me because even do I did update-grub it would load into the old / (root partition).
grub-install /dev/sda

*When system reboots and grub menu shows up press e to see if it points to my_lvmgroup_home.
reboot

*Notes 1:
I guess one of the points for me was: on the old / there was a boot folder that had the old scripts pointing to lvmgroup_root….I renamed it to boot_notused….
I loaded the system, mounted everything src,dest,dev,sys,proc then
upgrade-grub
grub-install /dev/sda

* Note 2: when I loaded on lvmgroup_home as / I needed to not only do update-grub but also grub-install /dev/sda

*Note 3: When searching for help somebody said “delete old root partition” and it should work…WRONG…NEVER DELETE old partition. With Linux as long as you don’t delete or overwrite your data you will be always able to go back. So don’t listen to people who tell you to delete your data. There is no going back from that.

*Note 4: At some time in the future I wanted to redo my Raid5 with proper gpt starting not at 63 sector but at 2048 byte. I moved my old raid data to a temporary drive 2TB, (made sure the drive boots and runs fine) deleted and recreated my new raid5 on new partitions tables in each drive and copied data back to raid5. When I follow all the steps above the system said it couldn’t find the /dev/mapper/mygroup_home… When I chroot i did mount -a and then I needed to also do a update-initramfs -u to correct that.

source1
#Guide that I was sticking by

http://www.linuxquestions.org/questions/linux-general-1/move-root-filesystem-howto-931974/

source2
#1 had missing mounts for proc,dev,sys

http://askubuntu.com/questions/3402/how-to-move-boot-and-root-partitions-to-another-drive

source#3
but the mkinitcpio was not required…didn’t reasearch waht it is

https://wiki.archlinux.org/index.php/full_system_backup_with_rsync

source#4.
talks about grub and what it is

https://wiki.archlinux.org/index.php/GRUB

source#5
some other steps that are very similar

https://unix.stackexchange.com/questions/109464/how-can-i-fix-install-reinstall-grub

#source6
some other steps that are very similar

https://www.gnu.org/software/grub/manual/html_node/Installing-GRUB-using-grub_002dinstall.html

#source7
for note4 a little details on cylinder alignment sector 63 byte vs 2048 byte

http://dennisfleurbaaij.blogspot.com/2013/01/setting-up-linux-mdadm-raid-array-with.html

Comments:
– https://www.reddit.com/r/linux/comments/3qitkc/move_root_partition_to_home_partition/

Alt + Speak (Alt+S) = How to enable Text-To-Speech

*Install festival. This will speak the text you select.
apt-get install festival

*Install xsel. This program allows you to pass what you selected into a talk.sh from your graphic interface. In my case I use gnome shell, so when you are in a email or website or reading long marketing notes and you select your text you just press alt+s and computer will speak(say) it to you.
*Lets install xsel.
apt-get install xsel

*Now create a little bash script that passes what you selected to festival
cd /home/lucas
vi talk.sh

*And paste these lines
#!/bin/bash
xsel | festival --tts --pipe

*In order to being able to execute it we need to give it execute permission.
chmod +x talk.sh

*Now you are ready. We just need to add our talk.sh to our keyboard shortcuts. In gnome shell : Search for
System Settings
then press keyboard
then press Shortcuts
then press +

Add keyboard shortcut.
Name: TTS (Text To Speech)
Command: /home/lucas/talk.sh

*And set it for
alt + s

aka Alt + SPEAK!

*You are ready to go. Select some text and press alt+s. (I have noticed that sometimes you need to press and hold s for about 1sec for it to work when there is more text selected.

*Watch a quick video that was very helpful:

*Some notes on the voice. The default festival voice is the most versatile when it comes to reading. I have tried other voices but they are incomplete when it comes to some words. I was surprised that this can read almost every word. You can try other languages here. While I read that Japanese American might be a good replacement. The default festival voice was very easy to get used to. In 1 day I catch up on all the marketing notes. So have the computer read to you and get back to business.

While you are still here help me request this talk.sh being included in all Debian installations by default and keyboard shortcut set to alt+s (alt+speak)

*Enjoy! text-to-speech on Debian Linux

Linux System Recovery part 1

In December 2012, there was a power outage mostly due to blowing fuse at the fuse box. For those that don’t deal with that much, older fuses will trip because the connectors are worn out. Also on a 20amp fuse you should not go over 60% output, so 14amp would be safe. You can replace with new fuse, to minimize this problem, and of course buying a uninterrupted power supply (ups) would mitigate the system turning off and on while we figure out why the fuse is being tripped.

System Crash
System won’t boot. It says that root partition is not available. Unable to load or mount any of the file systems. Looks like all the mount points are gone, or unable to read.

System Rescue

In Debian rescue live CD

#Scan for mdadm device
mdadm --examine --scan

#Update mdadm.conf with what what found
mdadm --examine --scan >> /etc/mdadm/mdadm.conf

#Assemble the raid. Examine scan should show you the name it wants you to use if different them md127
mdadm --assemble --scan /dev/md127

#See what got assembled
cat /proc/mdstat

#Now If you have LVM2 then need to mount LVM

#See if there is LVM group on your newly mounted mdadm device /dev/md127 for example.
pvscan

#Display more about the LVM2 group
vgdisplay

#See what logical disks are there(The /dev/md127 should match to what you found in prior commands)
lvmdiskscan

#Display the drives in md device
lvdisplay |more

#Display the list of volumes
lvscan

#Now we should have our raid device assembled and we should know a list of lvm drives(partitions) on the
#lvm group. We should see from lvscan what are their mount points

#if the lvm group shows inactive you can activate it by

#lvscan shows…Example
#inactive /dev/my_lvmgroup/my_root
#inactive /dev/my_lvmgroup/my_home
#inactive /dev/my_lvmgroup/my_swap

#Then do this. This will change the inactive status to active.
lvchange -a y /dev/my_lvmgroup

#You can deactivate the group but make sure all drives were unmounted by you running command umount on it.

Now that we have mounted the drives its time to recover. First we need to find out what file system are on our /dev/my_lvmgroup/my_root and /dev/my_lvmgroup/my_home. Then we need to do a file system check, and calculate our damages.

mdadm Raid5 – How to replace failed drive GPT partition

Install gdisk. On debian squeeze you need to add main backports
vi /etc/apt/source.list
#Add below
deb http://backports.debian.org/debian-backports squeeze-backports main contrib non-free

Install gdisk
aptitude install gdisk

Drive sdb1 failed? Show details of partition md0
mdadm --detail /dev/md0

cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdc1[1] sdd1[2]
3907028864 blocks level 5, 64k chunk, algorithm 2 [3/2] [_UU]


Drive sdb1 is already removed. but if you need to remove it manually you can:

mdadm /dev/mmdadm /dev/md0 -r /dev/sdb1

SHUT DOWN IF YOU NEED TO REPALCE DRIVE. MAKE SURE NEW DRIVE IS STILL sdb.
Look how disk is structured and what partition type it has
sgdisk -p /dev/sdb
Disk /dev/sdb: 3907029168 sectors, 1.8 TiB
Logical sector size: 512 bytes
Disk identifier (GUID): 0ED13F81-6EEA-4E12-9F27-DD806CF1F09C
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 3907029134
Partitions will be aligned on 8-sector boundaries
Total free space is 0 sectors (0 bytes)

Number Start (sector) End (sector) Size Code Name
1 34 3907029134 1.8 TiB FD00

Now copy partition A structure into partition B

#sgdisk -R=/dev/TO_THIS_DISK /dev/FROM_THIS_DISK
sgdisk -R=/dev/sdb /dev/sda
#Give new GUID since above options clones the disk including GUID
sgdisk -G /dev/sdb

Now readd the drive to md0

mdadm /dev/md0 -a /dev/sdb1

Check the status

cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdb1[3] sda1[1] sdc1[2]
3907028864 blocks level 5, 64k chunk, algorithm 2 [3/2] [_UU]
[>....................] recovery = 0.0% (124204/1953514432) finish=786.3min speed=41401K/sec

Done. Check back in few hours to see if it finished.
Keywords: fdisk,sdisk, sgdisk, gdisk,parted,gpt, mbr,raid5,mdadm,linux,debian,

Gnome shell and Debian Wheezy

Recently upgraded to Debian Wheezy (testing). The improvements are nice, and the visual effects and the quick search are great, but the gnome shell requires some minor tweaks for me:

  • Add maximize and minimize buttonsTo add minimize, and maximize buttons Install gnome-tweak-tool

    aptitude install gnome-tweak-tool

    Then click on shell:
    And set the "Arrangement of buttons on toolbar" : All

    Then reload gnome shell by
    press ALT + F2 and type "r"

  • To enable Desktop Icons and Right Click Do:

    Open dconf by pressing alt + f2 and running:
    dconf-editor
    Go to org > gnome > desktop > background and check the box to show desktop icons.
  • If you are using nvidia you might expirance this error when you press super (win) + iceweasel or any other program name you are looking for:

    Mar 23 19:43:23 kernel: [17927.866833] gnome-shell[29489]: segfault at 10 ip 00007f129f455c0f sp 00007f1280632658 error 6 in libnvidia-tls.so.295.20[7f129f455000+3000]
    Mar 23 19:43:23 x-session-manager[7995]: WARNING: Application 'gnome-shell.desktop' killed by signal

    Solution (fix) :
    echo > /home/lucas/.local/share/recently-used.xbel
    su root
    chattr +i /home/lucas/.local/share/recently-used.xbel

Upgrade to Iceweasel 9 /Firefox 9 on Debian Squeeze

To update/upgrade iceweasel to latest version in Debian Squeeze do the following:

Add these two repositories into
/etc/apt/source.list

deb http://backports.debian.org/debian-backports squeeze-backports main
deb http://mozilla.debian.net/ squeeze-backports iceweasel-release

then
aptitude update
apt-get install -t squeeze-backports iceweasel

DONE.

You should see:
apt-get install -t squeeze-backports iceweasel
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
libcairo2 libmozjs9d libnss3-1d libpixman-1-0 libsqlite3-0 xulrunner-9.0
Suggested packages:
ttf-mathematica4.1 mozplugger
The following NEW packages will be installed:
libmozjs9d xulrunner-9.0
The following packages will be upgraded:
iceweasel libcairo2 libnss3-1d libpixman-1-0 libsqlite3-0
5 upgraded, 2 newly installed, 0 to remove and 237 not upgraded.
Need to get 18.1 MB of archives.
After this operation, 32.9 MB of additional disk space will be used.
Do you want to continue [Y/n]? y

Keywords: Debian, Linux, iceweasel,firefox,

Upgrade Grub to Grub-pc

During upgrade of Lenny to Squeeze I run into an an issue with upgrading grub to grub2. My 4x2Tb drivers were created using GDP partition. As a result of the upgrade the grub-pc had an issue with my gpt partition. If you receive any of these errors you might be in a similar situation. The fix is pretty easy, so hopefully this will guide you through it.

grub-installer: grub-setup: warn: This GPT partition label has no BIOS
Boot Partition; embedding won’t be possible!

or

grub-installer: grub-setup: error: Embedding is not possible, but this

is required when the root device is on a RAID array or LVM volume.

or

grub loading...
no module name found

or

After restart I can only see “GRUB>”.

(If you have above please read the whole post, and especially the “debug” portion.)

I’ve started from Debian cd (rescue) mode. Then I’ve assembled my raid partition (sdb1,sdc1,sdd1) and
executed into shell of my lvm root group mapper_xyz_root. From there I run “upgrade-from-grub-legecy”

**Long story short.  It seems as the because I am using 4 x 2TB drivers and all 4 were
created using GPT partition table, and my computer/mother board was
purchased before 2010 it does not support GPT EFI, so grub needed more
space then MBR allowed, and was telling me no module found because it
didn’t have enough space to be installed.

Steps:
1. First I tried running the “grub-install /dev/sda” I would get:

grub-installer: grub-setup: warn: This GPT partition label has no BIOS
Boot Partition; embedding won’t be possible!

and
grub-installer: grub-setup: error: Embedding is not possible, but this
is required when the root device is on a RAID array or LVM volume.

I found this post:
<http://www.shuvoovuhs.com/linux/grub-installation-issue-with-2-tb-hdd-gpt-requires-bios-boot-partition/>
which said ( *have to* create a BIOS Boot Partition).

2. Reading up on it I concluded that my motherboard does not support
GPT EFI and therefore I do indeed need that partition:
http://en.wikipedia.org/wiki/BIOS_Boot_partition

3. Now since I only have one boot partition on /dev/sda1 (100mb) I had
199.9GB free. I decided to create a partition right after my 100mb. In
rescue mode cd I installed parted (in case its not installed)
aptitude install parted
then proceeded to install my new partition.
parted /dev/sda print
parted /dev/sda unit MB print
##this showed partion 1 as (31.4kb to 100MB)
parted /dev/sda
mkpart biosboot 100MB 101MB
##above created partition 2
set 2 bios_grub on
##Above enabled the bios grub partition

Then I did grub install and it successfully installed. (I rebooted and
it worked.

I hope you have enough room to create a new partition. This should help you out. Most time took to research why I  “HAVE TO CREATE BIOS BOOT PARTITION”, and how to use “parted” to create a new partition, since none of the fdisk tools work with GPT partition table just yet. Enjoy. See the debug portion for how to get additional information out of your system.

Debug: More details :

In the process of upgrading from debian lenny amd64 to debian squeezy amd64 I was able to successfully upgrade to kernel 32 and new udev as Debian Release notes suggest. Then after reboot I followed with apt-get dist-upgrade.

Everything went fine, but towards the end I was asked to upgrade to
grub-pc. During this choice I was asked to specify mbr to install new
boot loader. I’ve selected my a wrong driver. Instead of selecting “/dev/sda” I’ve selected a different drive. (Always select the first hard drive in the list if you are not sure) (I thought it was “flash” drive that I have used before to hold my “boot” partition, but on this machine my boot parition was on  /dev/sda1″

After restart I can only see “GRUB>”.
At this point I should have tried starting the system by issueing few grub commands. More on it shortly.


While Recovering from grub-pc install failure. I’ve started from cd
(rescue) mode. I then assembled my raid partition (sdb1,sdc1,sdd1) and
executed into shell of my lvm root group mapper_xyz_root. From there I
run “upgrade-from-grub-legecy” and this time I’ve selected my usb and
sda to install grub.

Still no lock.

Then I tried “update-grub”

Now I get “grub loading…
no module name found”

What should I do now? I’ve logged in with rescue cd again and now my
/boot partition no longer holds other files except for “/boot/grub/..”
What happened to my kernel files 26 and 32 that were on the /boot? (This was my fault as it seem /boot partition was not mounted properly.  I have my boot partition somewhere else, yet somehow I was looking at  /boot on my root partition.)

I’ve posted to debian mailing list:

What are my choices on installing grub-pc? Do I need “boot” partition?
What should be on it? Why did /boot kernel files got removed? Should I be
installing grub on my lvm root group? or sda? or /boot flashdrive?

> During this choice I was asked to specify mbr to install new

> boot loader. I’ve selected my “flash” drive that I have used before to
> hold my “boot” partition I believe.

I think the most normal installation is to select your first raw
drive.  That is, if you have /boot on /dev/sda1 and / on /dev/sda5 or
some such then you would install grub on /dev/sda without adding any
partition numbers.

**That is correct, I don’t know why I thought I had a usb, but in this
computer I did not have a usb driver, so I should have selected
/dev/sda.  In rescue mode I did that many times and it still failed.

> After restart I can only see “GRUB>”.

Grub appears to be installed then.  But the problem would seem to be
that grub’s configuration file didn’t point to the root filesystem.

** Correct, at that point I’m not sure if that was still grub 1 or
grub 2(grub-pc). (more on it below) The information below was very
useful after I gut the grub> menu.

If you have “grub> ” you can:

At that point you can issue instructions to grub.  You should be able
to get some good information.  It is a little confusing to describe
but the most important thing to know is that TAB will expand and list
your possible options.  Use this to explore your system at that point
and to see what is where.  You can type in “help” to get a list of
commands available but that will produce a lot of output and will
overwhelm you.

At the grub prompt type in “root (” and then hit TAB to have it
complete.  It will look like this:

grub> root (

Press TAB at that point and it will fill out to the available
options.

grub> root (hd0,

Press TAB again to have it list them out.

grub> root (hd0,
Possible partitions are:
Partition hd0,sda1
Partition hd0,sda2

Then select one of them and repeat to list the contents of that
filesystem.

grub> root (hd0,0)/
Possible files are:
lost+found/ System.map-2.6.32-5-686 vmlinuz-2.6.32-5-686 grub/
config-2.6.32-5-686 initrd.img-2.6.32-5-686

That verifies that on my system hd0,0 (/dev/sda1) is my /boot
partition.
Repeat again with the other partition numbers.

grub> root (hd0,1)/
Possible files are:
bin/ boot/ dev/ home/ lib/ lost+found/ media/ mnt/ opt/ …

That verifies that on the system I tried that hd0,1 (/dev/sda2) is the
root partition.

So to manually tell grub what it needs to boot I can type in the
following:

grub> root (hd0,0)
grub> kernel /vmlinuz-2.6.32-3-amd64 root=/dev/sda2 ro
grub> initrd /initrd.img-2.6.32-3-amd64
grub> boot

Use TAB to complete the filenames to ensure that you have the right
location and to save you from typing in all of the details of the
version numbers and architecture type.

If that works then your problem is not your grub install to the boot
partition but rather your configuration for grub in /boot/grub/* that
is the problem.

> While Recovering from grub-pc install failure. I’ve started from cd
> (rescue) mode.

A debian-installer disk in rescue mode should work okay.

> I then assembled my raid partition (sdb1,sdc1,sdd1) and

Why did you need to assemble the raid?

**I think in the “rescue CD mode it asks you to assemble raid or not”
You can select automatic assemble if you want to or you could pick a
different driver as your root. There was no issue with initrd as you
are suggesting below, but it made me pay attention to what is mounted
and what is not!!

That points to a different problem.  The raid should be automatically assembled by the initial
ram disk (initrd) and if it isn’t then you are past grub and onto the
initrd phase of boot.

Did you by any chance add a disk to the raid but not rebuild the
initrd image?  The initrd has the UUIDs of every disk in the raid as a
copy of the /etc/mdadm/mdadm.conf file in the initrd.  If you have
added a disk to the raid and it is required for the lvm to start then
this also needs to be added to the initrd copy of the mdadm.conf
file.  Otherwise it will fail to start the raid at boot time.

> executed into shell of my lvm root group mapper_xyz_root. From there I
> run “upgrade-from-grub-legecy” and this time I’ve selected my usb and
> sda to install grub.

I think you are mixing issues.  I think you mixing up grub with raid
with lvm but really those are all separate.  This is very easy to
become confused about but just the same I think that is what is
happening.

> Then I tried “update-grub”
>
> Now I get “grub loading…
> no module name found”

That I don’t know.

** It seems as the because I am using 4 x 2TB drivers and all 4 were
created using GPT partition table, and my computer/mother board was
purchased before 2010 it does not support GPT EFI, so grub needed more
space then MBR allowed, and was telling me no module found because it
didn’t have enough space to be installed.

Steps:
1. First I tried running the “grub-install /dev/sda” I would get:

grub-installer: grub-setup: warn: This GPT partition label has no BIOS
Boot Partition; embedding won’t be possible!

and
grub-installer: grub-setup: error: Embedding is not possible, but this
is required when the root device is on a RAID array or LVM volume.

I found this post:
<http://www.shuvoovuhs.com/linux/grub-installation-issue-with-2-tb-hdd-gpt-requires-bios-boot-partition/>
which said ( *have to* create a BIOS Boot Partition).

2. Reading up on it I concluded that my motherboard does not support
GPT EFI and therefore I do indeed need that partition:
http://en.wikipedia.org/wiki/BIOS_Boot_partition

3. Now since I only have one boot partition on /dev/sda1 (100mb) I had
199.9GB free. I decided to create a partition right after my 100mb. In
rescue mode cd I installed parted (in case its not installed)
aptitude install parted
then proceeded to install my new partition.
parted /dev/sda print
parted /dev/sda unit MB print
##this showed partion 1 as (31.4kb to 100MB)
parted /dev/sda
mkpart biosboot 100MB 101MB
##above created partition 2
set 2 bios_grub on
##Above enabled the bios grub partition

Then I did grub install and it successfully installed. (I rebooted and
it almost worked. I got the grub> ) but there was nothing there. I’ve
used what you email me to find my problem here.

When I did

grub-install /dev/sda

my /boot folder was in my “server1_lvmgroup-server1-root but that is
not what I had. My boot was a seperate disc /dev/sda1. So the proper
way I should have do it was:

ls /boot
#above shows only /boot/grub folder
umount /boot
#not mounted
mount -a
#this mounted my boot driver based on the /etc/fstab
ls /boot
#no I see
initrd.img-2.6.26-2-686
initrd.img-2.6.32-5-686
vmlinuz-2.6.26-2-686
vmlinuz-2.6.32-5-686

##Now I do install grub

grub-install /dev/sda
update-grub

##When you do update-grub it will find all kernels…it will say

found kernel 2.6.26…
found kernel 2.6.32….

reboot, and it worked.

I really appreciate your help.
This should really be in the Upgrades from Debian 5.0 (lenny), as if your motherboard does not support GPT EFI then
upgrade-from-grub-legacy will fail, and there is no instructions on how to go back.

I can’t really say at what point during the upgrade I had grub>? but
it all came down to creating a GPT Bios boot partition for grub-pc
(grub2).

Thank you.

***your email was most helpful. When I connected the dots with boot
partition then it all went smooth.

> What should I do now? I’ve logged in with rescue cd again and now my
> /boot partition no longer holds other files except for “/boot/grub/..”
> What happened to my kernel files 26 and 32 that were on the /boot?

Mounted the wrong partition? They should still be there.  Take a deep
breath.  Remain calm.  Try it again.  They should be there.

If you have somehow wiped them out then you will need to either
recover them or reinstall them from the chroot.

I have upgraded many machines from Lenny to Squeeze and although I
think this upgrade has the more problems of any of the previous
upgrades I have never had any of the problems you have mentioned.

> What are my choices on installing grub-pc? Do I need “boot” partition?

Yes.

> What should be on it?

Files such as:

System.map-2.6.26-2-686
System.map-2.6.32-5-686
config-2.6.26-2-686
config-2.6.32-5-686
grub/
initrd.img-2.6.26-2-686
initrd.img-2.6.32-5-686
vmlinuz-2.6.26-2-686
vmlinuz-2.6.32-5-686

> Why did files got removed?

Only you are in a position to know what you did.

> Should I be installing grub on my lvm root group? or sda? or /boot
> flashdrive?

Since you are getting the grub prompt then you have successfully
installed grub and your problem is with a later phase of the boot.

Sources:

http://www.rodsbooks.com/gdisk/booting.html

https://bbs.archlinux.org/viewtopic.php?id=114420

https://help.ubuntu.com/community/Grub2

http://lists.debian.org/debian-user/2011/08/msg00079.html

http://www.shuvoovuhs.com/linux/grub-installation-issue-with-2-tb-hdd-gpt-requires-bios-boot-partition/

http://ubuntuforums.org/showthread.php?t=1736409

http://www.debian.org/releases/stable/amd64/release-notes/ch-upgrading.en.html#newkernel

http://www.debian.org/releases/stable/amd64/release-notes/ch-upgrading.en.html#update-grub

Samba Print Server

If you need to share printers, samba print server is for you.

You will be able to

  • Install drivers for each printer on the server
  • Users will be able to double click on the new printer and it will get automatically installed and show up in their “Printers and Faxes”
  • You will be able to globally control pausing the printers is paused, or see completed jobs that are done by users
  • If for any reason printer is down, you will be able to move all print jobs from one printer to another possibly different printer (You can’t do that in Microsoft Windows)
  • Have once central place to maintain printing through the company

— Install samba and cups

aptitude install samba cups

— Setup root user with a password

smbpasswd -a root

— Get a list of current permissions. The reason we are getting a list is to find out what  “everybody” user group can do. This setup here will allow anyuser to make changes to printers configuration, and to upload drivers. If you are controlling logins via samba domain then you can probably just give  SePrintOperatorPrivilege to the user in question. Here we are just trying to get it working in most simple way possible.

— Lets add SePrintOperatorPrivilege to “everybody” so that we can upload drivers from any computer/any username. Note: This replaces “printer admin = @ntadmin” or “printer admin = nobody” in the [print$] share in prior samba <3.0 versions.

net rpc rights grant Everyone SePrintOperatorPrivilege

— Now “everyone” will have access to upload drivers. Lets update the smb.conf to enable our printer share.

vi  /etc/samba/smb.conf

— Change the security=users to security = share (uncomment it if necessary)

— The [printers] share should look like this:

[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
guest ok = no
read only = yes
create mask = 0700

— and [print$] should look like below. We are allowing write, we are allowing guest, we are forcing user root so that any drivers uploaded will have root user permissions.:

[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
browseable = yes
read only = no
guest ok = yes
write ok = yes

write list = root, @lpadmin,nobody
force user = root

— Restart Samba

/etc/init.d/samba restart

–You are now ready to add printers. Go to http://localhost:631 and press add printer.

— When done got to your Microsoft Windows machine and you will upload the drivers to the server.

Go to \\yourcomuter

— You should see the “Printers and Faxes”, click on it and right click on the printer, go to “Properties”, then click “Advanced”, and click “New Driver”. Follow the normal process and at the end the drivers will be installed on the server.

– From any machine with same operating system as above you will go to \\computername double click on the printer, and it will automatically be installed on that computer. Enjoy maintenance free setup for years.

Enjoy

Sources:

http://lists.samba.org/archive/samba/2007-March/129995.html

Mozilla Lightning on Debian Squeeze

Hello,

To install Mozilla Lightning on Debian squeeze do the following:

aptitude install iceowl-extension

Fixes the following issues:
If you are trying to install lightning plugin version 1.0b1 January 12, 2010 2.5 MB

Works with:

  • Thunderbird 3.0b4 – 3.0.*
  • SeaMonkey 2.0b2 – 2.0.*
and you are using amd64 then you might be getting these errors if you download lightining from mozilla.org

“Could not be installed because it is not compatible with  your Icedove build type (Linux_x86_64-gcc3). Please contact the author of this item about the problem.”

Above installation fixes this issue. Enjoy!