Sada je: 04 pro 2020, 21:31.
Razmjena savjeta i trikova o podešavanju sustava i programa.

Moderator/ica: Moderatori/ce

Da, ali od samog čekanja neće biti koristi. Bilo bi dobro napraviti temu nešto kao "Driveri u linux sustavima" u "Linux i hardver" podforumu. I tu bi ljudi mogli dodavati svoja saznanja, iskustva i ispravke o tome kako u stvari funkcionira sustav linux drivera. U sticky bi se mogao onda staviti pročišćeni sažetak modela koji bi se ažurirao i nadopunjavao. Onda bi takav sažetak možda mogao jednom i na LZS stranicu u obliku članka.
Avatar
Postovi: 1909
Postovi: 1909
Pridružen/a: 16 tra 2011, 08:34
Lokacija: i grupa Film
Podijelio/la zahvalu: 45 puta
Primio/la zahvalu: 342 puta
Spol: M
OS: Mint 10 LXDE itd...
jurastublic je napisao/la:Da, ali od samog čekanja neće biti koristi. Bilo bi dobro napraviti temu nešto kao "Driveri u linux sustavima" u "Linux i hardver" podforumu. I tu bi ljudi mogli dodavati svoja saznanja, iskustva i ispravke o tome kako u stvari funkcionira sustav linux drivera. U sticky bi se mogao onda staviti pročišćeni sažetak modela koji bi se ažurirao i nadopunjavao. Onda bi takav sažetak možda mogao jednom i na LZS stranicu u obliku članka.


Slažem se: O itekako se slažem. Prema tvojim sugestijama da se isčitati da se na tom području znatno bolje snalaziš. I sa forumom, i sa driverima. ::bravo .Mogao bi ti preusmjeriti stvar u tom pravcu. U konačnici čemo ipak svi biti zadovoljni, kada na kraju dobijemo ( u obliku članka ), kvalitetan, punokrvni tutorijal. Što neznaći da i ja neću ( saznam li nešto korisno ) dati neku sugestiju.
Neslažem se:Netko je spomenuo zasluge. Nema zasluga. Pretpostavljam da nitko ovdje na forumu nije zbog samopromocije :hmm , nego zato da bude oslonac putnicima namjernicima u nastojanju da si uljepšaju život, u Linux okruženju, se razme.
Postovi: 252
Postovi: 252
Pridružen/a: 09 pro 2013, 17:28
Podijelio/la zahvalu: 12 puta
Primio/la zahvalu: 24 puta
Spol: M
OS: ubuntu mate/linux mint
Vidim, pokušavaš se sad izvući al to ne bu išlo. :whip
A zasluga i te kako ima jer su ih u obliku poštovanja, barem s moje strane, zaradili oni koji daju svoj doprinos na LZS-u. U tom smislu nekako i najmanje putnici namjernici na proputovanju.
Avatar
Postovi: 1909
Postovi: 1909
Pridružen/a: 16 tra 2011, 08:34
Lokacija: i grupa Film
Podijelio/la zahvalu: 45 puta
Primio/la zahvalu: 342 puta
Spol: M
OS: Mint 10 LXDE itd...
jurastublic je napisao/la:Vidim, pokušavaš se sad izvući al to ne bu išlo. :whip
A zasluga i te kako ima jer su ih u obliku poštovanja, barem s moje strane, zaradili oni koji daju svoj doprinos na LZS-u. U tom smislu nekako i najmanje putnici namjernici na proputovanju.




"Kako osposobiti novi uređaj/hardver na Linuxu"



Kao što je sigurno to da su Linux distribucije brojne, isto tako je sigurno da gotovo i nema osobe koja nije nikada, ali baš nikada bila suočena sa situacijom da joj ne zatreba pomoč u rješavanju određenog problema. Osobno tako i funkcioniram, trošeći sate i dane obilazeći razno razne forume i blogove, tražeći neku korisnu informaciju koja bi mogla riješiti nastalu situaciju.
Dakle da krenemo.
Imate hipotetsku situaciju: sakupili ste nešto crkavice, otišli u trgovinu i odlučili sebi uljepšati dan novim komadičem hardvera. Što ja znam, recimo, usb adapter, tv kartica, itd, itd....Došli ste kući, raspakirali uređaj, spojili ga na svoje računalo, kad gle čuda, iako na ambalaži jasno piše da uređaj radi na linux OS, vama ne radi.
Prva Božja zapovijed ( neka mi oproste čitatelji vjernici)
----------------------------------------------------------
Da bi nešto radilo, potrebno je naravno, to nešto + driver + firmware za to nešto
----------------------------------------------------------------------------------
U ovom tekstu ću slijediti misao da na računalu več imamo gore navedeno ( jer ako i nemamo, potražit čemo na internetu, pa čemo u konačnici imati sve što nam je potrebno )
Postoje razne metode kako upogoniti određeni uređaj. Neke su manje jednostavne, neke više. Kao što je i ljepota smještena u oku promatrača, tako je i sa jednostavnošču. Ono što je meni naizgled jednostavno, nekomu drugome nemora biti, naravno i obratno.
Iz tog razloga, biti će ih nekoliko, pa tko voli nek izvoli. Bitno je da su na jednom mjestu i da su razumljive, kako naprednim korisnicima, tako i onim koji su tek zakoračili u linux svijet.


Bash Shell naredbe koje su nam potrebne:

sudo.................admin ovlasti za detalje sudo -h
lsusb................poruka sistema o priključenim uređajima za detalje lsusb-h
chmod..........promjena ovlasti za detalje chmod -h
echo..........upis, ispis za detalje echo -h
modprobe........učitavanje modula za detalje modprobe -h
dmesg.......poruke sistema za detalje dmesg -h

METODA 1
-------------------------------------
S obzirom na to da prilikom podizanja sistema driver može a i nemora biti učitan, najprije čemo ustanoviti zatečeno stanje:

korak 1
Kod: Označi sve
lsmod


provjerimo dali je naš driver na popisu. Ako nije, to možemo riješiti na slijedeći način:
korak 2
Kod: Označi sve
modprobe VAŠ MODUL/DRIVER
.......jednokratno

korak 2
Kod: Označi sve
sudo vaš editor /etc/initramfs-tools/modules
.....trajno

otvoriti će se datoteka u koju ćete na kraj dodati naziv vašeg modula/drivera, i spremite promjenu. ( unesite ime drivera bez ekstenzije )

korak 3
Kod: Označi sve
sudo update-initramfs -u


restartajte računalo, vaš driver će biti učitan, i ukoliko imate u /lib/firmware, firmware za vaš uređaj, stvar će proraditi. Ako ne, tada u vašem driveru nije upisan takozvani VID i PID (vendor id, product id). to možete jednostavno riješiti.
VID i PID vašeg uređaja možete pogledati u terminalu ( NAPRIMJER 09a5:123d)

korak 4
Kod: Označi sve
lsusb


pregledamo terminalski ispis i pronađemo gore navedeni VID i PID

korak 5
Kod: Označi sve
sudo echo "VID PID" > /sys/bus/usb/drivers/VAŠ DRIVER/new_id


(ako izbaci grešku, promijenite ovlasti ovome iza >, ponovite)
u tom trenutku uređaj bi trebao proraditi.
( napomena: uređaj će proraditi, ali bi se moglo desiti da nakon restarta ponovno neradi, ako se pojavi ta situacija, napravite i korak 6 )

korak 6

redak koda iz koraka 5 stavite u datoteku /etc/rc.local (predzadnji red, prije exit, bez sudo). Restart i stvar bi trebala raditi.

metoda je provjerena više puta i nebi trebalo biti poteškoća
------------------------------------------------------------

metoda 2..........

korak 1

Napraviti neku datoteku u /etc/modprobe.d/, nazvati je kako vam paše i staviti nastavak .conf, naprimjer /etc/modprobe.d/mojuređaj.conf .
U datoteku upisati samo: alias *ovdje ide modalias* driver

korak2

Kako pronaći modalias oznaku:

Pokrenite naredbu
Kod: Označi sve
dmesg
.
Dmesg kaže npr.:
usb 1-6: new high speed USB device using ehci_hcd and address 3

Otvorite u /sys/bus/usb/devices folder sa usb 1-6, npr. 1-6:1.0 i tamo ima datoteka modalias iz koje prekopirate oznaku u mojuređaj.conf datoteku.
Izvadite uređaj i ponovo ga uštekate da modprobe uzme u obzir novu konfiguraciju i gotovo, stvar radi.

metoda 3

ukoliko ste voljni možete koristiti i jednu stariju foru, i poigrati se programčićem......ghex (pronaći ga u repozitoriju vaše distribucije), uz napomenu da čete tada nakon svake nadogradnje kernela, morati ponoviti postupak unošenja specifičnog VID i PID vašeg uređaja.
Naravno pretpostavljamo da ste prošli početne korake i da je vaš driver učitan prilikom podizanja sistema i posjedujete odgovarajući firmware

Kod: Označi sve
sudo ghex /cijela putanja do vašeg drivera


otvorit će se program u kojem če u lijevom prozoru biti nečitljiv driver, a u desnom čitljiv. Opcijom find, u čitljivom dijelu potražite uzorak za ALIASES, i tu ćete vidjeti puno VID-ova, i PID-ova, pa prema vlastitom nahođenju zamijenite jednu kombinaciju svojom. i zatvorite. Restartajte računalo. Ako bude potrebno ponovite korak 3 iz prve metode.

( napomena: prilikom korištenja ove metode, moguće je da vam sistem onemogući izmjenu drivera. Ovisi o distribuciji, kao i o samom driveru )

To bi bilo to. Ugodnu zabavu, i prije svega brdo love, kako biste uopće imali što pogoniti. Pozdrav od kolega s foruma koji su sugestijama pomogli nastanak ovog malog tutorijala.
..................................................................................................................................................................................................................................

Evo ja sam svoje ispunio. Bolje neznam. Lektorirajte, recenzirajte, selite i stavite gdje želite. Ako uopće želite. Od mene toliko. Pozdrav svima. Idem ja sad malo i živjeti. :thmb-up
p.s.Ako netko ima još što za dodati, a vi slobodno u suradnji sa site adminom to i učinite.
Zadnja izmjena: teorijavelikogpraska; 01 svi 2014, 06:00; ukupno mijenjano 1 put/a.
Postovi: 252
Postovi: 252
Pridružen/a: 09 pro 2013, 17:28
Podijelio/la zahvalu: 12 puta
Primio/la zahvalu: 24 puta
Spol: M
OS: ubuntu mate/linux mint
Par ispravaka.
- Metoda 1, korak 2, jednokratno: Umjesto insmod bolje modprobe (automatski rješava ovisnosti drivera ako ih ima, u stvari obavezno u slučaju ako sam ne znaš sve ovisnosti)

- Metoda 1, korak 2, trajno te korak 3: Ovo ne radi. Driveri u initramfs-u nemaju veze s driverima u normalnom sustavu. Initramfs se koristi samo pri podizanju sustava i kad se osposobi normalni filesystem, initramfs i njegovi driveri se brišu, tako da su izgubljeni za normalni sustav. Bit će da se driver učitao na neki drugi način (udev) pa te prevarilo.
Avatar
Postovi: 1909
Postovi: 1909
Pridružen/a: 16 tra 2011, 08:34
Lokacija: i grupa Film
Podijelio/la zahvalu: 45 puta
Primio/la zahvalu: 342 puta
Spol: M
OS: Mint 10 LXDE itd...
jurastublic je napisao/la:Par ispravaka.
- Metoda 1, korak 2, jednokratno: Umjesto insmod bolje modprobe (automatski rješava ovisnosti drivera ako ih ima, u stvari obavezno u slučaju ako sam ne znaš sve ovisnosti)

- Metoda 1, korak 2, trajno te korak 3: Ovo ne radi. Driveri u initramfs-u nemaju veze s driverima u normalnom sustavu. Initramfs se koristi samo pri podizanju sustava i kad se osposobi normalni filesystem, initramfs i njegovi driveri se brišu, tako da su izgubljeni za normalni sustav. Bit će da se driver učitao na neki drugi način (udev) pa te prevarilo.


Prvu sugestiju uvažavam. Ispravio sam, jer je stvarno u praksi bolje koristiti modprobe nego insmod.

Druga sugestija, ma ok, sve pet,ali ja nebih ispravljao taj dio: najmanje desetak puta provjerio, i modul se nakon tog koraka 3 uvijek učita. neznam, možda zato jer ta naredba pokreće generiranje /boot/initrd.img-naziv kernela. Čak i nakon nadogradnje kernela, nodul se i dalje učitava.
razlog zašto nebih to mjenjao ( prvo zato što radi, a drugo malo opširnije )
u tutorijalu sam kao prvi potez naveo naredbu lsmod. provjera dali je modul učitan. Jednokratno i trajno je po meni smisleni nastavak da bi korisniku dalo do znanja, da mora napraviti i drugi korak želi li da mu se modul učitava svaki put prilikom podizanja sistema. Nisam se upuštao u ovom kratkom tutorijalu ( prije svega jer ne posjedujem dovoljno znanje), u to što i kako radi, koje puteve korist. Mislim da češ se složiti samnom da jednom početniku, a ovo je više za početnike, niti nije potrebno to znati. Takav jedan detaljan tutorijal, pa ja mislim da bi imao stotine redova. Mislim čak da bi onaj tko bi ga pokušao čitati, jako brzo odustao iz strahopoštovanja. Mislim da bih se i ja pogubio u namjeri da pohvatam sve konce gdje, kada i kako. Ovo je pisano sa namjerom da se ljudi navedu da probaju, ovo radi. Zašto? za to treba imati zavidnu dozu predznanja.
Što mnogi nemaju. Uključujući meme.
Znam da se nakon što je uređaj prepoznat generira rules, u folderu /etc/udev/rules.d/datoteka, "datoteka" jer se ona na različitim sistemima različito
zove. Postoji čak i ad hoc rješenje da sami unesete pravilo, i dinamički proslijedite pomoću echo " VID PID" > /sys/bus/usb/drivers/naš driver/new_id. Ljudi na stranim forumima tvrde da i to radi. Nisam to niti spominjao. Sam si naveo da je to prilično složena tema, ta pravila. Da to bi stvarno mogla biti jedna posebna tema. Sorry na dugom pojašnjenju, ali morao sam pod svaku cijenu izbjeći u tutorijalu sve ono što bi moglo početnika odvratiti, ne samo od tutorijala, nego i od linuxa. ::bravo Klanjam se gosp.Stubliću, stvarno ste od velike pomoći. Hvala još jednom na sugestijama.
p.s. ... ja sebe smatram početnikom, pa branim stavove početnika. Ali kao što sam u nekom od prethodnih tekstova naveo, ja nemam ništa protiv ukoliko netko želi ugraditi i proširiti ovaj tutorijal. svatko ga može iskopirati, napraviti smislene izmjene i u dogovoru sa sajt adminima možda objaviti. iako i dalje smatram da je ovome mjesto u savjetima i trikovima, a ne na naslovnici. Imate svi moje zeleno svjetlo, za sve opcije, se razme.
Postovi: 252
Postovi: 252
Pridružen/a: 09 pro 2013, 17:28
Podijelio/la zahvalu: 12 puta
Primio/la zahvalu: 24 puta
Spol: M
OS: ubuntu mate/linux mint
Ono sa initramfs ne radi. Probaj i sam testirati tako da složiš initramfs da učita pri bootanju bilo koji driver iz /lib/modules kojeg lsmod ne izlista i onda probaj lsmod nakon reboota. Drivera opet neće biti, jer je izbrisan pri brisanju initramfs-a.

Ne kažem da ti nije učitalo driver ili da ti driver nije proradio kad si ga testirao, nego da si pogrešno protumačio mehanizam kako je do toga došlo.
Kažeš da ti je prepravljeni driver radio i nakon updatea kernela. To jednostavno nije moguće.
Svaki kernel dolazi za svojim setom drivera kompiliranih na tom kernelu i ne dopušta učitavanje drivera rađenih za drugu verziju kernela. Ali je moguće da si s novim kernelom, uz update i drugih dijelova sustava, dobio i novi driver koji normalno radi i koji se normalno učitava pa si pomislio da je to rezultat initramfs naredbi.

Za informaciju, udev rules datoteke se ne generiraju automatski već ih naprave ljudi koji rade distribuciju.
Pogledaj si u /lib/udev/rules.d/ folder. Tamo ima hrpa pravila koji ipak nažalost ne mogu pokriti sve slučajeve, te zato postoji folder /etc/udev/rules.d gdje korisnik (admin) može staviti svoja custom pravila.
Avatar
Postovi: 1909
Postovi: 1909
Pridružen/a: 16 tra 2011, 08:34
Lokacija: i grupa Film
Podijelio/la zahvalu: 45 puta
Primio/la zahvalu: 342 puta
Spol: M
OS: Mint 10 LXDE itd...
jurastublic je napisao/la:Za informaciju, udev rules datoteke se ne generiraju automatski već ih naprave ljudi koji rade distribuciju.
Pogledaj si u /lib/udev/rules.d/ folder. Tamo ima hrpa pravila koji ipak nažalost ne mogu pokriti sve slučajeve, te zato postoji folder /etc/udev/rules.d gdje korisnik (admin) može staviti svoja custom pravila.


Nisam niti napisao da se te sve datoteke same generiraju. Napisao sam da se nakon što je uređaj prepoznat, vjerojatno i proradi, neznam točno u kom trenutku, novo pravilo ( ne datoteka ),samo generira u datoteci /etc/.udev/rules.d/imedatoteke, i u kojoj admin može postaviti svoje pravilo, i može promijeniti postojeće. I to je sigurno tako. isprobano u ovih nekoliko dana više puta, sa uređajima koje nisam koristio, i novim koleginim uređajem. Dakle to je tako.

Ono sa nadograđenim kernelom je stvarno moj grijeh, i povlačim to, neznam odakle mi ta ideja. Vjerojatno zbog činjenice da mi se jučer nadograđivao debian. radio sam paralelno još nešto pa nisam obratio dovoljno pažnje. Valjda sam povezao to da ide debian 7.5, ali se ustvari nadogradio 7.4. Sad sam na tvoju intervenciju provjerio i stvarno je stari kernel. :nee Hvala na upozorenju...pozdrav

p.s. Evo još jednog dokaza da takvi tekstovi nisu za naslovnice. Čim ima toliko polemike, onda je tome mjestu na forumu. Inače koristeći bilo što iz teksta, bilo koju metodu, sasvim sigurno, veliku večinu uređaja bi se pokrenulo. Ako sam ja tri uređaja pokrenuo, koristeći prvu metodu, onda valjda radi. Naravno da nemogu tvrditi da radi sve na svakoj distri ili sa svakim driverom. Siguran sam da i metoda dva koju si ti predložio radi, a treća isto radi, ukoliko se kao što si napisao sistem slaže sa prčkanjem po određenom driveru. :thmb-up
Postovi: 252
Postovi: 252
Pridružen/a: 09 pro 2013, 17:28
Podijelio/la zahvalu: 12 puta
Primio/la zahvalu: 24 puta
Spol: M
OS: ubuntu mate/linux mint
Ako smije primijetiti, bilo bi praktičnije umjesto da se piše vaš_drajver objasniti na stvarnom primjeru, ili barem zamijeniti vaš_drajver s konkretnim imenom jer ovako onaj tko čita ne može biti siguran koje dijelove mora mijenjati s obzirom na hardver koji ima, a koje treba prepisati.

Zašto to govorim, iako sam se za VID-om i PID-om već igrao (mobilni internet), nisam sugiran na što se misli u petom koraku:

Kod: Označi sve
sudo echo "VID PID" > /sys/bus/usb/drivers/VAŠ DRIVER/new_id


Trebam li pisati

Kod: Označi sve
sudo echo "09a5:123d" > /sys/bus/usb/drivers/VAŠ DRIVER/new_id


ili

Kod: Označi sve
sudo echo 09a5:123d > /sys/bus/usb/drivers/VAŠ DRIVER/new_id


možda još kako drugačije?

Isto, moram li, ako mijenjam vaš driver s onim koji želim postaviti, mijenjati i new_id u nešto što odgovara mojoj konfiguraciji ili prepisujem?
Avatar
Postovi: 57
Postovi: 57
Pridružen/a: 16 srp 2013, 13:03
Podijelio/la zahvalu: 1 puta
Primio/la zahvalu: 7 puta
Spol: M
Prvo hvala što si se uopće uključio.

sudo echo "Tvoj VID Tvoj PID" > iz razloga što se radi o stringu ( valjda ). uvijek se proslijeđuje ono između navodnika.

Nekako je uvriježeno pravilo da, s obzirom nato da postoje stotine različitih imena datoteka, i drugih stvari, da se napiše vaš , tvoj, ili nekako drugačije, i onda se podrazumijeva da svaki korisnik na to mjesto ubaci svoje nazive. Zavisi o tome što radi......nažalost neznam bolje pojasniti. možda če netko drugi..
ovo 09a5:123d je samo ogledni primjerak, možda si u pravu da bi jasnije bilo Vaš VID PID. Svaki novi uređaj ima drugačiji VID i PID stoga uvijek se proslijeđuje novi u datoteku /sys/bus/usb/drivers/VAŠ DRIVER/new_id. Moram ti isto tako napomenuti, da češ tu datoteku za svoj uređaj, svoj driver imati samo ukoliko ti je modul uredno učitan i uređaj prepoznat. provjeri sa lsusb. uštekanim i neuštekanim uređajem. Ona razlika u izlistanim uređajima je tvoj. pa tamo odmah imaš i VID i PID. Ako tvog uređaja nema na popisu, tada ti modul/driver nije učitan prilikom podizanja sistema

nadam se da sam ti pomogao. ( i još nešto neidu dvotočke između VIDA i PIDA )
Postovi: 252
Postovi: 252
Pridružen/a: 09 pro 2013, 17:28
Podijelio/la zahvalu: 12 puta
Primio/la zahvalu: 24 puta
Spol: M
OS: ubuntu mate/linux mint

Na mreži
Trenutno korisnika/ca: / i 1 gost.