All what happened just for opening nautilus as root

sábado, 20 de noviembre de 2010

Hi there! I want to tell my experience about something I always wanted to do : )

First of all, I must tell you that this post was totally modified based on the comments of the people made to me

My situation is this: I don't like to use the terminal to do things like copying, creating or deleting files, when nautilus can do that xD, but Linux does not let yo to do that, you can only modify files inside the user folder. In other words, you cannot modify nothing that is not "yours", not with nautilus (and it has a good reason, opening graphical programs may be dangerous)

But I thought I could give to nautilus superuser permissions executing nautilus as root, so I tried that in Fedora 14 Laughlin :
su -c nautilus
But it didn't work xD, I got this error
(nautilus:14179): EggSMClient-WARNING **: Failed to connect to the session manager: None of the authentication protocols specified are supported

**
GLib-GIO:ERROR:gdbusconnection.c:2270:initable_init: assertion failed: (connection->initialization_error == NULL)
The only solution I could find at that moment was to use SUDO

For those who don't know what's sudo, this is a program which gives to a normal user superuser permissions, but it has to be configured first, we have to add our user to the sudoers list.

I first tried this command
$su -c visudo

Visudo is a tool to modify the sudoers list, but I don't know why it didn't work on me ¬¬ so I decided to do with a "nasty" way xD
$su -c nano /etc/sudoers
With any of those tools we can edit the sudoers list. I added a line here:
.
.
.
## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere
root    ALL=(ALL)     ALL
hakS    ALL=(ALL)    ALL
  <---- THIS LINE xD

## Allows members of the 'sys' group to run networking, software,
## service management apps and more.
# %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS
.
.
.
I saved the file and quit. This will add the user to the sudoers list. It was so cool xD I don't like to enter as root all the time and now I don't need to do it . For example, we can do this:
$sudo yum install <whatever>
Sudo will ask for the user password (not the root password, but your password), it will run as if you were a superuser

Using sudo, I could access to nautilus using sudo
$sudo nautilus
And voila! nautilus start to run as a superuser! I can now create, copy, modify and delete files outside the user folder.


But just some minutes after I finished this post, someone (http://adamwill.livejournal.com/) told me the only thing I needed to access to any graphical program is to run thos applications puting a "-" after that command, for example:
su -c nautilus -
su -c gedit -
It was so annoying.. ¬¬ but I learned how to do it : ) so thank you  http://adamwill.livejournal.com/

But after all this, I still have some questions and comments
1- Why is not secure to edit the sudoers file with nano?
2- Maybe running gconf-editor as root is not the best practice xD I just did it for experiments xD

So the things I could learn doing all this is:

1- How to edit the sudoers list
$su -c visudo$su -c nano /etc/sudoers
2- How to open a graphical app just using su
$su -c nautilus -
$sudo nautilus
Thanks for the comments : ) I hope this post can be usefull to begginers like me :P

How to change the login screen wallpaper on Fedora 14 Laighlin?

domingo, 14 de noviembre de 2010

Honestly, I don't like the Fedora Laughlin wallpaper, but I  just could settle for change the desktop wallpaper, but the login screen is always the same.
But  I found a way to solve that, apparently, the dialog used to change the theme, the background and that stuff can be used to change the login screen, just that we have to make a few settings for it in the terminal
The first thing you have to do is to copy our wallpaper to the /usr/share/backgrounds
 #cp <directorio de la imagen> /usr/share/backgrounds
For example:
#cp /home/HakS/wallpaper.png /usr/share/backgrounds
After doing that, run this command
#cp /usr/share/applications/gnome-appearance-properties.desktop /usr/share/gdm/autostart/LoginWindow
This command copies a configuration file that represents the dialog used to change wallpapers and themes which can only be executed when the session started. When we copied it to that directory, the same dialog will appear every time we log in, thus allowing us to change the login screen wallpaper as if it was the desktop wallpaper.

In order to prove this, logout. As you can see, the dialog shows up, as same as if we would like to change the desktop wallpaper.

Use the dialog to choose a wallpaper, and that's all, the wallpaper will change. After doing that, just close that dialog and log in.

But  remember that when we copied the file, I tsaid the dialog will be displayed whenever you start session ... That sounds rather uncomfortable right?
We can take the dialog just deleting the file we copied by running the command
rm
#rm /usr/share/gdm/autostart/LoginWindow/gnome-appearance-properties.desktop
And that's all folks! xD we have oue beautiful wallpaper : )