Hi José Queiroz (tocayo ;) Do you think that su $user -c will work instead of sudo?
2011/9/21 José Queiroz <[email protected]>: > Hello Jose Moyano, > > "sudo" only works if run from a valid terminal. This may be the problem with > your script. > > 2011/9/21 José Moyano <[email protected]> >> >> Hi everybody, >> >> I write the following script to make network manager dispatcher to >> change the proxy automagically based on site IP. >> >> #!/bin/sh >> >> IF=$1 >> STATUS=$2 >> >> echo "-----------------------------------------------------------------" >> >> \ >> /var/log/autoproxy.log >> >> date >> /var/log/autoproxy.log >> >> echo "Configuring proxy..." >> /var/log/autoproxy.log >> NETMASK=<somemask> >> >> if [ -n "`/sbin/ip addr show to $NETMASK`" ]; then >> echo "Address with proxy detected..." >> /var/log/autoproxy.log >> >> PROXY_HOST="proxy.something.ar" >> PROXY_PORT="8080" >> >> for user in "jose" >> do >> echo "Setting proxy for user $user" >> /var/log/autoproxy.log >> >> /usr/bin/sudo -u $user /usr/bin/gconftool-2 \ >> --config-source=xml::/home/$user/.gconf --type string \ >> --set /system/http_proxy/host $PROXY_HOST >> \ >> /var/log/autoproxy.log >> >> /usr/bin/sudo -u $user /usr/bin/gconftool-2 \ >> --config-source=xml::/home/$user/.gconf --type int \ >> --set /system/http_proxy/port $PROXY_PORT >> \ >> /var/log/autoproxy.log >> >> /usr/bin/sudo -u $user /usr/bin/gconftool-2 \ >> --config-source=xml::/home/$user/.gconf --type bool \ >> --set /system/http_proxy/use_same_proxy true >> \ >> /var/log/autoproxy.log >> >> /usr/bin/sudo -u $user /usr/bin/gconftool-2 \ >> --config-source=xml::/home/$user/.gconf --type bool \ >> --set /system/http_proxy/use_http_proxy true >> \ >> /var/log/autoproxy.log >> >> /usr/bin/sudo -u $user /usr/bin/gconftool-2 \ >> --config-source=xml::/home/$user/.gconf --type string \ >> --set /system/proxy/mode manual >> /var/log/autoproxy.log >> done >> else >> echo "The address has no proxy known" >> /var/log/autoproxy.log >> >> # Clear proxy configuration for all users >> for user in "jose" >> do >> /usr/bin/sudo -u $user /usr/bin/gconftool-2 \ >> --config-source=xml::/home/$user/.gconf \ >> --unset /system/http_proxy/host >> >> /usr/bin/sudo -u $user /usr/bin/gconftool-2 \ >> --config-source=xml::/home/$user/.gconf \ >> --unset /system/http_proxy/port >> >> /usr/bin/sudo -u $user /usr/bin/gconftool-2 \ >> --config-source=xml::/home/$user/.gconf \ >> --unset /system/http_proxy/use_same_proxy >> >> /usr/bin/sudo -u $user /usr/bin/gconftool-2 \ >> --config-source=xml::/home/$user/.gconf \ >> --unset /system/http_proxy/use_http_proxy >> >> /usr/bin/sudo -u $user /usr/bin/gconftool-2 \ >> --config-source=xml::/home/$user/.gconf \ >> --unset /system/proxy/mode >> done >> fi >> >> echo "Proxy configuration done" >> /var/log/autoproxy.log >> >> Funny thing, the script works if executed manually as root. When the >> script is executed by network manager dispatcher, the calls to >> gconftool-2 do nothing. The script is executed because all the log >> printing can be seen in the /var/log/autoproxy.log file. I tried >> adding other commands to the script, printing whoami (replies "root") >> and everything seems to be fine. However, gconftool-2 has no effect in >> the gnome configuration. >> Does anyone know what can be the problem? >> Thanks in advance! >> >> José. >> _______________________________________________ >> networkmanager-list mailing list >> [email protected] >> http://mail.gnome.org/mailman/listinfo/networkmanager-list > > > _______________________________________________ > networkmanager-list mailing list > [email protected] > http://mail.gnome.org/mailman/listinfo/networkmanager-list > > _______________________________________________ networkmanager-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/networkmanager-list
