openSUSEa suomeksi
openSUSE => Palvelinohjelmat ja ohjelmointi => Aiheen aloitti: guest1093 - 06.03.2013 - klo:21:54
-
Käytän läppäriä sekä työpaikalla että kotona. Työpaikalla pitää olla proxy asetettuna enkä yleensä muista poistaa sitä käytöstä kun lähden kotiin.
Näinollen joudun kotona ensin käymään YaSTissa poistamassa proxy asetuksen ja sitten kirjautumaan uudelleen että asetus tulisi voimaan. Luonnollisesti tämä pätee myös toisinpäin...
Ajan menetys ei ole tietenkään suuri mutta tuntuu tyhmältä jumpata tämän kanssa koko ajan.
Miten voisin jo bootissa testata scriptillä esim. verkon gatewayn ja asettaa (tai jättää asettamatta) proxyn ennenkuin kirjaudun koneelle?
-tjka-
-
En ole perehtynyt asiaan ehkä tuohon löytyy valmiita sovelluksiakin, mutta scriptillä se voisi toimia
proxy asetukset löytyvät alla olevasta tiedostosta
/etc/sysconfig/proxy
voisit luoda tuonne hakemistoon useamman tiedoston eri verkoille
/etc/sysconfig/proxy.koti
/etc/sysconfig/proxy.työ
ja sitten teen NetworkManagerille scriptin joka jollain haluamallasi tavalla tunnistaa sijainnin ja kopio oikean templaten aktiiviseksi. Ja verkon mennessä alas kannattaa se aina poistaa ja ehkä jopa aina verkontullessa ylös poistaa vanha varmuudenvuoksi ennen kuin kopio mitään tilalle.
NetworkManager scripti pitää olla täällä
/etc/NetworkManager/dispatcher.d/
-
Kiitos vinkistä. Googlasin hieman ja kokeilin että esim. allaolevalla scriptillä saan selville onko kone työpaikan verkossa...
#!/bin/sh
WGET="/usr/bin/wget"
$WGET -q --tries=2 --timeout=2 http://palvelin1.company.com -O /tmp/index.html &> /dev/null
if [ ! -s /tmp/index.html ];then
echo "no"
else
echo "yes"
rm /tmp/index.html
fi
Ajetaanko /etc/NetworkManager/dispatcher.d/ kansiossa olevat scriptit aina sen jälkeen kun kone on saanut bootissa ip-osoitteen?
-tjka-
-
Se ajetaan aina kun kun verkon tila muuttuu (up/down)
Voit vakoilla mallia siellä jo olevista scripteistä.
Tämä voisi toimia.
Tee kopio nykyisestä proxy tiedostosta
eval 'cp /etc/sysconfig/proxy '{/etc/sysconfig/proxy.bck,/etc/sysconfig/proxy.work}';'
Muokkaa tuonne /etc/sysconfig/proxy.work tarvittavat proxy tiedot
Tallenna scripti /etc/NetworkManager/dispatcher.d/proxy tiedostoon
anna suoritus oikeudet chmod +x /etc/NetworkManager/dispatcher.d/proxy
#!/bin/bash
#
# $1 = interface
# $2 = up/down
SERVER="palvelin1.company.com"
case "$2" in
up)
#Tarkistetaan vastaako proxy verkon palvelin
/usr/bin/ping -c1 ${SERVER} >/dev/null 2>&1
if [ "$?" = "0" ]; then
#Siirretään proxy.work aktiiviseksi
cp /etc/sysconfig/proxy.work /etc/sysconfig/proxy
else
#kopioidaan alkupeäinen varmuudenvuoksi
cp /etc/sysconfig/proxy.bck /etc/sysconfig/proxy
fi
;;
down)
#Palautetaan alkuperäinen aina kun verkko menee alas
cp /etc/sysconfig/proxy.bck /etc/sysconfig/proxy
exit 0
;;
*)
exit 0 ;;
esac
-
Dänx. Käytännössä tuo tieto /etc/NetworkManager/dispatcher.d/ kansion toiminnasta ratkaisi pulman, eli homma toimi jo tuon edellisen scriptinpätkän avulla kun lisäsin siihen 'cp proxy.home' jne toiminnon. Kysymys oli vähän huono. Anyway, scriptejä löytyy netistä pilvin pimein mutta en ole tiennyt (tai jaksanut ottaa selvää :-[) miten tuon checkin saisi tehtyä bootissa.
Nyt vaan sitten viilaamaan scripti lopulliseen muotoon...
-tjka-