rclone์ ์ํด ๋ชจ๋ ๋ฆฌํฌ์งํ ๋ฆฌ ๋ฐฑ์๋๋ฅผ ๋จ๊ณ์ ์ผ๋ก ์ ๊ฑฐํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์ ์ง ๊ด๋ฆฌ(์: ๋ณด์ ๋ฌธ์ )์ ์ค์ ์ด ๊ฐ๋จํด์ง๋๋ค.
์ด ์กฐ์น์ ๋ถ์ ์ ์ธ ์ธก๋ฉด์ด ์์ต๋๊น?
์ด๊ฒ์ ์๋ฏธ๊ฐ ์์ต๋๋ค. Rclone์ ๋ฐฑ์ ์ ํธ๋ฆฌํฐ๊ฐ ์๋ ์ ์ก ์ ํธ๋ฆฌํฐ์ ๋๋ค. ๋๋จธ์ง ๋ฆฌํฌ์งํ ๋ฆฌ๋ฅผ ๋์ฒดํ ์ ์์ต๋๋ค.
๊ทธ๋ ์๋ง๋ rclone์ ๋ํ ์ฝ๋๋ฅผ ์ ์ธํ๊ณ ๋ restic์ ์์ฒด ๋ฐฑ์๋ ์ฝ๋๋ฅผ ๋ฒ๋ฆฌ๊ณ rclone ํตํฉ์ด ๋ชจ๋ ๋ฐฑ์๋๊ฐ ํต๊ณผํ๋ ํตํฉ์ด ๋๋๋ก ํ๋ ๊ฒ์ ์๋ฏธํ ๊ฒ์ ๋๋ค.
@jtagcat "์ ์ฅ์"๋์ "๋ฐฑ์๋"๋ฅผ ์๋ฏธํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
๋๋ ์ด ์ ์์ ์ ์ ์ผ๋ก ๋์ํฉ๋๋ค.
์ค์ ๋ก ๋ค๋ฅธ ๋ชจ๋ ๋ฐฑ์๋๋ฅผ ์ ๊ฑฐํ๋ ๊ฒ์ ๋๋ฌด ๋ฐฉํด๊ฐ ๋ ์ ์์ง๋ง ์ต์ํ ๋ฌธ์์์๋ rclone์ ๊ธฐ๋ณธ ๋ฐฑ์๋๋ก ๊ฐ์กฐ ํ์ํ๊ณ ๋ค๋ฅธ ์๊ฒฉ ๋ฐฑ์๋์ "๋ ๊ฑฐ์"๋ก ๋ ์ด๋ธ์ ์ง์ ํ ์ ์์ต๋๋ค.
์ฌ์ค ์ฐ๋ฆฌ๊ฐ ๋ ์ํ ์ ์๋ค๊ณ ์๊ฐํ๊ณ ๋ฐฑ์๋๋ฅผ ๋ ๊ฑฐ์๋ก ํ์ํฉ๋๋ค.
๋ฌธ์์์๋ ๋ ๊ฑฐ์๋ก ํ์ํ์ง๋ง ๋ด๋ถ ์์
์์๋ ๋ ๊ฑฐ์๋ฅผ ์ฆ์์์ rclone์ผ๋ก ๋ณํํฉ๋๋ค. ์ผ๋ถ rclone ๋ฐฑ์๋์์๋ ์ง์ ๋ฒ์ญํ ์ ์๊ณ ( ์ ๋จธ๋ฆฌ ๊ผญ๋๊ธฐ์ ์๋ http ), ๋ค๋ฅธ ๋ฐฑ์๋๋ ์์ ๊ตฌ์ฑ ํ์ผ๋ก ๋ฒ์ญํ ๋ค์ rclone๊ณผ ํจ๊ป --config /path/to/config
๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋น์ ์ด restic์ ์ฌ์ฉ์๋ก์ ์ ์๊ฒ ๋ฌป๋๋ค๋ฉด, ์ ๋ ๋ชจ๋ ๋ฐฑ์๋์ ๋ํด rclone์ ์ฌ์ฉํด์ผ ํ๋ ๊ฒ์ ๋์ฐํ ๊ฒ์ด๋ผ๊ณ ๋งํ๊ณ ์ถ์ต๋๋ค. ๋ฐฑ์๋๋ฅผ ์ํ rclone ์ค์ ์ ์ค์ ํ๊ณ rclone ๋ฐ์ด๋๋ฆฌ๋ฅผ ์ ์งํด์ผ ํฉ๋๋ค. ๋ด๊ฐ rclone์ ๋ํด ์ซ์ดํ๋ ํ ๊ฐ์ง ๋ด๊ฐ ๋์ ๊ทธ๊ฒ์ ์์ค ๋ฐ ๋์ ๋ฑ์ด URI๋ฅผ ์ ๊ณต ํ ์์๋, ๊ทธ๊ฒ์์ ์คํํ๊ธฐ ์ ์๋ฅผ ๊ตฌ์ฑํด์ผํ๋ค๋ ๊ฒ์ ๋๋ค.
์ฐ๋ฆฌ๋ ๋น์ ์ด ์ง๊ธ ๋น์ ์ด ์์ง๋ง rclone๊ฐ ์ ๊ณตํ๋ ๋ฐฑ์๋ ์ง์, ๋์ผํ๋ค restic ๊ณ์ ์ฌ์ฉํ ์ ์๋๋ก, restic์ rclone์ ํฌํจ ํ ์ ์๋ค๋ฉด ๋ ์ข์ ์ ์์ IMO์ ๋๋ค. ๊ทธ๋ฐ ์ผ์ด ๋ฐ์ํ๋ฉด ํด๋น rclone ์ฝ๋๊ฐ ๋์ผํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค๊ณ ๊ฐ์ ํ๊ณ ํ์ฌ ๋ฐฑ์๋ ์ฝ๋๋ฅผ ๋ฒ๋ฆฌ๋ ๊ฒ์ด ์ข์ต๋๋ค.
rclone์ restic์ ์ด๋ป๊ฒ ํฌํจ์ํค์๊ฒ ์ต๋๊น? ์ด ๋ฌธ์ ๊ฐ ๊ธ์ ์ ์ผ๋ก ๋ซํ๋ ค๋ฉด ์๋ฃ๋์ด์ผ ํฉ๋๋ค.
'rclone not found, running curl https://rclone.org/install.sh | sudo bash
'(curl ๋ฐ sudo๊ฐ ์์คํ
์ ์์ ์ ์์)์ ๊ฐ์ต๋๊น? pkg ๊ด๋ฆฌ์๋ฅผ ํตํด ์ค์นํ์ง ์๋ ๊ฒฝ์ฐ ๋จ์ํ ํจํค์ง ๊ด๋ฆฌ์์์ ์ข
์์ฑ์ผ๋ก ์ถ๊ฐํ ์ ์๊ธฐ ๋๋ฌธ์
๋๋ค.
ํ์ฌ ๋ฐฑ์๋๋ฅผ ์์ rclone ๊ตฌ์ฑ์ผ๋ก ์ฆ์ ๋ณํํ๋ ๊ฒ์ด ๊ฐ๋ฅํฉ๋๋ค . ์์ ํ rclone์ ๋ฌผ๊ฑด์ ์ฌ์ฉํ ๋ ๋ ์์ ๋ ์ฝ๊ฐ ์ง์ฆ์ด ๋ฉ๋๋ค.
rclone์ restic์ ์ด๋ป๊ฒ ํฌํจ์ํค์๊ฒ ์ต๋๊น?
๋๋ ๊ทธ ์ ์์ ๋ฌด์์ด ๊ฐ๋ฅํ์ง ์กฐ์ฌํ์ง ์์๋ค. ๋ช ๋ฒ์ด๊ณ ์๊ฐํด ๋ณธ ๊ฒ๋ฟ์ ๋๋ค.
์กฐ๊ธ ๋ ์๊ฐํด๋ณด๋ฉด ์๋ฒ ๋ฉ์ ์๋ง๋ '์ข
์์ฑ์ผ๋ก ์ค์น'๋ก ๋๋ ๊ฒ์ด๋ฏ๋ก rclone์ ์
๋ฐ์ดํธํ ํ์ ์์ด ์ต์ ์ํ๋ก ์ ์งํ ์ ์์ต๋๋ค.
์๋ง๋ ๊ฐ์ฅ ์ข์ ๋ฐฉ๋ฒ์ ๊ฐ๋ฅํ ๊ฒฝ์ฐ rclone์ ์ข
์์ฑ์ผ๋ก ์ถ๊ฐํ๊ณ ๋ชจ๋ ๊ณณ์ 'rclone์ ์ฐพ์ ์ ์์'์ ์ค์นํ๋ ๊ฒ์
๋๋ค(์ด๋ค ์ด์ ๋ก rclone ์ข
์์ฑ์ด ๋ฐฑ์
์ผ๋ก ๋ฐ๊ฒฌ๋์ง ์๋ ๊ฒฝ์ฐ).
rclone ์ค์น ํ๋ก๊ทธ๋จ์๋ ๋ช ๊ฐ์ง ๋ฌธ์ ๊ฐ ์์ต๋๋ค. posix ํธํ ๊ฐ๋ฅํ๊ฒ ๋ง๋์ญ์์ค.
๋๋ rclone์ al ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ์๋ฒ ๋ฉํ ์ ์๋๋ก ๋ง๋๋ ๊ฒ๊ณผ ๊ด๋ จํ์ฌ ๋ ๋ง์ด ์๊ฐํ๊ณ ์์ต๋๋ค. rclone์ ์ ๋ฆด๋ฆฌ์ค๋ฅผ ๋ณด์ฆํ๋ ์ ๋๋ก ์ ๋ฐ์ดํธ๋ ํญ๋ชฉ์ด ์๋ ๊ฒฝ์ฐ ์ restic ๋ฒ์ ์ ๋ฆด๋ฆฌ์คํ๋ ๋ฐ ๋ฌธ์ ๊ฐ ์์ด์ผ ํฉ๋๋ค.
์๋ง๋ ๊ฐ์ฅ ์ข์ ๋ฐฉ๋ฒ์ ๊ฐ๋ฅํ ๊ฒฝ์ฐ rclone์ ์ข ์์ฑ์ผ๋ก ์ถ๊ฐํ๊ณ ๋ชจ๋ ๊ณณ์ 'rclone์ ์ฐพ์ ์ ์์'์ ์ค์นํ๋ ๊ฒ์ ๋๋ค(์ด๋ค ์ด์ ๋ก rclone ์ข ์์ฑ์ด ๋ฐฑ์ ์ผ๋ก ๋ฐ๊ฒฌ๋์ง ์๋ ๊ฒฝ์ฐ).
๋ฏธ์ํ์ง๋ง ์ฌ์ฉ์ ์ปดํจํฐ์ ์ํํธ์จ์ด๋ฅผ (์๋์ผ๋ก) ์ค์นํ๋ ค๋ ์๋๋ (์๋ง๋) restic์ ๋ฌธ์ ํ ๋ก ์์ ์ฝ์ ์ต์ ์ ์์ด๋์ด์ ๋๋ค.
๋๋ฌธ์:
์๋ง๋ ๊ฐ์ฅ ์ข์ ๋ฐฉ๋ฒ์ ๊ฐ๋ฅํ ๊ฒฝ์ฐ rclone์ ์ข ์์ฑ์ผ๋ก ์ถ๊ฐํ๊ณ ๋ชจ๋ ๊ณณ์ 'rclone์ ์ฐพ์ ์ ์์'์ ์ค์นํ๋ ๊ฒ์ ๋๋ค(์ด๋ค ์ด์ ๋ก rclone ์ข ์์ฑ์ด ๋ฐฑ์ ์ผ๋ก ๋ฐ๊ฒฌ๋์ง ์๋ ๊ฒฝ์ฐ).
๋ฏธ์ํ์ง๋ง ์ฌ์ฉ์ ์ปดํจํฐ์ ์ํํธ์จ์ด๋ฅผ (์๋์ผ๋ก) ์ค์นํ๋ ค๋ ์๋๋ (์๋ง๋) restic์ ๋ฌธ์ ํ ๋ก ์์ ์ฝ์ ์ต์ ์ ์์ด๋์ด์ ๋๋ค.
๋๋ฌธ์:
* The environment may not allow installation of new software. * The user (or the system administrator) may not want new software to be installed. * Accessing the Internet without explicit request may be undesirable. * The installer may guess a wrong place for the new software. * Installation of new software may interfere with the normal functions of the environment (for example, by providing executables outside of regular places where users/package managers/administrators/auditors/whatever else expect to find them, and thus creating confusion). * The installation may fail or produce incorrect results; either in an obvious manner, or in a subtle and hard-to-discover way.
์, ๋ฌด์์ ์ ์ํฉ๋๊น?
๋ด๊ฐ ์๋ฏธํ๋ ๋ฐ๋ ๋ค์๊ณผ ๊ฐ์์ต๋๋ค.
restic rclone not found...
Install 'rclone' with command 'curl https://rclone.org/install.sh | sudo bash' to provide rclone backends? [Y/n]
ํ์๊ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ์ฑ๊ณต์ ์ผ๋ก ํฌํจ๋์ด ํญ์ restic ๋ฐฐํฌ์ ํฌํจ๋์ง ์๋ ํ ๊ธฐ์กด ๋ฐฑ์๋๋ฅผ rclone์ผ๋ก ๊ต์ฒดํ์ง ์์ต๋๋ค.
์ด ์์ ์ด ์๋ฃ๋ ๋๊น์ง(๋๋ ์ด ์์ ์ ์ํํ๋ ๋์ ) rclone์ ํจํค์ง ๊ด๋ฆฌ์์์ ์ ํ์ ์ข ์์ฑ(์: apt ๋ฐ portage)์ผ๋ก ๋ง๋ค ๊ฒ์ ๋๋ค. rclone์ด ์ค์น๋์ง ์์ ๊ฒฝ์ฐ restic์ rclone์ ์น ํ์ด์ง๋ฅผ ์ฐธ์กฐํ๋ ๋ฉ์์ง๋ฅผ ํ์ํ์ฌ (1) ์ค์น ๋ฐฉ๋ฒ์ ๋ํ ํ์ด์ง ์ฐธ์กฐ, (2) ์์คํ ์ ํจํค์ง ๊ด๋ฆฌ์๋ฅผ ์ฌ์ฉํ์ฌ rclone ์ค์น, (3) "curl + bash" ๋ช ๋ น๊ณผ ํจ๊ป "๋ฌด์์ ํ๊ณ ์๋์ง ํ์ธํ์ญ์์ค"๋ผ๋ ๊ฒฝ๊ณ ๊ฐ ํ์๋ฉ๋๋ค.
๋๋ ์ฌ์ฉ์๋ฅผ ๋์ ํ์ฌ ๋ช ๋ น์ ์์ฒญํ ํ์๋ ์คํํ์ง ์์ ๊ฒ์ ๋๋ค.
์ข ์์ฑ์ด ์๋ ์ ์ ๋ฐ์ด๋๋ฆฌ๋ก์์ RESTIC(ํนํ Linux์์)์ ํน์ฑ์ ๋ฒ ์ด ๋ฉํ ๋ณต์ ๋ฐ ๋ณต๊ตฌ ์๋๋ฆฌ์ค์์ ์ ๋์ ์ผ๋ก ๊ฐ์น๊ฐ ์์ต๋๋ค.
์ ๋ ํ์ฌ ์ฌ๋ด ๋ฐฑ์ ์ "rest-server"(์ธ์ฆ์ ์ํ haproxy ํ๋ฐํธ์๋ ํฌํจ)๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ์ ํธํ๋ฉฐ ๊ธฐ๋ณธ์ ์ผ๋ก ์ง์ํ๋ restic์ ์์กดํฉ๋๋ค. ๋๋ ์ค์ํ ๋ณต์ ์๊ฐ ๋์ RESTIC ๋ฐ RCLONE ์๋ง์ผ๋ก ๊ฐ์ ๋ ๊ฒฝ์ฐ, ์๋ง ๋ค๋ฅธ ํด๊ฒฐ์ฑ ์ ์ฐพ์ ๊ฒ์ ๋๋ค.
์ข ์์ฑ์ด ์๋ ์ ์ ๋ฐ์ด๋๋ฆฌ๋ก์์ RESTIC(ํนํ Linux์์)์ ํน์ฑ์ ๋ฒ ์ด ๋ฉํ ๋ณต์ ๋ฐ ๋ณต๊ตฌ ์๋๋ฆฌ์ค์์ ์ ๋์ ์ผ๋ก ๊ฐ์น๊ฐ ์์ต๋๋ค.
์ ๋ ํ์ฌ ์ฌ๋ด ๋ฐฑ์ ์ "rest-server"(์ธ์ฆ์ ์ํ haproxy ํ๋ฐํธ์๋ ํฌํจ)๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ์ ํธํ๋ฉฐ ๊ธฐ๋ณธ์ ์ผ๋ก ์ง์ํ๋ restic์ ์์กดํฉ๋๋ค. ์๊ฐ์ด ์ค์ํ ๋ณต์ ์ค์ RESTIC _๋ฐ_ RCLONE์ _๊ฐ์ _ ํ๋ค๋ฉด ๋ค๋ฅธ ์๋ฃจ์ ์ ์ฐพ์์ ๊ฒ์ ๋๋ค.
Rest ๋ฐฑ์๋๋ Restic์ ๊ณ ์ ํ๋ฏ๋ก ์ ๊ฑฐ๋์ง ์์ต๋๋ค. ๋๋ rest-server๋ฅผ ์ฌ์ฉํ๋๋ฐ ์๊ฒฉ ์ฆ๋ช ์ ๋ฃ๋ ๊ฒ์ด ๋งค์ฐ ํธ๋ฆฌํฉ๋๋ค.
๋ฌธ์ ๋ 'rclone์ด ๋ด์ฅ๋ ๊ฒฝ์ฐ์๋ง' ์ํ๋ผ๊ณ ์๊ฐํฉ๋๋ค. ์๋ฌด๋ ์ด๊ฒ์ ํ์๋กํ์ง ์๊ธฐ ๋๋ฌธ์ (๋ด์ฅ๋ rclone์ neet์ด์ง๋ง). ์ง๊ธ ๋น์ฅ์ 'rclone์์ ์ด๋ฏธ ์ง์ํ์ง ์๋ ์ ๋ฐฑ์๋๋ฅผ ์ถ๊ฐํ์ง ๋ง์ธ์'์ ์ด ์์ ์ ๊ท์ฐฎ๊ฒ ํ๋ ๋๊ตฐ๊ฐ๋ฅผ ์ํ ๊ธฐ๋ฅ ์์ฒญ(์๋ง๋ ๋ช ๋ฌ ํ์ผ ๊ฒ์ ๋๋ค. .
๋ฒ ์ด ๋ณธ์ ๊ฒฝ์ฐ bzip์ ์ฌ์ฉํ์ง ์๋ ๋์ฒด ๋ฆด๋ฆฌ์ค๋ฅผ ๊ฐ์ ธ์์ผ ํฉ๋๋ค(๋ด๊ฐ ๋ค์ ๋ฐ์ ๋ฐ๋ฅด๋ฉด bzip์ ์ค์นํ๋ ์ ์ผํ ์ด์ ๋ ์ ํ์ ์ ๋๋ค). ๊ทธ๊ฑด ๊ทธ๋ ๊ณ , ๋ค๋ฅธ ์ฌ๋์ด ํ์ง ์๋๋ค๋ฉด ๋๋ ์๋ง๋ ํ ๊ฒ์ ๋๋ค. ์๋ํ๋ฉด ์ ํ ์ผ์ #2705์ด๊ธฐ ๋๋ฌธ์ ๋๋ค.
๋ด๊ฐ rclone์ ๋ํด ์ข์ํ์ง ์๋ ํ ๊ฐ์ง๋ ์์ค์ ๋์์ผ๋ก ๋ ๊ฐ์ URI๋ฅผ ์ ๊ณตํ ์ ์๋ ๋์ ์คํํ๊ธฐ ์ ์ ๊ตฌ์ฑํด์ผ ํ๋ค๋ ๊ฒ์ ๋๋ค.
@rawtaz
๋น์ ์ rclone์ด ๊ตฌ์ฑ ์๋ฌด๊ฒ๋ ๋น์ ์ ํ์๋กํ์ง ์๊ธฐ ๋๋ฌธ์ ๋จ์ง ๊ทธ๋ ๊ฒ ํ ์ ์์ต๋๋ค.
_~/.rclone.conf_ ๋๋ _~/.config/rclone/rclone.conf_๋ฅผ ์์ ํ ์ ๊ฑฐํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ๊ฐ ๋๋ ๋์ฒด ์ต์
์ ๋ํด ์ฐธ์กฐํ ๋ฟ์
๋๋ค.
์ด์ ๋ค์์ ์๋ํ์ญ์์ค.
rclone copy ./file.txt :sftp:subdir --sftp-host=localhost --sftp-key-file=~/.ssh/id_rsa
์๋ฒฝํ๊ฒ ์ ํจํ๋ฉฐ ๋ฌธ์์ ์ค๋ช ๋์ด ์์ต๋๋ค. https://rclone.org/docs/#backend -path-to-dir
ํ๊ฒฝ์ ํตํด ๋ชจ๋ ์ต์ ์ ์ ๋ฌํ๊ฑฐ๋ CLI ์ธ์์ ํผํฉํ ์๋ ์์ต๋๋ค.
export RCLONE_SFTP_HOST=localhost
export RCLONE_SFTP_KEY_FILE=~/.ssh/id_rsa
rclone ls :sftp:
rclone์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ https://github.com/rclone/rclone/issues/633์ ์ค๋ช ๋์ด
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
ํ์๊ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ์ฑ๊ณต์ ์ผ๋ก ํฌํจ๋์ด ํญ์ restic ๋ฐฐํฌ์ ํฌํจ๋์ง ์๋ ํ ๊ธฐ์กด ๋ฐฑ์๋๋ฅผ rclone์ผ๋ก ๊ต์ฒดํ์ง ์์ต๋๋ค.
์ด ์์ ์ด ์๋ฃ๋ ๋๊น์ง(๋๋ ์ด ์์ ์ ์ํํ๋ ๋์ ) rclone์ ํจํค์ง ๊ด๋ฆฌ์์์ ์ ํ์ ์ข ์์ฑ(์: apt ๋ฐ portage)์ผ๋ก ๋ง๋ค ๊ฒ์ ๋๋ค. rclone์ด ์ค์น๋์ง ์์ ๊ฒฝ์ฐ restic์ rclone์ ์น ํ์ด์ง๋ฅผ ์ฐธ์กฐํ๋ ๋ฉ์์ง๋ฅผ ํ์ํ์ฌ (1) ์ค์น ๋ฐฉ๋ฒ์ ๋ํ ํ์ด์ง ์ฐธ์กฐ, (2) ์์คํ ์ ํจํค์ง ๊ด๋ฆฌ์๋ฅผ ์ฌ์ฉํ์ฌ rclone ์ค์น, (3) "curl + bash" ๋ช ๋ น๊ณผ ํจ๊ป "๋ฌด์์ ํ๊ณ ์๋์ง ํ์ธํ์ญ์์ค"๋ผ๋ ๊ฒฝ๊ณ ๊ฐ ํ์๋ฉ๋๋ค.
๋๋ ์ฌ์ฉ์๋ฅผ ๋์ ํ์ฌ ๋ช ๋ น์ ์์ฒญํ ํ์๋ ์คํํ์ง ์์ ๊ฒ์ ๋๋ค.