테스트 후 생성된 데이터를 쉽게 정리할 수 있도록 문서와 스크립트 추가 추가 파일: - CLEANUP_TEST_DATA.md: 상세한 정리 가이드 * farmq.db 약국 삭제 방법 * gateway.db 사용자 삭제 방법 * Headscale 노드 삭제 방법 * 백업 및 복구 가이드 - cleanup-test-data.sh: 대화형 정리 스크립트 * P0003 이후 약국 자동 삭제 * ID 5 이후 사용자 자동 삭제 * Headscale 노드 선택 삭제 * 백업 생성 옵션 * 안전 확인 프롬프트 변경 파일: - README.md: Headscale 섹션 업데이트 * 자동 등록 스크립트 설명 추가 * 테스트 데이터 정리 가이드 링크 추가 사용 예시: ```bash # 대화형 정리 bash cleanup-test-data.sh # 원격 실행 curl -fsSL https://.../cleanup-test-data.sh | bash ``` 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
287 lines
7.6 KiB
Markdown
287 lines
7.6 KiB
Markdown
# Proxmox VE 9.0 Repository Fix
|
|
|
|
Proxmox VE 9.0 (Debian 13 Trixie 기반)에서 `apt update`가 제대로 작동하지 않는 문제를 해결하는 스크립트입니다.
|
|
|
|
## 문제 상황
|
|
|
|
- Proxmox VE 8.0의 post-install 스크립트가 9.0에서 제대로 작동하지 않음
|
|
- Enterprise repository 설정 문제로 `apt update` 실패
|
|
- No-subscription repository가 올바르게 구성되지 않음
|
|
|
|
## 해결 방법
|
|
|
|
이 스크립트는 자동으로 다음 작업을 수행합니다:
|
|
|
|
- ✅ No-subscription repository 활성화 (deb822 형식)
|
|
- ✅ Enterprise repository 비활성화
|
|
- ✅ Ceph no-subscription repository 설정 (기본 비활성)
|
|
- ✅ 중복되거나 잘못된 repository 항목 정리
|
|
- ✅ Package list 업데이트
|
|
|
|
## 빠른 설치
|
|
|
|
Proxmox VE 9.0 shell에서 다음 명령어를 실행하세요:
|
|
|
|
```bash
|
|
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/fix-pve9-repos.sh | bash
|
|
```
|
|
|
|
### 또는 다운로드 후 실행
|
|
|
|
```bash
|
|
wget https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/fix-pve9-repos.sh
|
|
chmod +x fix-pve9-repos.sh
|
|
./fix-pve9-repos.sh
|
|
```
|
|
|
|
## 수동 실행
|
|
|
|
스크립트를 검토한 후 실행하고 싶다면:
|
|
|
|
```bash
|
|
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/fix-pve9-repos.sh -o fix-pve9-repos.sh
|
|
cat fix-pve9-repos.sh # 스크립트 내용 확인
|
|
chmod +x fix-pve9-repos.sh
|
|
sudo ./fix-pve9-repos.sh
|
|
```
|
|
|
|
## 설정 내용
|
|
|
|
### 생성/수정되는 파일
|
|
|
|
- `/etc/apt/sources.list.d/proxmox.sources` - PVE no-subscription repository (활성화)
|
|
- `/etc/apt/sources.list.d/ceph.sources` - Ceph no-subscription repository (비활성화)
|
|
- Enterprise repository 항목들 자동 비활성화
|
|
|
|
### Repository 구성
|
|
|
|
**활성화됨:**
|
|
```
|
|
Types: deb
|
|
URIs: http://download.proxmox.com/debian/pve
|
|
Suites: trixie
|
|
Components: pve-no-subscription
|
|
```
|
|
|
|
**비활성화됨:**
|
|
- Enterprise repositories (`enterprise.proxmox.com`)
|
|
- Ceph repository (필요시 수동으로 활성화 가능)
|
|
|
|
## 실행 후 확인
|
|
|
|
스크립트 실행 후 다음 명령어로 정상 작동을 확인하세요:
|
|
|
|
```bash
|
|
apt update
|
|
apt list --upgradable
|
|
```
|
|
|
|
## 주의사항
|
|
|
|
- 이 스크립트는 **Proxmox VE 9.0 (Debian 13 Trixie)** 전용입니다
|
|
- Enterprise subscription이 있다면 이 스크립트를 사용하지 마세요
|
|
- Root 권한이 필요합니다
|
|
|
|
## Ceph 활성화 (선택사항)
|
|
|
|
Ceph를 사용한다면 다음 명령어로 활성화하세요:
|
|
|
|
```bash
|
|
sed -i 's/Enabled: no/Enabled: yes/' /etc/apt/sources.list.d/ceph.sources
|
|
apt update
|
|
```
|
|
|
|
## 문제 해결
|
|
|
|
### apt update가 여전히 실패하는 경우
|
|
|
|
```bash
|
|
# Repository 설정 확인
|
|
cat /etc/apt/sources.list.d/proxmox.sources
|
|
|
|
# 키링 재설치
|
|
apt-get install --reinstall proxmox-archive-keyring
|
|
|
|
# 다시 업데이트
|
|
apt-get update
|
|
```
|
|
|
|
### Enterprise repository 경고가 계속 나오는 경우
|
|
|
|
```bash
|
|
# Enterprise repository 완전 비활성화 확인
|
|
grep -r "enterprise.proxmox.com" /etc/apt/sources.list.d/
|
|
```
|
|
## 💻 개발 환경 설정 (code-server)
|
|
|
|
서버에서 **웹 기반 VS Code 개발 환경**을 빠르게 구축:
|
|
|
|
### 기본 설치 (포트 8080)
|
|
```bash
|
|
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/code-server.sh | bash
|
|
```
|
|
|
|
### 포트 지정 설치
|
|
```bash
|
|
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/code-server.sh | PORT=8443 bash
|
|
```
|
|
|
|
### 무인 설치 (비밀번호 환경변수)
|
|
```bash
|
|
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/code-server.sh | PASSWORD="your-secure-password" SKIP_CONFIRM=1 bash
|
|
```
|
|
|
|
### 자동 설치 기능
|
|
- ✅ **code-server 자동 설치** (미설치 시)
|
|
- ✅ **설정 파일 자동 생성** 및 구성
|
|
- ✅ **기존 프로세스 정리** (중복 실행 방지)
|
|
- ✅ **0.0.0.0 바인딩** (외부 접속 가능)
|
|
- ✅ **nohup 백그라운드 실행** (세션 종료 후에도 유지)
|
|
|
|
### 설치 후 접속
|
|
```bash
|
|
# 브라우저에서 접속
|
|
http://<서버IP>:8080
|
|
```
|
|
|
|
## 🤖 Claude Code CLI 설치
|
|
|
|
**AI 기반 개발 도구**를 서버에 설치:
|
|
|
|
### 기본 설치
|
|
```bash
|
|
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/install-claude-code.sh | bash
|
|
```
|
|
|
|
### 수동 설치 (스크립트 확인 후 실행)
|
|
```bash
|
|
wget https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/install-claude-code.sh
|
|
chmod +x install-claude-code.sh
|
|
./install-claude-code.sh
|
|
```
|
|
|
|
### 설치 내용
|
|
- ✅ **Node.js 20.x LTS** 자동 설치
|
|
- ✅ **npm** 포함 설치
|
|
- ✅ **Claude Code CLI** 글로벌 설치
|
|
- ✅ 설치 확인 및 버전 출력
|
|
|
|
### 사용 방법
|
|
```bash
|
|
claude-code # Claude Code 시작
|
|
claude-code --help # 도움말 보기
|
|
```
|
|
|
|
## 🌐 Headscale VPN 등록 및 약국 자동 생성
|
|
|
|
**Headscale VPN 등록 + 약국/계정 자동 생성** 올인원 스크립트:
|
|
|
|
### 자동 등록 스크립트 (권장)
|
|
```bash
|
|
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/headscale-auto-register.sh | bash
|
|
```
|
|
|
|
**기능:**
|
|
- ✅ Headscale VPN 자동 등록
|
|
- ✅ farmq.db에 약국 자동 생성 (P0003, P0004...)
|
|
- ✅ gateway.db에 관리자 계정 자동 생성
|
|
- ✅ 즉시 프론트엔드 로그인 가능
|
|
- ✅ 로그인 정보 자동 출력
|
|
|
|
### VPN만 등록 (계정 생성 없이)
|
|
```bash
|
|
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/headscale-quick-install.sh | bash
|
|
```
|
|
|
|
**기능:**
|
|
- ✅ Headscale 클라이언트 등록만 수행
|
|
- ✅ PBS 서버 등록 전 필수 네트워크 설정
|
|
- ✅ Proxmox 환경 통합
|
|
|
|
### 테스트 데이터 정리
|
|
스크립트 테스트 후 생성된 데이터 정리:
|
|
|
|
```bash
|
|
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/cleanup-test-data.sh | bash
|
|
```
|
|
|
|
**또는:**
|
|
|
|
```bash
|
|
bash /srv/install_scripts/pve9-repo-fix/cleanup-test-data.sh
|
|
```
|
|
|
|
**정리 내용:**
|
|
- 🗑️ farmq.db에서 P0003 이후 테스트 약국 삭제
|
|
- 🗑️ gateway.db에서 ID 5 이후 테스트 사용자 삭제
|
|
- 🗑️ Headscale 테스트 노드 삭제 (선택)
|
|
- 💾 백업 생성 옵션
|
|
|
|
📖 **자세한 정리 가이드**: [CLEANUP_TEST_DATA.md](CLEANUP_TEST_DATA.md)
|
|
|
|
## 💾 Proxmox Backup Server 올인원 설치
|
|
|
|
**PBS 서버 구축 및 Proxmox VE 통합**을 한 번에:
|
|
|
|
### 빠른 설치
|
|
```bash
|
|
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/pbs_allinone.sh | bash
|
|
```
|
|
|
|
### 수동 설치
|
|
```bash
|
|
wget https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/pbs_allinone.sh
|
|
chmod +x pbs_allinone.sh
|
|
./pbs_allinone.sh
|
|
```
|
|
|
|
### 설치 내용
|
|
- ✅ **PBS 저장소 설정** (no-subscription)
|
|
- ✅ **PBS 패키지 설치**
|
|
- ✅ **백업 저장소 생성 및 마운트**
|
|
- ✅ **방화벽 설정** (포트 8007)
|
|
- ✅ **Proxmox VE PBS 통합**
|
|
|
|
### 설치 후 접속
|
|
```bash
|
|
# 브라우저에서 PBS 웹 인터페이스 접속
|
|
https://<서버IP>:8007
|
|
```
|
|
|
|
## 🏷️ Proxmox VE 호스트명/FQDN 변경
|
|
|
|
**Proxmox 설치 후 안전하게 호스트명 및 FQDN 변경**:
|
|
|
|
### 빠른 실행
|
|
```bash
|
|
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/pve-host-changer.sh | bash
|
|
```
|
|
|
|
### 수동 실행
|
|
```bash
|
|
wget https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/pve-host-changer.sh
|
|
chmod +x pve-host-changer.sh
|
|
./pve-host-changer.sh
|
|
```
|
|
|
|
### 주요 기능
|
|
- ✅ **현재 설정 확인** 및 백업
|
|
- ✅ **호스트명/도메인 입력 검증**
|
|
- ✅ **자동 설정 파일 수정** (/etc/hostname, /etc/hosts)
|
|
- ✅ **Proxmox 서비스 재시작**
|
|
- ✅ **인증서 자동 재발급**
|
|
- ✅ **변경사항 검증** 및 롤백 가이드
|
|
|
|
### 주의사항
|
|
- 단독 노드(Single node)에서는 안전하게 변경 가능
|
|
- 클러스터 구성 시 신중하게 진행 필요
|
|
- 변경 후 시스템 재부팅 권장
|
|
|
|
## 라이선스
|
|
|
|
MIT License
|
|
|
|
## 기여
|
|
|
|
Issues 및 Pull Requests는 언제나 환영합니다!
|