Něco na způsob FUSE lze nlézt třeba zde
https://github.com/dokan-dev/dokany
Nevím, jak moc dobře to ale funguje. Zkoušel jsem to použít pro připojení SSHFS, ale nepodařilo se (asi ne vinou přímo Dokany, ale nějakého SSHFS doplňku, který se nedokázal přenést přes to, že jeho oblíbené písmeno disku je již zabrané).
Jinak souhlasím, psát souborové systémy (což jsou ovladače) ve Windows není sranda. Sice mají celkem fajn API pro filtrování operací nad FS (FS minifilters), ale pro FS nic takového zjednodušujícího není.
http://www.swish-sftp.org/ - nějak funguje, ale často zamrzá explorer.exe, někdy na chvilku, někdy na docela dlouho. Připojit se aniž by něco zamrzlo vyžaduje správnou sekvenci klikání na správná místa, i když ani to není 100%.
https://github.com/Foreveryone-cz/win-sshfs - funguje perfektně, i když místo integrace do exploreru se ovládá programem sídlícím v tray. Můžu jedině doporučit :)
Jo, jo - zlaty kernel development na Linuxu :-)
Kdysi kolem roku 2002, kdy jeste Lotus Email (ci jak se to jmenovalo) neumel pracovat s cipovou kartou, jsem dostal za ukol napsat pod WinNT neco jako FUSE - kernel FSD 'trampolinu' ktera se na kernel stranu tvarila jako disk, ale mela druhy konec do user space, kde bezela aplikace/service, ktera pres PCSC pracovala s cipovou kartou, delala dialogy na PIN a podhazovala data te FSD strane ve formatu souboru der/p12/ ......
Ano, 'otevreny' Microsoft - IFS DDK nebylo v te dobe soucasti standardniho DDK nebo MSDN, ale neco navic, co se asi mozna i dalo nekde v CR sehnat - takze podpora ze strany M$ zadna ::-(
Vetsinu jsem tedy napsal s pmoci open re-implementace ntifs.h od 'Bo Brantén'. Dokonce jsem si k tomu koupil i original knihu 'Windows NT File system Internals' od Rajev Nagaar :-) A diky za kernel developers forum OSR.
A cela ta interakce v kernelu s 'Cache Managerem', 'Virtual Memory Manager', 'FastIo' a dalsimi komponentami.... - no proste hruza.
Ono to fungovalo celkem dobre, ale nedej boze, kdyz se na ten disk pokusil pristoupit explorer.exe - jak se ho snazil 'prosmejdit' a najit 'zname' soubory v jednotlivych/vsech adresarich (desktop.ini) - bylo to zajimave sledovat pres DbgView, co vsechno s tim 'diskem' dela ...
Jojo, naštěstí jsem ty časy, kdy IFS nebylo součástí DDK/WDK nezažil. Teď se stačí podívat na "open source" ovladače, které jsou součástí WDK (fastfat, cdfs), aby bylo jasné, že se fakt o triviální úkon nejedná.
Nevím, co přesně jste měl za požadavky, ale pokoušel bych se psaní vlastního FS vyhnout, co by to šlo (např. vytvořit "virtuální disk", který by emuloval datové struktury nějakého FS, popř. ve spolupráci s FS filterem). Ale jednoduché by to ani tak nebylo.
Umí ještě ReFS, UDF a exFAT. Plus si můžete doinstalovat co kdo napíše. Existují implementace ext2/3/4, Btrfs, ReiserFS, HFS atd., open i proprietární, v různém stavu.
Windows nemá out-of-the-box nic jako FUSE. Můžete psát kernelové FS drivery, případně použít reparse points (přístup do dané části FS stromu vyvolá váš kód, pak si můžete dělat co chcete) a filter drivery (můžete třeba filtrovat, šifrovat, nebo podstrčit jiný obsah). Obdobou FUSE je projekt Dokan (nabízí i nějakou kompatibilitu s FUSE), případně komerční CBFS.
https://en.wikipedia.org/wiki/Dokan_Library
https://www.eldos.com/cbfs/
Upřímně nevidím moc důvodů pro funkcionalitu typu FUSE. Výkon je nutně horší než u kernelové implementace, a osobně bych se spíš soustředil na tom mít (klidně jeden) spolehlivý FS, než mít hromadu polo-funkčních. Možná pro čtení cizích FS, ale tam je stejně vždycky spousta problémů s právy, znakovými sadami, neimplementovanými features atd.
Já narážel spíš na klasický unixový zvyk mít jeden obecný FS, další který má žurnálování, další který umí šifrovat, další co umí kompresi atd. Koukněte se na Solaris: primární FS je ZFS, legacy UFS, pro interoperabilitu pak FAT, ISO9660 a UDF. Na Linuxu jsou z těch běžnějších FS Btrfs, exFAT, ext3, ext4, F2FS, HFS, JFS, NILFS2, NTFS, Reiser4, ReiserFS, VFAT, XFS a ZFS, plus k tomu hromada méně běžných (encFS, eCryptfs, SquashFS, ...). Považuji to za tříštění sil.
Ale no tak. Na Linuxe je primárny btrfs a ext4, okrajovo reiserfs, všetko ostatné je pre interoperabilitu, prípadne rôzne špecifické použitia. *FAT/NTFS je pre microsoftie systémy a flashky, HFS je z Mac-ov, xfs je z IRIXu, JFS z AIXu, ZFS z Solarisu, atď.
Vaša schopnosť prezentovať podporu konkurenčných formátov ako nevýhodu je skutočne obdivuhodná.
Já snad netvrdil, že podpora dalších FS je nevýhoda. Jen mi uniká, proč investovat úsilí do vývoje tolika FS. Například vývoj Btrfs začal někdy v roce 2007, a ani po deseti letech se nedá považovat za stabilní. Kdyby se místo na desítku FS vrhly prostředky řekněme právě na Btrfs, tak mohl být dávno hotový ve špičkové kvalitě. A jistě by zbyly zdroje třeba na implementaci plánovaného transparentního šifrování souborů, případně na portování na další platformy.
Lael Ophir 21.4.2017 17:15 "Považuji to za tříštění sil."
tuto frazi pouzivaji vyhradne trollove nebo hlupaci, v pripade zamestnance PR oddeleni Microsoftu jde o kombinaci obojiho... kdokoliv soudny a racionalne uvazuji clovekby takovou kravinu z ust/klaves nevypustil...
realita je takova ze ext4 je primarni filesystem, btrfs je FS s modernima vlastnostma ve vyvoji
ext3 - predchozi verze ext4, to je jako by nekdo psal ze "NTFS 1.0, NTFS 1.1, NTFS 1.2 (zname tez jako NTFS 4.0), NTFS 2, NTFS 3.0 (zname tez jako NTFS 5.0), NTFS 3.1 (zname tez jako NTFS 5.1, NTFS 5.2, NTFS 6.0)"
exFAT, HFS, JFS, NTFS, VFAT - filesystemy kvuli kompatibilite (chapu ze to slovo Microsoft nesnasi protoze preferuje vendor lock-in)
XFS, ZFS - jednak kvuli kompatibilite, druhak jsou jejich fanousky pouzivane pro specificke vlastnosti
F2F2 - jednak kvuli kompatibilite, druhak je to specificky filesystem urceny specialne pro sd/flash, narozdil od ve Windows pouzivaneho totalne hloupeho VFAT vychazejici v podstate z potreb floppy a msdosu...
encFS, eCryptfs - jde o virtualni vrstvu pro sifrovani kterou lze kombinovat s filestemem dle potreby, ve Windows je podobne v podobe s NTFS pevne svazane(takze ta horsi varianta) sluzby "Encrypted File Service"
SquashFS - jde o komprimacni format/filesystem pouzivany primarne na readonly filesystem, at jiz LiveCD/LiveDVD/LiveUSB/LivePXE) tak pro embedded systemy... podobne jako Microsoft pouziva (ale hure/hloupeji) svuj (dalsi) file-disk format WIM...
Linux má 5 primárních, aktivně vyvíjených filesystémů - Ext4, Reiser4, BtrFS, XFS, ZFS (OpenZFS).
To se mi opravdu zdá jako zbytečný luxus.
Slovem "primární" myslím systém zamýšlený (doporučený, optimalizovaný) jako root file system; tedy primárně pro pevné disky, k uložení a běhu systému samotného, aplikací a (potenciálně terabajty) uživatelských dat.
Zrovna jsem včera instaloval openSuse Leap 42.2 a baflo to na mě XFS nebo BtrFS jako výchozí.
Chystám se na Ubuntu, tak jsem zvědavý s čím ten na mě vybafne. Nebude to náhodou ZFS? Prý to mají od Oracle CDDL licencované. Nebo se toho také v rámci letošního velkého "jarního výprodeje" hodlají také zbavit?
Za tu roztříštěnost, v tomto případě, kupodivu, nemůže linuxová komunita, jako spíše historie, korporátní zájmy a komerční Unixy. BtrFS začal Oracle, ZFS je od SUNu, XFS od SGI, Ext původní linuxový FS a Reiser je (primárně) komunitní počin.
Mimochodem, s FS má problémy i Microsoft. Jejich ReFS (Resilient File System, neplést s ReiserFS!), the next generation FS :), zamýšlený nástupce NTFS, ani po letech vývoje se svému předchůdci plně nevyrovná (asi něco jako bylo KDE4 proti KDE3 většinu svého aktivního vývoje). ReFS je sice součástí Win od 8.1 ale není normálně aktivován.
Linux má 5 primárních, aktivně vyvíjených filesystémů - Ext4, Reiser4, BtrFS, XFS, ZFS (OpenZFS).
To se mi opravdu zdá jako zbytečný luxus.
Co se zda tobe jako luxus, je podruzne. Dulezite je, co chcou firmy platici vyvoj jednotlivych FS.
Pricemz tvuj vycet je mimo.
Ext4: konzervativni vyvoj unixovych FS, ktery se snazi drzet a zaroven zbavit koncepci z davnych casu. Je to slepa cesta vyvoje, ale protoze stabilita a rozumny vykon, tak se stale drzi.
Reiser4: to vazne nekdo realne nasazuje?
BtrFS: pokus o moderni FS, ale udelat obecne pouzitelny FS na zelene louce je prekvapive hodne prace.
XFS: osvedceny a vykonny FS pro enterprise reseni, prevzany z IRIXu, takze "skoro bez prace"
OpenZFS: ono uz je to ve vanille?
Takze kdyz si to prepocitas, mas tu tri pouzitelne souborove systemy, z toho dva koncepcne zastaravajici, jeden v pokrocile fazi vyvoje, jeden na pul chciply a jeden ani neni ve vanille. Vazne ti to prijde jako nejaky extra luxus?