ZFS ֆայլային համակարգը հուսալի և էժան տվյալների պահպանման հիմքն է: Մոտ ապագայի ֆայլային համակարգեր. ZFS Ինչ է zfs-ը

ZFS ֆայլային համակարգը աներևակայելի տարածված է: Արդյունքում, ձեռնարկությունում շատերը երդվում են դրանով և օգտագործում այն՝ պահպանելու տրիլիոնավոր բայթ տվյալներ: Չնայած իր ժողովրդականությանը, Linux օգտագործողներչի կարողանա վայելել այն առանց տուփի: Փոխարենը, նրանք, ովքեր ցանկանում են այն փորձարկել և օգտագործել որպես իրենց հիմնական պահեստային ֆայլային համակարգ, պետք է տեղադրեն այն:

ZFS-ի տեղադրումը մի փոքր տարբերվում է այլ ֆայլային համակարգերից, և կախված նրանից, թե ինչ եք օգտագործում, կարող է պահանջվել փոքր գիտելիքներ: Եթե ​​դուք նոր եք այս ֆայլային համակարգում, ապա ավելի լավ է անցնել Ubuntu-ի երթուղին: Սկսած Ubuntu 16.04-ից՝ Canonical-ը հեշտացնում է ZFS-ի հետ աշխատելը: Նույնիսկ ավելի լավ, Ubuntu-ն ZFS-ի ամենաապահով իրականացումն է Linux-ում, պարզ կարգավորմամբ և կառուցման գործընթացով, որը հայտնի է որպես շատ հուսալի (մինչդեռ մյուսները Linux բաշխումներգտնվում են ZFS-ի կոտրման բարձր ռիսկի տակ):

ZFS ֆայլային համակարգ տեղադրելու համար հետևեք հրահանգներին և սովորեք, թե ինչպես դրանք աշխատեցնել նախքան այս ձեռնարկը շարունակելը:

Նշում. Մինչդեռ հնարավոր է օգտագործել ZFS-ը մեկի համար կոշտ սկավառակ, դա լավ գաղափար չէ, և դուք հավանաբար բաց կթողնեք այս ֆայլային համակարգը հիանալի դարձնելու բոլոր հնարավորությունները: Ֆայլային համակարգի իմաստն այն է, որ ավելորդություն ստեղծվի՝ տվյալների բազմապատկման միջոցով կոշտ սկավառակներ. Շարունակելուց առաջ համոզվեք, որ ունեք 1-ից ավելի HDD ZFS-ի համար:

ZFS-ի կարգավորում

ZFS ֆայլային համակարգը աշխատում է բազմաթիվ տարբեր միավորներով կոշտ սկավառակներմիասին ստեղծել մեկ մեծ պահեստային կենտրոն: Դա չափազանց բարդ է հնչում, և այդպես է: Այնուամենայնիվ, արդյունքը գերազանց պահեստավորում է մեծ տարածքով:

Նոր ZFS ֆայլային համակարգի ստեղծումը մի փոքր ավելի բարդ է, քան պարզապես Gparted բաժանման խմբագրիչը բացելը: Փոխարենը, դուք պետք է շփվեք նրա հետ մակարդակով հրամանի տող. Տերմինալի պատուհանում գործարկեք lsblkթիմը։ «Ցուցակի բլոկ» հրամանի գործարկումը կցուցադրի ձեր Linux համակարգչի բոլոր կրիչներ:

Գնացեք և որոշեք, թե որն է կոշտ սկավառակներօգտագործեք ձեր Z-pool-ի համար և հիշեք անունները: Այս ձեռնարկում մեր երեք սկավառակները ZFS լողավազանում /dev/sdb, /dev/sdcև /DEV/SDD.

Այնուհետև դուք պետք է ամբողջությամբ զրոյացնեք Z-pool-ի համար ընտրված կոշտ սկավառակները, որպեսզի դրանք այլևս տվյալներ չունենան: Օգտագործելով դդհրաման, վերագրեք սկավառակներից յուրաքանչյուրը: Որոշ ժամանակ կպահանջվի:

Նշում. փոփոխություն /DEV/SDxհետ գտնված սկավառակի ID-ով lsblkթիմ ( SDBև այլն):

sudo dd if=/dev/zero of=/dev/sdX bs=8M

երբ դդավարտվում, սկսվում FDISKթիմը։ Գործող fdisk-ը ցույց կտա շատ տեղեկություններ կոշտ սկավառակների մասին, ներառյալ յուրաքանչյուրի համար ֆայլային համակարգի մասին տեղեկությունները: Վերանայեք ընթերցումները և համոզվեք, որ ձեր հեռացված սկավառակներից ոչ մեկը ֆայլային համակարգ չունի: Այս քայլը կարևոր է, քանի որ ZFS-ը չի օգտագործում բաժանման ավանդական ձևաչափը:

Նավ FDISK-l

Եթե ​​ցուցիչի գիծը FDISKընթերցվածը լավ տեսք ունի, անվտանգ է ստեղծել նոր ZFS Z-Pool: Հիմնական Z-pool տեղադրման համար հետևեք հետևյալ քայլերին.

sudo zpool ստեղծել -f newzpool /dev/sdb dev/sdc /dev/sdd

Հիմնական տեղադրումը թույլ կտա օգտվողների մեծամասնությանը բավարարել պահեստավորման իրենց կարիքները: Այնուամենայնիվ, նրանք, ովքեր գնահատում են իրենց տվյալները և պաշտպանության կարիք ունեն, չպետք է գնան նման հիմնական կարգավորումների հետ: Փոխարենը, մտածեք RaidZ-ի հետ ZFS լողավազան ստեղծելու մասին:

RaidZ-ի օգտագործումը ձեր ZFS լողավազանի հետ միասին ապահովում է, որ ձեր տվյալները ավելորդ են, շատերի հետ միասին կրկնօրինակներ. RaidZ-ով ZFS լողավազան ստեղծելու համար գործարկեք՝

sudo zpool ստեղծել -f newzpool raidz /dev/sdb dev/sdc /dev/sdd

ZFS նոր պահեստային լողավազանում ֆայլեր ավելացնելու համար բացեք ֆայլերի կառավարիչը և նավարկեք դեպի ֆայլային համակարգի արմատը: Տեղադրեք ֆայլերը ZFS Zpool անունով թղթապանակում:

Ավելացնել սկավառակներ ZFS Zpool-ում

ZFS-ը նախատեսված է շատ տվյալներ պահելու համար, բայց դա չի նշանակում, որ ձեր սկզբնական կրիչները չեն լցվի: Կգա մի պահ, երբ ավելի շատ պահեստային տարածք կպահանջվի: Բարեբախտաբար, քանի որ ZFS-ը չի օգտագործում միջնորմներ, համակարգին ավելի շատ պահեստ ավելացնելը հեշտ է:

Այս օրինակում մենք կավելացնենք ևս երկու սկավառակ Zpool-ին (/dev/sde և /dev/sdf):

Նշում. Եթե ձեր ZFS տեղադրումը չի օգտագործում RaidZ, հեռացրեք այն հրամանից:

sudo zpool ավելացնել -f newzpool raidz /dev/sde /dev/sdf

Ջնջել ZFS լողավազանը

Հաճախ ZFS ծավալները կոտրվում են և դառնում անօգտագործելի: Երբ դա տեղի ունենա, գուցե անհրաժեշտ լինի հեռացնել պահեստային ավազանը: Պահեստային լողավազան ջնջելու համար բացեք տերմինալը և օգտագործեք zfs ոչնչացնելթիմը։

sudo zpool ոչնչացնել newzpool

Վազիր zpool ոչնչացնելբավական ժամանակ է տևում, կախված նրանից, թե որքան տվյալներ կան ձեր պահեստում: Դուք կիմանաք, որ Zpool-ը ամբողջությամբ ոչնչացվում է, երբ տերմինալը նորից օգտագործվի:

Ստուգեք ZFS կարգավիճակը

Ձեր Zpool-ի կարգավիճակը ստուգելու արագ միջոց zpool կարգավիճակըթիմը։ Դրանով օգտատերերը կարող են տեսնել ZFS ծավալի հիմնական ընթերցումը, ինչպես է դա անում, և արդյոք կան սխալներ: Կարգավիճակը ստուգելու համար գործարկեք հետևյալ հրամանը.

Առաջարկվող նշումները նպատակ ունեն ընդգծելու հիմնական ասպեկտները և հիմք դնելու հասկանալու համար, թե ինչ հնարավորություններ և հարմարավետություն է տալիս ZFS-ն օգտագործողին:

zpool

Եթե ​​ավանդաբար ֆայլային համակարգերը ստեղծվում են վրա բաժիններըպահեստային մեդիա, այնուհետև ZFS-ը միավորում է ֆիզիկական կրիչների կամայական հավաքածուն և դրանց տրամաբանական մասերը առանց սահմանների տարածության մեջ, այլ կերպ ասած դաշտ(անգլերեն) լողավազան) Միևնույն ժամանակ, ZFS-ը հոգ է տանում ցածր մակարդակի խնդիրների մասին՝ թույլ տալով մեկ հրամանով ստեղծել երկու սկավառակների հայելային զանգված.

# zpool ստեղծել լողավազանի հայելի sdb sdc

Երբ օգտագործողի տեղեկատվության կրկնօրինակումը չի պահանջվում, պահեստային կրիչները կարող են համակցվել՝ ավելացնելով դրանց հզորությունները և ավելացնելով մուտքի արագությունը.

# zpool ստեղծել լողավազան sdb sdc

Վերոնշյալ օրինակներում pool-ը կամայական անուն է ստեղծվելիք տեղեկատվական դաշտի համար: sdb-ն և sdc-ը /dev/sdb և /dev/sdc-ի սղագրությունն են: Նկատի ունեցեք, որ այս դեպքում յուրաքանչյուր սարքի վրա կստեղծվեն GPT նշում և բաժանումներ.

Սարքի սկզբի ավարտի չափի տեսակը /dev/sdc1 2048 31487999 15G Solaris /usr & Apple ZFS /dev/sdc9 31488000 31504383 8M Solaris պահպանված 1

Դուք կարող եք zpool create հրամանը փոխանցել գոյություն ունեցող բաժինների անունները (սովորականի համաձայն), ինչպես նաև ֆայլեր (տարբերակը նախատեսված է փորձերի համար):

Եթե դաշտստեղծված շարժական սկավառակի վրա, այն ապահով անջատելու համար օգտագործվում է հետևյալ հրամանը.

# zpool արտահանման լողավազան

և կապելու համար.

# zpool ներմուծման լողավազան

Երբ անունը հայտնի չէ, ներմուծման հրամանը կատարվում է առանց անվան և ցուցակագրում է հնարավոր անունները:

ZFS-ի ճարտարապետությունն այնպիսին է, որ ֆիզիկական սկավառակի հեռացումն առանց այն նախապես արտահանելու վերացնում է օգտվողի տեղեկատվության վնասը: Գործարքի մեխանիզմը պահպանում է փոփոխությունները ազատ հատվածներում՝ առանց բնօրինակը վերագրելու: Այսպիսով, FS-ի ամբողջականությունը երաշխավորված է և թույլատրվում է միայն թերի գրանցված տվյալների կորուստը: Օրինակ, հոսանքի անջատման դեպքում նախորդ տարբերակը կլինի սկավառակի վրա անմիջապես խմբագրված փաստաթուղթը պահելու գործընթացում: Տվյալները սխալներից (ներառյալ ապարատային) պաշտպանելու համար ZFS-ն օգտագործում է չեկային գումարներ:

Վնասվածքներից մաքրելու խնդիրը սկսվում է հրամանով.

# zpool սկրաբ լողավազան

և կարգավիճակի ստուգում.

# zpool կարգավիճակ

Կատարված գործողությունները պահվում են գրանցամատյանում, որը կարելի է դիտել՝

# zpoolhistory

zfs

Ստեղծելով լողավազանը վերը նշված եղանակով, կարող եք պարզել, որ արմատային բաժանման մեջ տեղադրված է համապատասխան անունով գրացուցակ: Փաստորեն, դա համապատասխանում է համանունին ֆայլային համակարգ, որը կարելի է ստուգել՝ թողարկելով հրամանը.

# zfs ցուցակ

Այս ձևով արդեն հնարավոր է օգտագործել ZFS-ը, ինչպես սովորական ֆայլային համակարգը: Եթե ​​ցանկանում եք տեղադրել ավանդաբար, mount հրամանով և /etc/fstab , ապա համապատասխան սեփականությունայսպես.

# zfs սահմանել mountpoint = ժառանգական լողավազան

Հատկություններ դիտելու համար նախատեսված է ստանալ տարբերակը, օրինակ՝ դրանց ցանկը կարելի է ստանալ այսպես.

# zfs ստանում են բոլորը

Մի շարք հատկություններ պետք է ծանոթ լինեն նրանց, ովքեր խմբագրել են /etc/fstab ֆայլը։ ZFS-ը դրանք պահում է բնութագրվող կառույցներին ավելի մոտ, որպեսզի «օգտագործման հրահանգը» լինի ձեռքի տակ: Բայց դա մեզ չի խանգարում օգտագործել սովորական մոտեցումը։

Ինչու՞ է ձեզ անհրաժեշտ zfs, երբ ունեք zpool:

Որպես ընդհանուր կանոն, նախընտրելի է բաժանել օգտվողի տվյալները /home-ում համակարգի տվյալներից: Որոշ դեպքերում ավելացվում են ֆայլերի հիերարխիայի ճկունության պահանջները, և հնարավոր չէ նախապես կանխատեսել բաժանումների քանակը։ ZFS-ը օգտատիրոջը փրկում է «որն է միջնորմների համար լավագույն չափսը» հարցերից: և թույլ է տալիս մեկ դաշտում կազմակերպել ֆայլային համակարգերի կամայական շարք՝ անհրաժեշտության դեպքում բաշխելով հիշողության ընդհանուր քանակը և, անհրաժեշտության դեպքում, հնարավորություն է տալիս ավելացնել նոր ֆիզիկական մեդիա:

Նման սցենարներում ավտոմատ ստեղծված ֆայլային համակարգը ուղղակիորեն չի օգտագործվում տվյալների պահպանման համար: Այն դիտվում է որպես մայր կառուցվածք. սահմանվում են հատկություններ, որոնք պետք է ժառանգեն մանկական կառույցները, օրինակ՝

# zfs set compression=lz4 pool # zfs set acltype=posixacl pool # zfs set xattr=xa pool

Նկատի ունեցեք, որ եթե նշեք գույքի սխալ արժեքը, հնարավորների ցանկը կցուցադրվի որպես հուշում:

# zfs ստեղծել լողավազան/ROOT # zfs ստեղծել լողավազան/ROOT/rosa-1 # zfs ստեղծել -o mountpoint=/home pool/home

Ինչպես տեսնում եք, հատկությունները կարող են ուղղակիորեն սահմանվել ֆայլային համակարգ ստեղծելիս, և ոչ միայն հետագայում փոխվել: Ոչ ժառանգական /home mount կետը կհանգեցնի, որ pool/home հասանելի կլինի համապատասխան ճանապարհով, երբ ներմուծվում է, կամ zfs mount -a հրամանով: Այնուամենայնիվ, դուք պետք է հաշվի առնեք նրբությունը. ծածկույթի հատկությունը լռելյայն անջատված է. եթե նշված ուղու վրա ինչ-որ բան արդեն տեղադրված է, ապա ծածկույթը չի ստեղծվի:

Բացի pool/ROOT/rosa-1-ից, դուք կարող եք ստեղծել pool/ROOT/rosa-2 և տեղադրել երկու ՕՀ տարբերակ: Պատճենը կարող է ստեղծվել ոչ միայն սովորական մեթոդով, այլ նաև ակնթարթային մեխանիզմի միջոցով snapshots zfs snapshot և zfs clone. Հաշվի առնելով նման սցենարները, ինչպես նաև chroot-ի հնարավորությունը, փոխարենը լեռան կետ =/ավելի հարմար է ժառանգություն ընտրելը (և եթե ընթերցողը հետևել է նախորդ բաժնի օրինակին, ապա այն ժառանգվել է լողավազանից)

Աշխատում է OS Rosa-ն ZFS-ով

Դա հեշտ է անել, եթե սկավառակի վրա ստեղծվի առանձին /boot բաժին grub2և ՕՀ միջուկներ: Այս դեպքում, grub.cfg-ը պետք է որպես արմատական ​​միջուկի պարամետր նշի դեպի արմատային բաժանման ուղին, հնարավոր են տարբեր տարբերակներ.

Linux /vmlinuz-4.4.7-nrj-laptop-1rosa-x86_64 root=ZFS=pool/ROOT/rosa-1 ro linux /vmlinuz-4.4.7-nrj-laptop-1rosa-x86_64 root=zfs: ro zfs=pool /ROOT/rosa-1

Այս առաջադրանքը կատարում է update-grub2-ը պաշտոնական պահոցներից, սակայն որոշ դեպքերում պահանջվում է վերջին բետա տարբերակը: Ցանկալի է նաև սահմանել համապատասխան հատկությունը.

# zpool set bootfs=pool/ROOT/rosa-1

ZFS linux սեղմման և կրկնօրինակման կարգով

Ո՞րն է Linux-ում zfs ֆայլային համակարգում տվյալները գրելու կարգը:

միակ կոնկրետ փաստաթուղթը, որը ես գտել եմ http://docs.oracle.com/cd/E36784_01/html/E36835/gkknx.html կայքում, ասում է. Երբ ֆայլը գրվում է, տվյալները սեղմվում են, գաղտնագրվում, և ստուգվող գումարը ստուգվում է: Այնուհետև, հնարավորության դեպքում, տվյալները վերացվում են:

բայց եթե ճիշտ է, ապա կրկնօրինակումը չի ջնջի տարբեր սեղմման ալգորիթմներով սեղմված բլոկները:

Ես փորձարկեցի mysqlf-ով և կարծում եմ, որ կարգը հետևյալն է՝ dedup, compress, encrypt:

իմ թեստի կարգավորումը.

zpool ստեղծել տանկ /dev/sdb zfs ստեղծել տանկ/lz4 zfs ստեղծել տանկ/gzip9 zfs set compression=lz4 tank/lz4 zfs set compression=gzip-9 tank/gzip9 zfs set dedup=բաքի վրա

zfs ցուցակի ելք

ՕԳՏԱԳՈՐԾՎԱԾ ԱՆՈՒՆԸ ՕԳՏԱԳՈՐԾՎԵՔ ՄՈՒՆՏԿԵՏ տանկ 106K 19.3G 19K /tank tank/gzip9 19K 19.3G 19K /tank/gzip9 tank/lz4 19K 19.3G 19K /tank/lz4

ստեղծեք պատահական ֆայլ dd if=/dev/urandom of=random.txt count=128K bs=1024

131072+0 Datensätze ein 131072+0 Datensätze aus 134217728 Բայթ (134 ՄԲ) կոպիերտ, 12.8786 վրկ, 10.4 ՄԲ/վ

zpool-ը դատարկ լողավազանի ցուցակագրում.

ԱՆՎԱՆ ՉԱՓ ALLOC ԱՆՎՃԱՐ EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT տանկ 19.9G 134K 19.9G - 0% 0% 1.00x ՕՆԼԱՅՆ -

այնուհետև պատճենեք ֆայլերը տվյալների հավաքածուներում տարբեր սեղմման ալգորիթմներով.

cp random.txt /tank/lz4 cp random.txt /tank/gzip9

zfs ցուցակի ելքը պատճենումից հետո.

ՕԳՏԱԳՈՐԾՎԱԾ ԱՆՈՒՆԸ ՕԳՏԱԳՈՐԾՎԵՔ ԼԵՌԱՅԻՆ ԿԵՏԻ տանկ 257M 19.1G 19K /tank tank/gzip9 128M 19.1G 128M /tank/gzip9 tank/lz4 128M 19.1G 128M /tank/lz4

zpool ցուցակի արդյունքը պատճենից հետո.

ԱՆՎԱՆ ՉԱՓ ALLOC ԱՆՎՃԱՐ EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT տանկ 19.9G 129M 19.7G - 0% 0% 2.00x ՕՆԼԱՅՆ -

կրկնօրինակման գործոն 2.0 մեկ ֆայլ տարբեր տվյալների հավաքածուներում պատճենելուց հետո: Իմ կարծիքով, սա նշանակում է, որ deduplication-ը կատարվում է տվյալները- արգելափակում է սեղմումից և գաղտնագրումից առաջ:

խնդրում եմ, կարո՞ղ է որևէ մեկը ստուգել, ​​արդյոք սա ճիշտ է:

1 պատասխան

երբ ֆայլը գրվում է, տվյալները սեղմվում են, ծածկագրվում և ստուգեք գումարըստուգվում. Հնարավորության դեպքում տվյալները ապակրկնօրինակվում են:

Պատահական ֆայլի հետ կապված իմ ենթադրությունը սխալ էր: Թվում է, որ ZFS-ը խախտում է սեղմումը, եթե այն չի կարողանում հասնել որոշակի նվազագույն սեղմման հարաբերակցության:

Մեկ այլ առանձնահատուկ բան, որը պետք է նշել, այն է, որ LZ4-ի կատարումը չսեղմվող տվյալների վրա շատ բարձր է: Դա ձեռք է բերվում «վաղ ընդմիջման» մեխանիզմը միացնելու միջոցով, որը գործարկվում է, եթե LZ4-ը չի կարող բավարարել ակնկալվող նվազագույն սեղմման հարաբերակցությունը (12,5% ZFS-ի վրա):

Համար օպերացիոն համակարգ, որի տեղափոխումն այլ հարթակներ առաջացրեց ծրագրավորողների մոտ տրամագծորեն տարբեր հույզերի ալիք՝ բուռն հիացմունքից ու ուրախությունից մինչև ճիշտ հակառակը՝ գրգռվածություն և զայրույթ։

Փորձենք ծանոթանալ կողմերից յուրաքանչյուրի տեսակետին, ինչպես նաև այս ֆայլային համակարգի նման բևեռային գնահատականների առկայության պատճառներին։ Բայց մինչ դա անելը, եկեք գոնե ընդհանուր առմամբ ծանոթանանք դրա առանձնահատկություններին և հատկություններին.

  • 128-բիթանոց ֆայլային համակարգ, որը հնարավորություն է տալիս պահել գրեթե անսահմանափակ քանակությամբ տեղեկատվություն: Գործնականում դա նշանակում է, որ ZFS-ը տեսականորեն կարող է պահպանել այնպիսի տեղեկություններ, որոնք գերազանցում են այսօրվա տեխնոլոգիական հնարավորությունները, պայմանով, որ օգտագործվի տվյալների պահպանման կազմակերպման ներկայիս մոտեցումը.
  • Մեծ ուշադրություն է դարձվում պահեստավորման ամբողջականությանը և հուսալիությանը, ինչպես օգտագործողի տվյալների, այնպես էլ FS մետատվյալների, դրա համար օգտագործվում են հաշինգի առաջադեմ ալգորիթմներ.
  • Պատկերների և պահեստավորման լողավազանների աջակցություն, որի շնորհիվ ZFS-ը համատեղում է ֆայլային համակարգի և ծավալի կառավարման համակարգի հնարավորությունները (պահեստային լողավազանների նոր հայեցակարգ);
  • Այս ֆայլային համակարգի շնորհիվ fsck-ի կարիք չկա.
  • Ավանդաբար, ZFS-ը համարվում է բավականին արդյունավետ ֆայլային համակարգ: Սակայն այս պնդումը երբեմն կասկածի տակ է դրվում։ Առնվազն կոնկրետ թվերը մեծապես կախված են առաջադրանքի տեսակից, որի վրա կատարվում է նման համեմատական ​​կատարողականի փորձարկում.
  • Առանձին ֆայլերի կամ ֆայլային համակարգերի ընտրովի սեղմման և/կամ գաղտնագրման հնարավորություններ.
  • Կրկնվող ֆայլերի ավտոմատ ճանաչման և միաձուլման (բացառման) աջակցություն;
  • ZFS-ը չի աջակցում քվոտաներին: Ավելի շուտ, դրա աջակցությունը քվոտաներին որոշակիորեն յուրօրինակ է. «Քվոտաների բաշխում» հասկացությունը ZFS տերմինաբանության մեջ նշանակում է, որ դուք սահմանափակում եք ստեղծված ֆայլային համակարգի չափը: Համակարգի ձևավորումն այնպիսին է, որ ZFS-ի յուրաքանչյուր օգտագործողին պետք է հատկացվի իր սեփական ֆայլային համակարգը՝ կապված բոլոր սահմանափակումներով.
  • Որոշակի խնդիրներ չեն ստեղծվում տեխնիկական հատկանիշ FS - ոչ GPL-ին համապատասխան կոդ լիցենզիա (CDDL);
  • ZFS-ի նորարարությունը ոչ միայն տեխնիկական լուծումների ոլորտում ցույց տալու համար, որպես օրինակ, կտամ ֆայլային համակարգի հիմնական հատկանիշները վեբ ինտերֆեյսի միջոցով կառավարելու հնարավորությունը.
  • Եվ, քանի որ, կրկնում եմ, ZFS-ը չափազանց մեծ է իր հնարավորություններով և առանձնահատկություններով, և դրանք բոլորն այստեղ թվարկել պարզապես հնարավոր չէ։

Իհարկե, եթե նայեք այս հատկանիշներին առանձին, ապա դրանք շատ առումներով նոր չեն և այս կամ այն ​​ձևով հանդիպում են այլ ֆայլային համակարգերում, բայց նման մի շարք առանձնահատկություններ առաջին անգամ ներկայացված է միայն ZFS-ում, ինչը ստիպում է. այն այնքան յուրօրինակ և հետաքրքիր է այս պահին.

Եթե ​​այստեղ ավելացնենք նրա համեմատաբար հասուն տարիքը և կոդի կայունության առումով շատ լավ վիճակը, զգացմունքների փոթորիկները, որոնք առաջացրել են նրա ծածկագրի բաց արտոնագրով հրապարակման մասին լուրերը, ինչպես նաև այս նորարարական FS-ը նման հայտնի օպերացիոն համակարգեր տեղափոխելը: քանի որ պարզ են դառնում FreeBSD, Linux, MacOS-ը: x.

Ինչ վերաբերում է այս, անկասկած, արդեն հայտնի ֆայլային համակարգի կտրուկ բացասական արձագանքներին, դրանք հանգում են հիմնականում հետևյալ թեզերին. Ի դեպ, Linux-ի առաջատար ծրագրավորողներից մեկը, որը պատասխանատու է իր սկավառակի ենթահամակարգին աջակցելու համար, (Էնդրյու Մորթոնը), բռնկվեց ZFS-ի զայրացած պախարակումներով՝ որպես «իրականացման մակարդակների հրեշավոր խախտում»:

Էնդրյու Մորթան, Linux միջուկի սկավառակի ենթահամակարգի առաջատար մշակողը

ZFS-ի «սարսափելի դիզայնի» վերաբերյալ նրա մեղադրանքներին միացել են մի քանի այլ մշակողներ, և այս պահին կարելի է փաստել, որ. Անդրեյ Մորտանդեպի ZFS - " դիզայնի մակարդակների սարսափելի խախտում«և» կոդի անհիմն խառնաշփոթ«- արդեն դարձել են մի տեսակ ինտերնետային մեմեր, որոնց հեռակա փորձել են պատասխանել Oracle-ի, Linux-ի, RedHat-ի, FreeBSD-ի և այլ հայտնի նախագծերի մշակողները։

Ի պատասխան այս հարձակումների, ZFS-ի առաջատար մշակողը (Ջեֆ Բոնվիք).

«Այս բոլոր մեղադրանքները ֆայլային համակարգի ներդրման մակարդակների նախագծումը խախտելու համար, քանի որ ZFS-ը համատեղում է ֆայլային համակարգի, ծավալի կառավարչի և ծրագրային RAID կարգավորիչի ֆունկցիոնալությունը միաժամանակ: Կարծում եմ, որ այս պնդման պատասխանը կախված կլինի նրանից, թե ինչ է նշանակում «խախտում է մակարդակի դիզայնը» մեղադրանքը։

ZFS-ի զարգացման ընթացքում մենք դա հաստատեցինք ստանդարտ դիզայնՍկավառակի կույտի վերացական մակարդակները հրահրում են զարմանալի քանակությամբ անհարկի բարդություն և ավելորդ տրամաբանություն: Վերամշակման ժամանակ մենք եկանք այն եզրակացության, որ խնդրի միակ լուծումը շերտերի սահմանների և դրանց փոխհարաբերությունների հիմնարար վերանայումն է, ինչը միանգամից շատ ավելի պարզ է դարձնում ամեն ինչ:

Անկախ նրանից, թե դուք անձամբ եք զբաղեցնում ZFS-ի դիրքորոշումը, առնվազն մեկ բան պետք է ճանաչվի. ZFS-ը հիմնարար է նոր տեխնոլոգիաֆայլային համակարգերի ոլորտում: