Скрипт, за да шпионирате съдържанието на USB устройства и да го копирате на компютъра

Винаги бях неспокоен студент, винаги исках да се възползвам от възможности като ... например, копиране на семестриалните изпити от USB паметта на учителя или нещо подобно. Когато бях в гимназията (специалност компютър), исках да програмирам „нещо“, което да направи следното:

  1. Открива, когато USB устройство е свързано към компютъра в класната стая
  2. Копирайте цялото съдържание от това устройство на вашия компютър

Това би ми позволило да направя изпита много по-рано, би било необходимо само учителят да свърже своята USB памет (pendrive) към компютъра и това е всичко.

За съжаление в моя институт компютрите имаха Windows и ... Никога и никога не се научих да програмирам за тази операционна система.

Сега обаче използвам Linux (очевидно не? LOL!), И със знанието, което през тези години успях да придобия, сега ДА! Вече мога да постигна това с Linux 😀

Тоест, програмирах прост скрипт, който прави следното:

1. Създайте папката /home/.USBDRIVES/
2. Проверява се на всеки 5 секунди дали към компютъра има свързано USB устройство (или CD / DVD).
3. В случай че някой е свързан, той ще създаде папка вътре /home/.USBDRIVES/ с името на USB (например: памет-2gb), а също така ще копира всички файлове .doc, .pdf и т.н. (тук списъкът) към тази папка, която току-що създадохте.
4. В случай, че няма свързан USB, той просто ще изчака 5 секунди, за да започне отново проверката, която обясних по-горе 😀

Ето скрипта и файла, който съдържа форматите за копиране:

Изтеглете USB-Spy.zip
Скриптът трябва да се изпълнява като root, така че работата му да не е ограничена. Тук обяснявам как да постигна това

За да може скриптът да работи без проблеми, най-добре е той да се стартира с административни привилегии (root), тъй като е очевидно, че трябва да се стартира заедно с компютъра, по този начин се уверяваме, че ако компютърът е рестартиран или изключен, когато стартирам скрипта отново, той ще работи там, готов да извлече каквото искаме от всеки USB 😉

Нека отворим терминал ... веднъж отворен ...

1. Да предположим, че имаме и двата файла /избирам/ (/opt/usb-spy.sh y /opt/usb-spy.files), трябва да му дадем привилегии за изпълнение:

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

2. Отваряме файла /etc/rc.local :

sudo nano /etc/rc.local

3. В него пишем над последния ред (изход 0) следващият:

/opt/usb-spy.sh &

4. Сега натискаме [Ctrl] + [X], за да запазим и излезем от файла, натискаме [S] или [Y] (в зависимост от системния език) и след това [Enter]. Това ще бъде достатъчно, за да бъдат запазени направените от нас промени.

И voila, това ще бъде достатъчно, за да може скриптът да започне като root, когато включим компютъра.

Важно е да проверите дали файлът usb-spy.files е в същата директория като usb-spy.sh ????

Сега ... Ще обясня малко вътрешната работа на сценария, тъй като знам, че тук има много любители на Баш

Q: Как скриптът знае, че е свързано USB устройство?
О: Във файла / etc / mtab на нашата система са устройствата или дяловете, които са монтирани в нашата система. Чрез ред 23 от скрипта се знае дали има свързан USB или не (създаване на котка към mtab и grep медия)
В: Да, но Как скриптът знае дали котката и grep ни връщат някакви данни или не?
A: Чрез a ако, тогава, цикъл else който започва на ред 24.
Q: Как да го накарам да копира само файлове с желани разширения? (.doc, .pdf и др.)
О: Използвайки rsync с различни параметри, това е на ред 34. Просто обяснено, с rsync копирам само файловете, които съответстват на филтъра usb-spy.files, всеки ред е филтър, така да се каже. Предавам и параметъра --prune-empty-dirs до rsync, за да не създава празни директории за мен.
Между другото нещо важно. Ако е свързано 8GB USB устройство (например), всичко работи правилно, но забелязах, че ако е свързано устройство с много по-голям капацитет, например 500GB или 1TB, процесът на търсене на .doc файлове и др., За да ги копирате на компютъра отне много време, така че сложих ограничение от GB. Тоест, в ред 31 заявявам, че ако USB устройството е по-малко от 16 GB, тогава потърсете файловете и ги копирайте, но ако е по-голямо от 16 GB, тогава не правете нищо. Ако искате да увеличите тези 16GB с 32GB, просто увеличете това число от ред 31

Всъщност няма какво да се обясни, скриптът е наистина лесен за разбиране :)

Ако някой има някакво съмнение или въпрос, оплакване, идея или предложение, моля, кажете го и обещавам да му помогна с каквото мога.

Е, мислех да сложа нещо като: «този скрипт е само за образователни цели, не използвайте с вредни файлове»... Но ... какво, по дяволите!, Използвайте го за каквото искате, време е учениците да имат някакво предимство срещу учителите, които ни потискат 😀

поздрави

Все още можете да направите няколко подобрения в сценария, но добре, това е добро начало, мисля, че ако някой се чувства мотивиран да допринесе за тази "благородна" кауза, ще бъде удоволствие 😀

93 коментара, оставете своя

Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.

  1.   елав каза той

    Измамник ¬¬

    Xdddd

    1.    KZKG ^ Гаара каза той

      Не, изобщо ... ако сигурно си мислил в даден момент да направиш нещо подобно ... ХАХАХА.

      1.    Иван Молина каза той

        Спаси ме от поп викторина 😀 ... Сега твоят «KZKG ^ Gaara» Ти си моят бог ... Хвала те!

    2.    Факундо каза той

      Здравейте, много добър скрипт, но в мега файлът вече не съществува, можете да го изпратите на моя имейл, моля

  2.   "Оскар" каза той

    Linux е 1% и казвате, че никога не сте се научили да програмирате за Windows, така че обучението е за Linux система, въпросът ми е: каква е възможността да се намери учител, който използва Linux, за да може да извършва уроците?

    1.    KZKG ^ Гаара каза той

      Този скрипт или трик е "внедрен" в компютър, който не е задължително да бъде личен или собствен професор, достатъчно е това да е всеки компютър на университет или колеж, тогава би било възможно да се постигне само до X или Причината е, че професорът свързва вашия USB на този компютър.

      Да, това е за Linux, но много университети имат Linux като система в компютърни лаборатории, както и зареждане с LiveCD и не е задължително да инсталират Linux на компютъра 🙂

      За 1%, препоръчвам ви да прочетете тази публикация: https://blog.desdelinux.net/debunking-the-1-percent-myth-traducido-al-espanol/

    2.    Hyuuga_Neji каза той

      Възможността гигантски метеорит да падне в Атлантическия океан за около 30 минути

  3.   Мистификация каза той

    Изглежда интересно, ще трябва да се опита.
    благодаря

    1.    KZKG ^ Гаара каза той

      Помощната програма, която има, не е нещо страхотно, но скриптът като такъв е интересен ... защото можете да научите няколко съвета от него, например как да знаете свързаните USB-та, размера на дяловете и т.н. 🙂

  4.   cr0t0 каза той

    Оригинална и много добре обяснена статия KZKG ^ Gaara. Наздраве!

    1.    KZKG ^ Гаара каза той

      Благодаря ви

  5.   "Оскар" каза той

    Каква дързост !!!, а вие смеете да го напишете в блога ОО, не знам какво да мисля, хакна ли някой, който не го харесва?

    1.    KZKG ^ Гаара каза той

      наглост? защо?
      Въпреки че целта или мотивът на скрипта може да не са толкова сериозни, колкото останалата част от приноса ми, мисля, че скриптът, неговите редове и програмна логика имат много принос.

      Можете да се възползвате от няколко неща от този скрипт:
      1. Как да разберем размера на дяла и дали това е променлива.
      2. Как да проверите дали има свързан USB и да извлечете неговия път и име.
      3. циклите if-then-else и while.

      Както и да е, не мисля, че това е напълно безполезно или нещо подобно.

      1.    "Оскар" каза той

        Мисля, че неправилно интерпретирате коментара ми, имам предвид в началото на статията ви,
        "Винаги бях неспокоен ученик, винаги исках да се възползвам от възможности като ... например, копиране на семестриални изпити от USB паметта на учителя или нещо подобно." Ако това, което казвам, ви притеснява, надявам се да ме извините, не беше моето намерение.

        1.    Блер паскал каза той

          oО какъв отличен блог, добри статии, добри читатели, потребители се извиняват ... това е рай хаха без тролове.

          1.    KZKG ^ Гаара каза той

            благодаря ^ - ^
            Гордеем се с постигнатото до момента, тази общност е наистина горда ... чудесно е да бъдем част от всичко това this

        2.    KZKG ^ Гаара каза той

          Не, не, не, изобщо не се притеснявах xD
          И да хе-хе беше грешката ми, че тълкувах неправилно вашия коментар хехехе, извинете за това 😉

          Нищо, че извиненията идват от мен сега, ще трябва да си измия лицето, за да видя дали ще завърша да се събуждам ... от това, което виждам, все още не съм на 100% HAHAHA.

          Поздрави приятел 🙂

        3.    "Оскар" каза той

          Много фин човек xD

  6.   Неомито каза той

    Бих искал моите компютърни компютри да имат Linux muhahahjaja.

  7.   GGGG1234 каза той

    Хубава статия!
    Но който иска да го имитира в Windows, ще бъде по-лесен, защото там, където нямате root достъп на машината, която искате да използвате, не можете да го оставите „завинаги“. С Windows това не се случва 😉

  8.   Блер паскал каза той

    Много добре хехе.

  9.   Hyuuga_Neji каза той

    Идеята е добра, има само слабостта да се налага да използвам root права

    1.    KZKG ^ Гаара каза той

      Е, всъщност не е нужно да сте root като такъв ... ако декларирате пред скрипта, че папката НЯМА да бъде /home/.USBDRIVES както казах, и пише например: / home / usuario /. USBDRIVES ... тогава изпълнението на скрипта с "потребител" ще бъде достатъчно 😀

  10.   Емилио каза той

    Добра идея е, но мисля, че бихте си спестили да модифицирате rc.local и да го стартирате всяка минута с помощта на crontab и по този начин избягвате проблема да го стартирате като root и останалите, от друга страна, въпреки че не повлияват много, консумирате компютърната памет безполезно на всеки 5 секунди, за да проверите дали usb е, дори когато не е. Ами това е моята гледна точка

    1.    KZKG ^ Гаара каза той

      Искам да кажа, правете проверка на всеки 1 минута, нали? Не го направих така, защото ... какво, ако USB е свързан и изключен за по-малко от 1 минута? 😀

      Предпочитах да го правя на всеки 5 секунди, за да съм сигурен, че наистина „улавям“ всички USB 😉

      Ако не съм ви разбрал, моля поправете ме 🙂

      Поздрави и добре дошли.

      1.    Емилио каза той

        Да, проверявайте всяка минута чрез cron, но добре всеки има различен начин да види проблема, нищо повече от разглеждането на кода, не би било по-добре да проверите дали папката /home/.USBDRIVES вече съществува, преди да създадете това е предложение нищо повече

        поздрави

        1.    KZKG ^ Гаара каза той

          Да също, това е детайл, който забелязах, но ... Бях мързелив да го реша LOL!

          По същия начин бих могъл да сложа дневник, където се показват копираните файлове (индивидуален дневник за всяко устройство), може би дори да изпратя този дневник по имейл (използвайки някакъв метод за изпращане на имейл от терминал на тези, които съм поставил тук на сайта ) ... но както ти казах, малко ме мързи ^ - ^ U

  11.   Павлоко каза той

    Хахахаха страхотно.

  12.   хексборг каза той

    АХА! Така вашият софтуер може да се използва за зло. LOL !!! 🙂

    Номерът е добре, но ... какво, ако искате да демонтирате USB, преди скриптът да завърши копирането на съдържанието му? В този случай ще се оплаче, че се използва и ще се забележи, че има нещо нередно. 🙂

    1.    KZKG ^ Гаара каза той

      Всъщност системата няма да позволи демонтирането на USB, защото „нещо“ ще го използва 😉

      1.    хексборг каза той

        Точно! И тогава професорът на Оскар смята, че е открил вирус на Linux. LOL !! 🙂

  13.   "Оскар" каза той

    Веднъж ме накара да си спомня, че направих нещо подобно (на моя Uni, ако имахме linux / windows), но направих C програма, която генерира хиляди папки. Тапицирах USB на човек, който го включи. Мениджърът на компютърния център беше изумен! Мислеше, че е намерил вирус в linuxx muajajajaja ... аааа .. колко време бяха тези =)

    1.    Мигел каза той

      и каква е разликата с вирус?

      1.    "Оскар" каза той

        Че дистанционно влязох в неговия USB и стартирах програмата 😛

        1.    Мигел каза той

          хахахаха, значи беше хак XD

    2.    KZKG ^ Гаара каза той

      ????
      хехехехехе, значи намерихте вирус в Linux нали? ... LOL !!

  14.   semproms каза той

    Просто не ми работи xD, ако се опитам да го стартирам от терминала, той ми казва това: ./usb-spy.sh: ред 31: [: -lt: очаква се унарен оператор
    Изглежда, че има нещо нередно в този ред: if [$ USBSIZE -lt 15664800]; тогава
    Но не знам какво е това, защото не създава и директорията .USB.

    Ако може да бъде решен, мога да намеря полезен скрипт.

    1.    хексборг каза той

      Опитайте да замените df с / bin / df и не забравяйте да го стартирате като root.

      1.    semproms каза той

        Добре, сега, ако създаде папката .USB вътре в домашната директория, но през терминала непрекъснато ми казва, че: "./usb-spy.sh: ред 31: [: -lt: очаква се унарен оператор" и това не е " Не копирам нищо, в този ред трябва да има някакъв конфликт, оценявам помощта, ако някой я види.
        Благодаря Ви много.

        1.    хексборг каза той

          Можете ли да поставите съдържанието на вашия файл / etc / mtab, когато е монтиран USB?

          1.    semproms каза той

            Разбира се, ето:

            / dev / sda12 / ext4 rw, грешки = remount-ro 0 0
            proc / proc proc rw, noexec, nosuid, nodev 0 0
            sysfs / sys sysfs rw, noexec, nosuid, nodev 0 0
            няма / sys / fs / предпазител / връзки fusectl rw 0 0
            none / sys / kernel / debugfs debugfs rw 0 0
            none / sys / kernel / security securityfs rw 0 0
            udev / dev devtmpfs rw, режим = 0755 0 0
            devpts / dev / pts devpts rw, noexec, nosuid, gid = 5, mode = 0620 0 0
            tmpfs / стартиране на tmpfs rw, noexec, nosuid, размер = 10%, режим = 0755 0 0
            няма / стартиране / заключване tmpfs rw, noexec, nosuid, nodev, размер = 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, shortname = m $

            Последните редове са тези на монтирания USB / dev / sdb1

          2.    хексборг каза той

            Да видим дали сме го разбрали. 🙂

            Дайте ни резултата от командата df. И опитайте да добавите реда:

            echo $ USBSIZE

            Точно пред ако това създава проблема и ни кажете какво излиза при стартиране на скрипта. Тя трябва да изглежда така:

            USBSIZE = `/ bin / df | grep $ USBDEV | awk {'print $ 2'} `
            echo $ USBSIZE
            ако [$ USBSIZE -lt 15664800]; тогава

            И за всеки случай също ни кажете какъв е изходът на коя df команда.

            1.    semproms каза той

              Добре, на части командата df ми връща това:

              Използвана файлова система 1K-блокове Налично Използване% Монтиран
              / dev / sda12 54082300 45246956 6125892 89% /
              udev 2004028 4 2004024 1% / dev
              tmpfs 805768 1180 804588 1% / старт
              няма 5120 0 5120 0% / бягане / заключване
              няма 2014420 92 2014328 1 XNUMX XNUMX% / бягане / shm
              / dev / sdb1 1023200 322256 700944 32% / media / DOCU 3

              Командата, която df ми връща: / bin / df

              След това сложих ехото $ USBSIZE и резултатът е същият, не отпечатва нищо ново, но грешката от преди, смешното е, че това се случва с USB, който тествам, ако сложа 500GB външен твърд диск Да, той връща размера на диска на екрана, но 500 надвишава 16 от ако е така, ако с твърдия диск не прави нищо.

              Но с USB не прави нищо, освен да показва грешката: ./usb-spy.sh: ред 34: [: -lt: очаква се унар оператор
              Сякаш не може да покаже размера на USB, но с командата df получавам неговия размер.

              Благодаря за помощта, нека видим дали можем да я получим!


            2.    semproms каза той

              В случай, че командата не изглежда добре тук, оставям екранна снимка: http://i48.tinypic.com/j5dvn5.jpg


          3.    хексборг каза той

            Виждам, че в mtab пътят, където изглежда монтиран, е "/ media / DOCU403", докато в df се появява "/ media / DOCU 3". Това кара grep да не го намери и не връща размера. Опитайте да промените първите редове на for, така че да изглеждат така:

            за USBD в `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'} `

            Промените се състоят в промяна на името на променливата за USBD, промяна на $ 2 в края на реда на ред на $ 1, вмъкване на реда, който започва с USBDEV непосредствено след изпълнението и промяна на USBDEV на USBD в реда, който започва с USBSIZE ... Надявам се, че не съм се забърквал. 🙂

            Идеята е да се направи for по името на устройството, вместо по точката на монтиране.

            1.    KZKG ^ Гаара каза той

              Проблемът беше, че в mtab, когато дадено устройство има интервали ... той поставя някои "странни" символи на реда, по-точно на мястото на интервала.

              Нищо, толкова лесно за решаване, колкото промяна на начина, по който $ USBDEV е определен, на ред 28 го променете и го сложете така:
              for USBDEV in `df | grep media | awk -F / {'print $5'}` ;

              ????


          4.    Атей каза той

            Нека видя дали мога да ви помогна ...

            Унарният оператор го показва, защото не открива размера на диска, това се случва, защото не го проверява, това се случва, защото се извиква

            ДОКУМЕНТ 3

            и го приема като две стойности, ако беше DOCU нямаше да отвори проблем

            Може би това ще ви свърши работа

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

            Поздрави 🙂

            1.    semproms каза той

              Всъщност това е проблемът, защото току-що опитах с други USB, които имат име с дума без интервали, пример "класове" и скриптът работи без проблеми, затова разпозна твърдия диск и не спомените, но сега Работата е в това да знам как поставям кавичките в кода на скрипта, трябва ли да ги поставя на "$ USBNAME"?

              Много благодаря на Атей и Хексборг за помощта, почти е свършена.


          5.    KZKG ^ Гаара каза той

            всъщност semproms поправя се супер лесно 😉
            Ред 28 ... променете го на този:
            for USBDEV in `df | grep media | awk -F / {'print $5'}` ;

            Току-що направих тестване с тази промяна и работи добре с устройства, чийто етикет / име има интервал :)

            Сега ще направя промяната в скрипта за изтегляне.

          6.    хексборг каза той

            Много добре. Така че е лесно да се поправи. 🙂

  15.   auroszx каза той

    Ооо, много гениално 😀 Ще си взема бележка, в случай че трябва ...

  16.   semproms каза той

    KZKG ^ Gaara, с тази подредба работи перфектно, сега ако копирам USB с интервал в името, благодаря много на всички за помощта, ще се опитам да видя дали мога да го накарам да стартира със зареждането на системата и че Проверете всеки цикъл, ако има свързан USB.

    В крайна сметка го постигнахме xD.

    1.    KZKG ^ Гаара каза той

      ^ - ^ ... хубаво хехе.
      Проблемът беше, че използвах mtab, за да разпозная USB, можех просто да използвам df ... Използвах mtab, защото мислех, че би било интересно да им обясня този файл, че те го знаят, но не предвиждах, че това грешка би се случила с устройства с интервали хаха.

      Всички въпроси или проблеми, които оставите казани, почти всички тук обичат да помагат xD

      поздрави

    2.    хексборг каза той

      Разбира се. Ние сме linuxers. Винаги го получаваме. XD.

  17.   Йеретик каза той

    Инсталирайте демон на компютъра на учителя, който генерира запис на всички .doc, .docx, .odt, .pdf и ви ги изпраща по пощата. Освен че сканирате компютъра толкова често в търсене на промени, нови файлове или изтривания в споменатия регистър, и всички новини ще ви изпращат модифицирания или новия файл и по пощата.

  18.   Йеретик каза той

    Както и да е, мисля, че повече от улов, изпълнението на този скрипт (И КАТО КОРЕН !!!!) е самоубийство. Правите живота и нещата на 700% по-лесни за всеки, който се интересува от вмъкване на файл на вашия компютър с права на root и всичко останало. Не забравяйте, че разширенията не съществуват в Linux и че .doc в Linux може да бъде същото като текст, видео или по-лошо, скрипт (този път с много лоши намерения).

    1.    KZKG ^ Гаара каза той

      Изпълняването му като root не е напълно необходимо, просто дефинирайте папката, където съдържанието ще бъде поставено някъде, че работещият потребител има разрешения за запис (например собствен дом) и това е that's

      За опасните файлове ... добре, можете да добавите няколко реда, които биха chmod -x към всички файлове, като по този начин загубите свойството за изпълнение.

      1.    semproms каза той

        Добавих тези редове в началото, за да изтрия папката .USBDRIVES, ако тя вече е създадена:

        ако [-s $ PLACE]
        след това rm -r $ PLACE
        fi

        По този начин той няма да даде грешка на „вече съществуваща директория“, тоест ако трябва да внимавате да няма нищо в папката .USBDRIVES, което не искаме да бъде изтрито, защото ще го изтрие и ще постави друго на мястото му.

  19.   Daniel каза той

    За да добавите нови файлови формати, просто ги напишете на usb-spy? например .jpg .mp3 и т.н.

    1.    KZKG ^ Гаара каза той

      За да добавите нови типове файлове, вие го поставяте в usb-spy.files
      Погледнете съдържанието на файла и ще видите как да ги добавите, това е съвсем просто 😉

  20.   Wuilmer bolivar каза той

    Ако сме в една мрежа и има машина на учител, интересното би било да направим картографиране на мрежата, може да имаме ssh на машините и по този начин да разпространяваме кода на лабораторните машини или дори на машината на учителя ... . Това ми дава толкова много идеи: $

  21.   ксилер каза той

    Здравейте, поздравявам ви за публикацията и всички ваши приноси, но имам въпрос, за да видя дали някой може да реши този проблем вместо мен:

    Тествах вашия скрипт на компютър с ubuntu 12.04LTS (с Unity) и той работи перфектно, но тъй като видях, че този скрипт спря да се изпълнява след първия път, когато беше стартиран, тъй като папката .USBDRIVES вече беше създадена, реших да използвайте директно този друг скрипт на вашето авторство, публикуван в друга част на този форум

    тук копирам скрипта, за да намерите себе си

    #! / Хамбар / Баш
    #
    # - * - КОДИРАНЕ: UTF-8 - * -
    # Тази програма е безплатен софтуер. Можете да го разпространявате и / или
    # модифицирайте го съгласно условията на Общия публичен лиценз
    брой на GNU, публикуван от Фондацията за свободен софтуер,
    # или версия 2 на споменатия лиценз, или (в зависимост от вашия
    # избор) на всяка по-нова версия.
    #
    # Ако правите някакви промени в това приложение,
    # винаги трябва да споменава оригиналния автор на същия.
    #
    #Copyleft 2012, DesdeLinux.net {Хавана Сити, Куба}.
    # Автор: KZKG ^ Гаара

    ДОкато = 0

    докато [$ CONTROL = 0]; направете
    cat / etc / mtab | grep media >> / dev / null
    ако [$? -не 0]; тогава
    БРОЯЧ = 0
    още
    БРОЯЧ = 1
    : $ {USBDEV: = `cat / etc / mtab | grep media | awk '{print $ 2}' '»» »
    cp $ USBDEV / * / начало /
    fi
    сън 5
    направен

    изход 0

    Темата е следната в ubuntu12.04 lts единство, че последният скрипт работи добре и работи, но когато понижавам същия компютър по причина "x" и се опитвам да го накарам да работи в ubuntu 10.10 не, мога да го накарам да работи
    От една страна, той извежда грешка и не чете устройствата за писалки, които имат сложно име, например: DATA-G, нито копира файловете, които имат сложно име. Освен този проблем имам проблема, че скриптът се изпълнява само когато компютърът се рестартира веднъж.

    Въпросът ще бъде: как мога да накарам този скрипт да ми копира дискове и файлове със сложни имена
    и ако използвам crontab или мога да го планирам да работи в определено време

    Друга подробност, в Ubuntu 10.10, тъй като използва Gnome, бих искал да добавя някои ограничения, които да се вземат предвид, когато давате привилегии за изпълнение на скрипт, той трябва да се намира в /etc/init.d, а не в / etc /
    (Вземете под внимание, че трябва да го поставите там, пристигайки от терминала със sudo nautilus)

    от друга страна друго измерение би било, че след като го поставите там, за да видите дали може да се изпълни, трябва да се направи в друг терминал

    sudo su (да бъде корен)
    парола

    ls

    cd / etc / init.d

    ls -l

    и там скачаме дали работи или не

    след това в същия терминал или в друг терминал по друго време, който е като root и е в etc / init.d (т.е. до стъпка cd / etc / init.d), както в предишния терминал, продължаваме по следния начин, за да му дадем разрешения екзекуция

    sudo chmod + x script.sh

    актуализация -rc.d script.sh по подразбиране 80

    рестартирате

    Повтарям, това е така, че да се изпълнява автоматично в Ubuntu 10.10, ако е друга версия като 12.04, трябва да направите това, което казва KZKG ^ Gaara

    И последен въпрос, как искам да копирам съдържанието (до 3 подпапки на pendrive) в дома или в скрита домашна папка или не, да предположим, че е .USBDRIVES
    в кода не би трябвало да казвам

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

    Накратко, за да получа това, което искам, как трябва да остане сценарият?
    Защото вече се опитах да модифицирам реда, който те модифицираха за usb-spy sh, но за онзи друг, който записва директно в дома и извежда грешка в модифицирания ред.? За разбирането . Благодаря ти

  22.   Kakashi каза той

    Не мога да изтегля втория скрипт

  23.   металус каза той

    Много добре. 😉

  24.   Камалеон каза той

    И ако не направя стъпките, които сте въвели, какво се случва? Не се ли изпълнява или просто се изпълнява, но без root? Ако компютрите имат система, която, да речем, възстановява цялата вътрешна конфигурация на компютъра при изключване, ще работи ли? Благодаря ти.

    1.    KZKG ^ Гаара каза той

      В случай, че системата има „нещо“, което по подразбиране е в папката / home /, тогава трябва да промените скрипта, където пише / home / да го промените на / opt / или друга папка, която не е засегната.

  25.   Gambi каза той

    Мисля, че за да подобрим скрипта и да избегнем проникването в pendrive, оптималното нещо би било да се даде приоритет на типа, размера на файла. Например, оставете за последно големи файлове от 100 мегабайта или повече. Или първо копирайте файлове doc, docx, txt, pdf, xml, ... etc etc etc и оставете avi, mp4, mkv файловете за последно ...

  26.   Лукас каза той

    Здравейте, идеята е добра. Исках да задам два въпроса:
    - Може ли да се направи в обратна посока? направете скрипт за penderiver, който се свързва с която и да е машина и извлича файлове.
    - работи за Windows OS?

    1.    KZKG ^ Гаара каза той

      Здравейте,

      Не съм сигурен как би могло да се направи, че когато свързвате pendrive, същият pendrive самоизпълнява скрипт, който има вътре.

      И не, този скрипт не работи за Windows 🙂

      1.    LUCAS каза той

        Добре, благодаря, че ми отговорихте, ще проуча как да го направя

  27.   Хосе Дамян Базага Руиз каза той

    Какъв добър сценарий. Анализирах го и ми се струва невероятно, надявам се някой ден да мога да направя и такива практически сценарии.

  28.   Хосе каза той

    Отличен принос, въпреки че полезността, която ще му дам, не е точно това, за което сте я повдигнали, ако я използвам за архивиране на файлове на група потребители, неправомерно поведение, което имам ... хехехехе ....

  29.   ограждам каза той

    когато се опитвам да го стартирам, това ми дава този ред за грешка 31: [: твърде много аргументи
    премахнете този ред, за да видите дали работи. и се оказва, че именно линията ограничава размера на устройствата.
    при премахването му копира това, което имам в монтираните дялове 🙁

  30.   Валенте каза той

    Здравейте, нов съм и знам, че потът е стар, но много ми хареса, вашият сценарий е много образователен

    Благодарим ви, че го споделихте и обяснихте подробно ...

    поздрав

  31.   долтрокс каза той

    Приятелю, спаси ме, беше достатъчно да разсея учителя и да въведа usb на моя лаптоп и след това хахахааж издържа изпит и бележки от всички хахаха

    1.    oetam222 каза той

      Бихте ли ми предали скрипта, връзката не работи

    2.    oetam222 каза той

      Можете да ми предадете скрипта, връзката е надолу

  32.   Worm2D2 каза той

    kzkggaara, би ли могъл да качиш файловете отново? връзките са надолу: /, много благодаря

  33.   Бастиан каза той

    Можете ли да качите връзки, моля?

  34.   necr0 каза той

    чува! чичо! имате падналите похвали, бихте могли да ги повишите отново!
    ДОБРЕ! : v

  35.   necr0 каза той

    е, правя това отново, защото не знам дали това, което исках да кажа, е качено ....

    е, че имате връзки надолу, можете да ги качите!

  36.   Рлорау каза той

    Връзките са надолу !!!

  37.   Developer24 каза той

    Повторно изпратете връзките, моля @usemoslinux Проучвам темата, благодаря!

  38.   анонимен каза той

    Скриптът може да бъде изтеглен от тук. Мисля, че е същото

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

  39.   Джон каза той

    Добре тогава….

    Мисля, че от моята скромна гледна точка това е страхотна статия и тогава, ако има хора, които казват, че сте измамник, тогава мисля, че това е според целта, за която използвате програмата.
    На мен лично ми хареса повече за познаването на езика за програмиране за linux, тъй като работих само в java, благодаря партньор, предизвикахте интереса ми да знам повече за езика за linux.

    Аз ви благодаря.

  40.   Хекорат каза той

    Здравейте приятели, защото намерих друг начин да използвам този скрипт, като направя архивиране, ще поговоря малко с вас Имам две устройства, камера и hdd, това, което искам е, че вместо да записват файловете, локалните файлове ги записват във външен hdd от камерата към hdd, но ми дава грешка, в която се казва "твърде много аргументи" бихте ли ми помогнали

  41.   ЛУИС ГЕРАРДО ПОЛАНКО ВЕРА каза той

    Работи ли само с устройства с операционни системи linux?

  42.   Тестване каза той

    Някой да го вдигне, моля!

  43.   Газлен каза той

    Здравейте, нямам linux и в моето училище използват Windows, използвах приложението от usb capture и копирам само 5 файла от паметта на учителя, подозирам, че usb има защита, защото едно и също нещо се случи два пъти, ще има някакъв друг начин за изваждане на пълната информация от този usb?

  44.   Зараки каза той

    Отидете, ако кажете, че кодът ще бъде прост, защото изглежда много интересно да видите как методите работят, за да видите дали е свързан USB или размерът на дяла. Жалко, че са премахнали mega.nz скрипта, бихте ли могли да го качите отново?

    Поздрави и страхотна работа, проста, но функционална дори за автоматизиране на копия от USB !!!

  45.   Breaks каза той

    Добре!
    Току-що въведох публикацията ви в блога и наистина се интересувам. Това, което се случва е, че когато дадете .zip файла, който ви пренасочва към мега, това означава, че файлът вече не е достъпен.
    Чудех се дали можете да ми изпратите тези файлове, които трябва да бъдат изтеглени.
    Благодаря ви много и поздрави!

  46.   Алфредо Перейра каза той

    Технологията има навика да намалява размера си с течение на годините. И това се е случило до невероятна степен с твърдотелни дискове (SSD). Сега можете да ги получите в същия размер като най-бързите USB флаш памети.

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

  47.   a каза той

    Можете ли да ми изпратите файла или да го качите отново? Излиза, че не може да се изтегли