<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Lxc on Joonlog</title><link>https://joonlog.github.io/tags/lxc/</link><description>Recent content in Lxc on Joonlog</description><generator>Hugo -- gohugo.io</generator><language>ko-kr</language><lastBuildDate>Sun, 03 May 2026 09:00:00 +0900</lastBuildDate><atom:link href="https://joonlog.github.io/tags/lxc/index.xml" rel="self" type="application/rss+xml"/><item><title>Syncthing으로 Obsidian vault 동기화하기</title><link>https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/</link><pubDate>Sun, 03 May 2026 09:00:00 +0900</pubDate><guid>https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Syncthing으로 홈서버 LXC ↔ Windows ↔ 모바일 vault 동기화&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="0-구조"&gt;0. 구조
&lt;/h2&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Windows (SyncTrayzor)
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ↕
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mgt LXC (Syncthing, 허브) ← Claude Code가 직접 접근
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ↕
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;모바일 (Syncthing-Fork)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;모든 기기가 mgt LXC를 허브로 동기화한다. LXC는 항상 켜져 있기 때문에 각 기기가 켜지는 순간 동기화된다.&lt;/p&gt;
&lt;h2 id="1-lxc에-syncthing-설치"&gt;1. LXC에 Syncthing 설치
&lt;/h2&gt;&lt;p&gt;Rocky Linux 9는 EPEL 저장소를 통해 설치한다.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;dnf install -y epel-release
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;dnf install -y syncthing
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;systemctl &lt;span class="nb"&gt;enable&lt;/span&gt; --now syncthing@root
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id="2-lxc-syncthing-웹-ui-접근"&gt;2. LXC Syncthing 웹 UI 접근
&lt;/h2&gt;&lt;p&gt;Syncthing 웹 UI는 기본적으로 &lt;code&gt;localhost:8384&lt;/code&gt;에서만 열린다. SSH 포트 포워딩으로 로컬에서 접근한다.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;ssh -L 8384:localhost:8384 mgt
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;브라우저에서 &lt;code&gt;http://localhost:8384&lt;/code&gt; 접속&lt;/p&gt;
&lt;p&gt;&lt;img src="https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing01.png"
width="1482"
height="616"
srcset="https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing01_hu_56b3d30042e4030.png 480w, https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing01_hu_6b32321ad223b5e6.png 1024w"
loading="lazy"
alt="ObsidianSyncthing01.png"
class="gallery-image"
data-flex-grow="240"
data-flex-basis="577px"
&gt;&lt;/p&gt;
&lt;h2 id="3-windows에-synctrayzor-설치"&gt;3. Windows에 SyncTrayzor 설치
&lt;/h2&gt;&lt;p&gt;SyncTrayzor는 Windows용 Syncthing 래퍼로, 트레이 아이콘으로 백그라운드 실행된다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;설치 후 &lt;code&gt;동작 → 기기 아이디 보기&lt;/code&gt; 에서 Windows Device ID 확인&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing02.png"
width="1083"
height="711"
srcset="https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing02_hu_bb97f7eefd4a22cf.png 480w, https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing02_hu_3a0834b3359d4383.png 1024w"
loading="lazy"
alt="ObsidianSyncthing02.png"
class="gallery-image"
data-flex-grow="152"
data-flex-basis="365px"
&gt;&lt;/p&gt;
&lt;h2 id="4-기기-페어링"&gt;4. 기기 페어링
&lt;/h2&gt;&lt;p&gt;LXC 웹 UI에서 &lt;strong&gt;다른 기기 추가&lt;/strong&gt; 클릭 → Windows Device ID 입력 → 저장&lt;/p&gt;
&lt;p&gt;&lt;img src="https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing03.png"
width="1428"
height="435"
srcset="https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing03_hu_875362f46840e870.png 480w, https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing03_hu_83cf3404b8e360ea.png 1024w"
loading="lazy"
alt="ObsidianSyncthing03.png"
class="gallery-image"
data-flex-grow="328"
data-flex-basis="787px"
&gt;&lt;/p&gt;
&lt;p&gt;Windows SyncTrayzor에 수락 요청이 뜨면 수락한다.&lt;/p&gt;
&lt;h2 id="5-폴더-공유-설정"&gt;5. 폴더 공유 설정
&lt;/h2&gt;&lt;p&gt;LXC 웹 UI에서 &lt;strong&gt;폴더 추가&lt;/strong&gt; 클릭&lt;/p&gt;
&lt;p&gt;&lt;img src="https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing04.png"
width="1421"
height="430"
srcset="https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing04_hu_926a912650687b85.png 480w, https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing04_hu_13a26b62177a0173.png 1024w"
loading="lazy"
alt="ObsidianSyncthing04.png"
class="gallery-image"
data-flex-grow="330"
data-flex-basis="793px"
&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;일반 탭: 폴더 경로 입력 (&lt;code&gt;/root/obsidian&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;공유 탭: Windows 기기 체크&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing05.png"
width="1304"
height="416"
srcset="https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing05_hu_b85263dcc39a3e77.png 480w, https://joonlog.github.io/p/syncthing%EC%9C%BC%EB%A1%9C-obsidian-vault-%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0/ObsidianSyncthing05_hu_7ea8a1f293962042.png 1024w"
loading="lazy"
alt="ObsidianSyncthing05.png"
class="gallery-image"
data-flex-grow="313"
data-flex-basis="752px"
&gt;&lt;/p&gt;
&lt;p&gt;저장하면 Windows SyncTrayzor에 폴더 수락 요청이 뜬다. 수락 시 Windows vault 경로를 지정한다.&lt;/p&gt;
&lt;h2 id="6-모바일-연동"&gt;6. 모바일 연동
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Android: &lt;strong&gt;Syncthing-Fork&lt;/strong&gt; 설치&lt;/li&gt;
&lt;li&gt;동일하게 Device ID 교환 후 페어링&lt;/li&gt;
&lt;li&gt;폴더 공유 설정에서 모바일 기기 추가 체크&lt;/li&gt;
&lt;li&gt;Obsidian 모바일에서 동기화된 폴더를 vault로 열기&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Proxmox에 관리용 LXC 구성하기</title><link>https://joonlog.github.io/p/proxmox%EC%97%90-%EA%B4%80%EB%A6%AC%EC%9A%A9-lxc-%EA%B5%AC%EC%84%B1%ED%95%98%EA%B8%B0/</link><pubDate>Thu, 30 Apr 2026 09:00:00 +0900</pubDate><guid>https://joonlog.github.io/p/proxmox%EC%97%90-%EA%B4%80%EB%A6%AC%EC%9A%A9-lxc-%EA%B5%AC%EC%84%B1%ED%95%98%EA%B8%B0/</guid><description>&lt;blockquote&gt;
&lt;p&gt;홈서버 작업 공간 분리를 위한 관리용 LXC 구성&lt;/p&gt;
&lt;p&gt;PVE는 하이퍼바이저만, 작업은 mgt LXC에서&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="0-관리용-lxc를-따로-만드는-이유"&gt;0. 관리용 LXC를 따로 만드는 이유
&lt;/h2&gt;&lt;p&gt;PVE는 VM과 LXC를 관리하는 하이퍼바이저다.&lt;/p&gt;
&lt;p&gt;Claude Code, git, kubectl 같은 도구를 PVE에 직접 설치해서 쓰는 것도 가능은 하지만, PVE는 하이퍼바이저 역할만 하도록 두는 게 맞다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;PVE는 모든 VM/LXC의 상위 계층이기 때문에, PVE가 오염되면 모든 서비스에 영향&lt;/li&gt;
&lt;li&gt;작업 도구 설치, 패키지 업데이트 등으로 하이퍼바이저 환경이 오염될 가능성이 있음&lt;/li&gt;
&lt;li&gt;LXC는 가볍고 빠르게 생성/삭제 가능하기 때문에 작업 환경으로 적합&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;따라서 &lt;code&gt;mgt&lt;/code&gt;라는 이름의 관리용 LXC를 별도로 만들어서, 이 LXC를 외부에서 SSH 접근하는 Bastion 겸 작업 공간으로 사용한다.&lt;/p&gt;
&lt;h2 id="1-pve에서-lxc-생성"&gt;1. PVE에서 LXC 생성
&lt;/h2&gt;&lt;p&gt;PVE 웹 콘솔 우측 상단 &lt;code&gt;Create CT&lt;/code&gt; 버튼으로 생성&lt;/p&gt;
&lt;h3 id="general-탭"&gt;General 탭
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;CT ID: 103 (순서대로 부여)&lt;/li&gt;
&lt;li&gt;Hostname: &lt;code&gt;mgt&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Unprivileged container: 체크 (보안상 권장)&lt;/li&gt;
&lt;li&gt;Nesting: 체크 (Docker 등 컨테이너 사용 시 필요)&lt;/li&gt;
&lt;li&gt;Password: 설정&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://joonlog.github.io/p/proxmox%EC%97%90-%EA%B4%80%EB%A6%AC%EC%9A%A9-lxc-%EA%B5%AC%EC%84%B1%ED%95%98%EA%B8%B0/ProxmoxLXC01.png"
width="1176"
height="804"
srcset="https://joonlog.github.io/p/proxmox%EC%97%90-%EA%B4%80%EB%A6%AC%EC%9A%A9-lxc-%EA%B5%AC%EC%84%B1%ED%95%98%EA%B8%B0/ProxmoxLXC01_hu_20662557bb0140e9.png 480w, https://joonlog.github.io/p/proxmox%EC%97%90-%EA%B4%80%EB%A6%AC%EC%9A%A9-lxc-%EA%B5%AC%EC%84%B1%ED%95%98%EA%B8%B0/ProxmoxLXC01_hu_5f49f05f08555f0c.png 1024w"
loading="lazy"
alt="ProxmoxLXC01.png"
class="gallery-image"
data-flex-grow="146"
data-flex-basis="351px"
&gt;&lt;/p&gt;
&lt;h3 id="template-탭"&gt;Template 탭
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Storage: local&lt;/li&gt;
&lt;li&gt;Template: 원하는 OS 선택
&lt;ul&gt;
&lt;li&gt;여기서는 Rocky Linux 9 사용&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://joonlog.github.io/p/proxmox%EC%97%90-%EA%B4%80%EB%A6%AC%EC%9A%A9-lxc-%EA%B5%AC%EC%84%B1%ED%95%98%EA%B8%B0/ProxmoxLXC02.png"
width="1107"
height="757"
srcset="https://joonlog.github.io/p/proxmox%EC%97%90-%EA%B4%80%EB%A6%AC%EC%9A%A9-lxc-%EA%B5%AC%EC%84%B1%ED%95%98%EA%B8%B0/ProxmoxLXC02_hu_d1931d58fdbfbbc1.png 480w, https://joonlog.github.io/p/proxmox%EC%97%90-%EA%B4%80%EB%A6%AC%EC%9A%A9-lxc-%EA%B5%AC%EC%84%B1%ED%95%98%EA%B8%B0/ProxmoxLXC02_hu_23a73b09d5ac6d94.png 1024w"
loading="lazy"
alt="ProxmoxLXC02.png"
class="gallery-image"
data-flex-grow="146"
data-flex-basis="350px"
&gt;&lt;/p&gt;
&lt;p&gt;나머지 Disks / CPU / Memory / Network / DNS 탭은 용도에 맞게 설정 후 생성&lt;/p&gt;
&lt;h2 id="2-cloudflare-ssh-route-변경"&gt;2. Cloudflare SSH Route 변경
&lt;/h2&gt;&lt;p&gt;기존에 PVE에 설치된 &lt;code&gt;cloudflared&lt;/code&gt;가 SSH 터널을 &lt;code&gt;localhost:22&lt;/code&gt;로 라우팅하고 있었다.&lt;/p&gt;
&lt;p&gt;즉, 외부에서 SSH 접속 시 PVE로 직접 붙는 구조였는데, 이를 mgt LXC로 변경한다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;기존: &lt;code&gt;localhost:22&lt;/code&gt; → PVE 루트 쉘&lt;/li&gt;
&lt;li&gt;변경: &lt;code&gt;192.168.100.10:22&lt;/code&gt; → mgt LXC 루트 쉘&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Cloudflare 대시보드 → Networks → Tunnels → 해당 터널 → Public Hostname → SSH Route 편집&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;URL을 &lt;code&gt;localhost:22&lt;/code&gt; → &lt;code&gt;192.168.100.10:22&lt;/code&gt; 로 변경&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;변경 후 외부에서 SSH 접속 시 mgt LXC로 바로 접속된다.&lt;/p&gt;</description></item></channel></rss>