Fórum Root.cz
Hlavní témata => Hardware => Téma založeno: Ado 07. 08. 2015, 17:41:29
-
Mam dve USB tlaciarne pripojene k Debianu. Podla poradia ich zapnutia je prva tlaciaren raz /dev/usb/lp0 a inokedy /dev/usb/lp1.
Ako ich mam natvrdo priradit k lp0 resp. lp1?
Objavil som toto:
udevadm info --attribute-walk --name /dev/usb/lp1
udevadm info --attribute-walk --name /dev/usb/lp0
Takto viem zistit ich aktualne priradenie...
-
Pokud vyrobce neni totalni debil, coz vam nikdo nezaruci, melo by kazde USB zarizeni mit unikatni seriove cislo, podle ktereho muzete udev pravidla upravit/vytvorit. Mozna bude vhodne do nich zahrnout i identifikator zarizeni, kdyby jiny vyrobce nahodou pouzil stejne cislo. lsusb -v , hledejte tusim iSerial. Mrknete sem: http://reactivated.net/writing_udev_rules.html#example-printer
-
Nejde mi to. Ak by to vedel niekto nastavit, rad to zaplatim. 0905961929
-
Melo by to fungovat podle navodu vyse.
Mozna je ten system nejaky "nacaty" - co to je za verzi ?
-
Melo by to fungovat podle navodu vyse.
Mozna je ten system nejaky "nacaty" - co to je za verzi ?
Navod je nanic. Hned prvy prikaz udevinfo -a -p $(udevinfo -q path -n /dev/lp0) je nefuncny.
-
Nenajde sa ziaden linux admin, ktory tento nezmysel vyriesi za stedru odmenu? Veeelmi stedru.
-
@Ado: Tak necekejte, ze to hned za vas nekdo uvari. Kdybyste vlezl na Google, zjistil byste, ze udevinfo uz nejak vysumnelo a dneska frci spis udevadm. A mohl jste skoncit s necim v tomto stylu: udevadm info --attribute-walk -n /dev/lp0
Tak to zkuste pro obe tiskarny a mrknete se, podle kterych atributu by sly rozlisit. Pri trose stesti to bude ATTRS{serial}.
-
@Ado: Tak necekejte, ze to hned za vas nekdo uvari. Kdybyste vlezl na Google, zjistil byste, ze udevinfo uz nejak vysumnelo a dneska frci spis udevadm. A mohl jste skoncit s necim v tomto stylu: udevadm info --attribute-walk -n /dev/lp0
Tak to zkuste pro obe tiskarny a mrknete se, podle kterych atributu by sly rozlisit. Pri trose stesti to bude ATTRS{serial}.
Praveze hladam niekoho, kto mi to vyriesi. Ja som stravil aj 5 hodin a bez vysledku a uz sa poznam. Ak nejaky nezmysel nevyriesim v linuxe do 5 hodim, tak uz nikdy.
Nechcete mi to prosim spravit Vy? Som ochotny zaplatit stedro.
-
Jedna tlacka:
Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.
looking at device '/devices/platform/bcm2708_usb/usb1/1-1/1-1.4/1-1.4:1.0/usbmisc/lp1':
KERNEL=="lp1"
SUBSYSTEM=="usbmisc"
DRIVER==""
looking at parent device '/devices/platform/bcm2708_usb/usb1/1-1/1-1.4/1-1.4:1.0':
KERNELS=="1-1.4:1.0"
SUBSYSTEMS=="usb"
DRIVERS=="usblp"
ATTRS{bInterfaceClass}=="07"
ATTRS{bInterfaceSubClass}=="01"
ATTRS{bInterfaceProtocol}=="02"
ATTRS{bNumEndpoints}=="02"
ATTRS{supports_autosuspend}=="1"
ATTRS{bAlternateSetting}==" 0"
ATTRS{bInterfaceNumber}=="00"
ATTRS{ieee1284_id}=="ID:FS-1120D;MFG:Kyocera;CMD:PCLXL,PostScript Emulation,PCL5E,PJL;MDL:FS-1120D;CLS:PRINTER;DES:Kyocera FS-1120D;"
looking at parent device '/devices/platform/bcm2708_usb/usb1/1-1/1-1.4':
KERNELS=="1-1.4"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bDeviceProtocol}=="00"
ATTRS{devpath}=="1.4"
ATTRS{idVendor}=="0482"
ATTRS{speed}=="480"
ATTRS{bNumInterfaces}==" 1"
ATTRS{bConfigurationValue}=="1"
ATTRS{bMaxPacketSize0}=="64"
ATTRS{busnum}=="1"
ATTRS{devnum}=="10"
ATTRS{configuration}==""
ATTRS{bMaxPower}=="100mA"
ATTRS{authorized}=="1"
ATTRS{bmAttributes}=="c0"
ATTRS{bNumConfigurations}=="1"
ATTRS{maxchild}=="0"
ATTRS{bcdDevice}=="0000"
ATTRS{avoid_reset_quirk}=="0"
ATTRS{quirks}=="0x0"
ATTRS{serial}=="L4W3Y50214"
ATTRS{version}==" 2.00"
ATTRS{urbnum}=="138"
ATTRS{ltm_capable}=="no"
ATTRS{manufacturer}=="Kyocera "
ATTRS{removable}=="removable"
ATTRS{idProduct}=="0407"
ATTRS{bDeviceClass}=="00"
ATTRS{product}=="Kyocera FS-1120D"
looking at parent device '/devices/platform/bcm2708_usb/usb1/1-1':
KERNELS=="1-1"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bDeviceProtocol}=="02"
ATTRS{devpath}=="1"
ATTRS{idVendor}=="0424"
ATTRS{speed}=="480"
ATTRS{bNumInterfaces}==" 1"
ATTRS{bConfigurationValue}=="1"
ATTRS{bMaxPacketSize0}=="64"
ATTRS{busnum}=="1"
ATTRS{devnum}=="2"
ATTRS{configuration}==""
ATTRS{bMaxPower}=="2mA"
ATTRS{authorized}=="1"
ATTRS{bmAttributes}=="e0"
ATTRS{bNumConfigurations}=="1"
ATTRS{maxchild}=="5"
ATTRS{bcdDevice}=="0200"
ATTRS{avoid_reset_quirk}=="0"
ATTRS{quirks}=="0x0"
ATTRS{version}==" 2.00"
ATTRS{urbnum}=="180"
ATTRS{ltm_capable}=="no"
ATTRS{removable}=="unknown"
ATTRS{idProduct}=="9514"
ATTRS{bDeviceClass}=="09"
looking at parent device '/devices/platform/bcm2708_usb/usb1':
KERNELS=="usb1"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bDeviceProtocol}=="01"
ATTRS{devpath}=="0"
ATTRS{idVendor}=="1d6b"
ATTRS{speed}=="480"
ATTRS{bNumInterfaces}==" 1"
ATTRS{bConfigurationValue}=="1"
ATTRS{bMaxPacketSize0}=="64"
ATTRS{authorized_default}=="1"
ATTRS{busnum}=="1"
ATTRS{devnum}=="1"
ATTRS{configuration}==""
ATTRS{bMaxPower}=="0mA"
ATTRS{authorized}=="1"
ATTRS{bmAttributes}=="e0"
ATTRS{bNumConfigurations}=="1"
ATTRS{maxchild}=="1"
ATTRS{bcdDevice}=="0318"
ATTRS{avoid_reset_quirk}=="0"
ATTRS{quirks}=="0x0"
ATTRS{serial}=="bcm2708_usb"
ATTRS{version}==" 2.00"
ATTRS{urbnum}=="26"
ATTRS{ltm_capable}=="no"
ATTRS{manufacturer}=="Linux 3.18.11+ dwc_otg_hcd"
ATTRS{removable}=="unknown"
ATTRS{idProduct}=="0002"
ATTRS{bDeviceClass}=="09"
ATTRS{product}=="DWC OTG Controller"
looking at parent device '/devices/platform/bcm2708_usb':
KERNELS=="bcm2708_usb"
SUBSYSTEMS=="platform"
DRIVERS=="dwc_otg"
ATTRS{hnp}=="HstNegScs = 0x0"
ATTRS{srp}=="SesReqScs = 0x1"
ATTRS{regvalue}=="invalid offset"
ATTRS{hsic_connect}=="HSIC Connect = 0x1"
ATTRS{guid}=="GUID = 0x2708a000"
ATTRS{mode}=="Mode = 0x1"
ATTRS{srpcapable}=="SRPCapable = 0x1"
ATTRS{regdump}=="Register Dump"
ATTRS{gpvndctl}=="GPVNDCTL = 0x00000000"
ATTRS{ggpio}=="GGPIO = 0x00000000"
ATTRS{hprt0}=="HPRT0 = 0x00001005"
ATTRS{wr_reg_test}=="Time to write GNPTXFSIZ reg 10000000 times: 690 msecs (69 jiffies)"
ATTRS{driver_override}=="(null)"
ATTRS{hcd_frrem}=="HCD Dump Frame Remaining"
ATTRS{mode_ch_tim_en}=="Mode Change Ready Timer Enable = 0x0"
ATTRS{gnptxfsiz}=="GNPTXFSIZ = 0x01000306"
ATTRS{remote_wakeup}=="Remote Wakeup Sig = 0 Enabled = 0 LPM Remote Wakeup = 0"
ATTRS{busconnected}=="Bus Connected = 0x1"
ATTRS{hcddump}=="HCD Dump"
ATTRS{gotgctl}=="GOTGCTL = 0x001c0001"
ATTRS{spramdump}=="SPRAM Dump"
ATTRS{grxfsiz}=="GRXFSIZ = 0x00000306"
ATTRS{gsnpsid}=="GSNPSID = 0x4f54280a"
ATTRS{gusbcfg}=="GUSBCFG = 0x00001700"
ATTRS{hptxfsiz}=="HPTXFSIZ = 0x02000406"
ATTRS{devspeed}=="Device Speed = 0x0"
ATTRS{fr_interval}=="Frame Interval = 0x1d4c"
ATTRS{rem_wakeup_pwrdn}==""
ATTRS{bussuspend}=="Bus Suspend = 0x0"
ATTRS{buspower}=="Bus Power = 0x1"
ATTRS{hnpcapable}=="HNPCapable = 0x1"
ATTRS{rd_reg_test}=="Time to read GNPTXFSIZ reg 10000000 times: 1490 msecs (149 jiffies)"
ATTRS{enumspeed}=="Device Enumeration Speed = 0x1"
ATTRS{inv_sel_hsic}=="Invert Select HSIC = 0x0"
ATTRS{regoffset}=="0xffffffff"
looking at parent device '/devices/platform':
KERNELS=="platform"
SUBSYSTEMS==""
DRIVERS==""
-
Druha tlacka:
Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.
looking at device '/devices/platform/bcm2708_usb/usb1/1-1/1-1.3/1-1.3:1.0/usbmisc/lp0':
KERNEL=="lp0"
SUBSYSTEM=="usbmisc"
DRIVER==""
looking at parent device '/devices/platform/bcm2708_usb/usb1/1-1/1-1.3/1-1.3:1.0':
KERNELS=="1-1.3:1.0"
SUBSYSTEMS=="usb"
DRIVERS=="usblp"
ATTRS{bInterfaceClass}=="07"
ATTRS{bInterfaceSubClass}=="01"
ATTRS{bInterfaceProtocol}=="02"
ATTRS{bNumEndpoints}=="02"
ATTRS{supports_autosuspend}=="1"
ATTRS{bAlternateSetting}==" 1"
ATTRS{bInterfaceNumber}=="00"
ATTRS{ieee1284_id}=="MFG:EPSON;CMD:ESC/POS;MDL:TM-P2.01;CLS:PRINTER;"
looking at parent device '/devices/platform/bcm2708_usb/usb1/1-1/1-1.3':
KERNELS=="1-1.3"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bDeviceProtocol}=="00"
ATTRS{devpath}=="1.3"
ATTRS{idVendor}=="067b"
ATTRS{speed}=="12"
ATTRS{bNumInterfaces}==" 1"
ATTRS{bConfigurationValue}=="1"
ATTRS{bMaxPacketSize0}=="8"
ATTRS{busnum}=="1"
ATTRS{devnum}=="4"
ATTRS{configuration}==""
ATTRS{bMaxPower}=="100mA"
ATTRS{authorized}=="1"
ATTRS{bmAttributes}=="80"
ATTRS{bNumConfigurations}=="1"
ATTRS{maxchild}=="0"
ATTRS{bcdDevice}=="0202"
ATTRS{avoid_reset_quirk}=="0"
ATTRS{quirks}=="0x0"
ATTRS{version}==" 1.00"
ATTRS{urbnum}=="16"
ATTRS{ltm_capable}=="no"
ATTRS{manufacturer}=="Prolific Technology Inc."
ATTRS{removable}=="removable"
ATTRS{idProduct}=="2305"
ATTRS{bDeviceClass}=="00"
ATTRS{product}=="IEEE-1284 Controller"
looking at parent device '/devices/platform/bcm2708_usb/usb1/1-1':
KERNELS=="1-1"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bDeviceProtocol}=="02"
ATTRS{devpath}=="1"
ATTRS{idVendor}=="0424"
ATTRS{speed}=="480"
ATTRS{bNumInterfaces}==" 1"
ATTRS{bConfigurationValue}=="1"
ATTRS{bMaxPacketSize0}=="64"
ATTRS{busnum}=="1"
ATTRS{devnum}=="2"
ATTRS{configuration}==""
ATTRS{bMaxPower}=="2mA"
ATTRS{authorized}=="1"
ATTRS{bmAttributes}=="e0"
ATTRS{bNumConfigurations}=="1"
ATTRS{maxchild}=="5"
ATTRS{bcdDevice}=="0200"
ATTRS{avoid_reset_quirk}=="0"
ATTRS{quirks}=="0x0"
ATTRS{version}==" 2.00"
ATTRS{urbnum}=="180"
ATTRS{ltm_capable}=="no"
ATTRS{removable}=="unknown"
ATTRS{idProduct}=="9514"
ATTRS{bDeviceClass}=="09"
looking at parent device '/devices/platform/bcm2708_usb/usb1':
KERNELS=="usb1"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bDeviceProtocol}=="01"
ATTRS{devpath}=="0"
ATTRS{idVendor}=="1d6b"
ATTRS{speed}=="480"
ATTRS{bNumInterfaces}==" 1"
ATTRS{bConfigurationValue}=="1"
ATTRS{bMaxPacketSize0}=="64"
ATTRS{authorized_default}=="1"
ATTRS{busnum}=="1"
ATTRS{devnum}=="1"
ATTRS{configuration}==""
ATTRS{bMaxPower}=="0mA"
ATTRS{authorized}=="1"
ATTRS{bmAttributes}=="e0"
ATTRS{bNumConfigurations}=="1"
ATTRS{maxchild}=="1"
ATTRS{bcdDevice}=="0318"
ATTRS{avoid_reset_quirk}=="0"
ATTRS{quirks}=="0x0"
ATTRS{serial}=="bcm2708_usb"
ATTRS{version}==" 2.00"
ATTRS{urbnum}=="26"
ATTRS{ltm_capable}=="no"
ATTRS{manufacturer}=="Linux 3.18.11+ dwc_otg_hcd"
ATTRS{removable}=="unknown"
ATTRS{idProduct}=="0002"
ATTRS{bDeviceClass}=="09"
ATTRS{product}=="DWC OTG Controller"
looking at parent device '/devices/platform/bcm2708_usb':
KERNELS=="bcm2708_usb"
SUBSYSTEMS=="platform"
DRIVERS=="dwc_otg"
ATTRS{hnp}=="HstNegScs = 0x0"
ATTRS{srp}=="SesReqScs = 0x1"
ATTRS{regvalue}=="invalid offset"
ATTRS{hsic_connect}=="HSIC Connect = 0x1"
ATTRS{guid}=="GUID = 0x2708a000"
ATTRS{mode}=="Mode = 0x1"
ATTRS{srpcapable}=="SRPCapable = 0x1"
ATTRS{regdump}=="Register Dump"
ATTRS{gpvndctl}=="GPVNDCTL = 0x00000000"
ATTRS{ggpio}=="GGPIO = 0x00000000"
ATTRS{hprt0}=="HPRT0 = 0x00001405"
ATTRS{wr_reg_test}=="Time to write GNPTXFSIZ reg 10000000 times: 690 msecs (69 jiffies)"
ATTRS{driver_override}=="(null)"
ATTRS{hcd_frrem}=="HCD Dump Frame Remaining"
ATTRS{mode_ch_tim_en}=="Mode Change Ready Timer Enable = 0x0"
ATTRS{gnptxfsiz}=="GNPTXFSIZ = 0x01000306"
ATTRS{remote_wakeup}=="Remote Wakeup Sig = 0 Enabled = 0 LPM Remote Wakeup = 0"
ATTRS{busconnected}=="Bus Connected = 0x1"
ATTRS{hcddump}=="HCD Dump"
ATTRS{gotgctl}=="GOTGCTL = 0x001c0001"
ATTRS{spramdump}=="SPRAM Dump"
ATTRS{grxfsiz}=="GRXFSIZ = 0x00000306"
ATTRS{gsnpsid}=="GSNPSID = 0x4f54280a"
ATTRS{gusbcfg}=="GUSBCFG = 0x00001700"
ATTRS{hptxfsiz}=="HPTXFSIZ = 0x02000406"
ATTRS{devspeed}=="Device Speed = 0x0"
ATTRS{fr_interval}=="Frame Interval = 0x1d4c"
ATTRS{rem_wakeup_pwrdn}==""
ATTRS{bussuspend}=="Bus Suspend = 0x0"
ATTRS{buspower}=="Bus Power = 0x1"
ATTRS{hnpcapable}=="HNPCapable = 0x1"
ATTRS{rd_reg_test}=="Time to read GNPTXFSIZ reg 10000000 times: 1500 msecs (150 jiffies)"
ATTRS{enumspeed}=="Device Enumeration Speed = 0x1"
ATTRS{inv_sel_hsic}=="Invert Select HSIC = 0x0"
ATTRS{regoffset}=="0xffffffff"
looking at parent device '/devices/platform':
KERNELS=="platform"
SUBSYSTEMS==""
DRIVERS==""
-
Zkuste tohle:
#/etc/udev/rules.d/60-persistent-printer.rules
ACTION=="remove", GOTO="persistent_printer_end"
# This should not be necessary
#KERNEL!="lp*", GOTO="persistent_printer_end"
SUBSYSTEMS=="usb", IMPORT{builtin}="usb_id"
ENV{ID_TYPE}!="printer", GOTO="persistent_printer_end"
ENV{ID_SERIAL}=="?*", SYMLINK+="lp/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
IMPORT{builtin}="path_id"
ENV{ID_PATH}=="?*", SYMLINK+="lp/by-path/$env{ID_PATH}"
SUBSYSTEM=="usb", ATTRS{serial}=="bcm2708_usb", SYMLINK+="stara_tiskarna"
SUBSYSTEM=="usb", ATTRS{serial}=="L4W3Y50214", SYMLINK+="kyocera"
LABEL="persistent_printer_end"
Pri trose stesti to pro kazdou tiskarnu udela tri symlinky:
lp/by-id, lp/by-path a symlink s nazvem kyocera nebo stara_tiskarna, podle toho, o kterou se jedna. Nezapomente na /etc/udev/rules.d/60-persistent-printer.rules nastavit prava podle ostatnich souboru pravidel.
-
@Ado: Tak necekejte, ze to hned za vas nekdo uvari. Kdybyste vlezl na Google, zjistil byste, ze udevinfo uz nejak vysumnelo a dneska frci spis udevadm. A mohl jste skoncit s necim v tomto stylu: udevadm info --attribute-walk -n /dev/lp0
Tak to zkuste pro obe tiskarny a mrknete se, podle kterych atributu by sly rozlisit. Pri trose stesti to bude ATTRS{serial}.
Naozaj sa nevieme dohodnut na vyrieseni problemu za penaznu odmenu?
-
Jak byste si to predstavoval? Date sem heslo a usera na ssh?
Reseni mate mozna nahore, staci vytvorit jeden soubr a nakopirovat do nej obsah a nastavit na nem prava jako na ostatnich souborech okolo. Jmeno a cestu souboru mate nahore v komentari. A pokud to nefunguje, mrknete do logu treba sem ty hlasky dejte. Ja stejne nejsem odbornik na udev, akorat pouzivam Google a kombinuji a upravuji.
-
Dam Vam pristup na ssh. Po vyrieseni na jednom konkretnehom pocitaci, by som uvital nejaky dost konkretny +- navod aby som to vedel zopakovat na viacerych pocitacoch.
Totiz doteraz mali nase firemne pobockove pocitace jednu tlacku cez usb a jednu cez parport.
Teraz sme zacali nasadzovat pocitace, ktore nemaju parport a hla jaky problem vyskocil.
Viem Vam dajme tomu zaplatit polku vopred a polku potom. Ak viete vystavit fakturu bolo by super. Ak nie nevadi.
-
Moj mejl je andrejpekarcik@gmail.com a telefon +421905961929.
-
Jak byste si to predstavoval? Date sem heslo a usera na ssh?
Reseni mate mozna nahore, staci vytvorit jeden soubr a nakopirovat do nej obsah a nastavit na nem prava jako na ostatnich souborech okolo. Jmeno a cestu souboru mate nahore v komentari. A pokud to nefunguje, mrknete do logu treba sem ty hlasky dejte. Ja stejne nejsem odbornik na udev, akorat pouzivam Google a kombinuji a upravuji.
Na udev nie je odbornik nikto. Takze to vobec nevadi.
-
Jak byste si to predstavoval? Date sem heslo a usera na ssh?
Reseni mate mozna nahore, staci vytvorit jeden soubr a nakopirovat do nej obsah a nastavit na nem prava jako na ostatnich souborech okolo. Jmeno a cestu souboru mate nahore v komentari. A pokud to nefunguje, mrknete do logu treba sem ty hlasky dejte. Ja stejne nejsem odbornik na udev, akorat pouzivam Google a kombinuji a upravuji.
Co sa tyka navodu, tak jedna tlaciaren je laserova Kyocera (viac druhov) a druha tlaciaren je thermal line EPSON TM-T70.
Takze typy tlaciarni su dost obmedzene.
-
To je dobry. To jsem zvedav, kolik lidi si o ten pristup napise, aby vam mohli vylepsit server. Zkuste byt trochu vic paranoidni. Zejmena, kdyz se jedna o firemni server.
Chcete navod? Z konzole pod rootem:
1. touch /etc/udev/rules.d/60-persistent-printer.rules
2. chmod 644 /etc/udev/rules.d/60-persistent-printer.rules
3. mcedit /etc/udev/rules.d/60-persistent-printer.rules (misto mcedit pouzijte libovolny jiny editor, ktery mate v oblibe, treba i graficky.
4. Do /etc/udev/rules.d/60-persistent-printer.rules nakopirujte obsah toho, co jsem dal vyse.
Pokud to budete delat na dalsich pocitacich s dalsimi tiskarnami, musite zmenit hodnotu v ATTRS{serial}, aby to odpovidalo tem, co tam opravdu jsou. A ke kazde si vymyslet nejake jmeno pro ten symlink, co je na konci pravidla.
5. service udev restart (nebo mozna /etc/init.d/udev restart, podle toho, co zabere).
6. Pripojte tiskarny a podivejte se, jestli to funguje. Pokud ano:
a) Otevrete flasku.
b) Pokud ne, jdete studovat syslog (mozna nejaky jiny log) a dmesg a dejte sem hlasky od udev.
-
7. zapis si to do skriptu kterej automaticky vytvori na kazdem pc to udev pravidlo doplnene o seriove cisla ziskana pomoci udevadm
8. uloz si skript na server do napr. https://tvujserver.sk/nastav_tiskarny
9. na kazdem ciste nainstalovanem pc pak vloz do terminalu: wget https://tvujserver.sk/nastav_tiskarny -qO - | sh -
;)
-
To je dobry. To jsem zvedav, kolik lidi si o ten pristup napise, aby vam mohli vylepsit server. Zkuste byt trochu vic paranoidni. Zejmena, kdyz se jedna o firemni server.
Chcete navod? Z konzole pod rootem:
1. touch /etc/udev/rules.d/60-persistent-printer.rules
2. chmod 644 /etc/udev/rules.d/60-persistent-printer.rules
3. mcedit /etc/udev/rules.d/60-persistent-printer.rules (misto mcedit pouzijte libovolny jiny editor, ktery mate v oblibe, treba i graficky.
4. Do /etc/udev/rules.d/60-persistent-printer.rules nakopirujte obsah toho, co jsem dal vyse.
Pokud to budete delat na dalsich pocitacich s dalsimi tiskarnami, musite zmenit hodnotu v ATTRS{serial}, aby to odpovidalo tem, co tam opravdu jsou. A ke kazde si vymyslet nejake jmeno pro ten symlink, co je na konci pravidla.
5. service udev restart (nebo mozna /etc/init.d/udev restart, podle toho, co zabere).
6. Pripojte tiskarny a podivejte se, jestli to funguje. Pokud ano:
a) Otevrete flasku.
b) Pokud ne, jdete studovat syslog (mozna nejaky jiny log) a dmesg a dejte sem hlasky od udev.
To som uz davno skusal, ako ste to napisali. Vysledok ziaden.
-
To je dobry. To jsem zvedav, kolik lidi si o ten pristup napise, aby vam mohli vylepsit server. Zkuste byt trochu vic paranoidni. Zejmena, kdyz se jedna o firemni server.
Chcete navod? Z konzole pod rootem:
1. touch /etc/udev/rules.d/60-persistent-printer.rules
2. chmod 644 /etc/udev/rules.d/60-persistent-printer.rules
3. mcedit /etc/udev/rules.d/60-persistent-printer.rules (misto mcedit pouzijte libovolny jiny editor, ktery mate v oblibe, treba i graficky.
4. Do /etc/udev/rules.d/60-persistent-printer.rules nakopirujte obsah toho, co jsem dal vyse.
Pokud to budete delat na dalsich pocitacich s dalsimi tiskarnami, musite zmenit hodnotu v ATTRS{serial}, aby to odpovidalo tem, co tam opravdu jsou. A ke kazde si vymyslet nejake jmeno pro ten symlink, co je na konci pravidla.
5. service udev restart (nebo mozna /etc/init.d/udev restart, podle toho, co zabere).
6. Pripojte tiskarny a podivejte se, jestli to funguje. Pokud ano:
a) Otevrete flasku.
b) Pokud ne, jdete studovat syslog (mozna nejaky jiny log) a dmesg a dejte sem hlasky od udev.
Kolko ludi poziadalo o ssh pristup? Skuste si tipnut!
-
Naozaj nikoho nenajdem, kto mi toto vyriesi za kralovsku odmenu?
Nie radou, ktore si neskonale cenim, ale naozaj nastavit .
-
Kontakt na mna:
Andrej Pekarcik, andrejpekarcik@gmail.com, +421905961929
-
To som uz davno skusal, ako ste to napisali. Vysledok ziaden.
A logy jste studoval? /var/log/udev
Pustte si udevadm monitor , co to rika pri pripojeni tiskarny.
@nobody: Jestli se jedna o tri pocitace, tak nevim, jestli se vyplati srat se se skriptem.
-
Zkuste to zjednousit a nechat tam akorat tohle:
SUBSYSTEM=="usb", ATTRS{serial}=="bcm2708_usb", SYMLINK+="stara_tiskarna"
SUBSYSTEM=="usb", ATTRS{serial}=="L4W3Y50214", SYMLINK+="kyocera"
-
Nestudoval. Jednoducho ja uz s tym nepohnem. Uz nie som ochotny marnit svoj cas na takyto nezmysel, teraz som ochotny dobre platit za vyriesenie.
-
ja se "seru" se skriptem i pro jedno(ho) pc/uzivatele co se pres zakaznika ozve ze ma problem, je to jednodusi nez psat postup, tedy pokud neni cilem vzdelavat, ale jednoduse zaridit tak aby to zvladla i cvicena opicka co umi kopirovat&vlozit ;)
-
Zkuste to zjednousit a nechat tam akorat tohle:
SUBSYSTEM=="usb", ATTRS{serial}=="bcm2708_usb", SYMLINK+="stara_tiskarna"
SUBSYSTEM=="usb", ATTRS{serial}=="L4W3Y50214", SYMLINK+="kyocera"
Prosim dohodnime sa na platenom vyrieseni. Ak mate ucet vo fio, peniaze tam mozete mat hned. Fakturu mi vystavite neskor.
-
ja se "seru" se skriptem i pro jedno(ho) pc/uzivatele co se pres zakaznika ozve ze ma problem, je to jednodusi nez psat postup, tedy pokud neni cilem vzdelavat, ale jednoduse zaridit tak aby to zvladla i cvicena opicka co umi kopirovat&vlozit ;)
Super. Staci mi to vyriesit bez navodu.
-
ja se "seru" se skriptem i pro jedno(ho) pc/uzivatele co se pres zakaznika ozve ze ma problem, je to jednodusi nez psat postup, tedy pokud neni cilem vzdelavat, ale jednoduse zaridit tak aby to zvladla i cvicena opicka co umi kopirovat&vlozit ;)
Super. Staci mi to vyriesit bez navodu.
Pisete, ze mate zakaznikov. Nemozem sa prosim aj ja jednym stat? Prosim
-
fedora se na to podiva ;)
ale ted uz to nestiham, kdyz tak vecer,
nebo zitra pres den by to asi taky slo.
Kolik bude prosim ta kralovska odmena ?
-
fedora se na to podiva ;)
ale ted uz to nestiham, kdyz tak vecer,
nebo zitra pres den by to asi taky slo.
Kolik bude prosim ta kralovska odmena ?
Sumu si povedzte Vy.
-
fedora se na to podiva ;)
ale ted uz to nestiham, kdyz tak vecer,
nebo zitra pres den by to asi taky slo.
Kolik bude prosim ta kralovska odmena ?
Kam Vam poslem ssh pristup? Pripravim Vam cistu instalaciu s dvoma tlaciarnami, kde mozte robit cokolvek.
-
Tak co? Nasli vasi radcove, nasli? Jestli ano, hodte sem reseni.
-
Tak co? Nasli vasi radcove, nasli? Jestli ano, hodte sem reseni.
uz po nich neni ani vidu, ani slechu. kdo vi, jestli to prezil alespon jeden z nich ....
-
Tak co? Nasli vasi radcove, nasli? Jestli ano, hodte sem reseni.
Řešení bude +- takový, jaký jsi sám psal. Vytvoření udev pravidel, kde budou ty tiskárny podle něčeho jednoznačně rozlišený.
-
Tak co? Nasli vasi radcove, nasli? Jestli ano, hodte sem reseni.
uz po nich neni ani vidu, ani slechu. kdo vi, jestli to prezil alespon jeden z nich ....
Jeden zachranca sa nasiel a ako pozeram, tak je to funkcne. Super.
-
@Ado: To me tesi. Ovsem byva zvykem ucastniky fora seznamit s viteznym resenim.
-
Treba poprosit tvorcu riesenia, nie mna.
-
Treba poprosit tvorcu riesenia, nie mna.
Aha. Takze on vam na te ciste instalaci, kterou jste mu pripravil, cosi udelal a ted to funguje. Ale vy nevite co udelal. Jak to tedy hodlate prenest na produkcni pocitace???
-
fedora nemela cas, sorry.
Reseni asi chrani NDA ;)
Ale tezko to bude neco radikalne odlisneho od prispevku hned na prvni strance :
http://forum.root.cz/index.php?topic=11646.msg138171#msg138171 (http://forum.root.cz/index.php?topic=11646.msg138171#msg138171)
-
Treba poprosit tvorcu riesenia, nie mna.
Aha. Takze on vam na te ciste instalaci, kterou jste mu pripravil, cosi udelal a ted to funguje. Ale vy nevite co udelal. Jak to tedy hodlate prenest na produkcni pocitace???
Jasne ze tomu rozumiem. Je to paradne jednoduche a funkcne. Preniest na ostatne pocitace nie je ziaden problem. Zaroven mi vytvoril skriptik, ktory prenos
automatizuje.
Riesenie je dobre aj v tom, ze neobsahuje ziadne seriove cisla, teda vymenit pokazenu tlaciaren je mozne aj bez zasahu do nejakeho konfiguraku.
Co ma vsak desi na celom Linuxe, je takmer nikoho niet kto by poskytoval platene sluzby. Teda aspon tu v superbohatej Europe.
To je krute a zasadne minus pre masivne nasadenie Linuxu vo firme, co je presne moj pripad. A to mam to stastie, ze sam osobne ovladam administraciu Linuxu na vyborne.
-
Za řešení bylo zaplaceno, tudíž se ho nedozvíme ...
-
Za řešení bylo zaplaceno, tudíž se ho nedozvíme ...
Aha, to je tedy pristup. Lidi, kteri to berou takto, by se radsi meli rovnou obratit na nejakou firmu, aby tady na Rootu lidi neztraceli cas. Napriklad ja jsem stravil cas na Googlu, cas upravou toho, co jsem nasel a cas psanim prispevku. Cas jsou penize, ze jo.
A aby bylo jasno, ja to reseni nepotrebuju. Az to budu nekdy potrebovat, tak si to vygoogluju a rozchodim. Ale chodi sem i jini, kterym se to muze hodit. Co me se tyka, jsem pouze zvedav na to, cim se finalni reseni lisi od meho, tedy jestli v pravidlech byla chyba.
-
Za řešení bylo zaplaceno, tudíž se ho nedozvíme ...
Aha, to je tedy pristup. Lidi, kteri to berou takto, by se radsi meli rovnou obratit na nejakou firmu, aby tady na Rootu lidi neztraceli cas. Napriklad ja jsem stravil cas na Googlu, cas upravou toho, co jsem nasel a cas psanim prispevku. Cas jsou penize, ze jo.
A aby bylo jasno, ja to reseni nepotrebuju. Az to budu nekdy potrebovat, tak si to vygoogluju a rozchodim. Ale chodi sem i jini, kterym se to muze hodit. Co me se tyka, jsem pouze zvedav na to, cim se finalni reseni lisi od meho, tedy jestli v pravidlech byla chyba.
Ja som o radu neziadal, hladal som niekeho kto mi to spravi! Ponukam som aj Vam za pracu peniaze ale ste mi ani neodpovedali. A to som prosil.
Vsetko bez odpovede.
Rady nepotrebujem, tych si vyguglim babilion.
-
@Ado: Jak myslite.
-
JardaP: tady (http://forum.root.cz/index.php?topic=11646.msg138445#msg138445) jsi vzal pravidlo z arch wiki (https://wiki.archlinux.org/index.php/Udev#Printers), to samoosobe by fungovalo rovnou, vytvari to podobne jako maji blokova zarizeni symlinky dle id a cesty ktere smeruji na lpX porty /dev/lp/by-id/ a /dev/lp/by-path/ (nicmene to by nebylo to co Ado potreboval)
pak jsi tam pridal 2 radky na vytvareni symlinku stara_tiskarna a kyocera:
SUBSYSTEM=="usb", ATTRS{serial}=="bcm2708_usb", SYMLINK+="stara_tiskarna"
SUBSYSTEM=="usb", ATTRS{serial}=="L4W3Y50214", SYMLINK+="kyocera"
nevim proc/jestli tohle nefungovalo, tedy u te zde ve vlakne uvedene EPSON kde jsi bral serial "bcm2708_usb" to asi nemohlo fungovat, protoze bcm2708_usb neni serial tiskarny, ale je to chip v Raspberry Pi na kterem jede usb radic...
nicmene v prostredi ktere sem mel pripravene Raspberry Pi s raspbian, byli pripojeny tiskarny "Kyocera FS-1120D" a "Star TSP143ECO", vytvoril sem pravidla ktere funguji a vytvareji symlink na stejnem miste jako je lpX, tedy v /dev/usb/ jmeno symlinku podle vyrobce (pomoci udevadm, ale slo by to nacitat i jednoduse naprimo pres sysfs), misto navazani na serial number sem zvolil product name, tedy pri vymene tiskarny za totoznej model neni treba nic menit...
SUBSYSTEM=="usbmisc", KERNEL=="lp*", ATTRS{product}=="Kyocera FS-1120D", SYMLINK+="usb/kiocera"
SUBSYSTEM=="usbmisc", KERNEL=="lp*", ATTRS{product}=="Star TSP143ECO", SYMLINK+="usb/star"
aby to mohl Ado automaticky nastavovat bez nejakych znalosti/trapeni na dalsich PC s dalsimi tiskarnami, pripadne to mohl privilegovat komukoliv, vytvoril sem skript kterej automaticky zjisti vlastnosti pripojenych tiskaren, zkontroluje jestli jsou pro ne vytvorena udev pravidla, pokud ne vytvori pravidlo viz vyse, skript sem napsal aby pri volani s parametry add/remove/info/debug/help mohl pridat pravidla (to funguje i bez add parametru aby slo volat oneline rovnou z webu, viz nize), odstranit pravidla vsech tiskaren, informovat se o pravidlech+nalezenejch_portech_tiskaren+nalezenejch_symlinku, vytvorit debug soubory pro nalezene porty (v pripade ze nebude fungovat detekce modelu/vyrobce), debug jsou veskere informace co o portu rekne udevadm), protoze z tech dvou tiskaren napr. Kyocera hlasi vyrobce s mezerou na konci "Kyocera " a Star hlasi vyrobce velkejma pismenama "STAR", tedy pred vytvarenim skript odstranuje momentalne mezeru na konci a prevadi na mala pismena...
skript je mozne po umisteni na server volat ze stanice jednim radkem, ktery ani skript neuklada, tedy jak sem puvodne psal:
wget https://server/skript -qO - | bash(bash z duvodu parametr expansions, tedy nahrazeni/odstraneni/zmenu velikosti casti promene bez pouziti sed/awk/tr...)
doufam ze jsi spokojen s reportem reseni problemu ;)
a ze ti doslo, ze nekdo hleda radu a je za ni vdecny, nekdo ale potrebuje reseni protoze na zkouseni i dobre minenych rad nebo silu nebo cas, proto sem reseni spojil s tim automaticky skriptem... i kdyz nedela nic jineho co by jsi zvladnul rucne, a jak si psal srani se skriptem povazujes za zbytecne :) i tak pravdepodobne skript pripadne pozdeji zverejnim...
-
@nobody: Aha, diky.
-
@nobody: LIKE +1