Allowing other system users to run commands as user "root" without having to authenticate as root

I have an application (created by IBM Linux team) that controls all the buttons on my thinkpad and shows the changes visually (raise/lower the speaker volume, increase/decrease brightness …etc). This application is called “tpb” and I found out that it cannot be run except by user root :(. Of course when I tried to put it in the session startup in my Ubuntu box – without adding sudo or gksudo before it – it never ran as expected and I really didn’t want to enter the root password each time I run this nice app.

Anyway, I searched and found a method to allow me to run this tool using another user, but with the privileges of the owner (which is root in this case), you can simply do the following:

“chmod 6555 tpb”

This made me able to run it as any other application using my system user instead of root, and it ran like a charm :))

Source: http://www.unix.com/tips-tutorials/19060-unix-file-permissions.html

Tagged , | Leave a comment

Remove Carriage Returns From Text Files Edited on Windows

Sometimes people change text files – that are supposed to run or get processed on a Unix/Linux system – on Windows text editors such as notepad, this messes up the file as Windows puts a carriage return (read as ^M from within vi) at the end of each line and then you won’t be able to execute or process the file correctly, here is the Linux command you can use to remove such invalid characters:

tr -d ‘\r’ “”httpd_clean.conf (remove the double quotations)

where:

tr -> is the command
-d -> to delete a certain character or pattern of characters
‘\r’ -> denotes the carriage return (elly heyya el Enter)
httpd.conf is the input file, it has to be preceded by a ‘httpd_clean.conf -> httpd_clean.conf is the output file, it has to be preceded by a ‘>’

Tagged , , | Leave a comment

Use Your Bluetooth Phone To Access The Internet

This is really cool! I could finally access the internet over a bluetooth personal area network (PAN) on my Ubuntu Hardy, here are the steps:

  1. Install the following packages: bluez-utils, bluetooth, bluez-gnome, bluez-hcidump
  2. you will need to enable the BlueTooth applet in GNOME. Do this by going to “System->Preferences->BlueTooth Preferences”. Set the mode of operation on the “Devices” tab to “Other devices can connect”. On the “General” tab, set the program to always show the BlueTooth systray applet (personal preference).
  3. Pair your phone and computer
  4. Open a terminal. On the command line, enter the following commands and taking note of the information where asked to.
    Code:
    sudo bash

    hcitool scan #(Make a note of the hardware address of your phone as listed).
    gedit /etc/default/bluetooth #You can use any other text editor of course

    Find the line which has something like:

    Code:
    PAND_ENABLED=0

    and change it to:

    Code:
    PAND_ENABLED=1

    Next, find the line which looks like:

    Code:
    PAND_OPTIONS=""

    and change that to:

    Code:
    PAND_OPTIONS="--listen --role=PANU --devup /etc/bluetooth/pan/dev-up --devdown /etc/bluetooth/pan/dev-down"

    Save the file.

  5. Now, create a directory called “/etc/bluetooth/pan”. Use an editor to create a file called “/etc/bluetooth/pan/dev-up” and put the following lines into that file:
    Code:
    #!/bin/bash
    ifup bnep0

    Save that file.

  6. Now, use a text editor to create another file called “/etc/bluetooth/pan/dev-down” and put the following lines into it:
    Code:
    #!/bin/bash
    ifdown bnep0

    Save that file as well.

  7. Add a line to /etc/network/interfaces. Open that file with a text editor (as root) and add the following line to it near the end:
    Code:
    iface bnep0 inet dhcp

  8. Start up the Internet Sharing on your phone and connect from your PC. The Internet Sharing on your phone is going to be different depending on the phone, but on the Linux client, use the following command:
    Code:
    pand --connect  #The address you have got in the "hcitool scan" command
    ifup bnep0

  9. That’s it. You should see the bnep0 interface come up and get a DHCP address from your phone. After you have the address, you can freely browse the Internet.

    To disconnect, simply run:

    Code:
    pand -K

    Remember, any time you want to connect or disconnect, you must run the “pand” commands as root. BTW, I’m now using my new HTC Touch 3G to post this :)))). Article Source (with some changes): http://ubuntuforums.org/showthread.php?t=598890

Tagged , , | Leave a comment

Create Keyboard Shortcut to Kill/Open avant-window-navigator when playing games

I really like compiz and awn (avant window navigator), but awn causes me a problem when playing games; they just keep flickering till I get mad, so everytime I start a game I have to manually close awn and after finishing playing I have to open it again, so I created the following bash script and assigned it to a keyboard shortcut (using Ubuntu Tweak software):

ps -ef | egrep “avant|awn” | awk ‘{print $2}’ | xargs kill -9

You can use the “man command_name” to get the description of each of the above commands. I then assigned another key to open “avant-window-navigator”.

This way even if I forget to close it manually, I can just press the keyboard shortcut and it works like a charm!

Tagged , | Leave a comment

How to Switch Page Direction in Firefox 3

In Ubuntu 8.10 after installing Firefox 3, I received an e-mail that contained a mix of Arabic and English words and since the default text direction is left-to-right, it was very difficult to read and I couldn’t find the context menu option “Switch Page Direction”! I then did some googling and I found out how:

1) in the URL, type “about:config”
2) In the “Filter:” text box, type “bidi.browser.ui”
3) The “bidi.browser.ui” entry was set to “false” in the “value” column. Change it to “True”
4) Restart Firefox
5) Right-click and you’ll find it there 🙂
6) Enjoy!

Tagged , , | Leave a comment