Izindlela ezi-5 zokunqamula nokuxhuma idivayisi ye-USB ngaphandle kokukhipha izandla zakho kukhibhodi

Ezikhathini eziningi, lapho sisebenzisa ikhompyutha yethu sinqamula idivayisi ye-USB (ngokuphepha, njengoba kufanele kube njalo) futhi, ngokushesha ngemuva kwalokho, siyabona ukuthi sikhohliwe ukukopisha ifayela noma ukuthi bekufanele siqiniseke ukuthi idatha kweyunithi yethu. Kulezi zimo, imvamisa kuyasiza kakhulu ukunqamula amadrayivu e-USB lapho sisebenza kude.

Njengoba sikhiphe le divayisi, asisayiboni kuhlu lwethu lwamadivayisi, kepha i-hard drive noma i-pendrive isaxhunywe ethekwini le-USB, futhi ekusakazweni okuningi namuhla, sikhiphe idrayivu ngokuphepha, asiyiboni futhi Asikwazi ukwenza khuphuka kusuka esigungwini sethu. Isixazululo esisheshayo ukunqamula ikhebula bese uyixhuma kabusha, kwezinye izimo, kungenxa yobuvila bokuvuka noma ngenxa yokuthi sifinyelela ikhompyutha esingaphambi kwayo futhi akekho noyedwa oseduze, asikwazi ukukwenza.

Imininingwane emayelana namadivayisi e-USB

Ngaphambi kokuthi siqale, ake sibone ukuthi singaluthola kanjani ulwazi ngamadivayisi we-USB axhunywe ohlelweni. Kulokhu, singasebenzisa lsusb, ezoklelisa amadivayisi axhunyiwe njengamanje. Ngibeka izibonelo zalokho engikutholayo kukhompyutha yami njengamanje, kepha mhlawumbe kuhluke kakhulu kulokho okutholayo:

$ lsusb Bus 002 Device 001: ID 1d6b: 0003 Linux Foundation 3.0 root hub Bus 001 Device 006: ID 8087: 0a2a Intel Corp. Bus 001 Device 007: ID 046d: c52b Logitech, Inc. Unifying Receiver Bus 001 Device 005: ID 1a40 0101 Terminus Technology Inc. Hub Bus 001 Device 010: ID 125f: c93a A-DATA Technology Co., Ltd. 4GB Pen Drive Bus 001 Device 003: ID 04f2: b424 Chicony Electronics Co., Ltd Bus 001 Idivayisi 001: ID 1d6b : 0002 Linux Foundation 2.0 ihabhu yezimpande

Uma sifuna ulwazi oluthe xaxa, singasebenzisa i - t modifier ezosikhombisa okukhiphayo ngesimo sesihlahla esinolwazi ngamamojula:

$ lsusb -t /: Ibhasi 02 Port 1: Dev 1, Class = root_hub, Driver = xhci_hcd / 8p, 5000M /: Bus 01 Port 1: Dev 1, Class = root_hub, Driver = xhci_hcd / 16p, 480M | __ IPort 4: Dev 3, Uma 0, Class = Video, Driver = uvcvideo, 480M | __ Port 4: Dev 3, If 1, Class = Video, Driver = uvcvideo, 480M | __ Port 5: Dev 10, If 0, Class = Mass Storage, Driver = usb-storage, 480M | __ Port 6: Dev 5, If 0, Class = Hub, Driver = hub / 4p, 12M | __ Port 4: Dev 7, If 0, Class = Human Interface Device, Umshayeli = usbhid, 12M | __ Port 4: Dev 7, If 1, Class = Human Interface Device, Driver = usbhid, 12M | __ Port 4: Dev 7, If 2, Class = Human Interface Device, Driver = usbhid, 12M | __ Port 9: Dev 6, If 0, Class = Wireless, Driver = btusb, 12M | __ Port 9: Dev 6, If 1, Class = Wireless, Driver = btusb, 12M

Uma sifuna imininingwane eminingi, singasebenzisa lsusb -v (okukhiphayo kukhulu kakhulu), singakwazi futhi, ngokwesibonelo, ukwazi amandla amakhulu ahanjiswa kudivayisi, ngale ndlela elandelayo:

$ lsusb -v 2> / dev / null | egrep "^ Bus | MaxPower" Bus 002 Device 001: ID 1d6b: 0003 Linux Foundation 3.0 root hub MaxPower 0mA Bus 001 Device 006: ID 8087: 0a2a Intel Corp. MaxPower 100mA Bus 001 Idivayisi 007: ID 046d: c52b Logitech, Inc. Ukuhlanganisa Isamukeli iMaxPower 98mA Bus 001 Idivayisi 005: ID 1a40: 0101 Terminus Technology Inc. Hub MaxPower 100mA Bus 001 Idivayisi 010: ID 125f: c93a A-DATA Technology Co., Ltd. IPen Drive MaxPower 4mA Bus 480 Device 001: ID 003f04: b2 Chicony Electronics Co., Ltd MaxPower 424mA Bus 500 Device 001: ID 001d1b: 6 Linux Foundation 0002 hub hub MaxPower 2.0mA

Eminye imiyalo ewusizo kakhulu yile usb-amadivayisi, hwinfo, noma, ngokwesibonelo, uma sinendlela yedivayisi (ngaphakathi / i-dev /), singacela isistimu ngalo lonke ulwazi olungaba khona ngayo kanye nezinhlelo ezisezingeni eliphansi okufanele zingene kuzo. Isibonelo, uma sixhuma i-hard disk ye-USB, ukuze sikwazi ukubona ukuthi idivayisi isetshenziswa kanjani, sidinga umshayeli we-SCSI (ngokuba / dev / sdX), futhi sidinga umshayeli wesitoreji se-USB, osebenza ngechweba le-USB, ihabhu, exhunywe ethekwini le-PCI, phakathi kwezinye izinhlelo eziphakathi. Konke ebesingakubona nakho

$ udevadm info --query = path --name = / dev / sdX --attribute-walk

o

$ udevadm imininingwane -a -n / dev / sdX

Uma sifuna ukungenela, singangena futhi / sys / ibhasi / usb futhi sibheke konke okukhona, sizobona imininingwane eminingi, kodwa ngenhlanhla imiyalo engenhla ihlukanisa lonke lolu lwazi.

Amalungelo namadivayisi

Ukwenza lo msebenzi kuzodingeka sazi ukuthi iyiphi idivayisi esizoya kuyo xhuma kabusha. Ukwenza lokhu, singaqhuba:

$ dmesg | umsila [Thu Nov 24 19:50:04 2016] sd 7: 0: 0: 0: Okunamathiselwe i-scsi generic sg3 type 0 [798339.431677] sd 7: 0: 0: 0: [sdc] 15806464 512-byte block blocks: ( 8.09 GB / 7.54 GiB) [798339.431840] sd 7: 0: 0: 0: [sdc] Bhala Protect icishiwe [798339.431848] sd 7: 0: 0: 0: [sdc] Mode Sense: 00 00 00 00 [798339.431988] sd 7: 0: 0: 0: [sdc] Ukucela idatha yesilondolozi kwehlulekile [798339.431996] sd 7: 0: 0: 0: [sdc] Ukucabanga i-cache yedrayivu: bhala ku- [798339.434157] sdc: sdc1 sdc2 [798339.446812] sd 7 : 0: 0: 0: [sdc] Okunamathiselwe kwi-SCSI disk ekhiphekayo [798360.808588] ISO 9660 Izandiso: Microsoft Joliet Level 3 [798360.809353] ISO 9660 Izandiso: RRIP_1991A

Kulokhu okukhiphayo, sizobona ukuthi idivayisi esisebenza nayo iyi- i-sdc (i-sdc1 ne-sdc2 kuzoba ukwahlukaniswa ngaphakathi kwaleyo disk). Ngezibonelo engizosebenzisa le divayisi, esimweni sakho kuzodingeka ubone ngeso lengqondo ukuthi iyiphi i-akhawunti onayo.

Kulezi zibonelo ezingezansi ngizosebenzisa sudo ukwenza imiyalo ngamalungelo we izimpande. Noma kunganele ukuba nomsebenzisi onemvume eyanele. Uma sifuna ukubona amalungelo adingekayo, vele wenze ls kudivayisi:

$ ls -latr / dev / sdc brw-rw ---- 1 impande disk 8, 32 Nov 24 19:50 / dev / sdc

Lapho sibona ukuthi umnikazi uyimpande neqembu disk. Kungwenela ukuba nomsebenzisi okuyi-disk yeqembu.

Indlela 1. Yiphathe njengeCD / DVD

Kuyinto elula kunazo zonke. Impela uma ngabe usebenzisa i-GNU / Linux iminyaka, lapho usebenza ne-CD-ROM noma i-DVD usebenzise umyalo wokukhipha. Ukukhishwa kusetshenziselwe ukuvula i-CDROM futhi ukukhipha -t kwasetshenziswa ukuvala ithileyi. Yebo, uma senza lokhu ngaphambi kwedivayisi ye-USB:

$ sudo khipha -t / dev / sdc

Idivayisi kufanele ibonakale sengathi siyixhume futhi.

Indlela 2. Akuxhumekile futhi Kuxhunyiwe ku-Virtual

Kwamanye amasistimu (inqobo nje uma i-hardware iyisekela), lapho ukhipha ngokuphepha idivayisi ye-USB, idivayisi iyeka ukukhanyisa futhi idivayisi ayisabonakali. Kuyafana nalapho wenza:

udisksctl amandla-off -b / dev / sdc

Kulokhu, / dev / sdc kuyidivayisi yami, futhi ngalo myalo kulingise ukunqanyulwa kwamandla okubonakalayo.

Inkinga ukuthi manje / i-dev / sdc ayikho, futhi ngaphezulu, uma sibheka i-dmesg, sizothola into enjengale:

$ dmesg | umsila [281954.693298] i-usb 1-5: Ukunqamula i-USB, inombolo yedivayisi engu-3

Ngakho-ke uma sizama ngendlela ye- khipha ngeke kusebenze. Qaphela: ngigqamisile i-usb 1-5 futhi sizobona ukuthi kungani kungekudala.

Uma usebenza kude, lokhu kungaba umqondo omuhle. Cabanga ukuthi unamadrayivu e-USB anamathiselwe kusipele. Uma wenza amakhophi, kuhle ukuthi uhlelo lwazi ukuthi kukhona amadiski axhumekile kepha, lapho singawasebenzisi ngakolunye uhlangothi kufanele konga amandla futhi uvikele ukugqokwa kwama-disc, ngakho-ke kungcono ukusika okukhona, ngakolunye uhlangothi, asifuni ukuthi izinhlelo zokusebenza ezinobungozi zibone ukuthi zikhona lawa madiski ukuze angatheleleki. (Yebo, ku-GNU / Linux kunamagciwane).

Siwaxhuma kanjani amanje manje?

Kufanele sishayele ichweba le-USB, ngoba lokhu kukhona iphrojekthi ebizwa amandla (Ngixhuma ekuphambukeni kwephrojekthi yokuqala ngoba lapha kulungiswe isiphazamisi esingasusa okukhona manje kumadivayisi amaningi hhayi le esiyifunayo kuphela). Kunamaphrojekthi amaningi (njenge uhubctl), kepha lokhu akunakho ukuncika kokuthi sizohlanganisa nini, futhi kuyifayela le-hubpower.c nje.
Okokuqala, siyayihlanganisa,

$ gcc -o hubpower hubpower.c

Manje, uyazikhumbula izinombolo ezibhalwe ngokugqamile kusuka ku- dmesgHhayi-ke, sizozisebenzisa, kuzofanele sinqamule idivayisi bese siyixhuma kabusha, kanjena:

$ sudo ./hubpower 1: 1 power 5 off Port 5 status: 0000 Power-Off $ sudo ./hubpower 1: 1 power 5 on Port 5 status: 0100 Power-On

Uma ngabe idivayisi ingasitholi, singazama ukwenza:

$ sudo ./hubpower 1: 1 bopha isicelo se-Bind-driver esithunyelwe ku-kernel

Ngale ndlela, sizobona futhi idivayisi yethu exhunyiwe ye-USB.

Uma singafuni uhlelo lwe-C ... nginalo nge-perl

Uhlelo lwe-C kunzima ukuluhlanganisa nokuhlola uma lokho esizokwenza kulula kakhulu, ngakho-ke singazama leli chweba elincane emigqeni eyi-10 eyenziwe nge-perl:

#! / bin / perl zidinga i- "sys / ioctl.ph"; $ device = "05"; vula (my $ usbdev,"> "," / dev / bus / usb/ 001/001 "); $ data = pack ("H *", "23010800". $ device. "000000FFFFFF8813"); ioctl ($ usbdev, 0xC0185500, idatha yedatha); $ data = pack ("H *", "23030800". $ device. "000000FFFFFF8813"); ioctl ($ usbdev, 0xC0185500, idatha yedatha); vala ($ usbdev);

Kumele sihloniphe $ device, inombolo ethekwini (kimi bekungu-5), iyinani le-hexadecimal, ngakho-ke i-10 izoba ngu-A, i-11 ibe ngu-B, i-15 ibe ngu-F, i-16 ibe yi-10 ... Futhi kufanele siqaphe idivayisi nebhasi, esikuthola kusuka / dev / ibhasi / usb /001/001, izinombolo kumele zibe namaqanda aholayo njengoba sibiza lelo fayela.

Njengoba sikwazi ukubona, ukhiye uku-ioctl (), kungumsebenzi osebenzisa imingcele yedivayisi kusuka kufayela elikhethekile kuhlelo lwefayela. Phakathi kwamanani we-hexadecimal asetshenzisiwe, sithola 0xC0185500, okuhlala kubizwa nge-USBDEVFS_CONTROL esizothumela ngayo umyalo wokulawula kudivayisi ye-USB, Amanye amakhodi ngesicelo sokunqanyulwa nokuxhuma (ungathola eminye imininingwane kuhlelo olwenziwe ku-C).

Indlela 3. Ukufihla nokubonisa idivayisi

Enye indlela yokunqamula idivayisi kungaba:

echo '1-5' | Sudo tee / sys / bus / usb / drivers / usb / unbind

Futhi singakuthola ngokwenza:

echo '1-5' | Sudo tee / sys / bus / usb / drivers / usb / bind

Le ndlela ayibangeli ukunqanyulwa okuphelele kwedivayisi. Kwenza kuphela ukuthi uhlelo lokusebenza lungakhulumi nayo futhi amadivayisi amaningi, lapho ikhompyutha ingafuni ukwazi lutho ngawo, afakwa kumodi yamandla aphansi, ngoba ngeke sicele lutho.

Indlela 4. Ukugunyazwa Kwedivayisi

Okubi ngale ndlela ukuthi kumasistimu amaningi amadivayisi amaningi angavalwa okwesikhashana, okungagcini nje ngalokho esikudingayo, kepha futhi sihlasela ihabhu lonke le-USB. Ngokwesibonelo:

$ echo 0 | i-sudo tee / sys / ibhasi / i-usb / amadivayisi / i-usb1 / igunyaziwe i- $ echo 1 | I-sudo tee / sys / ibhasi / usb / amadivayisi / usb1 / egunyaziwe

Okuthi, vele, singaqhuba yonke into ilandelana:

$ echo 0 | i-sudo tee / sys / ibhasi / i-usb / amadivayisi / i-usb1 / igunyaziwe; echo 1 | I-sudo tee / sys / ibhasi / usb / amadivayisi / usb1 / egunyaziwe

Kufanele siqaphele, uma kunamadiski amaningi axhunywe echwebeni elifanayo le-USB (futhi cishe ngaso sonke isikhathi kumakhompyutha ethu, amachweba e-USB amaningi kunalawo esiwabonayo axhunywe ngaphakathi kuhabhu, ngakho-ke kunamaqembu amachweba ane-USB efanayo ubaba, akubeke ngandlela thile.

Indlela 5. Qalisa kabusha uhlelo olungaphansi lwe-USB

Uma sifuna ukuqala kabusha uhlelo olungaphansi lwe-USB. Okusho ukuthi, uvuselele wonke amadivayisi e-USB, njengokuwaxhuma nokuwaxhuma wonke, ngakolunye uhlangothi singalanda siphinde silayishe imodyuli ye-USB kernel

$ sudo modprobe -r ehci_hcd; I-sudo modprobe ehci_hcd #Ye-USB2 $ sudo modprobe -r xhci_hcd; I-sudo modprobe xhci_hcd #Ye-USB3

Yize okunye ukusatshalaliswa, izinhlobo zakamuva ze-Ubuntu nezinye ezisuselwe zifakiwe, zine- Amamojula we-USB ahlanganisiwe futhi azikwazi ukulandwa. Ngakolunye uhlangothi, isistimu kungenzeka ingasivumeli ukuthi siyilande ngoba iyasetshenziswa ngenxa yamanye amamojula (amaphrinta, isitoreji, amadivayisi we-interface, njll.), Futhi uma siqala ukulanda amamojula futhi siphula izinto, kungadingeka ukuthi siqale kabusha ikhompyutha ekugcineni. Ngakho-ke, ngenye indlela singenza:

$ echo '0000:00:14.5'| I-sudo tee / sys / ibhasi / i-pci / abashayeli / i-xhci_hcd / unbind $ echo '0000:00:14.5'| i-sudo tee / sys / ibhasi / i-pci / abashayeli / i-xhci_hcd / bind

Ukuthola idivayisi yethu, singenza ls ngaphakathi / sys / bus / pci / drivers / xhci_hcd, izinto eziningi zizovela, kufanele sibheke eyodwa ebukeka kanjena aaaa: bb: cc: dd.e. Imbobo yakho ye-USB kungenzeka ingafiki njenge-xhci_hcd (USB3), kepha kunalokho i-ehci_hcd (USB2)


Shiya umbono wakho

Ikheli lakho le ngeke ishicilelwe. Ezidingekayo ibhalwe nge *

*

*

  1. Ubhekele imininingwane: Miguel Ángel Gatón
  2. Inhloso yedatha: Lawula Ugaxekile, ukuphathwa kwamazwana.
  3. Ukusemthethweni: Imvume yakho
  4. Ukuxhumana kwemininingwane: Imininingwane ngeke idluliselwe kubantu besithathu ngaphandle kwesibopho esisemthethweni.
  5. Isitoreji sedatha: Idatabase ebanjwe yi-Occentus Networks (EU)
  6. Amalungelo: Nganoma yisiphi isikhathi ungakhawulela, uthole futhi ususe imininingwane yakho.

  1.   Cristian kusho

    Indatshana enhle kakhulu!

    1.    umagazine kusho

      Ngiyabonga kakhulu Cristian! Ngiyethemba ukuthole kuwusizo.

  2.   U-Antonio Juan kusho

    Kule ndatshana akushiwo ukuthi noma nini lapho uzokubeka khona, kungakolunye uhlangothi kolunembile futhi kufanele ukuguqule ... hehehe. Indatshana enhle.

    1.    umagazine kusho

      Ngiyabonga u-Antonio Juan! Bheka, awazi ukuthi kukangaki lokhu kwenzeke kimi ngenkathi ngizama konke engikubeke eposini! 🙂

  3.   I-ROMSAT kusho

    Kuhle. Into ephezulu. Kufanele kube nesihloko esithi: "Funda ngohlelo lwe-Linux ngokumane ukhiphe izixhumi uphinde ufake i-USB stick yakho." Halala.
    Ukubingelela okuvela eMalaga.

    1.    umagazine kusho

      Yebo, angazi noma othile uzoqala ukuhlela ku-C nokufinyelela amadivayisi kusuka kulokhu okuthunyelwe! Futhi kusuka eMalaga !! Sikhona yonke indawo 🙂

  4.   I-HO2Gi kusho

    Isihloko esihlaba umxhwele. Udlulile ngokweqile ngezinto ezinjalo.

    1.    umagazine kusho

      Siyabonga HO2Gi !! Kubhulogi lami siqu ( http://totaki.com/poesiabinaria ) kukhona nokufundisa okuningi kwesitayela 🙂

  5.   I-Atahualpa kusho

    ngiyabonga kakhulu mngani. Ngiqala ku-linux, ikakhulukazi ku-linux mint, futhi nginenkinga elandelayo: kukhonsoli ngiyabona ukuthi ifoni yami ixhunywe emshinini kodwa hhayi kwimenenja yefayela. Futhi-ke angikwazi ukuyisebenzisa njengemodemu ukuxhuma ku-inthanethi. Yini engingayenza?

    1.    UGaspar Fernandez kusho

      Kunezingcingo ezingakuvumeli ukuthi uxhume njengemodemu, kepha ungenza ukusebenzisa iTethering

  6.   Milazzo kusho

    Imibhalo emihle kakhulu!
    Siyabonga ngokuthatha isikhathi sakho wabelane ngolwazi.
    Ngiyisebenzisa njengesethenjwa solunye uhlobo lwenkinga enginayo: Ukunqanyulwa kwamachweba e-USB ku-Ubuntu (# 42 ~ precise1-Ubuntu SMP Wed Aug 14 15:31:16 UTC 2013)
    Kufika isikhathi lapho iSistimu iphonsa u -110 ku-dmesg bese iqala kabusha i-PC, kucatshangwa ukuthi ukwehluleka kungenxa yokuntuleka kwamandla ku-USB lapho idivayisi ixhunywe khona (i-USB3.0).

    Manje ngisebenzisa i-lsusb -v ukuqinisekisa izinga lamandla ledivayisi kepha iphonsa i-2mA, okungenangqondo ngokuphelele ... ama-LED kuphela asebenzisa okungaphezulu kwalokho ...

    Ngixhuma imodemu ye-huawei E4 USB-8372G, kepha i-maxpower ikhombisa i-2mA, okuyinto engakholeki, manje ukungabaza sekuguqukile futhi sekuvele abanye:
    Ingabe iMaxPower yimfanelo eza ngokuzenzakalela kudivayisi noma ku-OS?
    Ingabe yipharamitha yamandla amakhulu ezolethwa yichweba le-usb?
    Uma kwenzeka ube yipharamitha
    Ingabe le pharamitha ingashintshwa futhi isethwe kokuphakeme okunikezwe yichweba le-USB (900mAh- 3.0 / 500mAh- 2.0)?
    Uma kwenzeka kungeyona ipharamitha,
    Ingabe yinani lesilinganiso sangempela sesikhathi sokusetshenziswa kwe-USB (akunakwenzeka)?
    Uma kungenye indlela ngicela ungichazele ngoba nginokungabaza mayelana nolwazi oluyingqayizivele.

    Nginokungabaza okuningi maqondana naleli nani leMaxPower, uma uneminye imininingwane engingabonga kakhulu.

    lsusb -v 2> / dev / null | egrep "^ Ibhasi | I-MaxPower | bDeviceClass | iProduct"

    Ibhasi 002 Idivayisi 006: ID 1a86: 7523QinHeng Electronics HL-340 i-adaptha ye-USB-Serial
    bDeviceClass 255 Umthengisi Specific Class
    iProduct 2 USB2.0-Serial
    UMaxPower 96mA
    Ibhasi 002 Idivayisi 008: ID 12d1: 14db Huawei Technologies Co., Ltd.
    bDeviceClass 2 Ukuxhumana
    iProduct 2 HUAWEI_MOBILE
    UMaxPower 2mA

  7.   Anonimo kusho

    Kungasetshenziswa kumawindi?

  8.   Chelo kusho

    Ngibonga kakhulu. Ngamandla e-udisksctl -b / dev / sdc kudiski lami langaphandle kwakwanele ukuxazulula ikhanda. Bekungeke yini kube ngcono uma ukwehla kunenketho yokwenza lokhu uqobo?

  9.   Marisa kusho

    Unkulunkulu yini le! Ngabe kukhona ofunde yonke le ntando? Futhi ngaphezulu ngemuva kwepuleti namanje asazi ukuthi singasicisha kanjani isikhombimsebenzisi somsindo se-DAC / USB, iphrinta, ithebhulethi yemidwebo ... ngamafuphi, akukho lutho olungeyona i-spike noma idiski yangaphandle. Yeka ukuchitha isikhathi ...