Kirjoittaja Aihe: Symbolinen linkki Linux ytimelle  (Luettu 3730 kertaa)

JanneS

  • Käyttäjä
  • Viestejä: 6
    • Profiili
Symbolinen linkki Linux ytimelle
« : 19.09.06 - klo:18.25 »
Moi,

Logitechin webbikameran automaattinen asennusohjelma hakee /usr/src hakemistosta linux ydintä ja opin juuri palstoja selaamalla, että sinne pitää lisätä symbolinen linkki ln komennolla. Jostain minulle vielä tuntemottomassa syystä sitä linkkiä tehdessä tulee virheilmoitus "ln: luodaan symbolinen linkki "linux" kohteeseen "linux-2.6.15-26-386": Lupa evätty"

Mistä moinen voi johtua? Kiitokset valmiiksi!

eliasj

  • Käyttäjä
  • Viestejä: 4075
    • Profiili
alias vililikku

janne

  • Käyttäjä
  • Viestejä: 5150
    • Profiili
Re: Symbolinen linkki Linux ytimelle
« Vastaus #2 : 19.09.06 - klo:20.05 »
Logitechin webbikameran automaattinen asennusohjelma hakee /usr/src hakemistosta linux ydintä

taitaa oikeasti etsiä kernelin  lähdekoodeja (tai pikemminkin headereita).

ja opin juuri palstoja selaamalla, että sinne pitää lisätä symbolinen linkki ln komennolla.

mahdollisesti, ellei kernel-headereiden asennus linkitä sitä automaattisesti.


Jostain minulle vielä tuntemottomassa syystä sitä linkkiä tehdessä tulee virheilmoitus "ln: luodaan symbolinen linkki "linux" kohteeseen "linux-2.6.15-26-386": Lupa evätty"

Mistä moinen voi johtua? Kiitokset valmiiksi!

ja syys on se, että sinulla ei ole oikeuksia kirjoittaa ko. hakemistoon, aivan kuten sinulla ei kuuluisikaan olla. Vililikku tuohon jo tarjosikin vastauksen, mutta kannattaa huolehtia, että linkkaat tosiaan hakemistoon jossa on kernelin headerit tai kaikki lähdekoodit, etkä oikeasti kernel-imageen.
Janne

JanneS

  • Käyttäjä
  • Viestejä: 6
    • Profiili
Re: Symbolinen linkki Linux ytimelle
« Vastaus #3 : 19.09.06 - klo:20.54 »
Sudo tosiaan auttoi ja sinne linkki tuli. Myöskin tuli ymmärrettyä nyt sudon syvin olemus. Kiitos opastuksesta! Vililikun edellinen opastus niiden sun-java5 pakettien kanssakin oli menestyksekäs. Koitin varmaankin turhaan säästää itseäni päätteeltä ja käyttää easyubuntua tms. ei tosimiesten välineitä.

Mutta takaisin tähän aiheeseen. Tiedostonhallintaohjelmalla ko linkin kohdalla näkyy, että 'rikkinäinen linkki' ja tietenkin on selvää, että niitä kameran ajureita en saanut asennettua :(

Ilmeisesti siis ko linkki ei ole kohdistunut sinne oikeaan lähdekoodiin, kuten kaima toteaa?

En tiedä uskaltaisiko tässä pyytää vielä tarkempia rautalankaneuvoja? Harmittaa oma kädettömyys ja se, että mitä todennäköisimmin onnistuu kysymään tasoltaan "paljonko kello on?" luokkaisia kysymyksiä. Se kuitenkin taitaa olla meikäläisen taso nyt. No onneksi vielä ei voi kovin paljoa vaatia, koska monen montaa päivää en ole Linuxia vielä kätellyt...

Toistaiseksi Win98SE:n jälkeen olen tästä Linux maailmasta vain ja ainoastaan positiivisesti mykistynyt! Ja tuskin pienet kitkat ajurin kanssa sitä miksikään muuttaa.


eliasj

  • Käyttäjä
  • Viestejä: 4075
    • Profiili
Re: Symbolinen linkki Linux ytimelle
« Vastaus #4 : 19.09.06 - klo:21.32 »
Asenna paketti build-essential jos auttaisi.
alias vililikku

janne

  • Käyttäjä
  • Viestejä: 5150
    • Profiili
Re: Symbolinen linkki Linux ytimelle
« Vastaus #5 : 19.09.06 - klo:22.05 »
Ilmeisesti siis ko linkki ei ole kohdistunut sinne oikeaan lähdekoodiin, kuten kaima toteaa?

mitä tulostaa:
Koodia: [Valitse]
$ ls -l /usr/src
Janne

JanneS

  • Käyttäjä
  • Viestejä: 6
    • Profiili
Re: Symbolinen linkki Linux ytimelle
« Vastaus #6 : 20.09.06 - klo:21.11 »
Asensin Build-essentials paketin ja vaikuttaisi, että se ei auta itse ajurivaivassa. Asennusohjelma edelleen herjaa, että ei löydä lähdekoodia saati edes headereita.


Ja jannen kysymän rovion tulosteena tulee tällaista:
"
yhteensä 8
drwxr-xr-x 5 root root 4096 2006-09-18 23:11 kernel-headers-2.4.27-2
drwxr-xr-x 4 root root 4096 2006-09-18 23:11 kernel-headers-2.4.27-2-386
lrwxrwxrwx 1 root src    19 2006-09-19 18:56 linux -> linux-2.6.15-26-386
"
Missä Kernel headers tekstit on sinisellä ja alimman rivin linux teksti punaisella. Olettaisin väreistä irtoavan jotain tietoa tietäjille.


Tässä vielä muuten informaatio mitä asennusohjelma herjaa:
"
awk: cannot open /lib/modules/2.6.15-26-386/build/include/linux/version.h (No such file or directory)
/bin/sh: line 0: [: -ge: unary operator expected
/bin/sh: line 0: [: -ge: unary operator expected
Kernel source directory: /lib/modules/2.6.15-26-386/build
[!] Can not find kernel source or even headers.
Make sure that they are installed (install with e.g. rpm or apt-get
if necessary) and ensure that you have read rights to the files.
WARNING: If you press Enter, I'll try to continue anyway,
but this probably will fail. You SHOULD press Ctrl+C now.
Press Ctrl+C to quit, Enter to continue --->
"
En sitten uskaltanut noin kovien ukaasien jälkeen enteriä painaa.

Sinänsä yo virheilmoitus on ymmärrettävä, koska ko hakemistoa ei ole. Sen tarkistin. Build on ensimmäinen hakemisto, mikä jää löytymättä. Asennusohjelman käynnistyksessä voi määrätä, missä Kerneli sijaitsee taikka käyttää oletusta. Tuo yo polku on oletuksen mukainen paikka.

Jotenkin tuntuu, että tämä ei enään paljosta ole kiinni. Hahmottaisi vain tämän kuvion jotenkin...

janne

  • Käyttäjä
  • Viestejä: 5150
    • Profiili
Re: Symbolinen linkki Linux ytimelle
« Vastaus #7 : 20.09.06 - klo:22.19 »
Asensin Build-essentials paketin ja vaikuttaisi, että se ei auta itse ajurivaivassa. Asennusohjelma edelleen herjaa, että ei löydä lähdekoodia saati edes headereita.

jepjep.

Ja jannen kysymän rovion tulosteena tulee tällaista:
"
yhteensä 8
drwxr-xr-x 5 root root 4096 2006-09-18 23:11 kernel-headers-2.4.27-2
drwxr-xr-x 4 root root 4096 2006-09-18 23:11 kernel-headers-2.4.27-2-386
lrwxrwxrwx 1 root src    19 2006-09-19 18:56 linux -> linux-2.6.15-26-386
"
Missä Kernel headers tekstit on sinisellä ja alimman rivin linux teksti punaisella. Olettaisin väreistä irtoavan jotain tietoa tietäjille.

tuosta irtosi sen verran tietoa, että sinulla on siellä kaksi hakemistoa jossa on mitä ilmeisimmin kernelin headereita (mutta miksi ihmeessä siellä on 2.4-sarjan kenelin headereita?) sekä yksi linkki joka osoittaa hakemistoon nimeltä linux-2.6.15-26-386. aivan kuten arvelinkin, kyseistä hakemistoa ei ole olemassa joten linkki ei oikeasti osoita mihinkään ja täsmälleen samasta syystä tuon linkin kautta ei myöskään löydy mitään lähdekoodeja.

miten sitten edetä? ensin varmaankin poistetaan tuo linkki:
Koodia: [Valitse]
$ sudo rm /usr/src/linux
sitten asennetaan tuoreet kernelin lähdekoodit:
Koodia: [Valitse]
$ sudo apt-get install linux-source-2.6.15
siirrytään lähdekoodihakemistoon:
Koodia: [Valitse]
$ cd /usr/src
puretaan kernelin lähdekoodit:
Koodia: [Valitse]
$ sudo tar xvfj linux-source-2.6.15.tar.bz2
luodaan symbolinen linkki:
Koodia: [Valitse]
$ sudo ln -s ln -s linux-source-2.6.15 linux
ja yritetään uudelleen...
Janne

JanneS

  • Käyttäjä
  • Viestejä: 6
    • Profiili
Re: Symbolinen linkki Linux ytimelle
« Vastaus #8 : 22.09.06 - klo:21.32 »
Tämäpäs olikin jo kerrassaan haasteellista! Tein jannen yllä opastamat toimet ja nyt on toimiva linkki linux lähdekoodille. Mutta itse ajurin asennus ei edelleenkään edennyt mihinkään. Tuo asennusohjelma on olevinaan niin automaattinen, mutta silti se ei löydä mitään tarvitsemiaan lähdekoodeja  :(

Nähtävästi version.h ja .config on uupelossa nyt.

Hoksaako joku vielä miten kaltoin kohtelen tuota asennusohjelmaa?

Tässä mitä kommenttia asennusohjelma nyt antoi:

Previous round done. Now checking if you have kernel source installed.
Press Ctrl+C to quit, Enter to continue --->

awk: cannot open /usr/src/linux/include/linux/version.h (No such file or directory)
awk: cannot open /usr/src/linux/include/linux/version.h (No such file or directory)
/bin/sh: line 0: [: -ge: unary operator expected
/bin/sh: line 0: [: -ge: unary operator expected
Kernel source directory: /usr/src/linux
Detected kernel version is 2.6.x.
[!] Kernel configuration file /usr/src/linux/.config not found.
If the headers have been already configured properly, you might
not need it. But it would be better not to trust this, you
really should know where is your configuration file, and
copy it into its place. Often it can be found in /boot/
directory with a name like /boot/config-2.4.26 or something.
WARNING: If you press Enter, I'll try to continue anyway,
but this probably will fail. You SHOULD press Ctrl+C now.
Press Ctrl+C to quit, Enter to continue --->

[!] Can not find version.h in kernel source.
[!] Kernel source is not configured properly.
You have only kernel headers but they are not configured
properly. It's pointless trying to continue, this won't work.
Either install properly configured kernel headers or full
source with kernel configuration file. In the latter case
I can configure the kernel source using the configuration
file automatically.
WARNING: If you press Enter, I'll try to continue anyway,
but this probably will fail. You SHOULD press Ctrl+C now.
Press Ctrl+C to quit, Enter to continue --->

janne

  • Käyttäjä
  • Viestejä: 5150
    • Profiili
Re: Symbolinen linkki Linux ytimelle
« Vastaus #9 : 22.09.06 - klo:23.22 »
Tämäpäs olikin jo kerrassaan haasteellista! Tein jannen yllä opastamat toimet ja nyt on toimiva linkki linux lähdekoodille. Mutta itse ajurin asennus ei edelleenkään edennyt mihinkään. Tuo asennusohjelma on olevinaan niin automaattinen, mutta silti se ei löydä mitään tarvitsemiaan lähdekoodeja  :(


touota kaivattua version.h tiedostoa ei näytä löytyvän tuolta lähdekoodihakemistosta, mutta ainakin minun koneellani se löytyy headereista.

etsi headeripaketteja:
Koodia: [Valitse]
$ apt-cache search linux-headers
asenna niistä nykyistä kerneliäsi eniten vastaava ja linkitä tuo linux osoittamaan siihen.
Janne