Script Bash: fifehezana ny fantsom-pandefasana fantsom-pifandraisana

Salama daholo. Ity ny lahatsoratro faharoa. Tsy matetika aho no manoratra lahatsoratra raha tsy hoe misy zavatra tsara zaraina ary amin'ity indray mitoraka ity dia manana zavatra azo antoka fa liana amin'ny maro aho.

Volana vitsivitsy lasa izay dia nieritreritra ny hanao script hamerana ny bandwidth an'ny rindranasa aho, saingy nanana olana sy hadisoana vitsivitsy izay nanasarotra ahy, ka dia nampipoitra ny fisalasalako tao amin'ny Forum de <º Avy amin'ny Linux sanatria misy manana hevitra.

Ka navelako kelikely ary indray andro dia nanapa-kevitra ny hamerina ilay script aho. Nanao fitsapana be dia be aho, namaky betsaka momba ny bash, ary narary an-doha tamin'ny fotoanako, fa vitako izany !!

Manana fahafaham-po lehibe aho ary noho izany dia nanapa-kevitra ny hizara aminao ny sangan'asako kely hahafahanao mampiasa sy manatsara azy. Mikasa ny hanome fahazoan-dàlana azy amin'ny alàlan'ny GPLv3 aho, saingy izy io no tetikasako voalohany ka tsy azoko antoka hoe ahoana no hanaovana an'io (mila torohevitra avy amin'izay nanao azy io aho taloha).

Ankehitriny, hanazava ny zavatra nilaiko sy ny nataoko aho hamahana ilay olana.

Zava-misy
Manana drafitra Internet 512Kbs aho, noho izany ampiasaiko Transmission amin'ny maha-mpanjifa BitTorrent anao hisintona rakitra marobe (toy ny LibreOffice sy ny distro GNU / Linux sasany). Miaraka amin'izany hafainganana izany dia maharitra fotoana maharitra ny fampidinana ary ny olana dia rehefa mampiasa ny Internet browser Firefox: mila fotoana lava vao entina.

Rehefa mifandray amin'ny Internet aho dia mampihetsika ny fampitana fampidinana sy misintona ny fetr'andro ary miandry ny famoahana Firefox, avy eo manomboka indray ny riaka. Araka ny ho hitanao dia mandreraka ny fanaovana izany indroa. Raha tsy hiteny aho dia miato mivantana amin'ireo renirano rehetra aho indraindray ary manadino ny mamerina azy ireo indray, mitarika fotoana very maina amin'ny fampidinana / fisintomana riaka.

vahaolana
Noho io olana io dia nanapa-kevitra ny hamorona script amin'ny Bash aho, izay manao izao manaraka izao:

1. Hamarino raha mandeha ny Transmission ary tsy mijanona ny riaka. Raha izany dia avereno indray ny ony.

2. Hamarino fa mandeha i Firefox. Avy eo izy dia mandefa ny KB / s ary voarainy ary mitahiry azy ireo ao anaty rakitra.

3. Raha mihoatra ny laharam-panovozan-kevitra ny lozam-pifamoivoizana / mampidina ny KB / s dia novaina ny fanovana fampidinana / fampidinana.

Io dia mamela fa rehefa te hiditra amin'ny pejin-tranonkala iray ianao, rehefa mandefa ny fangatahana ilay mpitety tranonkala dia voafetra ny fampidinana rakitra ary rehefa voaray ny angon-drakitra dia voafetra ny fampidinana. Tena mety izany rehefa miditra amin'ny pejy maro indray mandeha, ary ny valiny dia mitovy amin'ny tsy mandeha amin'ny laoniny.

Ny tombony lehibe dia hoe mandeha ho azy tanteraka izy io ary tsy mila fidirana an-tsehatra.

Ny script
Na dia azo ampiasaina hifehezana ny fanjifana bandwidth aza ny rindrambaiko rehetra, amin'izao fotoana izao dia soratana fotsiny izy mba hamahana olana iray manokana. Saingy tsy dia sarotra loatra ny manao fanovana.

fepetra takiana
Mba hiasa tsara dia ilaina ny manana ny «nethogs".

Amin'ity tranga ity, rehefa miasa amin'ny Firefox sy Transmission ny script, ilaina ny fametrahana ireo rindranasa ireo, ankoatry ny "transmission-remote" izay manova ny fampidinana sy ny soatoavin'ny riaka. Izaho koa dia mampiasa amin'ny script "awk". Nolazaiko izany satria tsy haiko raha napetraka ao daholo ny distros.

Software nampiasaina
Lisitry ny rindranasa ampiasain'ny script sy ny rafitra miasa.

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

famonoana
Tsy maintsy entina faka faka satria nethogs azo ampiharina miaraka amin'io mpampiasa io ihany, fa fandefasana-lavitra novonoina tamin'ny mpampiasa mahazatra izy tamin'ny alàlan'ny baiko ny azy.

Ny script dia mampiasa ny baiko anatiny Bash fandrika Amin'izay dia azo atao ny mamerina ny soatoavina fandefasana / manafoana ny sanda default, rehefa ajanona amin'ny alàlan'ny famantarana SIGINT (CTRL + c) na SIGTERM.

Mbola tsy azonao antoka ny fomba hanaovana azy amin'ny fanombohana ary mijanona rehefa manidy aho na mamerina mamerina ny solosaina. Nieritreritra ny hametraka rohy ao anaty rakitra aho /etc/rc.local fa tsy haiko hoe handeha io, ary tsy azoko hoe ahoana ny fomba / sns / miasainit.d (Nahita sora-baventy vitsivitsy aho, na izany aza taolana, fa tsy azoko izy ireo). Raha misy afaka manampy ahy, dia ho feno fankasitrahana aho.

 

Eny ry havana, izay ihany. Manantena aho fa ny anjara birikiko kely dia ilaina ho anao ary azonao hatsaraina izany raha tianao. Faly aho mamaky ny hevitrao sy ny tolo-kevitrao ary koa ny sosokevitra sao misy olana ara-piarovana amin'ny fisie (Tsy programmer aho, zavatra vitsivitsy ihany no ataoko indraindray).

Fantatro fa amin'ny fanamboarana sasany dia mety ho lasa fampiharana lehibe amin'ny ho avy izy io, satria tsy fantatro hoe misy programa manao toy izany koa. Ohatra, tonga amiko fa afaka manana interface graphique aho zenity ary hahafahantsika misafidy ireo rindranasa tiana hatao laharam-pahamehana amin'ny fampiasana bandwidth (web browser, update manager, transfer file, sns) ary ireo soatoavina samihafa. Eny, somary manambony tena izy, nefa tena ilaina.

Azonao atao ny misintona ny script ao amin'ny Mametaka. Misaotra betsaka amin'ny famakiana !!


Ny atin'ny lahatsoratra dia manaraka ny fitsipiky ny etika fanonta. Raha hitatitra tsindry diso eto.

23 hevitra, avelao ny anao

Avelao ny hevitrao

Ny adiresy email dia tsy ho namoaka. Mitaky saha dia marika amin'ny *

*

*

  1. Tompon'andraikitra amin'ny data: Miguel Ángel Gatón
  2. Tanjon'ny angona: Control SPAM, fitantanana hevitra.
  3. Legitimation: Ny fanekenao
  4. Fifandraisana momba ny angona: Tsy hampitaina amin'ny antoko fahatelo ny angona raha tsy amin'ny adidy ara-dalàna.
  5. Fitehirizana angona: Database nomen'ny Occentus Networks (EU)
  6. Zo: Amin'ny fotoana rehetra, azonao atao ny mametra, mamerina ary mamafa ny mombamomba anao.

  1.   elav dia hoy izy:

    Oh! Mahaliana 😀

    1.    eliotime3000 dia hoy izy:

      Ao amin'ny zoro ambany ankavia dia azonao atao ny mametra ny fantsom-pifandraisana izay lanin'ny Transmission na amin'ny fampidinana na amin'ny fisintomana. Amin'ny Transmission dia tsy nanana olana tamin'izany aho.

      1.    mofomamy dia hoy izy:

        Saingy mandeha ho azy ity, ary misy koa ny Transmission tsy misy interface graphique ka mety tsy hanana izany asa izany ianao.

      2.    Joaquin dia hoy izy:

        Salama manao ahoana ny fahasalamanao.
        Eny efa fantatro izany. Fa izany indrindra no tsy tiako atao.
        Manana drafitra Internet tena mahantra aho (512KB ary io no tsara indrindra amin'ny faritra misy ahy).

        Miaraka amin'ny script-ko, tsy manahy aho ny hanao tanana ny zava-drehetra. Alao an-tsaina hoe manokatra pejy amin'ny browser ianao ary ny Transmission dia mibodo ny bandwidth rehetra amin'izany fotoana izany, noho izany dia maharitra fotoana fohy ny pejy (farafahakeliny 1 ', saingy mahasosotra izany). Sasatry ny "mampihetsika fe-potoana" isaky ny roa minitra aho. Mandeha ho azy io ary saika eo noho eo (manamarina ny KB nalefa sy voarain'ny Firefox isaky ny 5 segondra).

        Raha ny marina amin'ny haingam-pandeha amin'ny Internet dia tsara izany. Tsy fantatro koa ny rindranasa iray hafa izay manao an'io, raha tsy izany dia tsy nahavita azy. Ireo izay hitako dia mametra bandwidth fotsiny, fa tsy mandeha ho azy.

        Manantena aho fa nazava tsara. Misaotra anao namaky!

        1.    Joaquin dia hoy izy:

          Miala tsiny fa diso aho. Tsy 512KB izy ireo, fa Kbits kosa. (Izany hoe 1/2 "Mega"). Ny ambony indrindra azoko sintonina dia 75KB / s sy upload 50KB / s. Amin'izay fotoana izay dia milamina ny Internet, raha tsy izany dia 48 sy 23 ny mahazatra.

    2.    Joaquin dia hoy izy:

      Gracias!

  2.   mofomamy dia hoy izy:

    Mahaliana, mampiasa qBittorrent aho ary mampiasa ny switch ho an'ny fetra.

    Toa tsara amin'ireo loko ireo ny lahatsoratra 😉

    1.    Joaquin dia hoy izy:

      Misaotra ny loko. Tsy dia mahay loatra aho amin'izany, toa lava be sy monoton amin'ny soratra maro be.

  3.   Jorge dia hoy izy:

    Izaho manokana dia mampiasa transmission-daemon sy firefox miaraka amina tab fampiharana mivantana, ka tsy mandeha amin'ny programa ivelany aho na manadino ny manohy ny riandrano na ny sokatra mihetsika (ary afaka mifehy azy amin'ny telefaoniko aho). Hanombohana serivisy ampidirina mpampiasa (oh: adduser –disected-password nethogs), namboarina ao amin'ny /etc/init.d misy rakitra (oh: nethogs-daemon) ary rehefa debian dia kitiho ny "update-rc.d nethogs-daemon default" mba hanombohany irery.

    Ny rakitra an-tsoratra dia script bash koa, izay azonao ampifangaroana ny scripto.
    Jereo raha afaka manampy anao izany, azo ampiasaina hanombohana ny fandefasana-daemon, azo ampiasaina hanombohana ny nethogs https://trac.transmissionbt.com/wiki/Scripts/initd

    1.    Joaquin dia hoy izy:

      Salama!
      Andao hojerentsika raha azoko: ity dia ny manomboka Transmission amin'ny fanombohana ary ajanony izy io rehefa mihidy na manomboka indray. Amin'izay aho tsy manana olana satria manomboka irery foana izy io ary manomboka misintona (nampidiriko tao amin'ireo rindranasa tamin'ny fanombohana tao Xfce).

      Ny olako dia raha mametraka ny script amin'ny rc.local na amin'ny init.d aho dia tsy fantatro ny fomba hampiatoan'ny solosaina ilay script. Izany hoe, mazava ho azy rehefa manidy / mamerina mamerina ny PC ianao dia tapaka avokoa ny fizotrany (ary miaraka amin'izy ireo koa ny Transmission sy Nethogs) fa tsy fantatro izay hitranga amin'ny script-ko.

      Ary maninona no manelingelina ahy izany? Ny script dia mamorona rakitra ao / tmp ary mifehy ny hafainganan'ny fandefasana. Raha mihazakazaka amin'ny terminal aho ary ajanoko tampoka (ohatra amin'ny CTRL + c), ny script alohan'ny fanidiana dia mamerina ny hafainganam-pandeha (raha ilaina izany) ary ajanony ny Nethogs ary mamafa ny rakitra ao amin'ny / tmp. Niezaka ny nanao azy ho "matihanina" araka izay azo atao aho mba tsy hamela rakitra malalaka na fizotran'ny fiaviana.

      Mikasika izay nolazainao dia tsy azoko hoe inona ilay "tabilao fampiharana mivantana".

      1.    Jorge dia hoy izy:

        Ny takelaka fisoratana anarana dia kiheba maharitra, misokatra sy ovaina ao anaty firefox hatrany izy io http://i.imgur.com/a5i0aP3.png (menio ny tabilao eo amin'ny kiheba, kitiho ny «famafazana takila»). Rehefa mandefa famantarana TERM ireo daemon, dia miandry fotoana fohy izy ireo, mandra-pivoahana, ary hitahiry ny angon-drakitra. Jereo fa ao amin'ilay rohy nomeko teo aloha rehefa mivoaka ny script dia miantso start-stop-daemon ary milaza ny fampitana azy hampijanona, any ianao dia afaka mametaka "killall nethogs" sy izay ao anatiny StopScript. Ny script init amin'ity tranga ity dia mila miantso azy io ho faka ianao fa tsy mpampiasa manokana, satria mila tombontsoa izany.

        1.    Joaquin dia hoy izy:

          Misaotra tamin'ny tendrony. Raha vao manam-potoana aho dia andramako!

  4.   facundo dia hoy izy:

    tsara, sendra io fanaintainana io aho satria na dia mifandray haingana aza ianao dia voatery mametra ny fifindrana raha te-hijery ary noho izany dia "mandany fotoana".
    Handramako io raha afaka aho. Miarahaba sy misaotra !!

    1.    Joaquin dia hoy izy:

      Misaotra anao! Manantena aho fa afaka manampy anao ity!

      1.    Facundo dia hoy izy:

        Salama indray Joaquin. Hitako fa mikarakara ny famaliana ny hevitra rehetra ianao ka hanararaotra izany ary hanontany anao fanontaniana rookie roa aho.
        Voalohany, ahoana no ahafantarako raha manana ny script "awk" napetraka aho? Mampiasa Debian 7.2 aho.
        Faharoa, tsy fantatro izay hatao amin'ny kaody feta. Mila misintona tonian-dahatsoratra aho ary tehirizina ao anaty rakitra antsoina hoe "bandwidth-controller.sh" ary avy eo dia alefaso ho "./band-width-controller.sh". Ity no ampahany very ahy indrindra.
        Fahatelo: Rehefa miteny ianao hoe mihazakazaka azy ho faka, ilaina ve ny miova amin'ny mpampiasa mankany amin'ny faka na miaraka amin'ny sudo?

        Raha manana famakiana ianao hanoroana ahy ny momba an'io lohahevitra io dia tiako izany.
        Misaotra!

  5.   Giskard dia hoy izy:

    Izay no antony esoriko foana ny Transmission ary apetrako ny Deluge. Eny, noho izany ary zavatra vitsivitsy hafa izay omen'ny Deluge ahy izay tsy entin'ny iray hafa.

    1.    Joaquin dia hoy izy:

      Salama, tsy fantatro ny Safo-drano. Ny tena olako dia ny serivisy amin'ny Internet. Amin'izany no ahazoako tombony betsaka amin'izany.

  6.   pandà dia hoy izy:

    Salama voafetra ihany koa ny fantsom-pifandraisana ka nanandrana an'ity script ity aho. Saingy tsy mandeha izy io. ny lesoka dia toa ao amin'ny baiko nethogs -t. mamerina ny lesoka "Miandry ny fonosana voalohany ho tonga (jereo ny sourceforge.net bug 1019381)" Nanandrana mint, archlinux aho ary tsy nisy. Inona no fiverenan'io baiko io? Mieritreritra aho fa tokony hanonta amin'ny lahatsoratra tsotra ny fantsom-pifandraisana ampiasain'ny fampiharana tsirairay. Mahafantatra programa hafa mamela anao hihaino ny tamba-jotra ve ianao?

    1.    Joaquin dia hoy izy:

      Salama manao ahoana ny fahasalamanao.
      Bitsika Nethogs izany. Miseho amiko koa io, nefa mety ihany.

      Ny zavatra ataon'ny Nethogs dia mampiseho ny fizotrany izay mandany bandwidth be indrindra, amin'ny fotoana tena izy. Ao amin'ny script, ny vokariny dia voatahiry ao anaty rakitra "net.list", ka afaka sivanina ao aoriana.

      Ny script dia tsy miasa afa-tsy amin'ny Transmission (client BitTorrent) sy Firefox (web browser). Ny zavatra ataony dia mametra ny fantsom-pifandraisana Transmission rehefa mamoaka pejin-tranonkala iray i Firefox. Mila mametraka ianao: Nethogs, Transmission, Transmission-remote ary Firefox.

      Nohazavaina tao amin'ny lahatsoratra daholo izany, ka tsy haiko hoe inona ny olanao.

      PS: Azafady manoratra tsara ary manatsara ny tsipelinao. Fanehoan-kevitra io fa tsy hafatra an-tsoratra.

      1.    pandà dia hoy izy:

        tsy mety amiko ilay script. pirinty izany hafatra diso izany matetika. mihazakazaha "nethogs -t" ao anaty terminal hijerena izay ataony fa tsy manonta na inona na inona, ny lesoka fotsiny. amin'ny pc-ko tsy mandeha io. Azoko sary an-tsaina fa tokony hanonta zavatra mitovy amin'ny zavatra pirintiny izy rehefa mihazakazaka tsy misy ny T, mampiseho ny fizotrany sy ny bandwidth. fa raha ny amiko dia tsy manonta an'izay izy. distro iza no nampiasanao hampivelatra ny script?

        1.    Joaquin dia hoy izy:

          Raha mijery akaiky ianao, dia misy ny lozisialy ampiasaina sy ny kinova ao aminy. Tsy haiko hoe maninona ny lesoka, fa miseho amiko isaky ny mandeha ny "nethogs -t". Ao amin'ny script dia hitranga isaky ny 2 ″.

          Mety hoe rehefa mihazakazaka nethogs ianao dia tsy misy dingana ampiasaina amin'ny tambajotra ary izany no antony tsy ahazoanao vokatra.

          Ny script dia tsy maintsy entina ho faka satria ny nethogs dia mila an'io mpampiasa io hiasa.

          Izao aho nahatadidy zavatra manan-danja ary fantatro ny antony tsy mety aminao:

          TSY MAINTSY HANORATANA ny script ianao ary hanova ny anaran'ny mpampiasa mahazatra. Ao amin'ny script dia antsoina hoe "joaquin". Tsy maintsy soloinao amin'ny anaranao izany.

          Miala tsiny fa tsy tsapako izany, tokony ho napetrako tao anaty variable ilay anarana. Ny zavatra dia tsy noeritreretiko ny hanaovana azy ho ankapobeny, ny mba tiako aseho anao fotsiny dia mba ho hitanao izany ary izay maniry dia afaka mahazo hevitra momba ny fomba hanaovana azy. Tsy nanao izany aho tamin'ny fikasana ny hiasa amin'ny solosaina rehetra, izay mitaky fotoana ary tsy haiko ny mamolavola programa, misy zavatra mitranga amiko.

          Mirary soa, na inona na inona mangataka indray. Ary mba vakio indray ny lahatsoratra sy ny hevitry ny script.

  7.   Facundo dia hoy izy:

    Salama Joaquín, lazao amiko izao manaraka izao:

    fandefasana-lavitra: (http://localhost:9091/transmission/rpc/) Tsy afaka nifandray tamin'ny mpizara
    tsy nahomby ioctl teo am-pananganana IP teo an-toerana ho an'ny fitaovana et0 voafantina. Azonao atao ny manondro ny fitaovana amin'ny tsipika baiko.

    misy hevitra ve ?? misaotra!

    1.    Joaquin dia hoy izy:

      Salama manao ahoana ny fahasalamanao.
      Azafady fa tsy manana hevitra aho 😀
      Raha ny zavatra azoko dia lazain'ny lesoka dia olana amin'ny ioctl izany, saingy tsy haiko hoe inona izany.

      Azonao atao angamba ny manandrana mampiato ny script ary mizaha raha miasa lavitra ny transmission-sasany amin'ireo safidiny (vakio ny pejin'io lehilahy io miaraka amin'ny baiko "man").