abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 14:44 | IT novinky

    Mozilla představuje Firefox Enterprise určený jako podnikový prohlížeč pro organizace s přísnými požadavky na bezpečnost, správu a dodržování předpisů. S profesionální podporou. Dostupný je zatím ve Francii, Německu, Rakousku a Švýcarsku.

    Ladislav Hagara | Komentářů: 3
    dnes 14:33 | Bezpečnostní upozornění

    Kybernetický útok zasáhl nejméně 150 supermarketů Intermarché a několik prodejen řetězců Leclerc a Coopérative U. Chladicí jednotky napadených obchodních domů byly nastaveny na nepřetržité odmrazování a teplota v nich mnohdy vystouala až nad 50°C. Škody napáchané na chlazeném a mraženém zboží budou patrně dosahovat miliónů eur.

    … více »
    ❗Červivý Hřib krade❗ | Komentářů: 1
    dnes 04:00 | Komunita

    Stát Kalifornie zažaloval výrobce 3D tiskových filamentů Polymaker. Vrchní soud San Diego County tvrdí, že firma propagací svých výrobků mezi příznivci 3D tištěných zbraní podporovala výrobu takzvaných 'ghost guns' (DIY zbraní) a že její PLA filament pro 3D tiskárny lze za těchto okolností považovat za součást určenou k výrobě střelné zbraně. Žaloba požaduje mimo jiné finanční sankce a soudní zákaz činnosti, Polymaker se hájí tím, že filament je běžný a sám o sobě legální produkt. Celý text žaloby (PDF na Google Drive).

    ❗Červivý Hřib krade❗ | Komentářů: 15
    dnes 03:33 | Nová verze

    V červnu byla představena aplikace Myna pro převod řeči na text v prostředí desktopu Ubuntu. Včera byla Myna zpřístupněna širší komunitě Ubuntu formou technologické ukázky dostupné v Ubuntu 24.04 LTS, Ubuntu 26.04 LTS a Ubuntu 26.10 s GNOME na Waylandu.

    Ladislav Hagara | Komentářů: 0
    včera 21:11 | Komunita

    Ubuntu 27.04 bude Tenacious T-Rex.

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

    Byla vydána nová verze 2026.4.0 "Never-slop" svobodného softwaru ScummVM (Wikipedie) umožňujícího bezproblémový běh mnoha klasických adventur na zařízeních, pro které nebyly nikdy určeny. Přehled novinek v poznámkách k vydání a na GitHubu. ScummVM oslavil 25 let. Verze 0.0.1 vyšla 8. října 2001.

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Humor

    Kanadský vývojář Anthony Sistilli vytvořil ironický DIY projekt parodující kamerové systémy Flock, s cílem názorně demonstrovat rizika masového sledování jaké provozují tyto komerční ALPR systémy. Z levné IP kamery a vlastního ML softwaru (napsaného s pomocí SI circa za 20 minut, kód se mi bohužel nepodařilo dohledat) běžícího v laptopu sestavil jednoduchý systém, který detekuje výhradně policejní vozidla, zaznamenává jejich SPZ a

    … více »
    ❗Červivý Hřib krade❗ | Komentářů: 7
    včera 12:44 | Upozornění

    Část údajů uživatelů internetového supermarketu Rohlík byla odcizena. Kyberútočníci napadli nástroj zákaznické podpory Rohlíku, odcizili tak jména, e-mailové adresy, v některých případech také telefonní čísla nebo přepisy komunikace mezi klienty a zákaznickou podporou. Rohlík incident nahlásil příslušným orgánům a přijal příslušné opatření, aby zamezil podobným případům v budoucnosti, uvedla firma.

    Ladislav Hagara | Komentářů: 16
    včera 11:11 | IT novinky

    Aplikace eDoklady fungovala v obou volebních dnech stabilně a prakticky bez front. Digitální a informační agentura (DIA) odhaduje, že se digitálním dokladem prokázalo více než 100.000 voličů. Aplikaci si před volbami či během nich aktualizovalo 247.517 uživatelů. Nových registrací bylo 19.431 a do aplikace se přihlásilo 357.879 lidí. Největší nápor přišel bezprostředně po otevření volebních místností mezi 14. a 16. hodinou, kdy si

    … více »
    Ladislav Hagara | Komentářů: 11
    včera 00:55 | Pozvánky

    Začal semestr, začal i podzim a kromě hub rostou jako po dešti i veřejné dílny v Praze. Nedávno strahováci referovali o hackerspacu Bordel, nyní se otevřela dílna Dejvice Lab jen kousek od ČVUT. Na blížící Virtuální Bastlírně tak uslyšíte nejen report z návštěvy dílny HWLab, ale i řadu novinek, událostí a úsměvných momentů, které se za poslední měsíc ve světě techniky, ale i vědy udály. Připojte se tedy již v úterý 13.10. od 20:00 a zapojte se do

    … více »
    bkralik | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (29%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2840 hlasů
     Komentářů: 32, poslední 11.10. 17:02
    Rozcestník

    Dotaz: Snapshot běžícího systému

    12.1.2020 14:31 TSV
    Snapshot běžícího systému
    Přečteno: 764×
    Ahoj, mám systém nainstalovaný na disku s souborovým systémem btrfs. Co se stane, pokud za běhu systému vytvořím snapshot celého filesystému jakožto zálohu předchozího stavu? Půjde z toho nabootovat? Předpokládám že by mělo a bude se to chovat jako bych počítač v okamžiku snapshotu natvrdo odpojil z elektriky, ale nejsem si jistý. S tím souvisí druhá věc. Je možné nějakým způsobem udělat snapshot ještě před startem systému, tj. asi přímo z Grubu?

    Řešení dotazu:


    Odpovědi

    Heron avatar 12.1.2020 15:07 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    BTRFS snapshot je atomický snímek v určitém čase, to nejde srovnávat s vypnutím od elektriky. Pokud nějaká appka během pořízení snapshotu zapisuje na disk, tak pokud to dělá dobře, tak její data budou plně validní. Snapshoty se používají běžně při zálohách VM běžících serverů a obnova takto zálohovaného vmka je plně funkční a data jsou zcela v pořádku. Takže tohoto se není třeba bát. Pokud by tam byl nějaký "vadný" program nebo služba, tak tu lze na dobu pořízení snapshotu stopnout (nebo ji uvést do stavu, aby na chvíli nezapisovala na disk).

    Pořídit snapshot jde i z jiného systému. Takže stačí nabootovat nějaké rescue cd nebo jiný systém a z toho pořídit snapshot FS na jiném disku.
    15.1.2020 08:42 j
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Nebudou, pises nesmysly. Konzistentni bude filesystem, ale ne data na nem. Typicky (ale nejen) databaze. Aby ta data konzistentni byla, je treba bezicim aplikacim sdelit, ze se neco bude dit, a to opet typicky databaze umi ... za predpokladu, ze jsou spravne nainstalovany => transakcni logy jsou na jinym disku/partysne nez data.

    Funguje to tak, ze aplikace zaridi konzistenci dat, a pak odpovi ze je pripravena, teprve pak se udela snap, a aplikaci se sdeli ze hotovo, ze muze dal zapisovat. Po dobu vytvareni snapu se pochopitelne nezapisuje vubec, nebo prave do transakcnich logu na jinym disku.

    Presne stejne se chova jakykoli snap VM => konzisteneni bude FS, nikoli data.

    Ano, typicky to stroj prezije bez zasadni uhony, a typicky vyvojari databazi pocitaji s tim, ze to muze neocekavane lehnout. Ale rozhodne to neni bezpecny zpusob jak vyrobit zalohu. A ano, chova se to temer presne jak pise tazatel, proti vytrzeni napajeni je tam rozdil minimalni.

    ---

    Na widlich tuhle funcionalitu (teoreticky) zajistuje VSS, a hypoteticky aplikace muze vedet, ze se ten snap vytvari, pokud (a to je ten zakopanej pes) s tim pocita vyvojar aplikace. Tech hypotez je tam navic tolik, ze to nedeporucuje pro vlasni SQLko pouzivat ani sam M$ (respektive negarantuje, ze vytvorenej snap bude konzistentni).
    15.1.2020 09:04 Peter Golis | skóre: 65 | blog: Bežné záležitosti | Bratislava
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Ale databáza sa dá prepnúť do módu pre backup, a vedela to už v minulom tisícročí.
    15.1.2020 11:43 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    aby ta data konzistentni byla, je treba bezicim aplikacim sdelit, ze se neco bude dit
    Opäť malá technická otázka: existuje na Linuxe na to nejaký systémový mechanizmus? Môže napr. moja aplikácia reagovať na to, že sa chystá urobiť "btrfs snapshot ..." ?
    Josef Kufner avatar 15.1.2020 12:01 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Neexistuje. Ani nevím, že by to nějaké jiné programy než databáze vůbec řešily.

    Pokud program něco načte, chvíli zpracovává, a pak uloží, tak bohatě stačí nesmazat stará data před zápisem nových. Hodně programů ukládá data vytvořením nového souboru vedle cílového a teprve když je nový soubor hotov a uzavřen, tak ho přejmenuje na ten starý (což je atomická operace).

    Aplikace, které pracují s daty trvale, typicky pracují nad databází a tudíž to nemusí řešit. Aplikace, které něco dlouho počítají, si zas ukládají průběžné výsledky, ale to obvykle je v podstatě jen připisování do logu.
    Hello world ! Segmentation fault (core dumped)
    12.1.2020 20:40 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Pokud nějaká appka během pořízení snapshotu zapisuje na disk, tak pokud to dělá dobře, tak její data budou plně validní.

    Um, čo konkrétne znamená to "dělá dobře"?
    Heron avatar 12.1.2020 21:28 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Tak řešení je víc. Asi nejjednodušší je použití nějakých atomických operací (třeba přejmenování souboru). Appka zapisuje data do nového souboru, potom jej flushne (fdatasync nebo tak něco) a potom jej přejmenuje na uživatelem očekávaný název (nebo zkrátka konečný název). Když se tento řetězec operací někde přeruší, tak výsledkem je buď validní starý soubor, nebo validní nový soubor. Snapshot tedy může zasáhnout kdykoliv a je to vždy konzistentní.

    Nebo jak to řeší některé DB. Vedou si log o provedených operacích, tento log je atomicky ukládán na disk (třeba po 4k blocích) a v případě výpadku je podle tohoto logu možné zrekonstruovat datový soubor (který samotný už konzistentní být nemusí, typicky může obsahovat více verzí daného záznamu). Tj. když snapshotuju běžící postgresql, tak ten si jen při startu přehraje wal log a je to.

    Nikdy jsem nenarazil na problém. Navíc snapshot v tomto případě provádí přímo FS samotný, takže FS ví, jaké operace jsou zrovna v běhu. Třeba snapshot pomocí LVM umí informovat FS, že by se měl freeznout ale už je to jedna vrstva navíc. vmware taky přes toolsy posílá info do vmka a na chvíli zastaví io operace.

    Obecně si myslím, že by pro "spolehlivé snapshotování" nemělo být potřeba nic navíc, není potřeba nijak informovat služby apod., protože všechny zápisy mají být i z jiných důvodů (viz kauza ext4 a poškozených konfigů) provedeny správně. Což taky většinou jsou už jenom tím, že většina služeb buď data na disk nezapisuje vůbec a pokud ano, tak ti na to stejně vezmou sqlite nebo BDB nebo rovnou "velké" databáze.
    12.1.2020 21:41 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Nad tým prvým spôsobom som dumal. A nemusí to byť celkom triviálne. Pretože aplikácia by sa potom mala postarať napr. aj o okopírovanie prístupových práv (vrátane ACL) alebo riešiť to, keď je to symlink.
    15.1.2020 08:50 j
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Databaze si zapise ... rekneme polozky nejakyho dokladu ... v tenhle okamzik udelas snap ... a mas nekonzistentni data, protoze ti chybi hlavicka. Presne proto to nemuze fungovat. Viz muj post vejs.

    A presne proto ma kazda svepravna databaze API, pres ktery ji sdelis ze ten snap (nebo jinej zpusob zalohy) des delat, pockas, az ti rekne ze OK (= dokoncila vsechny bezici transakce) a teprve pak muzes.

    Jedine timhle zpusobem ziskas datove konzistetnni zalohu.

    Uplne stejne to plati pochopitelne pro libovolnou jinou aplikaci, kdyz budes mit cojavim otevrenej nejakej textovej soubor, tak se s klidem muzes dostat do situace, kdy ty sice vidis dokonceny odstavec, ale aplikace ho zapsala jen 1/2, druha ceka na nejaky ten interval, a kdyz udelas snap, tak sice mas citelny soubor, ale chybi ti v nem data.
    Max avatar 15.1.2020 09:12 Max | skóre: 73 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Ten problém, co popisuješ, je problém netransakční db. S transakční by nic takového nastat nemělo.
    Zdar Max
    Měl jsem sen ... :(
    15.1.2020 09:50 Boban
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Jenže tohle nezáleží jen na transakční DB. Stačí, aby ta aplikace ty transakce špatně používala a je problém. DB soubory pak ve snapshotu budou v pořádku, ale aplikační data v nich můžou být zapsaná jen z poloviny. Proto se snapshoty nemůžou brát jako naprosto spolehlivé zálohy. Ty zaručí jedině samotná aplikace.
    Heron avatar 15.1.2020 10:56 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Ano, tohle jsem myslel tím "pokud to dělá dobře". I transakce je nutné používat dobře, transakce slouží ke transformaci z jednoho konzistentního stavu do jiného konzistentního stavu. Pokud program používá transakce tak, že po vykonání některých z nich jsou data v nekonzistentním stavu (z hlediska logiky toho programu), tak to dělá blbě a ono blbě se netýká jen snapshotů, ale také zcela běžného provozu daného programu.

    Pokud nad touto db bude více klientů a ti budou do db posílat své transakce, tak jiný klient může vidět data v nekonzistentním stavu, viz následující příklad:
    // konzistentní
    T1
    // nekonzistení
    T2
    // konzistentní
    Pro dva klienty:
    C1T1
    C2T1 -- klient 2 vidí nekonzistentní stav dat
    C1T2
    C2T2 -- klient 2 ukládá data vyrobená na základě nekonzistentních dat.
    Tedy pokud je program napsaný takto a používá transakce blbě, tak to zhavaruje už během zcela normálního provozu a nemá to se snapshoty nic společného. A to jsem ten příklad schválně uvedl serializovaně, pokud by někdo namítal, že program může povolovat pouze jeden přístup v jeden čas. Ani Serializable nezajistí konzistenci dat, pokud appka transakce používá blbě.
    Max avatar 15.1.2020 11:51 Max | skóre: 73 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Pokud argumentuješ špatnou aplikací, tak ti nějaký příkaz pro flush dat pro db server moc nepomůže. A těžko lze předpokládat, že u takto špatně napsané app jí budeš moci dát nějaký příkaz, aby ona sama provedla flush, aby byly data konzistentní.
    Zdar Max
    Měl jsem sen ... :(
    Heron avatar 15.1.2020 10:43 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Databaze si zapise ... rekneme polozky nejakyho dokladu ... v tenhle okamzik udelas snap ... a mas nekonzistentni data, protoze ti chybi hlavicka. Presne proto to nemuze fungovat. Viz muj post vejs.
    DB splňující ACID bude konzistentní, transakce jsou atomické. Buď se zapíší kompletně celé, nebo se nezapíší vůbec.
    A presne proto ma kazda svepravna databaze API, pres ktery ji sdelis ze ten snap (nebo jinej zpusob zalohy) des delat, pockas, az ti rekne ze OK (= dokoncila vsechny bezici transakce) a teprve pak muzes.
    Atomický snap a "jiný způsob zálohy" je dost velký rozdíl. U jiného způsobu zálohy se počítá s tím, že různé soubory budou zkopírovány v různém čase a je tedy nutné uvést DB do stavu, kdy do datových souborů nezapisuje, ale jen plní logy. Viz třeba PITR. Jenže toto u atomického snapshotu neplatí, tam jsou všechny souboru zmrazeny ve stejném čase, takže DB ví, které transakce jsou dokončeny.
    Uplne stejne to plati pochopitelne pro libovolnou jinou aplikaci, kdyz budes mit cojavim otevrenej nejakej textovej soubor, tak se s klidem muzes dostat do situace, kdy ty sice vidis dokonceny odstavec, ale aplikace ho zapsala jen 1/2, druha ceka na nejaky ten interval, a kdyz udelas snap, tak sice mas citelny soubor, ale chybi ti v nem data.
    Tak si ještě jednou přečti komentář, na který reaguješ. Existují a používají se atomické fs operace, takže slušně napsaný program nepřepisuje data na místě (a pokud ano, udělá si kopii původního), ale zapisuje někam jinam a potom to atomicky (třeba pomocí přejmenování), překlopí. Pro systémové služby by toto mělo být automatické. Pro uživatelské programy se mohou najít výjimky, ale tam asi nebude nikdo dělat snap během ukládání 2GB souboru v GIMPu a nebude asi očekávat, že ten soubor bude konzistentní.
    16.1.2020 08:58 j
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Ze tys vzivote nikdy nikde zadnou databazi neprovozoval, natoz aby sis precet nejakou dokumentaci k ni?

    Takze znova, snap FS zajisti konzistetni FS, rozhodne nezajisti a ani nemuze, konzistetni data. V pripade databazi pak v kazdym pripade dojde k nejaky ztrate dat.

    A o tech tvysh "slusne" napsanych programech bys radsi nemel blabolit vubec, kazdej normalni program si soubor otevre, a zapisuje do toho !!! JEDNOU !!! otevrenyho souboru. Jak s tim nalozi FS je pak uz neco uplne jinyho, ale krome tech, ktery delaji COW vsechny data proste prepisujou.
    Heron avatar 16.1.2020 14:16 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    Ze tys vzivote nikdy nikde zadnou databazi neprovozoval, natoz aby sis precet nejakou dokumentaci k ni?
    Kromě těch pár desítek DB o celkovém objemu dneska už skoro 10TB, ne, nic jsem neprovozoval. A už vůbec jsem nikdy nikomu neradil dávat všechna data do DB (ideálně jako BYTEA) a nemít to jako soubor na disku. Ne, vůbec. Jen těch pár TB, pouhých 12 let, ale jinak vůbec nic.
    V pripade databazi pak v kazdym pripade dojde k nejaky ztrate dat.
    Nedojde. Všechny potvrzené transakce jsou spolehlivě uloženy na disku. Od toho je to ACID DB, aby právě tohle zajistila.

    Max avatar 16.1.2020 14:45 Max | skóre: 73 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému
    To "prosté přepisování" souborů není tak prosté. Všechny dnešní běžně používané FS (ext3, ext4, reiserfs, xfs, ntfs) jsou žurnálovací.
    Zdar Max
    Měl jsem sen ... :(
    13.1.2020 14:38 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Snapshot běžícího systému

    No, záleží na tom, jaký bude v tom snapshotu momentální stav (například) konfiguračních souborů běžících aplikací, které třeba zrovna své soubory zapsaly jen tak z poloviny. Pokud to z té poloviny rozchodí, jistě budou fungovat. :-) Pokus nabootovat ze snapshotu je (jak píšeš) podobný bootu po odpojení natvrdo, jen s mírně lepšími garancemi kolem (vzájemné) konzistentnosti dat / souborů na celém subvolume.

    Ad snapshot před startem systému: Asi by bylo nejlepší udělat si na to systemd unit spouštěný v initramfs. Systemd v initramfs by mohl takový snapshot vytvořit bez jakýchkoliv dalších operací nad filesystémem. GRUB to podle mě neumí; do většiny FS (záměrně) nedovede psát.

    Nicméně i k vytvoření snapshotu během initramfs ten souborový systém musíš napřed namountovat read/write, takže implicitní read-only nastavení ve většině distribucí se nebude dát úplně snadno a přímo použít.

    Pokud by read/write na konci initramfs vadil, tak potom snad leda že by ten initramfs napřed namountoval nový root read/write, pak by udělal snapshot a ve finále by ho přemountoval zase read-only, ať už si to dál pořeší systemd ve standardním systému podle fstab. Ale otázka je, proč takový přemet dělat.

    Založit nové vlákno • Nahoru

    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.