Kirjoittaja Aihe: Oman skriptin ajo ennen verkkoyhteyksien käynnistämistä  (Luettu 1825 kertaa)

juneli

  • Käyttäjä
  • Viestejä: 10
    • Profiili
Heps!

Olen saanut wlanin pelittämään läppärissäni ja nyt olisi tarvetta saada se automaattiseksi eli seuraava skripti pitäisi saada ajettua ennen kuin verkkoyhteydet käynnistetään:

#! /bin/sh
sudo modprobe acer_acpi
sudo chmod 666 /proc/acpi/acer/*
echo "enabled: 1" > /proc/acpi/acer/wireless

Eli minne pitäisi laittaa kutsu yllä olevaan skriptiin, että se tulisi ajetuksi oikeaan aikaan?

Kuuluisikohan tuo "modprobe acer_acpi" kutsu /etc/modules -tiedostoon?

janne

  • Käyttäjä
  • Viestejä: 5150
    • Profiili
Re: Oman skriptin ajo ennen verkkoyhteyksien käynnistämistä
« Vastaus #1 : 25.10.06 - klo:20.50 »
Olen saanut wlanin pelittämään läppärissäni ja nyt olisi tarvetta saada se automaattiseksi eli seuraava skripti pitäisi saada ajettua ennen kuin verkkoyhteydet käynnistetään:

hmm... lähdetäänpä purkamaan tätä, vaikka en henkilökohtaisesti ole ko. modulin kanssa tekemisissäkään

#! /bin/sh
sudo modprobe acer_acpi

käynnistyksen yhtedessä suoritettavissa scripteissä sudo on aivan turha jos sillä yritetään saada pääkäyttäjän oikeuksia. käynnistyscriptejä suorittava prosessi pyörii jo oletuksena pääkäyttäjän oikeuksin ja siten kaikki mitä scriptissä tehdään, suoritetaan automaattisesti pääkäyttäjän oikeuksin.

ja kuten jo itsekin arvelit, modulien lataaminen hoidetaan lisäämällä modulin nimi (siis pelkkä nimi, ei mitään modprobeja) tiedostoon /etc/modules, omalle rivilleen.

sudo chmod 666 /proc/acpi/acer/*

miksi kaikilla pitäisi olla luku ja kirjoitusoikeudet ko. hakemiston "tiedostoihin"?
sudo turha kuten edellä.

echo "enabled: 1" > /proc/acpi/acer/wireless

onko tuo oikeasti pakko tehdä käsin? eikö modulille voi antaa jotain optioita joilla se enabloisi halutut ominaisuudet oletuksena modulin latauksen yhteydessä?

Eli minne pitäisi laittaa kutsu yllä olevaan skriptiin, että se tulisi ajetuksi oikeaan aikaan?

verkkoyhteydet käynnistetään sen verran aikaisessa vaiheessa koneen käynnistystä, että en ehkä itse menisi sinne väliin mitään tunkemaan, vaan yrittäisin hoitaa homman paikassa jossa se on omille scripteille 'oikein'. dapperissa ja edgyssä tämä olisi varmaankin /etc/rc.local.

tuossa vaiheessa verkko on kyllä jo varmasti käynnissä, joten jos arvelemani modulin parametrivaihtoehto ei ole mahdollinen, homman voisi mahdollisesti hoitaan siten, että ei käynnistäisi oletuksena mitään verkkointerfacea ja tuolla omassa scriptissä ajaisi sitten halutun interfacen ylös suoritettuaan ensin halutut toimenpiteet.

tuohon voi olla parempikin ratkaisu, mutta tuo nyt sattui ensimmäisenä mieleen.

komentojen suorittamisesta käynnistyksen yhtedessä on foorumin uumenissa olemassa myös pieni howto.
Janne

juneli

  • Käyttäjä
  • Viestejä: 10
    • Profiili
Re: Oman skriptin ajo ennen verkkoyhteyksien käynnistämistä
« Vastaus #2 : 25.10.06 - klo:21.33 »
Heh, tämähän olikin helppo homma - myös aloittelijalle.

Tiedosto /etc/network/interfaces on itse asiassa täynnä komentoja. Siispä laitoin "echo enabled: 1" > /proc/acpi/acer/wireless rivin ennen wlan-yhteyden konffaamista eli:

auto lo
iface lo inet loopback

iface eth0 inet dhcp

"echo enabled: 1" > /proc/acpi/acer/wireless

auto eth1
iface eth1 inet dhcp
pre-up /sbin/wpa_supplicant -Bw -Dndiswrapper -ieth1 -c/etc/wpa_supplicant.conf
post-down killall -q wpa_supplicant

Oikeuksien asettamistakaan ei tarvita, koska tuossa vaiheessa ajetaan komentoja isommilla oikeuksilla.

En tiedä, että onko tuo yllä oleva oikea, mutta ainakin tuntuu toimivan. Täytyy vielä yrittää selvittää, että josko tuolle acer_acpi modulille voisi tosiaan antaa tuo jotenkin parametrina. Lueskelin kyllä sen dokkarin, mutta siinä ei mielestäni puhuttu mitään optioista.

Kiitos avusta ja laittamastasi linkistä noihin skriptien suorittamiseen käynnistyksen aikana.