{"id":106149,"date":"2022-12-18T21:36:39","date_gmt":"2022-12-18T19:36:39","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/v-yadro-linux-6-2-vojdut-uluchsheniya-raid5-6-v-btrfs"},"modified":"2022-12-18T21:36:39","modified_gmt":"2022-12-18T19:36:39","slug":"v-yadro-linux-6-2-vojdut-uluchsheniya-raid5-6-v-btrfs","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/news\/v-yadro-linux-6-2-vojdut-uluchsheniya-raid5-6-v-btrfs","title":{"rendered":"J\u00e1dro Linux 6.2 p\u0159inese vylep\u0161en\u00ed RAID5\/6 v Btrfs","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Pro j\u00e1dro Linux 6.2 byla navr\u017eena vylep\u0161en\u00ed Btrfs, kter\u00e1 se t\u00fdkaj\u00ed opravy probl\u00e9mu \"write hole\" v implementaci RAID 5\/6. Podstatou probl\u00e9mu je, \u017ee pokud dojde k hav\u00e1rii b\u011bhem z\u00e1pisu, p\u016fvodn\u011b nen\u00ed mo\u017en\u00e9 ur\u010dit, kter\u00fd blok byl spr\u00e1vn\u011b zaps\u00e1n na kter\u00e9m za\u0159\u00edzen\u00ed RAID a kter\u00fd z\u00e1pis nebyl dokon\u010den. P\u0159i pokusu o obnoven\u00ed RAID v takov\u00e9 situaci m\u016f\u017ee doj\u00edt k po\u0161kozen\u00ed blok\u016f odpov\u00eddaj\u00edc\u00edch nedokon\u010den\u00fdm blok\u016fm, proto\u017ee stavy blok\u016f RAID jsou desynchronizov\u00e1ny. Tento probl\u00e9m se vyskytuje v jak\u00fdchkoli pol\u00edch RAID1\/5\/6, kde nejsou p\u0159ijata speci\u00e1ln\u00ed opat\u0159en\u00ed k boji proti takov\u00e9mu efektu.    <\/p>\n<p>V implementaci RAID, jako je RAID1 v btrfs, je tento probl\u00e9m \u0159e\u0161en pou\u017e\u00edv\u00e1n\u00edm kontroln\u00edch sou\u010dt\u016f v obou kopi\u00edch; p\u0159i nesrovnalosti se data jednodu\u0161e obnovuj\u00ed z druh\u00e9 kopie. Tento p\u0159\u00edstup tak\u00e9 funguje, pokud n\u011bjak\u00e9 za\u0159\u00edzen\u00ed za\u010d\u00edn\u00e1 poskytovat nespr\u00e1vn\u00e1 data m\u00edsto \u00fapln\u00e9ho selh\u00e1n\u00ed.    <\/p>\n<p>Nicm\u00e9n\u011b v p\u0159\u00edpad\u011b RAID5\/6 souborov\u00fd syst\u00e9m neukl\u00e1d\u00e1 kontroln\u00ed sou\u010dty pro bloky paritn\u00ed: v norm\u00e1ln\u00ed situaci se spr\u00e1vnost blok\u016f ov\u011b\u0159uje t\u00edm, \u017ee v\u0161echny jsou opat\u0159eny kontroln\u00edm sou\u010dtem, a blok parity lze obnovit z dat. Av\u0161ak v p\u0159\u00edpad\u011b \u010d\u00e1ste\u010dn\u00e9ho z\u00e1pisu tento p\u0159\u00edstup m\u016f\u017ee v ur\u010dit\u00fdch situac\u00edch selhat. V takov\u00e9m p\u0159\u00edpad\u011b, p\u0159i obnov\u011b pole, nelze vylou\u010dit, \u017ee bloky, kter\u00e9 byly zahrnuty do nedokon\u010den\u00e9ho z\u00e1pisu, budou obnoveny nespr\u00e1vn\u011b.    <\/p>\n<p>U btrfs je tento probl\u00e9m nejaktu\u00e1ln\u011bj\u0161\u00ed, pokud je zapisovan\u00e1 velikost men\u0161\u00ed ne\u017e stripe. V tomto p\u0159\u00edpad\u011b mus\u00ed souborov\u00fd syst\u00e9m prov\u00e9st operaci \u010dten\u00ed-modifikace-z\u00e1pis (read-modify-write, RMW). Pokud se setkaj\u00ed bloky s nedokon\u010den\u00fdm z\u00e1pisem, m\u016f\u017ee operace RMW zp\u016fsobit po\u0161kozen\u00ed, kter\u00e9 nebude detekov\u00e1no, navzdory kontroln\u00edm sou\u010dt\u016fm. V\u00fdvoj\u00e1\u0159i provedli zm\u011bny, d\u00edky nim\u017e operace RMW kontroluje kontroln\u00ed sou\u010det blok\u016f, ne\u017e provede tuto operaci, a v p\u0159\u00edpad\u011b nutnosti obnovy dat provede kontrolu kontroln\u00edch sou\u010dt\u016f i po z\u00e1pisu. Bohu\u017eel v p\u0159\u00edpad\u011b z\u00e1pisu ne\u00fapln\u00e9ho stripe (RMW) to vede k dodate\u010dn\u00fdm n\u00e1klad\u016fm na v\u00fdpo\u010det kontroln\u00edch sou\u010dt\u016f, ale v\u00fdrazn\u011b zvy\u0161uje spolehlivost. Pro RAID6 zat\u00edm takov\u00e1 logika nen\u00ed p\u0159ipravena, nicm\u00e9n\u011b pro takov\u00e9 selh\u00e1n\u00ed v RAID6 je zapot\u0159eb\u00ed, aby z\u00e1pis selhal na dvou za\u0159\u00edzen\u00ed sou\u010dasn\u011b, co\u017e je m\u00e9n\u011b pravd\u011bpodobn\u00e9.    <\/p>\n<p>D\u00e1le lze zm\u00ednit doporu\u010den\u00ed od v\u00fdvoj\u00e1\u0159\u016f pro pou\u017e\u00edv\u00e1n\u00ed RAID5\/6, jejich\u017e podstata spo\u010d\u00edv\u00e1 v tom, \u017ee v Btrfs m\u016f\u017ee b\u00fdt profil ukl\u00e1d\u00e1n\u00ed metadat a dat odli\u0161n\u00fd. Je mo\u017en\u00e9 pou\u017e\u00edt profil RAID1 (zrcadlo) nebo dokonce RAID1C3 (3 kopie) pro metadata, zat\u00edmco pro data RAID5 nebo RAID6. T\u00edmto zp\u016fsobem je zaji\u0161t\u011bna spolehliv\u00e1 ochrana metadat a absence \"write hole\" na jedn\u00e9 stran\u011b a efektivn\u011bj\u0161\u00ed vyu\u017eit\u00ed prostoru typick\u00e9 pro RAID5\/6 na stran\u011b druh\u00e9. To umo\u017e\u0148uje vyhnout se po\u0161kozen\u00ed metadat a po\u0161kozen\u00ed dat mohou b\u00fdt opravena.    <\/p>\n<p>Tak\u00e9 lze poznamenat, \u017ee pro SSD v Btrfs bude v j\u00e1d\u0159e 6.2 ve v\u00fdchoz\u00edm nastaven\u00ed aktivov\u00e1no asynchronn\u00ed prov\u00e1d\u011bn\u00ed operace \"discard\" (ozna\u010den\u00ed uvoln\u011bn\u00fdch blok\u016f, kter\u00e9 ji\u017e nen\u00ed nutn\u00e9 fyzicky uchov\u00e1vat). V\u00fdhodou tohoto re\u017eimu je vysok\u00fd v\u00fdkon d\u00edky efektivn\u00edmu seskupov\u00e1n\u00ed operac\u00ed \"discard\" do fronty a n\u00e1sledn\u00e9mu zpracov\u00e1n\u00ed fronty pozad\u00edm, co\u017e znamen\u00e1, \u017ee norm\u00e1ln\u00ed operace FS nejsou zpomalov\u00e1ny, jako tomu bylo v p\u0159\u00edpad\u011b synchronn\u00edho \"discard\" p\u0159i uvol\u0148ov\u00e1n\u00ed blok\u016f, a SSD m\u016f\u017ee p\u0159ij\u00edmat v\u00fdhodn\u011bj\u0161\u00ed rozhodnut\u00ed. Na druh\u00e9 stran\u011b ji\u017e nebude t\u0159eba pou\u017e\u00edvat utility typu fstrim, proto\u017ee v\u0161echny dostupn\u00e9 bloky budou \u010di\u0161t\u011bny v FS bez nutnosti dal\u0161\u00edho skenov\u00e1n\u00ed a bez zpomalen\u00ed operac\u00ed.<br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=58352\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0414\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u044f\u0434\u0440\u043e Linux 6.2 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u044b \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f Btrfs, \u043a\u0430\u0441\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b &#171;write hole&#187; \u0432 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 RAID 5\/6. \u0421\u0443\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u043a\u0440\u0430\u0445 \u0441\u043b\u0443\u0447\u0438\u043b\u0441\u044f \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0437\u0430\u043f\u0438\u0441\u0438, \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043d\u044f\u0442\u044c \u043a\u0430\u043a\u043e\u0439 \u0431\u043b\u043e\u043a \u043d\u0430 \u043a\u0430\u043a\u043e\u043c \u0438\u0437 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 RAID \u0437\u0430\u043f\u0438\u0441\u0430\u043b\u0441\u044f \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e, \u0430 \u0432 \u043a\u0430\u043a\u043e\u043c \u0437\u0430\u043f\u0438\u0441\u044c \u043d\u0435 \u0431\u044b\u043b\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430. \u0412 \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u043e\u043f\u044b\u0442\u043a\u0438 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f RAID \u0432 \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-106149","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0414\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u044f\u0434\u0440\u043e Linux 6.2 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u044b \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f Btrfs, \u043a\u0430\u0441\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b &quot;write hole&quot; \u0432 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 RAID 5\/6.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/news\/v-yadro-linux-6-2-vojdut-uluchsheniya-raid5-6-v-btrfs\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412 \u044f\u0434\u0440\u043e Linux 6.2 \u0432\u043e\u0439\u0434\u0443\u0442 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f RAID5\/6 \u0432 Btrfs | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0414\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u044f\u0434\u0440\u043e Linux 6.2 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u044b \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f Btrfs, \u043a\u0430\u0441\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b &quot;write hole&quot; \u0432 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 RAID 5\/6.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/news\/v-yadro-linux-6-2-vojdut-uluchsheniya-raid5-6-v-btrfs\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2022-12-18T19:36:39+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-12-18T19:36:39+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Do j\u00e1dra Linux 6.2 p\u0159ijdou vylep\u0161en\u00ed RAID5\/6 pro Btrfs | ProHoster","description":"Pro j\u00e1dro Linux 6.2 byly navr\u017eeny vylep\u0161en\u00ed Btrfs, kter\u00e1 se t\u00fdkaj\u00ed probl\u00e9m\u016f s \"write hole\" v implementaci RAID 5\/6.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/news\/v-yadro-linux-6-2-vojdut-uluchsheniya-raid5-6-v-btrfs","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412 \u044f\u0434\u0440\u043e Linux 6.2 \u0432\u043e\u0439\u0434\u0443\u0442 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f RAID5\/6 \u0432 Btrfs | ProHoster","og:description":"\u0414\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u044f\u0434\u0440\u043e Linux 6.2 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u044b \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f Btrfs, \u043a\u0430\u0441\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b &quot;write hole&quot; \u0432 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 RAID 5\/6.","og:url":"https:\/\/prohoster.info\/cs\/blog\/news\/v-yadro-linux-6-2-vojdut-uluchsheniya-raid5-6-v-btrfs","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2022-12-18T19:36:39+00:00","article:modified_time":"2022-12-18T19:36:39+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/106149","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=106149"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/106149\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=106149"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=106149"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=106149"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}