🔧 Fix sudo dependency for root execution
✅ Root 사용자 지원 개선 - root 권한일 때 sudo 없이 실행 - sudo 미설치 시 적절한 안내 메시지 - Debian/Proxmox 환경 호환성 강화 🐛 해결된 문제: - Debian 시스템에서 sudo 미설치로 인한 실행 실패 - root 권한 실행 시 불필요한 sudo 호출 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
46b1580e52
commit
560de20778
@ -88,7 +88,11 @@ disconnect_existing() {
|
|||||||
local current_status=$(tailscale status --json 2>/dev/null || echo "{}")
|
local current_status=$(tailscale status --json 2>/dev/null || echo "{}")
|
||||||
if echo "$current_status" | grep -q '"BackendState":"Running"'; then
|
if echo "$current_status" | grep -q '"BackendState":"Running"'; then
|
||||||
print_status "기존 Tailscale 연결을 해제합니다..."
|
print_status "기존 Tailscale 연결을 해제합니다..."
|
||||||
sudo tailscale logout || true
|
if [ "$EUID" -eq 0 ]; then
|
||||||
|
tailscale logout || true
|
||||||
|
else
|
||||||
|
sudo tailscale logout || true
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@ -99,11 +103,19 @@ register_to_headscale() {
|
|||||||
print_info "서버: $HEADSCALE_SERVER"
|
print_info "서버: $HEADSCALE_SERVER"
|
||||||
|
|
||||||
# Tailscale을 Headscale 서버로 설정하고 등록
|
# Tailscale을 Headscale 서버로 설정하고 등록
|
||||||
sudo tailscale up \
|
if [ "$EUID" -eq 0 ]; then
|
||||||
--login-server="$HEADSCALE_SERVER" \
|
tailscale up \
|
||||||
--authkey="$PREAUTH_KEY" \
|
--login-server="$HEADSCALE_SERVER" \
|
||||||
--accept-routes \
|
--authkey="$PREAUTH_KEY" \
|
||||||
--accept-dns=false
|
--accept-routes \
|
||||||
|
--accept-dns=false
|
||||||
|
else
|
||||||
|
sudo tailscale up \
|
||||||
|
--login-server="$HEADSCALE_SERVER" \
|
||||||
|
--authkey="$PREAUTH_KEY" \
|
||||||
|
--accept-routes \
|
||||||
|
--accept-dns=false
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# 연결 상태 확인
|
# 연결 상태 확인
|
||||||
@ -139,11 +151,16 @@ main() {
|
|||||||
echo "=========================================="
|
echo "=========================================="
|
||||||
|
|
||||||
# 루트 권한 확인
|
# 루트 권한 확인
|
||||||
if [[ $EUID -ne 0 ]] && ! sudo -n true 2>/dev/null; then
|
if [[ $EUID -ne 0 ]] && ! command -v sudo &> /dev/null; then
|
||||||
print_error "이 스크립트는 sudo 권한이 필요합니다."
|
print_error "이 스크립트는 root 권한 또는 sudo가 필요합니다."
|
||||||
|
print_info "root로 실행하거나 sudo를 설치한 후 다시 시도하세요."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ $EUID -ne 0 ]] && ! sudo -n true 2>/dev/null; then
|
||||||
|
print_info "sudo 권한이 필요합니다. 비밀번호를 입력해주세요."
|
||||||
|
fi
|
||||||
|
|
||||||
# 단계별 실행
|
# 단계별 실행
|
||||||
install_tailscale
|
install_tailscale
|
||||||
disconnect_existing
|
disconnect_existing
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user