ã¹ãããã·ã§ãããåç §ããããã«WebãµãŒããŒãèµ·åããresticã³ãã³ããå®è£ ããŸãã
ããã¯ãããã¯ã¢ããããã°ã©ã ã®äžå¿çãªè²¬ä»»ã§ã¯ãªãããã«æããããã®ã«ãšã£ãŠã¯éåžžã«è€éãªããã§ãã ããã¯æ¬åœã«å¿ èŠã§ããïŒ ãŠãŒã¹ã±ãŒã¹ã¯äœã§ããïŒ ç§ã¯FUSEïŒhttps://github.com/restic/restic/issues/27ïŒã奜ã¿ãŸãã
Windowsã«ã¯ãã¥ãŒãºããããŸããã http://golang.org/pkg/net/http/#FileServerã䜿çšãããšãåºæ¬çãªWebãµãŒããŒã䜿çšããäœæ¥ã¯ã»ãšãã©ãããŸãã
ãŸãã«ç§ãæã£ãã®ã¯ãããã¯å€ãã®ã³ãŒãã§ã¯ãªããããããWindowsã§ã¹ãããã·ã§ãããåç §ããå¯äžã®æ¹æ³ã§ãã
åæããŸãã ããæç¹ã§GUIãå¿ èŠã«ãªããŸãããã®ããã®æãèªç¶ãªã¹ãããã¯ãããŒã«ã«ãã¹ããŸãã¯å¿ èŠã«å¿ããŠä»ã®ã€ã³ã¿ãŒãã§ã€ã¹ã«è¡šç€ºã§ããçµã¿èŸŒã¿WebãµãŒããŒã ãšæããŸãã 誰ããWebãã©ãŠã¶ãæã£ãŠãããã¢ããªã±ãŒã·ã§ã³ãããããåãå¿ èŠã¯ãããŸããã
@rakoo次ã«WebãµãŒããŒã§äœæ¥ããããšã«èå³ããããŸããïŒ
ãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹ã«ã€ããŠã®èãïŒ
restic server
HTTPãµãŒããŒãèµ·åããŸãhttp://RarOjHogvueHov:egsevtekwucvith@localhost/snapshots
ããŒã«ã«ãã¹ã以å€ã®ãã®ã«ãã€ã³ãããããšã¯äžå¯èœã§ã¯ãªãã¯ãã§ãããæ¬åœã«é£ããã§ãã ãã¶ããæåã®ããŒãžã§ã³ã®localhostãããŒãã³ãŒãã£ã³ã°ããŠããŠãŒã¶ãŒãæå¥ãèšããã©ããã確èªããŸãã
èãïŒ
ããã¯ããŠãŒã¶ãŒå/ãã¹ã¯ãŒãããªãããšãé€ããŠãå€ããå°ãªããç§ãèããŠãããã®ã§ããIMOã¯ãæœåšçãªæ»æè ã«å¯ŸããŠã»ãšãã©äŸ¡å€ãæäŸããŸããïŒãã¬ãŒã³HTTPãå®è¡ããããããŠãŒã¶ãŒåãšãã¹ã¯ãŒããã¯ã£ãããšè¡šç€ºãããŸãïŒã
ããŒã«ã«ãã¹ãã®ã¿ã«ãã€ã³ãããŠãåé¡ãããŸãããæäœããŠããã¹ããŒã¹ãèŠããšããŠãŒã¶ãŒã¯sshã§VPSã«ã¢ã¯ã»ã¹ã§ãããšæããŸãããããã£ãŠã次ã®ããã«ãªããžããªãžã®ã¢ã¯ã»ã¹ããã³ããªã³ã°ããããšãæåŸ ã§ããŸãã
backupserver> restic server 5000
clientmachine> ssh -Nf -L 5000:backupserver:5000
clientmachine> open http://localhost:5000/
ããã¯ããªãå€ããšæããŸãããç§ããã¯+1ã§ãã ãŸããåã蟌ãŸãããŠãŒã¶ãŒå/ãã¹ã¯ãŒãã¯ç§ã«ãšã£ãŠã¯åœ¹ã«ç«ããªããšæããŸããããã¯ãšã«ãããã¹ãŠVPNã®èåŸã«ãããã·ã¹ãã ã®èµ·åæã«éå§ããããšæããŸãã
@yatescoã·ã¹ãã ã®èµ·åæã«èª¬æããWebãµãŒããŒã³ã³ããŒãã³ããèµ·åããããã®ãŠãŒã¹ã±ãŒã¹ã¯äœã§ããïŒ æãã€ããªãã®ã§ããã詳ããæããŠããã ããŸããïŒ
ããã«ã¡ã¯@ fd0-ãªããžããªãããŒã ã«å ¬éããããšã§ãã
ããªãçããããšã«ãç§ã¯ã¶ãã¶ãããããªãããŒã¿ãããããæã£ãŠããã®ã§ããã®ã¢ãŒã«ã€ãããé·æä¿åããšããŠäœ¿çšããã®ã¯çŽ æŽãããã§ãããããŒã ãšãµã³ãå ±æããã®ã¢ã¯ã»ã¹ãæäŸããå¿ èŠããããŸãïŒäŸïŒïŒ 377ïŒãŸãã¯WebUIã¯çŽ æŽãããã§ããã
ããããŸããã説æããŠãããŠããããšãã
Sambaãä»ããŠFuseããŠã³ããå ¬éããããšã¯å¯èœã§ããïŒ åäœãããããšãã§ããŸããããã©ã«ãã衚瀺ãããŸããã FuseããŠã³ãã§ãallow_otherãã䜿çšããã«ã¯ã©ãããã°ããã§ããïŒ
ããã§äœãããå¿ èŠãããããæŠèª¬ããŸããïŒ https ïŒ
ãã¥ãŒãºããŠã³ããªãã·ã§ã³ã«ã€ããŠã¯ãåé¡ïŒ767ãåç §ããŠãã ããã
å¿ èŠãªã®ã¯åãªããã¥ãŒã¢ã§ããïŒ ãŸãã¯ãã¹ãŠã®ã¿ã¹ã¯ã®å®å šãªGUIïŒ GUIã«ã€ããŠç§ãæ³åããæ©èœã¯æ¬¡ã®ãšããã§ãã
æ©èœã®åŸ©å ïŒ
管çæ©èœïŒ
Electronã䜿çšãããšãã¯ãã¹ãã©ãããã©ãŒã / HTML5 GUIãç¶æã§ããŸããããã¡ã€ã«ã·ã¹ãã ã¢ã¯ã»ã¹ãexecã³ãã³ããopen sshæ¥ç¶ããã€ãã£ãã¢ãžã¥ãŒã«ãªã©ã®è¿œå æ©èœããããŸãã
ãããžã§ã¯ãã«ã€ããŠè©±ãããšã¯ã§ããŸããããç§ã«ãšã£ãŠã¯ã埩å æ©èœã§ååã§ãã
ç§ã¯äž»ã«ãµãŒããŒã«SSHã§æ¥ç¶ããWindowsããã¯ã¹ã§äœæ¥ããŠããŸããåé¡ãçºçããå Žåã¯ãããã¯ã¢ãããã©ã€ãããã°ããæ¥ç¶ããŠãåé¡ã®ãã¡ã€ã«ã衚瀺/ããŠã³ããŒãããããšæããŸãã
ããã«ã¡ã¯çŽ³å£«ãã¡ããã©resticãæ¬åœã«è¯ãä»äºãthxã§åãå§ããŸããïŒ ãã®ãããã¯ã«é¢ããç§ã®50ã»ã³ãã ãã¹ãããã·ã§ããã®è¡šç€ºãã¯å°ã圹ã«ç«ããªãç§èŠã§ãïŒnginxãsambaãªã©ã®ä»»æã®æ段ã§å ¬éããããã¥ãŒãºããŠã³ãã§å®è¡ã§ããŸãïŒããŠãŒã¶ãŒã次ã«å®è¡ã§ããããã€ãã®äŸ¿å©ãªã¢ã¯ã·ã§ã³ãããã¯ãã§ããããšãã°ãéžæãããã¹ããžã®ãã¡ã€ã«ã®åŸ©å ã埩å ããã€ãã®dbãã¹ããžã®sqlãã³ããç°¡åãªæ¹æ³ã§resticããã¯ã¢ããããããã®ã埩å ããŸãã äž»ã«2ã€ã®ããšããããŸãïŒ1ãããŒã¿ã®æ€çŽ¢/åé¡ãš2.ããŒã¿ã®äžã§äœããè¡ãïŒããšãã°ã埩å ãåé€ãå ±æãåé¡ãã³ããŒã®æ¯èŒïŒå·®åïŒãªã©ïŒã ãªãFUSEã§ã¯ãªãã®ãïŒããã¯Windowsã«é¢ãããã®ã§ã¯ãªããUXã«é¢ãããã®ã§ãã è±å¯ãªæ€çŽ¢ãšç°¡åãªåŸ©å ïŒç¹å®ã®ããŒã¿åãšã·ã¹ãã ã«åãããŠèª¿æŽïŒãåããããã¯ã¢ããã¹ãã¢çšã®Webããã³ããšã³ããæã€ããšã¯æ¬åœã«çŽ æŽãããããšã§ãã ããã¯ã¢ããã¹ãã¢ã«é©ããå€æ°ã®ãŠãŒã¹ã±ãŒã¹ïŒé«åºŠãªæ€çŽ¢ããªã¢ãŒã埩å ãããã¯ã¢ããããªã·ãŒã®ææ¡ãããŒã¿ãã¹ãã³ã°ãPIIä¿è·ãã·ã¥ã¬ãããŒãããŒã¿ã³ã³ãã©ã€ã¢ã³ã¹ãã¬ããŒããªã©ïŒãæ³åãããããã®äžéšã«Webããã³ããçšæããŸãïŒå°ãªããšãæ€çŽ¢åŸ©å ïŒãããã§ãããïŒ ã»ãšãã©ã®å Žåãäž»ãªç®çãäœãã®ææ°ããŒãžã§ã³ã埩å ããããšã ãã§ããããã¯ã¢ããã®å ŽåãããŒã¿ç Žæã®å Žåãå¯èœãªéãè¿ éã«ããã§ååã§ãããWebããã³ããšã³ããæã€ã¢ãŒã«ã€ããªã©ã®æ©èœã«ã¯å¿ é ã§ãã ãšããã§ãããŒã¿ã¢ãŒã«ã€ãã¯å¥ã®åªããæ©èœã§ããããšãã°ãç¹å®ã®ããŒã¿ãRESTICã¹ãããããåãé¢ããŠé·æã¢ãŒã«ã€ãã«ç§»åããŸãããããã¯å¥ã®è©±ã§ãããã¹ã¬ããã®ãããã¯ããå€ããŠããŸãïŒãããŠãå°æ¥ãããè¡ãããšã«ããå Žåã¯ããããèŠãŠãã ããã³ã¢æ©èœãRESTAPIã§ã©ããããŠãRESTãµãŒããŒã§å®è¡ããå¿ èŠããããŸãã åŸè ã¯ããµãŒãããŒãã£ã·ã¹ãã ãšã®çµ±åã«é©ããŠããŸãã
goãŸãã¯nodejsã§èšè¿°ãããrestic-web
沿ã£ããã®ãšåŒã°ããä»ã®ã¢ããªã±ãŒã·ã§ã³å
šäœããå§ãããŸããã³ãã³ãã©ã€ã³ã€ã³ã¿ãŒãã§ã€ã¹ããå®è¡ã§ãããã¹ãŠã®ããšãå®è¡ã§ããããã«ãreactãŸãã¯angularã䜿çšããŸãã
Resticã¯Windowsã§https://github.com/dokan-dev/dokany/ã®ãããªãã®ãå©çšã§ããŸããïŒ
Linuxã§gocryptfsã䜿çšããŠæå·åãããWindowsã§ãã©ã«ãã«ã¢ã¯ã»ã¹ããããã«ãæã
cppcryptfsã䜿çšããŸãããããã¯ããªãããŸãæ©èœããŠããããã§ãã
ããã«ã¡ã¯ã
ç§ã¯ãã®èšäºãèŠã€ããŸããïŒ https ïŒ
ããã¯èšãïŒ
WSL 2ã«ã¯ç¬èªã®Linuxã«ãŒãã«ãå«ãŸããŠãããããã·ã¹ãã ã³ãŒã«ãšå®å šã«äºææ§ããããŸãã ããã«ãããWSLå ã§å®è¡ã§ãããŸã£ããæ°ããã¢ããªã®ã»ãããå°å ¥ãããŸãã ãšããµã€ãã£ã³ã°ãªäŸãšããŠã¯ãLinuxããŒãžã§ã³ã®DockerãFUSEããããŸãã
WSLãæ©èœããã«ã¯Hyper-Vãå¿ èŠã§ããããšãèæ ®ã«å ¥ããŠãã ããããã ãã次ã®ç¹ã«æ³šæããŠãã ããã
1ïŒHyper-Vã¯ãäžéšã®ããŒãžã§ã³ã®Windowsã§ã®ã¿äœ¿çšã§ããŸãã ããšãã°ãWindows 10 Proã¯Hyper-VããµããŒãããŠããŸãããWindows 10Homeã¯ãµããŒãããŠããŸããã
2ïŒHyper-Vã¯ããŠãŒã¶ãŒããã§ã«äœ¿çšããŠããå¯èœæ§ã®ããä»ã®ãã€ããŒãã€ã¶ãŒãœãããŠã§ã¢ïŒVirtualBoxãªã©ïŒãšå ±åã§ããŸããã ãããã£ãŠã誰ãããã§ã«VirtualBoxïŒãŸãã¯å¥ã®ãã€ããŒãã€ã¶ãŒïŒã䜿çšããŠããå Žåããã®äººã¯WSLã䜿çšã§ããŸããã
èŠçŽãããšãWSLã¯ãã¹ãŠã®WindowsãŠãŒã¶ãŒã«ãšã£ãŠåœç¶ã®ããšãšèŠãªãããã¹ãã§ã¯ãªããšæããŸãã
@ aliron19ãã®åºå žãåŒçšã§ããŸããïŒ ä»äºçšã®PCã§WSLã䜿çšããŠredisãå®è¡ããŠããŸãããããã¯Windows 10 Home PCã§ãããããHyper-Vã¯ãªããWSLã¯åé¡ãªãæ©èœããŸãã
https://docs.microsoft.com/en-us/windows/wsl/wsl2-faq#does -wsl-2-use-hyper-v-will-it-be-available-on-windows-10-homeãåç §ããŠãã ãã
æ確ã«ããŠããã ãããããšãããããŸãã HyperVã®èŠä»¶ã¯WSL2ã«ãšã£ãŠæ°ãããã®ã®ããã§ãããalironã¯WSLå šè¬ã«ã€ããŠè©±ããŠãããšæããŸããã ãŸããHyperVãWindows10HomeãŠãŒã¶ãŒã«å©çšå¯èœã«ãªãããšãç¥ã£ãŠãããšããã§ãããã
HTMLã€ã³ã¿ãŒãã§ã€ã¹ã§ã¯ãªãWebdavãµãŒããŒïŒïŒ485ïŒã䜿çšããå¿
èŠããããšæããŸãã
ããã«ããããŠãŒã¶ãŒã¯Windowsãšã¯ã¹ãããŒã©ãŒã«ãããã¯ãŒã¯ãã©ã€ããšããŠç°¡åã«è¿œå ããããšãã§ããŸãã
nodejsãåãããµãŒããŒïŒãŸãã¯unix / linuxïŒãå ¥æããå Žåã¯ã次ã®ããšãç°¡åã«è¡ãããšãã§ããŸãã
restic mount backup &
npx http-serve backup
次ã«ã http ïŒ ãŸãã
ãããŠããã¡ã€ã«ãåç
§ããŠãã ããã
å®äºãããã次ã®ããšãã§ããŸãã
CTRL + C # stop npx
fg # bring back restic
CTRL + C # stop restic
ãªããžããªãããŠã³ãããŠããéãresticããªããžããªãããã¯ããã®ãããããšããã®éã«ããã¯ã¢ãããè¿œå ã§ããã®ãã¯ããããŸããã
ãã ããå°ãªããšãããã¡ã€ã«ãåç
§ããããã®å°ããªWebã€ã³ã¿ãŒãã§ã€ã¹ã䜿çšã§ããŸãã
@ vincent-oguryãã®ææ¡ãããæ©èœã®ãã€ã³ãã¯ã restic mount
å©çšã§ããªããŠãŒã¶ãŒãã¬ã³ããªãŒãªããã¯ã¢ãããã¥ãŒãæäŸããããšã ãšæããŸããã
ããªããæ£ããã§ãã ããã¯ãç§ãæšæž¬ããWindowsã®Dockerå
ã§æ©èœããã¯ãã§ãã
WebããŒãžã§ã³ã¯ãä»ã®ãã©ãããã©ãŒã ã«é©ããŠããå ŽåããããŸãã
ã³ãã³ãã©ã€ã³ãç°¡ç¥åããŠãã¹ãããã·ã§ããã®è¡šç€ºã衚瀺ãå¿ããæ°ããããã¯ã¢ããã®éå§ãè¡ãããšãã§ããŸã...
ãã®åé¡ã«åãçµã¿ãããšæããŸãã ã¢ã€ãã¢ã¯ãããã€ãã®åºæ¬çãªhtmlãã³ãã¬ãŒãã䜿çšããŠããã©GohttpãµãŒããŒãå®è£
ããããšã§ãã ç§ãã¡ã®ãŠãŒã¹ã±ãŒã¹ã¯ãWindowsã§ã®Resticã®ãŠãããŒãµã«ãªåºæ¬ã€ã³ã¿ãŒãã§ã€ã¹ã䜿çšããããšã§ãã
ãããç§ã®ã¿ã¹ã¯ã®ç¯å²ã§ãïŒ
åé¡
Resticã¯ãWindowsäžã®ããã¯ã¢ãããé²èŠ§ããããã®äŸ¿å©ãªæ¹æ³ãæäŸããŠããŸããã
ä»äº
ãã©ãŠã¶ã䜿çšããŠããã¯ã¢ãããåç
§ããã³åŸ©å
ã§ãããçµã¿èŸŒã¿ã®WebãµãŒããŒã®åºæ¬çãªæŠå¿µå®èšŒãå®è£
ããŠã¿ãŠãã ããã
äŸ
次ã®ã³ãã³ããå®è¡ãããšã2ã€ã®ããã¯ã¢ãããäœæãããã³ãã³ãã©ã€ã³ããããã¯ã¢ãããåç
§ããæ¹æ³ãåŠç¿ããŸãã
openssl rand -hex 10>ã/ .restic-password
restic -pã / .restic-password init --repo / tmp / backup
restic -pã / .restic-password --repo / tmp / backup backupã
æ¥ä»>ã/ file-with-changes.txt
restic -pã / .restic-password --repo / tmp / backup backupã
restic -pã / .restic-password --repo / tmp / backupã¹ãããã·ã§ãã
ãªããžããª2ad83051ãæ£åžžã«éããããã¹ã¯ãŒããæ£ãã
b8ee7b24 2020-09-11 17:20:17 thorsten-devvm-v3 / root
2ã€ã®ã¹ãããã·ã§ãã
restic -pã / .restic-password --repo / tmp / backup ls -l 99388d0b
restic -pã / .restic-password --repo / tmp / backup ls -l --json 99388d0b | jq
restic -pã / .restic-password --repo / tmp / backup find snmp.json
restic -pã / .restic-password --repo / tmp / backup restore latest --target / tmp / restore --include "/root/snmp.json"
ä»æ§
ãã®ãããªããšãå®è¡ãããšãWebãµãŒããŒãèµ·åããå
éšçã«ããã¯ã¢ãããããªãŒãã³ãã«ãªããŸãã
restic -pã / .restic-password --repo / tmp / backup webserver 127.0.0.1:3344
ãã©ãŠã¶ã§HTTPïŒ//127.0.0.1ïŒ3344ã
æåã®åã®IDãã¯ãªãã¯ãããšãã¹ãããã·ã§ããå
ã®ãã¹ãŠã®ãã¡ã€ã«ã®ããªãŒãã¥ãŒã衚瀺ãããŸãã restic -pã / .restic-password --repo / tmp / backup ls-lãšåãããŒã¿
ãŸãã¯ãã¹ãããã·ã§ããã®ãã¹ïŒ5åç®ïŒãã¯ãªãã¯ãããšããã®ãã¹ã«ã®ã¿å±ããããã¯ã¢ããå
ã®ãã¡ã€ã«ã®ãªã¹ãã衚瀺ãããŸãã ããã¯ãrestic -pã / .restic-password --repo / tmp / backup ls-lãšåãããŒã¿ã衚瀺ããŸãã
1ã€ã®ãã¡ã€ã«ãã¯ãªãã¯ããŠããã©ãŠã¶ããããŠã³ããŒãã§ããŸãã
çæ³çã«ã¯ããã¡ã€ã«ãã¯ãªãã¯ãããšããã®ãã¡ã€ã«ã®æ¥ä»é ã«äžŠã¹ããããã¹ãŠã®ç°ãªãããŒãžã§ã³ã®ãªã¹ãã衚瀺ãããŸãã
ã¹ããããããã¯åžžã«ãã¡ã€ã«ã·ã¹ãã å
šäœã®ä»®æ³ãã¥ãŒãæäŸããŸãã ãã¡ã€ã«ã®ããŸããŸãªããŒãžã§ã³ãèå¥ããã«ã¯ãã³ãã³ãã©ã€ã³ã§æ¬¡ã®ã³ãã³ãã䜿çšããŸãã
restic -pã / .restic-password --repo / tmp / backup find /root/snmp.json --json | jq
ãã¡ã€ã«ãå€æŽãããŠããªããããmtimeãåäžã§ãããã¹ãŠã®ãªããžã§ã¯ãã1ã€ã®ãªããžã§ã¯ãã«æžããå¿
èŠããããŸãã
dokanyã®ãããªWindowsã§ãresticmountãã®ãµããŒããè¿œå ããIMHOã¯ãLinuxãšWindowsã§åã埩å ã¯ãŒã¯ãããŒã䜿çšããæ¹ãçã«ããªã£ãŠãããOSãšã¯ã¹ãããŒã©ãŒã䜿çšããŠãã¡ã€ã«ãåç §ãããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãåäžããŸãã
Windows以å€ã®ãã©ãããã©ãŒã ã§è¡ãããã®ãšåãæ¹æ³ã§Restic does not provide a handy way to browse through the backups on Windows
ã解決ããããšãç®çãšããã¢ãã¬ã¹ã«ã€ããŠã¯ã httpsïŒ//github.com/restic/restic/pull/2862ãåç
§ããŠ
ãã¡ããã§ããããäžè¬çãªãWindowsãŠãŒã¶ãŒãã³ãã³ãã©ã€ã³ã€ã³ã¿ãŒãã§ã€ã¹ã䜿çšããã®ã¯éåžžã«é£ãããšæããŸããç§ã®ç®æšã¯ããã¹ãŠã®ãŠãŒã¶ãŒãç解ã§ããã·ã³ãã«ã§ç解ããããã€ã³ã¿ãŒãã§ã€ã¹ãæäŸããããšã§ãã
åé¿çãšããŠã@ vincent-oguryãš@celogeekãææ¡ãããã®ããŸãšããŠïŒããããšãïŒïŒããã®dockerfileãäœæããŸããã https://github.com/stevedenman/restic-browser-docker
ç§ã¯ãããç§ã®Windowsãã·ã³ïŒwsl2ã®Dockerã§ïŒã§å®è¡ããŠããŠãã¹ãããã·ã§ããã®é²èŠ§ãšãã¡ã€ã«ã®ããŠã³ããŒãã«ããŸãæ©èœããŸãã
ãã¿ãŸãããç§ã¯ããããã¹ãã§ã¯ãªããšããªãã¯èšããŸããïŒ ãªãããã«åé¡ãããã®ã§ããïŒ ææ¡ããã解決çã¯ãç§ã®å Žåãå¹³åçãªãŠãŒã¶ãŒã«ãšã£ãŠã¯éåžžã«é£ãããã®ã§ããããã°ã©ã ãéå§ãïŒå®çŸ©ããããã©ã°ã䜿çšããŠïŒããã©ãŠã¶ãŒãéããŸãã
ããã«ã¡ã¯ã
仲éã®ã¬ã¹ãã£ãã¯ãŠãŒã¶ãŒãšããŠãç§ã¯ãã®ããŒãã«2ã»ã³ããèœãšãããã£ãã ãã§ãã
ç§ã¯ãã¯ãããžãŒã«ç²ŸéãããŠãŒã¶ãŒãªã®ã§ãç©äºã®çŸç¶ã«åé¡ã¯ãããŸããã ãŸããresticã¯ãã¯ãããžãŒã«ç²Ÿéãã人ã ã察象ãšããŠããããšãèªèããŠããŸãã ãããã£ãŠãçŸåšã®ãœãªã¥ãŒã·ã§ã³ã¯ãäžéšã®äººã«ãšã£ãŠã¯è€éã§ãã/è€éã«ãªãå¯èœæ§ããããŸãã ãããããã©ãŠã¶ããã¢ã¯ã»ã¹ã§ããããŒã«ã«WebãµãŒããŒã®å®è£ ã«åé¡ã¯ãããŸããã ããã¯çŸåšã®è§£æ±ºçã«åã£ãŠä»£ããã¹ãã§ã¯ãããŸããããå¯æ¬¡çãªè§£æ±ºçãšããŠããã®ãããªãã®ããããšããã§ãããã ãããŠãããããããã¯ããã«å€ãã®äººã ãã¬ã¹ãã£ãã¯ãããå©çšããããããã§ãããã
ããããšãã
ãWindowsãŠãŒã¶ãŒã«ã¯é£ããããããšããæèŠã«ã¯å
šãè³æã§ããŸããã ãŸã第äžã«ããããã®ãŠãŒã¶ãŒã¯ãã§ã«èªåã®ãã®ãããã¯ã¢ããããããã«resticãå®è¡ããããšã«æåããŠãããbackupã³ãã³ãã®ä»£ããã«mountã³ãã³ããå®è¡ããããšã¯é£ãããããŸããã 次ã«ãã³ãã³ãã©ã€ã³ãéããŠããã«restic -r foo mount bar
ãšå
¥åããæ¹æ³ã«ã€ããŠèª¬æããŸãã çå£ã«ãããã¯èª°ã«ãšã£ãŠã©ã®ããã«é£ããã§ããïŒ èª°ããããã«åé¡ãæ±ããŠãããªãããããã®äººã
ã¯åœŒãèªèº«ãæè²ããå¿
èŠããããŸãã ããã¯ãé£ããããã®ã§ã¯ãªããã³ãã³ãã©ã€ã³ãã1è¡ã ãã§ãã
ç·šéïŒæ確ã«ããããã«ãããã¯ãïŒ2862ã§åŸåãããããã«Windowsã§äœæ¥ããŠããrestic mount
èãããšãã©ã®WindowsãŠãŒã¶ãŒã«ãšã£ãŠãé£ããããšã§ã¯ãªãããšãæå³ããŸã- @ filippobottegaãããäžã«æžããããšã瀺åããŠããŸãããã®ã³ã¡ã³ãã¯ãå¹³åçãªWindowsãŠãŒã¶ãŒã«ãšã£ãŠã¯ç°¡åã§ãã restic mount
ã䜿çšããããã«WSLã䜿çšããå¿
èŠã¯ãªããšæããŸãã
ããã«ã¡ã¯ã
WSL2ã䜿çšããŠWindowsãšã¯ã¹ãããŒã©ãŒã«åŸ©å
ããã¯ã¢ãããæ£åžžã«ããŠã³ãããŸããããæã£ãã»ã©ç°¡åã§ã¯ãããŸããã
å¿
ãïŒ
ã«ãŒããšããŠUbuntuã»ãã·ã§ã³ã«ãã°ãªã³ããããŠã³ãã䜿çšãããããŠã³ãããŸãïŒäŸïŒ restic -r /mnt/c/ResticBackup -p /mnt/c/ResticBackup/password-file.txt mount /mnt/restic
æåŸã«ããªãã¯èŠãããšãã§ããã§ãããïŒ
次ã«ãã³ãã³ãã©ã€ã³ãéããŠãããã«restic -rfooããŠã³ãããŒãå ¥åããæ¹æ³ã«ã€ããŠèª¬æããŸãã çå£ã«ãããã¯èª°ã«ãšã£ãŠã©ã®ããã«é£ããã§ããïŒ
ãã€ããŒãã€ã¶ãŒãæ©èœãããããã®BIOSãªãã·ã§ã³ãWSLã®ã»ããã¢ãããããã³ãã€ããŒãã€ã¶ãŒã®èª€åäœã«èµ·å ããåé¡ã®èšºæãªã©ãæ€èšããå Žåãããã¯éåžžã«é¢åãªäœæ¥ã«ãªãå¯èœæ§ããããŸãã ç§ã®èŠè§£ã§ã¯ãç§ã䜿çšããŠããVmWareããã³VirtualBoxãšäºææ§ã®ãªãMicrosoft Hypervisorãå®è¡ããããã®èŠä»¶ã¯ãresticã«ãšã£ãŠæããã«ã°ãããŠããŸãã
LANã§å ±æãããå Žåã¯ãWebãã©ãŠã¶ã®ãã€ã³ãã¢ã³ãã¯ãªãã¯ãã¯ããã«ç°¡åã§ãããhttpã¯Windowsãã¬ãŒããŒã®smbããããããããµããŒããããŠããŸãïŒãã³ãïŒãã©ãŠã¶ïŒã ãŸãããããã®ããŠã³ããsmbãä»ããŠå ¬éã§ãããã©ããã¯æ確ã§ã¯ãããŸããããå ¬éã§ããå Žåã§ããèŠç¹ã¯å€ãããŸããã
ç§ã®èŠè§£ã§ã¯ãWebãã©ãŠã¶ã®ãªãã·ã§ã³ãããåçŽã§ããããšã¯ééããããŸããã
ãã€ããŒãã€ã¶ãŒãæ©èœãããããã®BIOSãªãã·ã§ã³ãæ€èšããå Žåã¯ãWSLãã»ããã¢ããããããã誀åäœããããšã«ããåé¡ã蚺æããŸãã
@AndrewSavããã¯ããã§è°è«ãããŠããããšã§ã¯ãããŸããã @rawtaz ïŒåŒ·èª¿é±å±±ïŒããã®ã³ã¡ã³ããåç §ããŠãã ãã
ç·šéïŒæ確ã«ããããã«ãç§ã¯ãããã©ã®WindowsãŠãŒã¶ãŒã«ãšã£ãŠãé£ããããšã§ã¯ãªãããšãæå³ããŸã_äžãããã
restic mount
ã¯ïŒ2862ã§åŸåãããããã«Windowsã§äœæ¥ããŠããŸã-ç§ã¯@filippobottegaãããäžã«æžããããšã瀺åããŠããŸãããã®ã³ã¡ã³ãã¯ãå¹³åçãªWindowsãŠãŒã¶ãŒã«ãšã£ãŠã¯ç°¡åã§ããrestic mount
ã䜿çšããããã«WSLã䜿çšããå¿ èŠã¯ãªããšæããŸãã
@cfbaoãã®ããã®ã«ãŒãã«ãã©ã€ããã€ã³ã¹ããŒã«ããå¿ èŠããããŸãã ç§ã¯ãã€ããè¿œå ã®ã«ãŒãã«ãã£ã¬ã¯ããªãå¿ èŠãšããªããªãã·ã§ã³ãæ±ããŠããŸãã ããã°ã©ã ãå®è¡ããŠãã©ãŠã¶ãéãæ¹ãããµãŒãããŒãã£ã®ãœãããŠã§ã¢ãã€ã³ã¹ããŒã«ãããã®åŸåèµ·åããŠããããŸããªã³ãã³ãã©ã€ã³ãå®è¡ããæ¹ãç°¡åã§ããããšã¯ééããªããšæããŸãïŒã€ãŸããã³ãã³ãã©ã€ã³ãã©ã¡ãŒã¿ãæå®ããŠå ¥åããå¿ èŠããããŸãããã©ãŠã¶ã§ã¯ãã¯ãªãã¯ããã ãã§ããã²ãŒã·ã§ã³ã§ããŸãïŒã
ãµãŒãããŒãã£ã®ãã©ã€ããã€ã³ã¹ããŒã«ãããšããã®ãã©ã€ãã«ãã°ãããå Žåã«ã·ã¹ãã å šäœã«åœ±é¿ãäžãããšããæãããªæ¬ ç¹ããããŸãã ç¹°ãè¿ãã«ãªããŸãããã¯ããã«åçŽãªïŒãã©ãŠã¶ãŒïŒãªãã·ã§ã³ãããå ŽåããµãŒãããŒãã£ãã©ã€ããŒã®resticããã®èŠä»¶ã¯åççã§ã¯ãããŸããã
ç§ãèŠãéãããããã®ãªãã·ã§ã³ã¯ççŸããŠããªãã®ã§ãresticã¯äž¡æ¹ããµããŒãã§ãããããã£ãŠäž¡æ¹ã®ã°ã«ãŒãã®ããŒãºã«å¿ããããšãã§ããŸãã
@cfbaoãã®ããã®ã«ãŒãã«ãã©ã€ããã€ã³ã¹ããŒã«ããå¿ èŠããããŸãã ç§ã¯ãã€ããè¿œå ã®ã«ãŒãã«ãã£ã¬ã¯ããªãå¿ èŠãšããªããªãã·ã§ã³ãæ±ããŠããŸãã
@AndrewSavãã€ã³ãã¯ããã¹ãŠã®Windowsã®resticãŠãŒã¶ãŒãç°¡åã«å®è¡ã§ããéåžžã«åçŽãªã¿ã¹ã¯ã§ãããšããããšã§ãã ãããã£ãŠãWebãµãŒããŒãå®è£ ããéçå¹çšã¯å€§å¹ ã«åæžãããåæ§ç¯ã®éçºãšä¿å®ã®ã³ã¹ããæ£åœåã§ããªãå¯èœæ§ããããŸãã
@AndrewSav Webã€ã³ã¿ãŒãã§ãŒã¹ã¯ãããã¯ã¢ããã
ç§ã®æèŠã§ã¯ãWebã€ã³ã¿ãŒãã§ã€ã¹ãšé©åãªãã¡ã€ã«ã·ã¹ãã ã®ããŠã³ãã¯ããŠãŒã¹ã±ãŒã¹ãå€å°ç°ãªãè£å®çãªæ©èœã§ãã
ãµãŒãããŒãã£ã®ã«ãŒãã«ãã©ã€ãïŒäŸïŒhttpïŒ//www.secfs.net/winfsp/ïŒã¯ãäžåºŠã ãã€ã³ã¹ããŒã«ããå¿
èŠããããåèµ·åã¯å¿
èŠãããŸããã
ãŸããããããŸããªã³ãã³ãã©ã€ã³ãå®è¡ããããšããè°è«ãããããããŸããã Webã€ã³ã¿ãŒãã§ã€ã¹ãã¢ã¯ãã£ãã«ããããã«ãããã€ãã®resticã³ãã³ããå®è¡ããå¿
èŠã¯ãããŸãããïŒ
ãæèŠããããšãããããŸãïŒ ããã§ã¯ãç©äºãèŠçŽããŸãããïŒ
ç¶ç¶çãªäœæ¥ãšãã®ããã®PRã劚ãããã®ã¯äœãèŠåœãããŸããã å人çã«ã¯ãµããŒãããŠããŸãã ç§ãã¡ã¯ãã¹ãã ãšæããŸãïŒ
restic serve http
䜿çšãéå§ããŠãåŸã§restic serve webdav
ãrestic serve rest
ãªã©ã®ãããæäŸããä»ã®ã¡ãœãããè¿œå ã§ããããã«ããŸããrestic serve http 127.0.0.1:8080
åŒæ°ã䜿çšããŠãã€ã³ãããIP /ãã¹ãåãšããŒããæ§æã§ããããã«ããŸããæ¢åã®äœåãšåæ§ã®åèæç®ïŒ
æãåèã«ãªãã³ã¡ã³ã
goãŸãã¯nodejsã§èšè¿°ããã
restic-web
沿ã£ããã®ãšåŒã°ããä»ã®ã¢ããªã±ãŒã·ã§ã³å šäœããå§ãããŸããã³ãã³ãã©ã€ã³ã€ã³ã¿ãŒãã§ã€ã¹ããå®è¡ã§ãããã¹ãŠã®ããšãå®è¡ã§ããããã«ãreactãŸãã¯angularã䜿çšããŸãã