I had planned on writing up a small tute on how to get Airprint working on Ubuntu linux, but my good friend SDBillin has already done it. So instead of hashing it out here I am just going to link to his page.
I have taken a load of screenshots of the Ubuntu Server install process. It is probably slightly outdated by now as the Karmic has been released but you will get the general idea and can use them in any tutorial you see fit. I have prepared a zip file so you can grab them all easy enough.
Having the “/home” directory tree on it’s own partition has several advantages, the biggest perhaps being that you can reinstall the OS (or even a different distro of Linux) without losing all your data. You can do this by keeping the /home partition unchanged and reinstalling the OS which goes in the “/” (root) directory, which can be on a seperate partition.
But you, like me, did not know this when you first installed Ubuntu, and have not created a new partition for “/home” when you first installed Ubuntu. Despair not, it is really simple to move “/home” to its own partition.
First, create a partition of sufficient size for your “/home” directory. You may have to use that new hard drive, or adjust/resize the existing partition on your current hard-drive to do this. Let me skip those details.
Next, create and mount the new partition:
$sudo mount -t ext3 /dev/hda5 /mnt/newhome
(You have to change the “hda5? in the above to the correct partition label for the new partition. Also, the above assumes that the new partition you created is formatted as an ext3 partition. Change the “ext3? to whatever filesystem the drive is formatted to.)
Now, Copy files over:
Since the “/home” directory will have hardlinks, softlinks, files and nested directories, a regular copy (cp) may not do the job completely. Therefore, we use something we learn from the Debian archiving guide:
$find . -depth -print0 | cpio -null -sparse -pvd /mnt/newhome/
Make sure everything copied over correctly. You might have to do some tweaking and honing to make sure you get it all right, just in case.
Next, unmount the new partition:
$sudo umount /mnt/newhome
Make way for the new “home”
$sudo mv /home /old_home
Since we moved /home to /old_home, there is no longer a /home directory. So first we should recreate a new /home by:
sudo mkdir /home
Mount the new home:
$sudo mount /dev/hda5 /home
(Again, you have to change “hda5? to whatever the new partition’s label is.)
Verify that everything works right.
Now, you have to tell Ubuntu to mount your new home when you boot. Add a line to the “/etc/fstab” file that looks like the following:
/dev/hda5 /home ext3 nodev,nosuid 0 2
(Here, change the partition label “hda5? to the label of the new partition, and you may have to change “ext3? to whatever filesystem you chose for your new “home”)
Once all this is done, and everything works fine, you can delete the “/old_home” directory by using:
$sudo rm -r /old_home
Or you can keep the old one as a backup
Recently I had need to generate random passwords. I did not want to make a script for it and I certainly did not want any applications to do the tasks. Here is the command line argument for such a task:
</dev/urandom tr -dc A-Za-z0-9_ | head -c8
Note that the ‘tr’ strips out everything except characters in the ranges (alphanumeric, mixed case and underscores). This is a nice approach as piping to head means the minimum number of bytes required to generate a password of appropriate length are taken from /dev/urandom vs other methods which take more than you should need but still have a chance of not having obtained enough random data to generate a password of the required length. You can change the parameter to head to get passwords of any length.
NOTE: I have only run this command on Ubuntu, its possible it works on other Linux systems but I have not checked.
The restore will need to be perfomred as root
tar xvpzf filename.tgz -C /
the mkdir options are mandatory, and you will notice that they are the directories that are excluded from the backup. this is fine, but the folders do need to be replaced BEFORE YOU DO ANYTHING AFTER THE RESTORE
everything should now be cushdy