Linux: How to copy from one disk to another

If you want to copy an entire disk’s worth of stuff onto another disk, here is the best set of parameters to do so:

rsync -avxI --owner --progress --group --links --inplace --stats --times --delete --modify-window=1 --size-only

Posted in Linux | Leave a comment

Linux ATI/AMD drivers: How to get it to compile

As you may have noticed, AMD has stopped supporting their “older” cards, calling them all “legacy” even if your card is just a few years old. This leads to their software not compiling on newer kernels. It gave me hours of grief on Fedora 17..
I eventually got it to work, and I thought I’d publish my findings.. Here are the tips on how to get it to compile.

First download ATI/AMD drivers from their sites, run the “amd….run” file, which will eventually fail.

It might complain of several things (see /usr/share/ati/fglrx-install.log file)

1) that it cannot find version.h

For this, I had to type this command:
# ln -s /lib/modules/3.7.3-101.fc17.x86_64/build/include/generated/uapi/linux/version.h /lib/modules/3.7.3-101.fc17.x86_64/build/include/linux/version.h

Or, here is a version you can copy and paste:
ln -s /lib/modules/`uname -r`/build/include/generated/uapi/linux/version.h /lib/modules/`uname -r`/build/include/linux/version.h

Of course, edit the above line to your liking.. To find out your curent kernel version, do a “uname -a”

Now go into it source directory and attempt to compile it again..
# cd /lib/modules/fglrx/build_mod
# ./make.sh

2) That there was something wrong with “do_mmap” call.

For that, you need to patch a file, because apparently do_mmap and do_unmmap functions are renamed now. Download it here..

Save this patch file, and do a “patch < 3.5-do_mmap.patch" as root. It should just say "Hunk .. patched" or something. Iif it gives you errors, check the top 2 lines of the patch file to make sure they correspond to where you have your ATI driver source located - mine are at /lib/modules/fglrx. 3) It might still complain about VM_RESERVED

Well, VM_RESERVED went out the window with the new kernels.. Instead, edit that file that it cannot compile, and replace all the VM_RESERVED you see with this:
VM_DONTEXPAND | VM_DONTDUMP

so , for example,
vma->vm_flags |= VM_SHM | VM_RESERVED;
becomes:
vma->vm_flags |= VM_SHM | VM_DONTEXPAND | VM_DONTDUMP;

I just used gedit to do this.. About 12 changes altogether.

4) That struct dev_archdata’ has no member named ‘acpi_handle’

For this, you need a small patch, Download it here. Then do the usual thing, that is,
patch < fix-build-kernel-3.8.patch There.. that should do the trick.. Good luck. Now compile it again.. # cd /lib/modules/fglrx/build_mod
# ./make.sh
# cd ..
# ./make_install.sh

I hope the frustration leaves some hairs on your head after all this.. Next time, buy NVIDIA.

Posted in Linux | Leave a comment

Linux Scanning: How to remotely scan from multi-function printer

If you have a multi-function printer, for example, I have a samsung,
and you wish to remotely scan documents placed on that machine to your linux desktop,
you first have to install all sane-backends.
Once done, go into /etc/saned.d/pixma.conf
and add this at the end:
bjnp://192.168.1.222:9100

(where 192.168.1.222 is the printer/scanner’s IP address)..

Once done, try xsane or “simple scan” and they should now find the scanner..
Enjoy..

Posted in Linux | Leave a comment