abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 8
    včera 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 12
    včera 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 1
    včera 13:22 | Nová verze

    Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

    Ladislav Hagara | Komentářů: 0
    včera 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    včera 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    24.4. 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 13
    24.4. 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (73%)
     (9%)
     (2%)
     (16%)
    Celkem 780 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Jednoduchá záloha na USB disk

    3.8.2015 08:09 Martin
    Jednoduchá záloha na USB disk
    Přečteno: 1117×
    Ahojky, svépomocí a hlavně na základě čerpání informací z podobných diskuzí, jako je abclinuxu jsem si rozjel můj první Linux. A hned jsem se vrhl na menší domácí serveřík. Koupil jsem si USB disk a složku s uživatelskými daty jsem si pomocí rsync zazálohoval a průběžně zálohuju. Příkaz jsem přidal do cronu a každou noc se mi provede záloha. Teď bych to chtěl ale nějak víc zautomatizovat a hlavně ten USB disk chci na víkendy vozit na chalupu, abych měl data k dispozici v tamnějším multimediálním centru (vlastně také linuxovém XBMC, které nám onehdá nainstaloval jeden známý). Tzn. že bych to potřeboval nastavit tak, aby se v případě odpojeného disku synchronizace nespouštěla. Taje skriptování začínám teprve objevovat a tak jsem se chtěl zeptat, jestli už nějaké takové udělátko neexistuje .. koukal jsem na zálohovací SW Bacula, ale to mi v mém případě přijde jako kanon na vrabce (nehledě na to, že bych to asi jen tak nerozchodil:). Za případnou pomoc předem děkuji:)

    Řešení dotazu:


    Odpovědi

    3.8.2015 08:59 NN
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    rsync ..... 2> /dev/null
    3.8.2015 09:14 Xerces
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Já bych to řešil tak, že bych si na tom usbdisku vytvořil soubor s nějakým známým názvem, třeba zalozni.disk a v tom zalohovacim skriptu bych ten rsync obalil podminkou if exist zalozni.disk ....
    Jendа avatar 3.8.2015 13:14 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    if ! mount | grep připojený_disk; then
      exit 0
    fi
    
    rsync ...
    3.8.2015 13:31 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    [[ $(blkid -U UUID_PRIPOJENEHO_ODDILU) ]] && rsync || exit 0
    3.8.2015 13:39 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Jenda to uz napsal. Trochu popisu k tomu. Linuxove skripty umoznuji podminky. V tomto pripade je podminka provedeni. Prikaz mount, ktery vypise vsechny propojene disky, vyfiltruje jej na jmeno pripojeneho disku, kdyz nic neni ve vystupo tak disk pripojeny neni a skript skonci, pokud ne tak se pokracuje na rsync.
    4.8.2015 10:48 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Dneska to otestuju, to vypadá dobře:) Jinak co musím napsat do té hlavičky? #!/bin/sh ?

    Můžu udělat něco takového? :
    #!/bin/sh
    
    mount /mujusbdisk /umisteni
    
    if ! mount | grep připojený_disk; then
      exit 0
    fi
    
    rsync ...
    
    umount /umisteni
    Ale co se stane, když mountlej bude? Moc diky.
    4.8.2015 10:57 NN
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Toto chces dat do cronu? Budes cronem dokola pripojovat a odpojovat USB?
    4.8.2015 15:13 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    No měl jsem to v úmyslu, protože jsem myslel, ze bude lepší, když se USB připojí, jen když bude potřeba - to je špatně?
    4.8.2015 17:22 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    no minimalne to "připojený_disk" bys mel zmenit na adresar kam to opravdu pripojujes ;)
    to ze "/mujusbdisk" zmenis na nazev zarizeni tveho oddilu asi vis, ale projistotu :)

    jinak si uvedom ze odkazovanim na jmeno zarizeni se muzes dostat do nevhodneho stavu, napr. kdyz budes mit odpojen usb_disk, vlozis usb_flash (ktera ziska jmeno co mel predtim ten disk) treba navstevy, v tu chvili kdyz se pusti cron zaloha ktera najde zarizeni, provede zalohu tvejch dat na usb_flash a po odpojeni si navsteva odnese tva data :)
    nebo to bude tvuj usb_flash kterej pripojis, nechos ho v RPi, pak pripojis usb_hdd, ale zaloha se bude presto provadet na usb_flash protoze jmeno co mas uvedene ve skriptu patri tez flash...
    Resenim je dohledani zarizeni pomoci UUID, ktery ma kazdy oddil vygenerovano jedinecne, viz tahle detekce, rozepsano do lepsi citelnosti a pro pouziti ktere chces:
    #!/bin/sh
    
    # sve UUID zjistis pomoci: blkid /dev/aktualni_jmeno_zarizeni_oddilu
    UUID="UUID_PRIPOJENEHO_ODDILU_NA_KTEREJ_CHCES_ZALOHOVAT"
    
    if ! blkid -U $UUID; then
      exit 0
    fi
    
    mount /dev/disk/by-uuid/$UUID /umisteni
    
    rsync ...
    
    umount /umisteni
    
    4.8.2015 19:55 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    blkid znám a UUID taky, takže to není problém, ale díky za upozornění:) Jen ale přemýšlím nad tím mount a umount. Nemělo by to ověřovat ještě, jestli to není už namountovaný, případně jestli je co umountovat?
    4.8.2015 20:31 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    ten parametr -U u blkid prave hleda dane zarizeni...
    na zjisteni jestli uz je/neni pouzij mountpoint
    mountpoint -q /umisteni && umount /umisteni
    #nebo dle preferenci zapis if-fi :)
    if mountpoint -q /umisteni; then umount /umisteni; fi
    4.8.2015 20:33 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    a pro mount...
    mountpoint -q /umisteni || mount /dev/disk/by-uuid/$UUID /umisteni 
    #nebo dle preferenci zapis if-fi :)
    if ! mountpoint -q /umisteni; then mount /dev/disk/by-uuid/$UUID /umisteni; fi
    4.8.2015 21:17 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    A chápu to dobře, že když to už mountlý bude, skript bude pokračovat?
    4.8.2015 21:27 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Tak si hraju a aby toho nebylo málo, disk jsem ještě zašifroval, ale teď nevím, jak mu podsunout to UUID do cryptsetup luksOpen :-) No a ruční zadávání hesla pak ještě dořeším nakonec.
    #!/bin/sh
     
    # UUID USB disku podle blkid
    UUID="30a8ed74-3d45-4fb1-8d84-3890cb60b0e1"
     
    if ! blkid -U $UUID; then
      exit 0
    fi
     
    echo "Rozšifrování a připojení disku"
    if ! mountpoint -q /mnt/backup; then cryptsetup luksOpen /dev/sdb1 backup && mount /dev/mapper/backup /mnt/usbbackup; fi
     
    echo "start synchronizace"
    rsync -a --progress --delete /FOTKY_ARW /mnt/usbbackup
    echo "konec synchonizace"
    
    echo "odpojení disku" 
    if mountpoint -q /mnt/usbbackup; then umount /mnt/usbbackup/ && cryptsetup luksClose backup; fi
    
    echo "Hotovo! :-)"
    
    4.8.2015 22:30 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    cryptsetup luksOpen /dev/disk/by-uuid/$UUID backup
    4.8.2015 22:44 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    supeeer:) jdu spat, zitra otestuju a zase se ozvu.. diky moc:)
    4.8.2015 22:21 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    chapes to spravne :)

    neco && kdyz_neco_bude_ok_neboli_vrati_error_kod_0 || kdyz_neco_bude_spatne_neboli_error_kod_1_a_vice

    v pripade if-fi vetveni jde o to ze kdyz je ok(error code 0), tak se provede umount mezi if-fi
    a vetev pro mount zas ma za if znak ! cili negaci, takze se provede mount kdyz neni vraceno ok
    navratovej kod si muzes zobrazit z promene $?, takto
    mountpoint -q /umisteni; echo $?
    a vyzkouset co vraci kdyz je nebo neni, vetveni if-fi nebo && || pak taky vetvi podle toho :)
    4.8.2015 22:54 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    no už tomu rozumím, moc díky za polopatický výklad :-)
    5.8.2015 15:13 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Ještě bych se chtěl zeptat, jestli neexistuje nějaký univerzální parametr, aby byl vrácený jen návratový kód? Např. lvdisplay neumí být sám o sobě tichý...
    5.8.2015 18:00 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    pokud nastroj nema nejaky parametr pro "nezobrazuj vystup", muze pouzit universalni presmerovani vystupu ...
    # presmerovani stdout - standardni vystup
    nastroj >/dev/null
    #nebo to same jinak
    nastroj 1>/dev/null
    
    # presmerovani stderr - standardni error vystup
    nastroj 2>/dev/null
    
    # presmerovani stdout a stderr
    nastroj 1>/dev/null 2>/dev/null
    #nebo to same jinak
    nastroj &>/dev/null
    
    u lvdisplay normalni vystup je kdyz zobrazuje informace, errorvystup je kdyz hlasi ze nenalezl zarizeni, takze aby byl zticha musis presmerovat oboje... tedy v tvem pripade:
    lvdisplay /dev/mapper/lvm-root--snap &>/dev/null && echo "Snap uz je..." || echo "Snap jeste neni..."
    nebo jednoduse kontrolujes jen existenci souboru:
    [ -e /dev/mapper/lvm-root--snap ] && echo je
    nebo dukladneji primo existenci blokoveho zarizeni:
    [ -b /dev/mapper/lvm-root--snap ] && echo je
    (viz seznam operatoru co muzes testovat)

    pokud by te zajimali vlastnosti, tak nepresmerovavat, ale pomoci grep odfiltruj co te zajima
    lvdisplay /dev/mapper/lvm-root--snap | grep -q "read/write" && echo "je pro zapis"
    Jendа avatar 4.8.2015 17:21 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    #!/bin/sh ?
    Já používám bash (na Debianu je sh defaultně dash), má víc funkcí (které ty nevyužiješ, takže klidně sh). Nebo taky nic když ten skript budeš spouštět jako bash skript.sh (místo pouhého zadání cesty).

    Jo, klidně tak.
    4.8.2015 19:56 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Dobře, díky
    4.8.2015 21:22 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    No a ještě jedna věc je, že i po umountu ten disk pořád běží. Když ho ale "bezpečně odeberu" přes udisks --detach /dev/sdb ztichne a jen bliká ledka. Existuje nějaká možnost jeho opětovného připojení, bez toho, abych musel fyzicky odpojit a připojit USB? Jde mi o to, aby neběžel nepřetržitě, když na to není dělaný.
    4.8.2015 21:32 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    USB3 disk v USB2 porte? Neviem, neviem.
    4.8.2015 22:02 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    jj, USB3 disk v USB3 portě, šlo by to?
    6.8.2015 00:03
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    skrytý komentář Náš administrátor shledal tento komentář závadným.

    Vulgarity.

    Zobrazit komentář
    4.8.2015 22:39 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    zkus vypnout zapnout napajeni pres sysfs a authorized soubor konkretniho usb portu kde mas pripojen disk, viz, pouzival sem to na vypnuti/zapnuti napajeni USB CDMA/3G modemu, s HDD netusim ;)
    5.8.2015 20:47 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Tohle jsem zkoušel, ale nedělá to to, co jsem očekával. Disk sice zmizí z výpisu blkid, ale pořád vrní. Snazil jsem se vypnout a zapnout napájení USB softwarově, ale to se mi nepodařilo..
    7.8.2015 09:23 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Tak jsem vyřešil do odpojení a znovupřipojení USB disku. Tzn., že disk přestane vrnět a je "vypnutý":)

    Podle návodu, který posílal nobody, jsem si zjistil, že můj disk je připojený k 2-1.1.
    # odpojení disku (samozřejmě prováním po odmountování)
    # disk zmizí i z fdisk -l a z blkid:)
    
    echo '2-1.1' |sudo tee /sys/bus/usb/drivers/usb/unbind
    
    
    # připojení disku
    
    echo '2-1.1' |sudo tee /sys/bus/usb/drivers/usb/bind
    7.8.2015 18:32 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    fajn :) dobre vedet, jak sem psal ja to pouzil jen na ten modem a tomu kontrolky zhasly a tvaril se jako bez napajeni, tedy i presto ze mel externi adapter :)
    5.8.2015 14:10 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Tak jsem si "v mezičase" rozchodil LVM snapshoty, abych nezálohoval živá data. Tak a teď bych to potřeboval všechno doplnit do toho skriptu:) Mým cílem je něco takového:
    1. mount USB disku (pokud není přimountovaný)
    2. vytvoření LVM snapshotu (pokud není vytvořený)
    3. mount LVM snapshotu (pokud není přimountovaný)
    4. rsync záloha LVM snapshotu na USB disk
    5. umount LVM snapshotu
    6. odstranění LVM snapshotu
    7. umount USB disku
    A to by mělo být vše. Pokud jakýkoliv krok nedopadne, skript se ukončí a nepokračuje dalším krokem (nic inteligentnějšího mě v tuto chvíli nenapadá:).
    5.8.2015 14:24 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    a vlastně ještě bod
    0. ověřit, zda je USB disk připojený
    To všechno mám, zdá se, funkční. Takže "jen" tam dodat to ověřování a vytváření/rušení snapshotů. Dostanu se k tomu večer, a čuju, že se zaseknu na tom ověření, zda snapshot existuje:)
    5.8.2015 18:09 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    pokud neprojde nejaky krok pred rsync nemel bys koncit ale udelat kroky co probehly v obracenem poradi...
    pokud neprojde po rsync, melo by te zajimat kterej krok a proc a ne jen zkoncit ...
    hlavne bys mel kontrolovat i rsync, jestli probehl uspesne ;)
    5.8.2015 20:36 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Tak zatím jsem zpatlal tohle:
    #!/bin/sh
     
    # UUID USB disku podle blkid
    UUID="30a8ed74-3d45-4fb1-8d84-3890cb60b0e1"
    
    # Snapshot, který se bude zálohovat
    SNAPSHOT="FOTKY"
    
    
    if ! blkid -U $UUID ; then
      echo "USB disk není připojen!!!"
      exit 0
    fi
    
    if [ ! -d /mnt/usbbackup ] ; then
      echo "vytváření adresáře pro připojení disku"
      mkdir /mnt/usbbackup
    fi
    
    echo "dešifrování disku"
    if ! cryptsetup status -q /dev/mapper/backup ; then
      cryptsetup luksOpen /dev/disk/by-uuid/$UUID backup
    fi
    
    echo "připojení disku"
    if ! mountpoint -q /mnt/usbbackup ; then
      mount /dev/mapper/backup /mnt/usbbackup
    fi
    
    echo "vytvoření snapshotu"
    if ! lvdisplay /dev/LVM-sda2-sdb2/$SNAPSHOT ; then
      lvcreate -s -L 1G -n $SNAPSHOT /dev/LVM-sda2-sdb2/$SNAPSHOT
    fi
    
    if [ ! -d /snapshots/$SNAPSHOT ] ; then
      echo "vytváření adresáře pro připojení snapshotu"
      mkdir /snapshots/$SNAPSHOT
    fi
    
    echo "připojení snapshotu"
    if ! mountpoint -q /snapshots/$SNAPSHOT ; then
      mount /dev/LVM-sda2-sdb2/$SNAPSHOT /snapshots/$SNAPSHOT
    fi
    
    echo "start synchronizace"
      rsync -a --progress --delete /snapshots/$SNAPSHOT /mnt/usbbackup
    echo "konec synchonizace"
    
    echo "odpojení USB disku" 
    if mountpoint -q /mnt/usbbackup; then
      umount /mnt/usbbackup && cryptsetup luksClose backup
    fi
    
    echo "odpojení snapshotu"
    if mountpoint -q /snapshots/$SNAPSHOT ; then
      umount /snapshots/$SNAPSHOT
    fi
    
    echo "zrušení snapshotu"
    if lvdisplay /dev/LVM-sda2-sdb2/$SNAPSHOT ; then
      lvremove -f /dev/LVM-sda2-sdb2/$SNAPSHOT && rmdir /snapshots/$SNAPSHOT
    fi
    
    echo "hotovo!"
    :-)
    5.8.2015 22:28 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Posledni verze už nevyžaduje heslo, ale klíč k šifrovanému disku, ale stále ještě neověřuje, jestli vše proběhlo tak jak má a také bohužel neřeší případy, když něco selže, aby po sobě všechno vrátila do původního stavu :-/ Např. jsem hned na začátku skript přerušil, neproběhl mount, ale rsync vesele začal sypat fotky do /mnt/usbbackup, přestože tam nebylo nic mountlé - což je samozřejmě nepříjemná chyba v Matrixu :-)
    7.8.2015 08:15 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Budu ještě obtěžovat s tímhle tématem. Chtěl bych se zeptat, jestli je nějak možné, aby proměnná $SNAPSHOT byla jako parametr skriptu? Tzn. že bych skript spustil např. takto: ./zaloha -s FOTKY (to "s" je příklad - jako snapshot).
    7.8.2015 13:03 helb
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    7.8.2015 18:31 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    # pro pouziti
    ./jmenoscriptu jedna dva tri
    
    # pouziti paramatru podle poradi
    echo $1 $2 $3
    PROMENA_1="$1"
    PROMENA_2="$2"
    PROMENA_3="$3"
    
    # pouzti vsech parametru dohromady jako jeden - tedy jako "jedna dva tri"
    echo $*
    
    # pouzti vsech parametru samostatne za sebou - tedy jako "jedna" "dva" "tri"
    echo $@
    
    # pro "uplnost" -> zobrazeni nazvu scriptu
    # pouzitelne napr. pokud 1 script toho ma delat vice a chces rozlisovat co ma delat podle nazvu symlinku kterej smeruje na script
    # tedy napr. script zalohovani, na kterej smeruje symbolickej link zalohu-udelej a zalohu-obnov :)
    echo $0
    
    nebo ti jde opravdu o moznost predavat parametry ktere maji nejakou hodnotu (viz tve -s jmeno_snapshotu) ?
    14.9.2015 11:35 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Omlouvam se, ze jsem nereagoval div, ale nastala mi nejaka necekana situace. Ted se teda vracim k tematu. Slo mi o to, ze zalohuju zvlast FOTKY, AUDIO, FILMY atd. Jedna se o samostatne LV, takze vytvarim zvlast snapshoty. Proto bych to chtel vymyslet tak, aby se mi "jednim tahem" zazalohovalo vsechno a USB disk se idealne pripojil a rozsifroval jen jednou při spusteni skriptu. To by ale asi bylo uz slozity to do doho scriptu nacpat, pokud bych nekdy chtěl vynechat třeba napr. FILMY. Po pravde, myslel jsem si, ze to bude jednodussi.. uz se v tom nejak zacinam ztracet :(
    14.9.2015 14:52 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Jako hraní a zkoušení dobrý, ale pro praxi platí: Kdykoliv použiji jakoukoliv složitější strukturu než to nejjednodušší, potřebuji mít zdůvodněno proč. A pokud se rozhodnu dělit filesystem do menších oddílů (a je jedno jestli lvm nebo přimo na disku), tak je dobré si udělat jasno, proč to dělám. Jeden dobrý důvod je ochrana zbytku před náhodným zaplněním nejakým procesem, při rozdělení na oddíly se zaplní jeden oddíl a zbytek jede. druhý z důvodů je poskytnutí nějakým procesů přímé blokové zařízení bez vrstvy filesystemu (swap a nekteré databáze). Třetí a poslední nutné či potřebné oddělení dat. oddíl /boot při startu z cryptovaného fs, oddělení /home umožní jednoduchou reinstalaci systému bez ovlivňování uživatelských dat. Pro dělení disku na foto, audio a video nic z toho neplatí.

    Jednodušší a rozumnější je nechat oddíly co největší, protože FS bude lépe optimalizovat prázdný prostor i umísťování jednotlivých souborů. V oddělených oddílech má možností méně. Dále z hlediska zálohování snapshot má význam, když data jsou živá a na systému se dost mění. Třeba stopnout databázi, vytvořit snapshot, spustit databázi a snapshot zazálohovat, přičemž databáze dále běží. Pro domácí zálohování, obzvlášt toho, co jsi psal, není snapshot kriticky nutný. Pravděpodobně zálohování nepoběží(nespustím ho) přesně v té chvili, když budu do systému tlačit fotky z karty. Navíc LVM snapshoty disk dost zpomalují, protože jednak se zapíšou data a jednak se do jiné části disku píše reverzní operace (původní data) a při přístupu na snapshot se to dává dohromady. A také se nesmí zapomenout ty snapshoty vypínat, aby se jejich oddíly neucpaly.

    K otázce: jednak rsync nebo tar zálohuje na úrovni adresářové struktury, takže nemusím mít samostatné volumy. Pokud si chceš pohrát se scriptem tak jednoduché řešení je zpracování parametrů ve skriptu, jednoduše můžeš začít tím, že se podíváš v některém systémovém skriptu jak se zpracovávají parametry a vytvoříš skriptik který budeš volat zaloha AVF, kde AVF by znamenalo, Audio, Video, Foto a přítomnost každého parametru by znamenala, že se záloha provede (popřípadě že bez parametru se provede vše a uvedením parametru to vyloučíš)
    14.9.2015 19:34 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    dalsi duvod je ze "to proste chce" a proc by ne :)

    s tim ze snapshot se hodi na pohyblive data ve chvili zalohy (system, databaze) souhlas, na zalohy fotky je snapshot naprosto zbytecnej :)

    se spracovanim parametru skriptu (krome komplikovane(jsi) varianty parametr=hodnota), sem mu psal, v praxi by tedy jednoduse pouzil variantu predani oddelenejch parametu v hodnete $@ a zpracovani ve for smycce, jednotlive kroky(co ma nekde nahore ve skriptu) by mel sloucene do funkci (a prepsanejsi do prehlednosti ;)
    #!/bin/bash
    
    pripravne_kroky(){
       #genericke kroky vyuzivajici predane jmeno parametru v hodnote $1
    }
    
    uklizeci_kroky(){
       #genericke kroky vyuzivajici predane jmeno parametru v hodnote $1
    }
    
    for snapshot in $@; do
        pripravne_kroky
        rsync blabla
        uklizeci_kroky
    done
    
    14.9.2015 19:38 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    oprava, zapomenute to predavani z for do funkci *_kroky:
    #!/bin/bash
     
    pripravne_kroky(){
       #genericke kroky vyuzivajici predane jmeno parametru v hodnote $1
    }
     
    uklizeci_kroky(){
       #genericke kroky vyuzivajici predane jmeno parametru v hodnote $1
    }
     
    for snapshot in $@; do
        pripravne_kroky ${snapshot}
        rsync blabla
        uklizeci_kroky ${snapshot}
    done
    14.9.2015 20:17 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Příloha:
    aha aha, mrknu na to a budu testovat. Snad to tak nejak zacinam chapat:) Jeste bych se chtel zeptat ale na jednu vec. Da se tohle dat nejak do jednoho kroku? Prijde mi to, ze to mam nejake prekombinovane, ale jde mi o to, abych predesel nejakym nesmyslum, kdyz se nejaky krok nepovede.
    echo "připojení disku - mount"
    if ! mountpoint -q /mnt/usbbackup ; then
      mount /dev/mapper/backup /mnt/usbbackup &>/dev/null
    fi
    
    if ! mountpoint -q /mnt/usbbackup ; then
      echo "připojení disku se nepodařilo (je disk fyzicky připojen v USB?)"
      echo "KONEC!"
      exit 0
    fi
    Cely muj aktualni skript je v priloze.
    15.9.2015 00:03 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    mountpoint -q /mnt/usbbackup || (mount /dev/mapper/backup /mnt/usbbackup || (echo "připojení disku se nepodařilo (je disk fyzicky připojen v USB?)"; echo "KONEC!"; exit 0))
    to same rozdelene pomoci \ na vice radku pro prehlednost
    mountpoint -q /mnt/usbbackup || \
    (mount /dev/mapper/backup /mnt/usbbackup || \
    (echo "připojení disku se nepodařilo (je disk fyzicky připojen v USB?)"; echo "KONEC!"; exit 0))
    "&>/dev/null" sem vypustil, protoze pokud neni problem tak neni vystup zadnej a pokud je problem, neni dobre to zahazovat ale se podle toho zaridit a/nebo upravovat skript na lepe odchyceni takovych situaci v budoucnu ;)
    16.9.2015 00:03 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    dalsi duvod je ze "to proste chce" a proc by ne :)
    No vzhledem k tomu, že první věta vlastního dotazu tazatele je: "Ahojky, svépomocí a hlavně na základě čerpání informací z podobných diskuzí, jako je abclinuxu jsem si rozjel můj první Linux." mi připadalo rozumné uvést kontex a nějaké doporučení. Všichni máme zkušenosti z dotazy začátečníků, kteří "něco chtějí", ale ne vždy je to rozumné, viz jedna z tazatelových reakcí, kdy píše že rozdělení je proto, že je tam několik uživatelů a různí uživatelé se různým způsobem připojují. Ale tohle neošetřuje LVM a rozdělení na oddíly, ale struktura přístupových práv.
    16.9.2015 03:31 nobody
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    to uz upresnil ze tim chtel pouze rict ze nema prehled o tom kdo tam kdy odkud co nahrava, tedy pak ty spapshoty maji jasnej vyznam ;)
    rozdeleni lv podle zamereni nevidim jako bad practice(cim nerikam ze tvuj uvod nemuze byt prinosnej, pouze ze mu chybi tato moznost :), takze pokud mu to vyhovuje vazne proc ne :)
    16.9.2015 11:01 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    S tím že v tomto případě mají snapshoty jasný význam nesouhlasím. Snapshot má význam pokud musím mít celou zálohu v jednom okamžiku protože struktura obsahuje komplikované vazby a ty jsou třeba mít synchronní. obrázky jsou jednotlivé, navzájem nesouvisející objekty. Porušení objektu v záloze nastane pokud "rozhodný okamžik zálohy" nastane právě ve chvíli, kdy je do obrázku prováděn zápis. tento "rozhodný okamžik" je v připadě snapshotu v okamžiku snapshotu. v případě zálohy bez snapshotu ve chvíli kdy se zálohovací proces dostane k danému souboru, což je sice nepredikovatelné, ale také jasně určený okamžik. Dokonce si myslím, že takto provedená záloha může být konzistentnější než záloha provedená se snapshostem v případě že primárně uživatele do úložiště fotky nahrávají a nemažou. Protože ten zálohovací proces nejdříve přečte adresář získá seznam souborů v adresáří a pak je bude zálohovat. Pokud ve chvíli, kdy přečetl adresář, tam byly některé ne zcela zapsané soubory, je možné, že až se k nim dostane budou už zapsané plně. A nové soubory, které se v průběhu jeho zálohy mohly v adresáři objevit nezjistí a nezazálohuje, protože adresář nemonitoruje ale vlastně získá snapshot jmen souborů z okamžiku čtení adresáře. Nicméně se tohle může lišit podle implementace FS.

    Jiná situace by byla, když by na těch fotkách někdo přímo pravidelně pracoval třeba v digiKamu nebo jiném editačním systému, pak je snapshot potřeba.

    Nemyslím si že slovo vyhovuje odpovídá situaci tazatele. spíše že hledá řešení a udělal nějaký design, ten má nejaké vlastnosti a úskalí a píšu to proto, že když nekteré struktury opustí, jaké to má vlastnosti.
    Josef Kufner avatar 16.9.2015 12:22 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    A nebo ten adresář může číst postupně a soubory během čtení adresáře rovnou zálohovat. Nově vytvořené soubory se budou objevovat na konci adresáře a než se k nim zálohovací program dostane, tak se mu tam objeví.
    Hello world ! Segmentation fault (core dumped)
    14.9.2015 20:13 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    No hlavni duvo, proc to mam takhle rozdeleni je, ze k tem LV pristupuje zhruba 20 uzivatelu. Rodina a kamaradi. Kazdy ma pristup nekam jinam, nekdo je pripojeny pres wifi, nekdo pres openvpn, nekdo kabelem, a proto se neda presne odhadnout, kdo kdy tam nejaka data sype:) Proto jsem se rozhodl pro zvlastni LV a snapshoty. Mam to nastavene tak, ze vzdy mam minimalni velikost, kterou podle potreby navysuji. Uzivatele to potom nuti k setreni prostorem. Dale pak tim eliminuju zbytecne zaplacani nesmyslnymi filmy na ukor fotek atd. Myslel jsem si, ze tahle myslenka je dobra:)
    Josef Kufner avatar 14.9.2015 21:08 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    A není jedno, odkud a kudy se připojil? Hlavní je, aby to byl zabezpečený kanál.

    Btw, máš zálohu toho disku? S tímhle experimentováním se ti brzy něco rozsype.
    Hello world ! Segmentation fault (core dumped)
    14.9.2015 21:27 Martin
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Myslel jsem to tak, ze tam nesype fotky nikdo, kdo sedi vedle me v mistnosti a tak nemuzu hlidat, aby to v dobe zalohovani nedelal:) No mam tam dva disky v raidu a ted se snazim udelat zalohovani na USB disk. Jednou za cas to kopcim jeste "rucne" do jednoho desktopu.
    16.9.2015 00:23 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: Jednoduchá záloha na USB disk
    Dobrá myšlenka je, že uživatele se drží pod krkem. k provedení: Jak omezovat uživatele na jednom FS se používají kvoty. nemusíš cvičit s LVM.

    K snapshotům: je potřeba si uvědomit, že snapshoty tě neochrání před nekonzistencí dat. Snapshot vyrobí časový snímek a zaznamenáš FS v jednou okamžiku. Když v tom okamžiku jsou otevřené soubory na psaní a je do nich zapsaná pouze část tak to tak zůstane zamražené v snapshostu. Hlavně se používá proto, aby zálohovaná data nebyly z různých časů a tím pádem časově nekonzistentní. Když tam několik lidí sype fotky tak v podstatě o nic nejde. to jestli přesně v tom okamžiku kdy záloha chce číst nějakou fotku, tak se ještě do ní píše a bude jen částečně zapsaná tak bude správně zazálohována v příští záloze. Také si uvědom, že když budeš mít snapshot, a pak zálohovat tak ta zmíněná fotka v něm vůbec nebude, protože snapshot zamrazil stav ve chvíli, kdy se ještě nezačala zapisovat.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.