Keresés

Részletes keresés

locsemege Creative Commons License 2008.02.12 0 0 38
Áll még a nagylelkű ajánlat? Kíváncsi vagyok egyfelől, másrészt nyakamon egy gép, amit mindenképpen meg kell csinálnom a héten. Nagyon nem aggódom, mert látom, scripttel megoldható a dolog, de izgatja a fantáziámat, mit írtál, s mi az, ami egy esetleges saját verziómban elkerülné a figyelmem.
Előzmény: NevemTeve (33)
NevemTeve Creative Commons License 2008.02.12 0 0 37
Számos különböző ponton hívja meg a hotplug-ot, a $1, $ACTION, $DEVICE és társai mondják meg, hogy éppen miről is van szó. Konkrétan a mi esetünkben elég arra reagálni, hogy $1=scsi_device és $ACTION=add.
A bővebb leírás valahol a /usr/src/linux/Documentation/usb/hotplug.txt-ben lakik.
Előzmény: locsemege (35)
locsemege Creative Commons License 2008.02.12 0 0 36
Részben meglett a válasz, amint kiírattam a kernel által átadott paramétereket. Talán különböző layer-ekhez érve hívja a kernel. Néhány paraméter:

usb
usb_endpoint
kernel
scsi
usb_device
scsi_host
scsi_disk
block
scsi_generic
bsg
scsi_device

De ezek a paraméterek vajon mik lehetnek?
Előzmény: locsemege (35)
locsemege Creative Commons License 2008.02.12 0 0 35
Elkezdtem barkácsolni, s rögtön meglepetésben volt részem. Mivel Fedora nem használja, legalább is nem volt kitöltve a /proc/sys/kernel/hotplug így az alábbit tettem:

echo '/usr/local/sbin/hotplug' >/proc/sys/kernel/hotplug

ezen felül írtam egy /usr/local/sbin/hotplug scriptet:

#!/bin/bash

date >>/tmp/hotplug.$$
exit 0


Ezután bedugtam a pendrive-ot - hald le van állítva -, s az

ls -1 /tmp/hotplug* | wc -l

parancs 21-et adott vissza, a pendrive kihúzása után pedig 40-et. Megnéztem, tényleg ott voltak a file-ok a nevükben az éppen aktuális PID-del, tartalmuk tényleg a dátum. A kísérletet megismételtem, mert arra gondoltam, túl gyorsan reagálja le a kernel a változást, s a csatlakozó pergéséből jön a sok hívás. A második kísérlet eredménye ugyanez volt. Tehát bedugáskor 21, kihúzáskor 40-21=19 alkalommal hívódott a script. A file-ok hossza ugyanakkora volt, tehát ugyanaz a PID nem került újra kiosztásra, de ez ilyen rövid időn belül nem is várható.

Mi okozza a hotplug handler ilyen sok alkalommal történő hívását? Vagy mit rontottam el?
Előzmény: NevemTeve (33)
locsemege Creative Commons License 2008.02.11 0 0 34
De gondolom, lehetne script is, nem? Abban segíthetnél néhány jó szóval, hogy a kernel hogyan hív külső programot eseményvezérelten, például azért, mert bedugta valaki valamijét :) a gépbe, és történik-e valamilyen paraméterátadás. Mondjuk ez nem annyira kritikus, mert kivadászható a /dev-ből is sokminden, szóba jöhet még a /proc illetve /sys szerintem.

Remélem GPL, vagy valami hasonló licensszel teszed közzé. Őszintén szólva érdekel, de ami még ennél is jobban, az a működési mechanizmus. Mert én nem szégyellek shell script-et írni a feladatra.
Előzmény: NevemTeve (33)
NevemTeve Creative Commons License 2008.02.11 0 0 33
Sehol: nem script az, hanem program (C-nyelv)... holnap majd csinálok belőle egy fordítható/telepíthető verziót
Előzmény: locsemege (32)
locsemege Creative Commons License 2008.02.11 0 0 32
Na jó, ez a konfig. De hol rejtegeted magát az sdmount script-et?
Előzmény: NevemTeve (30)
locsemege Creative Commons License 2008.02.11 0 0 31
Igen, igen, látom már, köszönöm. Ha az érintett gép közelében leszek éjszaka, nekiesek. Vagy akár ezen is leállítom a hald-t, s nézegethetem a megoldás mikéntjét az ötleteid alapján, de addig még el kell végeznem a munkámat.
Előzmény: NevemTeve (30)
NevemTeve Creative Commons License 2008.02.11 0 0 30
Igaz. A többire a válasz a Slackware-es topikban (illetve itt).
Előzmény: locsemege (29)
locsemege Creative Commons License 2008.02.11 0 0 29
Lehet, mert akár USB-s HDD-t is feldughat valaki a gépre.
Előzmény: NevemTeve (28)
NevemTeve Creative Commons License 2008.02.11 0 0 28
Én még csak olyat láttam, hogy egy pendrive-on egy partíció van (vagy egy sem, hanem a komplett device van formattálva)... nyilván lehet több partícióval is sportolni, ha van rá igény...
Előzmény: locsemege (27)
locsemege Creative Commons License 2008.02.11 0 0 27
Érdekes dolog még az extended partícióbejegyzés. Azt hiszem, azt csinálnám, hogy megpróbálnám felcsatolni, s ha nem sikerül, törölném a hozzá létrehozott üres alkönyvtárat. (Nyilván olyan script-et szeretnék, amely több pendrive-ot is kezel egyszerre, melyek akárhogyan is lehetnek partícionálva.)
Előzmény: NevemTeve (24)
locsemege Creative Commons License 2008.02.11 0 0 26
Néhány szót írnál arról, hogy ez a hotplug interface mi az izé, és hogyan érhető el, hogy saját script induljon eseményvezérelten? Most felületesen futottam át amit írtál, mert dolgom van. Azt sem tudom, hogy azon disztribúciókban, amelyek hald-t használnak, van-e hotplug, vagy ez a kernel elidegeníthetetlen része, vagy hogyan van ez. Ha lennél olyan jó, hogy néhány szót írnál erről, megköszönném.

Attól nem félek, hogy nem tudnék script-et írni rá, csak az eseményvezérlés mikéntje az igazán érdekes itt.
Előzmény: NevemTeve (24)
locsemege Creative Commons License 2008.02.11 0 0 25
Köszi, délután megnézem.
Előzmény: NevemTeve (24)
NevemTeve Creative Commons License 2008.02.11 0 0 24
A slackware topikban írtam egy software-eszközről, ami automatikus pen-drive mountolására való...
Előzmény: locsemege (22)
locsemege Creative Commons License 2008.02.11 0 0 23
Ja, erről infó itt.
Előzmény: locsemege (22)
locsemege Creative Commons License 2008.02.11 0 0 22
Ha a haldaemon-t leállítom, akkor működik a net is, a mass-storage eszközök is, de természetesen nem ismeri magától fel az új eszközt. :-/ Azt mégsem mondhatom a felhasználónak, hogy keresse meg a /dev-ben a bedugott eszközének device file-ját, aztán csatolja fel. Én még csak-csak megteszem, de ez már nekem sem túl felhasználóbarát metódus mindennapi használatra.
Előzmény: locsemege (21)
locsemege Creative Commons License 2008.02.11 0 0 21
Ha az ember tudja, mit keressen, talál egyet, s mást. Érdekes ez a rész:

The problem stems from the fact that both option and usb-storage can bind
to the modem when in storage mode: the former binds because of the storage
class, the latter binds because of VID/PID match. The modprobe loads both,
it's random which wins. If usb-storage wins, everything is fine. If option
wins, it binds to modem still in storage mode and does not work.


Remélem, a thread végére megoldás is lesz...
Előzmény: locsemege (20)
locsemege Creative Commons License 2008.02.11 0 0 20
Mesélnék egy nagyjából két hete tartó szívásról, s egyben segítséget is kérnék.

E220 HSDPA GSM USB modem bedug, létrejön a /dev/ttyUSB0, /dev/ttyUSB1. Ezután ifup Pannon, elkezdi felküzdeni magát, majd az említett két device file megszűnik. Ezt egy script-tel folyamatosan ellenőrzöm:

while sleep 1; do ls /dev/ttyU*; done

Ezután a kernel újra felismeri az eszközt, a device file-ok megint ott vannak, majd megint eldobja. Akkor is, ha nem csinálok ifup-ot. Már vettem PCI-os USB host interface-t a gépbe, mert arra gyanakodtam, az alaplapi USB interface kezelése bugos. A problémát ez sem oldotta meg. Természetesen legfrissebb, 2.6.24.1-es vanilla kernel, ettől sem hatódott meg. Úgy két hét log olvasgatás és internet böngészés után találtam egy érdekes infót, ami úgy néz ki, valóban a probléma gyökere: ha bennvan az usb-storage modul, az ütközik az usbserial vagy option modullal. Nosza, próbáljuk ki:

modprobe -r usb-storage

Ellenőriztem, hogy valóban eltávolításra került, s lám-lám, nem szűnik meg a két device file, s az ifup létre tudja hozni a kapcsolatot, van a gépen mobil internet. Igen ám, de van egy apró probléma: az usb-storage modul kellene, mert az nincs rendjén, hogy bedugom a pendrive-ot, betöltődik a modul, minek hatására elmúlik az internet.

A kérdés tehát az, hogy hol - HAL, udev? - és mit kell barkácsolni annak érdekében, hogy az usb-storage modul amilyen messzire csak lehet, kerülje el a /dev/ttyUSB* eszközöket.

Ha valami ötlete van valakinek, ne fogja magát vissza senki, mert már a múlt héten jöttek volna a gépért, tudniillik nem az enyém.

Az már csak hab a tortán, hogy momentán az ethernet interface aludt el, de legfeljebb az interneten keresztül ssh-zok a tőlem fél méterre lévő gépre...
fisherhu Creative Commons License 2008.01.25 0 0 19
Egyetlen szolgáltatóval sem írok alá két évet, soha.
Előzmény: locsemege (18)
locsemege Creative Commons License 2008.01.24 0 0 18
Adják azt ingyé' is, megfizettetik a hűségidő alatt.
Előzmény: fisherhu (17)
fisherhu Creative Commons License 2008.01.24 0 0 17
Na, egy ilyen modemre vágyok, olcsóért :D
Előzmény: locsemege (16)
locsemege Creative Commons License 2008.01.24 0 0 16
Most jó kedvem van. Egy ismerősöm gépére kellene egy Huawei E220 HSDPA USB modemet feléleszteni Linux alá. Nosza, előbb nézzük a saját gépemen, mielőtt nála Linuxot telepítenék mindhiába. Modem bedug, egyből ott a /dev-ben a ttyUSB0, ttyUSB1, ttyUSB2 eszközök. Ez jó jel. Ezek után Fedora standard GUI-jával felvettem az eszközök közé a modemet /dev/ttyUSB0 hivatkozással, telefonszámnak *99#, login név, jelszó megadva, a profile-nak is adtam nevet, utána mentettem az egészet, a működő wlan kapcsolatomat leállítottam, az új, GSM modemen keresztülit aktiváltam, és azonnal volt netem. Természetesen ifconfig-gal ellenőriztem, tényleg a GSM modemen keresztül ment a net, sőt, forrásból lefordítottam a he220stat-ot, az is egyből megmutatta a modem forgalmát.

Fedora 8-on gyakorlatilag 20 perc alatt feltápászkodott úgy, hogy előtte azt sem tudtam, mi az az USB-s GSM modem. Persze nem fogalmilag nem tudtam, hanem életemben most láttam először ilyet.

Magamat mindig be szoktam tenni az uucp csoportba, így az xhe220stat-nak volt hozzáférési joga az eszközhöz, tehát sima felhasználóként indítva is le tudta kérdezni a modem statisztikáját.

A kernelem 2.6.23.14 vanilla, de szerintem a Fedora saját kernelével is menne, mert a vanilla kernelem alapjául a fedorás .config szolgált.
Hurd-4 Creative Commons License 2008.01.23 0 0 15
Debian egy van. Debian alapú disztribúció van sok. A közös bennük, hogy a debian-t faragták át így, vagy úgy egy másik disztribúcióvá.
Előzmény: retropapa (14)
retropapa Creative Commons License 2008.01.22 0 0 14
A debiánnak vannak változatai vagy ez egy és ugyanaz a program mindíg és mindenhol? Bocs de linuxhoz sajna még hülye vagyok...
Előzmény: fisherhu (13)
fisherhu Creative Commons License 2008.01.17 0 0 13
Debian. Mindenre azt használom, régebben volt redhatom is.
Előzmény: retropapa (11)
Hurd-4 Creative Commons License 2008.01.17 0 0 12
ser2pl - Prolific Serial to USB
retropapa Creative Commons License 2008.01.16 0 0 11
Milyen linuxal használod?
Előzmény: fisherhu (10)
fisherhu Creative Commons License 2008.01.12 0 0 10
Én egy motorola telefonnal használom a netet. Laptopon is, asztali gépen is.
Egyszerű modemként használom, a telefon a #99***1-et vagy mit tárcsázza.
Pesten hsdpa-van, vidéken ami épp akad, semmi gondom vele.
Emlékeim szerint bruttó 10 perc volt felrakni, igaz usb-n keresztül megy, mert minek szívjak a bt vicceivel ha nem muszáj?
NevemTeve Creative Commons License 2008.01.10 0 0 9
Először a gép és a telefon kapcsolát kell rendezni, nekem például egy sorosportos iRwave készülékem van, a következő script fut induláskor:

modprobe irtty-sir
modprobe irda

irattach /dev/ttyS0 -dactisys -s

echo "115200" > /proc/sys/net/irda/max_baud_rate


Az irdadump ilyeneket tud mondani a telefonomról:

11:52:21.430205 xid:rsp a979f751 < 00003da6 S=6 s=4 Nokia 6310i hint=b125 [ PnP Modem Fax Telephony IrCOMM IrOBEX ] (28)

A minicom ilyesmiket tud vele csinálni:

ATI
Nokia

ATI1
352952005864323

ATI2
V 5.51
08-07-03
NPL-1
(c) NMP.


Nyilván most kellene a GPRS-t hangolni (talán a pppd-vel?), csak történelmileg nincs rá szükségem, van CATV-m.

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!