Script Bash: Gudanar da watsa Bandwidth ta atomatik

Sannun ku. Wannan shine matsayi na na biyu. Bana yawan rubuta rubutu sai dai inada wani abu mai kyau wanda zan raba kuma wannan lokacin ina da wani abu wanda tabbas da yawa zasuyi sha'awar shi.

A 'yan watannin da suka gabata ina tunanin yin rubutun don iyakance bandwidth na aikace-aikace, amma ina da wasu matsaloli da kurakurai da suka wahalar da ni, don haka na tayar da shakku na a cikin forum de <º DesdeLinux idan kowa yana da ra'ayi.

Don haka na barshi na wani lokaci kuma wata rana na yanke shawarar cigaba da rubutun. Na yi gwaji da yawa, na karanta abubuwa da yawa game da bash, kuma na sami ciwon kai a lokacinda na keɓance, amma na yi hakan !!

Ina da matukar gamsuwa kuma don haka na yanke shawarar raba karamin rubutun na tare da ku domin ku yi amfani da shi ku inganta shi. Na shirya yin lasisi a ƙarƙashin GPLv3, amma wannan shine aikina na farko don haka banida tabbacin yadda zanyi wannan (Ina buƙatar shawara daga duk wanda yayi hakan a baya).

Da kyau, yanzu zan bayyana abin da buƙata ta ke da abin da na yi don magance matsalar.

Halin da ake ciki
Ina da tsarin Intanet na 512Kbs, saboda haka nake amfani dashi transmission a matsayin abokin cinikin BitTorrent don zazzage manyan fayiloli (kamar su LibreOffice da wasu GNU / Linux distros). Da wannan saurin zazzagewar na daukar lokaci mai tsawo kuma matsalar ita ce lokacin amfani da burauzar gidan yanar gizo Firefox: yana ɗaukar lokaci mai tsayi don ɗorawa.

Lokacin da na haɗi da Intanet, na kunna loda watsawa da sauke iyakokin lokaci kuma jira Firefox ya ɗora, sa'annan in sake fara raƙuman ruwa. Kamar yadda zaku gani, yin hakan sau biyu yana da wahala. Ba tare da ambaton cewa wani lokacin nakan tsayar da dukkan rafuka kai tsaye sannan kuma in manta da sake kunna su, wanda ke haifar da ɓata lokaci mai mahimmanci don lodawa / sauke raƙuman.

Magani
Don wannan matsalar na yanke shawarar ƙirƙirar rubutu a cikin Bash wanda ke yin waɗannan abubuwa kamar haka:

1. Duba cewa Rarrabawa na gudana kuma ba a dakatar da kogi ba. Idan haka ne, sake kunna rafin.

2. Tabbatar cewa Firefox yana gudana. Sannan yana aikawa da aika KB / s ta karɓa ta kuma adana su cikin fayil.

3. Idan burauzar ta loda / zazzage KB / s ta wuce zangon tunani, za a canza saitunan Saukewa / saukarwa.

Wannan yana ba da damar cewa lokacin da ake son shiga shafin yanar gizo, lokacin da mai binciken ya aika da buƙata, shigar da fayil ɗin aikawa yana iyakance kuma lokacin da aka karɓi bayanan shafi, zazzagewa ya iyakance. Wannan yana aiki sosai yayin samun dama ga shafuka da yawa lokaci guda kuma sakamakon daidai yake da na Transmission a kashe.

Babban fa'ida shine cewa yana da cikakken aiki kuma baya buƙatar sa hannun na.

Rubutun
Kodayake ana iya amfani da shi don sarrafa amfani da bandwidth na kowane aikace-aikace, a halin yanzu an rubuta shi ne kawai don magance wata matsala ta musamman. Amma ba abu ne mai wahalar gaske yin gyare-gyare ba.

Bukatun
Don yin aiki yadda yakamata ya zama dole ayi amfani da aikace-aikacen «nethogs".

A wannan yanayin, yayin da rubutun ke aiki tare da Firefox da Transmission, ya zama dole a girka waɗannan aikace-aikacen, ban da "watsawa-nesa" wanda shine wanda ke canza ƙimar ɗorawa da sauke abubuwa na koguna. Ina kuma amfani da rubutun "awk". Na ambace shi saboda ban sani ba idan duk abubuwan rudanin sun girka.

An yi amfani da software
Jerin aikace-aikacen da rubutun yayi amfani dasu da kuma tsarin inda yake aiki.

• Debian GNU / Linux 6.0.8
• Linux 2.6.32-5-686
• Firefox 24.0
• Watsawa 2.03 (11030)
• Nethogs 0.7.0

Kisa
Dole ne a gudanar da shi azaman tushe saboda nethogs ana iya gudana tare da mai amfani kawai, amma watsa-nesa ana aiwatar dashi tare da mai amfani na yau da kullun ta hanyar umarnin nasa.

Rubutun yana amfani da umarnin Bash na ciki tarko Da wanne zai yiwu a maido da jigilar kayan aiki / sauke tsoffin dabi'u, idan aka dakatar da shi ta sigina (SIGINT (CTRL + c) ko SIGTERM.

Har yanzu ban tabbata ba yadda zan gudanar da shi a farawa kuma in tsaya lokacin da na rufe ko sake kunna kwamfutar. Ina tunanin sanya hanyar haɗi a cikin fayil ɗin /etc/rc.local amma ban sani ba idan zai yi aiki, kuma ban fahimci yadda / sauransu / aiki bain.d (Na ga wasu rubutun da suke can, har ma kwarangwal, amma ban fahimce su ba). Duk wanda zai iya taimaka min, zan yi matukar godiya.

To jama'a, hakane. Ina fatan cewa ƙaramar gudummawata tana da amfani a gare ku kuma kuna iya inganta shi idan kuna so. Zan yi farin ciki da karanta ra'ayoyinku da shawarwarinku har ma da shawarwari idan akwai matsalolin tsaro game da fayil ɗin (Ni ba mai tsara shirye-shirye ba ne, kawai ina yin abubuwa kaɗan daga lokaci zuwa lokaci).

Na san cewa da wasu gyare-gyare zai iya zama babban aiki a nan gaba, saboda ban san wani shirin da yake yin hakan ba. Misali ya faru gare ni cewa zan iya samun zane-zane a cikin tsantsa kuma don iya zaɓar aikace-aikacen da muke son fifitawa a cikin amfani da bandwidth (mashigin yanar gizo, manajan sabuntawa, canja wurin fayil, da sauransu) da ƙimomin tunani daban-daban. Ee, yana da ɗan buri, amma yana da amfani sosai.

Zaka iya zazzage rubutun a cikin kuje. Godiya sosai ga karatu !!


Bar tsokaci

Your email address ba za a buga. Bukata filayen suna alama da *

*

*

  1. Wanda ke da alhakin bayanan: Miguel Ángel Gatón
  2. Manufar bayanan: Sarrafa SPAM, sarrafa sharhi.
  3. Halacci: Yarda da yarda
  4. Sadarwar bayanan: Ba za a sanar da wasu bayanan ga wasu kamfanoni ba sai ta hanyar wajibcin doka.
  5. Ajiye bayanai: Bayanin yanar gizo wanda Occentus Networks (EU) suka dauki nauyi
  6. Hakkoki: A kowane lokaci zaka iyakance, dawo da share bayanan ka.

  1.   kari m

    Haba! Abin sha'awa 😀

    1.    lokacin3000 m

      A cikin kusurwar hagu na hagu kuna da zaɓi don iyakance bandwidth wanda Transmission yake cinye duka a lodawa da saukarwa. Tare da Transmit ban sami wata matsala ba tare da shi.

      1.    kuki m

        Amma wannan na atomatik ne, kuma akwai kuma Transmission ba tare da zane mai zane ba saboda ƙila ba ku da wannan aikin a kusa.

      2.    Joaquin m

        Barka dai yaya kake.
        Ee na riga na san hakan. Amma wannan shine ainihin abin da ba na so in yi.
        Ina da tsarin intanet mara kyau (512KB kuma shine mafi kyau a yankina).

        Tare da rubutun na, ban damu da yin komai da hannu ba. Ka yi tunanin cewa ka buɗe shafi a cikin burauzar kuma Rarrabawa tana mamaye duk bandwidth a wannan lokacin, don haka shafin yana ɗaukar ɗan lokaci don ɗorawa (aƙalla 1 ′, amma yana da zafi). Na gaji da "kunna iyakokin lokaci" kowane minti biyu. Wannan na atomatik ne kuma kusan nan take (yana bincika KB da aka aika kuma Firefox ya karɓa kowane daƙiƙa 5).

        Gaskiya a halin da nake ciki tare da wannan saurin intanet, yana da kyau. Hakanan ban san wani aikace-aikacen da ke yin wannan ba, in ba haka ba da ba ta yi shi ba. Waɗanda na gani kawai suna iyakance bandwidth, amma ba ta atomatik ba.

        Ina fatan na kasance a sarari. Na gode da karantawa!

        1.    Joaquin m

          Yi haƙuri, nayi kuskure. Su ba 512KB bane, maimakon haka sune Kbits. (Wato, 1/2 "Mega"). Matsakaicin abin da zan iya zazzagewa shi ne 75KB / s da loda 50KB / s. Cewa idan yanar gizo tayi kyau, in ba haka ba al'ada ce 48 da 23.

    2.    Joaquin m

      Gracias!

  2.   kuki m

    Abin sha'awa, Ina amfani da qBittorrent kuma ina amfani da sauyawa don iyaka.

    Matsayin ya yi kyau tare da waɗancan launuka 😉

    1.    Joaquin m

      Godiya ga launuka. Ba ni da ƙwarewa a ciki, da alama doguwa ce kuma mai banƙyama tare da rubutu da yawa.

  3.   Jorge m

    Da kaina, Ina amfani da watsa-daemon da Firefox tare da aikace-aikacen aikace-aikacen kai tsaye, don haka bana zagayawa da shirye-shiryen waje ko mantawa da cigaba da raƙuman ruwa ko kunkuru da aka kunna (kuma zan iya sarrafa shi daga wayata). Don fara sabis, ƙara mai amfani (misali: adduser –disabil-password nethogs), ƙirƙiri fayil ɗin rubutu don daemon a cikin /etc/init.d tare da suna (misali: nethogs-daemon) sannan a cikin nau'in debian "sabuntawa -rc.d nethogs-daemon tsararru "don ya fara da kansa.

    Fayil ɗin rubutu shima bash rubutun ne, wanda zaku iya haɗa rubutun ku zuwa.
    Duba ko wannan zai iya taimaka muku, ana iya amfani dashi don fara watsa-daemon, ana iya amfani dashi don fara nethogs https://trac.transmissionbt.com/wiki/Scripts/initd

    1.    Joaquin m

      Hello!
      Bari mu gani idan na fahimta: wannan shine farawa Transmission a farawa kuma dakatar dashi lokacin rufewa ko sake farawa. Tare da wannan bani da wata matsala tunda koyaushe yana farawa da kansa kuma yana farawa saukarwa (Na ƙara shi zuwa aikace-aikacen da aka fara a Xfce).

      Matsalata ita ce idan na sanya rubutun a rc.local ko init.d Ban san yadda kwamfutar ke dakatar da rubutun ba. Wato, a bayyane yayin rufewa / sake kunna kwamfutar, duk matakan sun ƙare (kuma tare da su Transmission da Nethogs su ma) amma ban san abin da zai faru da rubutun na ba.

      Kuma me yasa hakan ke damuna? Rubutun ya ƙirƙiri fayil a cikin / tmp kuma yana sarrafa saurin watsawa. Idan na kunna ta a cikin tashar kuma kwatsam na tsayar da ita (misali tare da CTRL + c), rubutun, kafin rufewa, ya dawo da saurin tsoho (idan ya cancanta) sannan ya tsayar da Nethogs kuma ya share fayil ɗin daga / tmp. Nayi ƙoƙari na sanya shi a matsayin "ƙwararre" kamar yadda ya yiwu don kada ya bar kowane sako sako ko tsari na baya.

      Game da abin da kuka ce, Ban fahimci abin da "live aikace-aikacen tab" yake ba.

      1.    Jorge m

        Shafin aikace-aikace shafi ne na dindindin, koyaushe a buɗe yake kuma an rage girman shi a cikin Firefox http://i.imgur.com/a5i0aP3.png (menu na mahallin kan shafin, danna kan «manna shafin»). Lokacin da matan suka aiko da siginar TERM, sai su dan jira, har sai bayan sun fita, sannan su adana bayanan su. Lura cewa a cikin hanyar da na bayar a baya lokacin da nake fitowa daga rubutun ya kira farawa-daemon kuma ya gaya wa watsawa ya daina, a can za ku iya liƙa "killall nethogs" da abin da ke cikin StopScript. Rubutun init a cikin wannan yanayin dole ne ku kira shi azaman tushe maimakon takamaiman mai amfani, tunda yana buƙatar dama.

        1.    Joaquin m

          To godiya ga tip. Da zaran na sami lokaci sai in gwada shi!

  4.   facindo m

    mai girma, na sami wannan matsalar tunda koda kuna da haɗin haɗi, an tilasta muku iyakance watsa yayin da kuke son lilo kuma ta haka "ɓata" lokaci.
    Zan gwada shi lokacin da zan iya. Gaisuwa da godiya !!

    1.    Joaquin m

      Na gode maka! Fata wannan zai iya taimaka muku!

      1.    facindo m

        Sannu kuma Joaquin. Na ga kuna kulawa da amsa duk maganganun don haka zan yi amfani da wannan kuma zan yi muku wasu tambayoyi na rookie.
        Na farko, ta yaya zan sani idan ina da rubutun "awk"? Ina amfani da Debian 7.2.
        Na biyu, ban san abin da zan yi da lambar manna ba. Dole ne in kama editan rubutu kuma in adana shi a fayil ɗin da ake kira "bandwidth-controller.sh" sannan in gudanar da shi azaman "./band-width-control.sh". Wannan shine bangaren da nayi asara.
        Na uku: Lokacin da ka ce ka tafiyar da shi a matsayin tushe, shin ya zama dole a canza daga mai amfani zuwa tushen ko ya isa tare da sudo?

        Idan kuna da wani karatun da zaku bani shawara akan batun, zan yaba masa.
        Na gode!

  5.   giskar m

    Wannan shine dalilin da yasa koyaushe nake cire Transmission kuma ina sanya Ruwan Tufana. Da kyau, don wannan da kuma wasu ƙarin abubuwan da Ruwan Tufana ke ba ni wanda ɗayan bai kawo ba.

    1.    Joaquin m

      Barka dai, ban san ambaliyar ba. Babban matsalata ita ce sabis na intanet. Da wannan na matse shi sosai.

  6.   Panda m

    Barka dai. bandwidth ɗina ma an iyakance shi don haka na gwada wannan rubutun. Amma ba ya aiki. kuskuren kamar yana cikin umarnin nethogs -t. ya dawo da kuskuren "Jiran fakiti na farko ya zo (duba sourceforge.net bug 1019381)" tuni an gwada mint, archlinux kuma babu komai. Menene wancan umarnin ya kamata ya dawo? Ina tsammanin ya kamata in buga a sarari rubutu bandwidth da kowane aikace-aikace yake amfani da shi. Shin kun san wani shirin da zai baku damar sauraron hanyar sadarwar?

    1.    Joaquin m

      Barka dai yaya kake.
      Wannan kwaro ne na Nethogs. Ya bayyana a gare ni kuma, amma yana aiki ko ta yaya.

      Abin da Nethogs yake yi shine nuna matakan da ke cinye mafi yawan bandwidth, a ainihin lokacin. A cikin rubutun, ana adana fitowar sa a cikin fayil ɗin rubutu "net.list", don haka za'a iya tace shi daga baya.

      Rubutun yana aiki kawai tare da Transmission (abokin ciniki BitTorrent) da Firefox (mashigin yanar gizo). Abin da yake yi shine iyakance bandwidth na Transmission lokacin da Firefox ke loda shafin yanar gizo. Kuna buƙatar shigar: Nethogs, Transmission, Transmission-remote and Firefox.

      An bayyana duka a cikin gidan, don haka ban san menene matsalar ku ba.

      PS: Da fatan za a rubuta daidai kuma a inganta rubutun ku. Sharhi ne, ba sakon tes ba.

      1.    Panda m

        rubutun ba ya aiki a gare ni. buga wannan kuskuren saƙon sau da yawa. gudu "nethogs -t" a cikin tashar don ganin abin da yake yi amma baya buga komai, kuskuren kawai. a pc dina baya aiki. Ina tunanin cewa yakamata ta buga wani abu makamancin wanda yake bugawa yayin aiwatar dashi ba tare da -t ba, nuna ayyukan da bandwidth. amma a wurina ba ya buga kowane irin wancan. wanne distro kuka yi amfani da shi wajen bunkasa rubutun?

        1.    Joaquin m

          Idan ka duba sosai, sakon yana dauke da dukkan manhajojin da akayi amfani dasu da ire-irensu. Ban san dalilin kuskuren ba, amma yana bayyana gareni duk lokacin da "nethogs -t" ke gudana. A cikin rubutun zai faru kowane 2 ″.

          Yana iya zama cewa lokacin da kake gudanar da yanar gizo, babu wani tsari da ake amfani da hanyar sadarwar kuma wannan shine dalilin da ya sa baka sami komai ba.

          Rubutun dole ne a gudana azaman tushe saboda nethogs yana buƙatar wannan mai amfani don aiki.

          yanzu na tuna wani abu mai mahimmanci kuma na san dalilin da ya sa ba ya muku amfani:

          DOLE NE KA BUGA rubutun ka canza sunan mai amfani na al'ada. A cikin rubutun ana kiran sa "joaquin". Dole ne ku canza shi zuwa sunan mai amfani.

          Yi haƙuri ban gane hakan ba, ya kamata in sanya sunan a cikin wani canji. Abinda yake shine banyi tunanin sanya shi gaba daya ba, kawai dai ina so in nuna muku shi domin ku ganshi kuma wadanda suke so zasu iya samun dabarun yadda zasu yi shi. Banyi shi da niyyar cewa zata yi aiki akan kowace kwamfuta ba, hakan yana daukar lokaci kuma ban san yadda ake shiri ba, wasu abubuwa suna faruwa dani.

          Sa'a mai kyau, komai ya sake tambaya. Kuma don Allah a sake karanta post da sharhi na rubutun.

  7.   facindo m

    Sannu Joaquín, gaya mani mai zuwa:

    watsa-nesa: (http://localhost:9091/transmission/rpc/) An kasa haɗawa zuwa sabar
    ioctl ya gaza yayin kafa IP na gida don zaɓin na'urar eth0. Kuna iya tantance na'urar akan layin umarni.

    wani ra'ayi ?? godiya!

    1.    Joaquin m

      Barka dai yaya kake.
      Gafara dai ban sani ba 😀
      Daga abin da na fahimci kuskuren ya ce, matsala ce tare da ioctl, amma ban san abin da wannan ba.

      Wataƙila kuna iya ƙoƙarin dakatar da rubutun kuma ku gani idan watsa-nesa yana aiki tare da wasu zaɓuɓɓukansa (karanta shafin mutum tare da umarnin "mutum").