사용자명 충돌 해결

서버의 기존 시스템 사용자와 Alpacon IAM 사용자 간 UID 충돌을 해결하는 방법입니다.

충돌 발생 원인

사용자 충돌은 UID (User ID) 중복으로 발생합니다:

  1. Alpacon 사용 전 서버에 기존 사용자가 있음
  2. Alpamon 에이전트 설치 및 연결
  3. IAM 사용자의 UID와 동일한 UID를 가진 시스템 사용자가 이미 존재 (다른 사용자명)
  4. IAM 사용자가 websh, webftp, deploy shell 사용 시도

UID가 이미 다른 사용자에게 할당되어 있으면 IAM 사용자는 해당 기능을 사용할 수 없습니다.

충돌 확인

오류 메시지

충돌 발생 시 다음과 같은 오류 메시지가 표시됩니다:

User conflict detected: UID already in use

서버 상세 페이지

  1. 서버 상세 페이지로 이동
  2. Access 탭 선택
  3. 충돌하는 사용자 확인

해결 방법

Alpacon은 의도적으로 사용자 충돌을 자동으로 해결하지 않습니다. 사용자가 완전한 제어권을 유지하도록 하기 위함입니다.

1. UID 확인

서버에 로그인하여 현재 UID 확인:

cat /etc/passwd

출력 형식: username:x:UID:GID:...

2. 해결 옵션 선택

옵션 1: 기존 사용자 삭제

더 이상 필요하지 않은 기존 사용자를 삭제:

# 사용자만 삭제
sudo userdel <USER_NAME>
 
# 사용자와 홈 디렉토리 모두 삭제
sudo userdel -r <USER_NAME>

옵션 2: 기존 사용자의 UID 변경

기존 사용자를 유지하면서 UID만 변경:

sudo usermod -u <NEW_UID> <USER_NAME>

새 UID는 충돌하지 않는 값으로 선택하세요.

3. 에이전트 동기화

변경 후 Alpamon 에이전트에 동기화:

sudo systemctl restart alpamon

또는 Alpacon 웹 UI에서:

  1. 서버 목록으로 이동
  2. 해당 서버 선택
  3. Agent Restart 실행

주의사항

⚠️ 중요:

  • 이러한 작업은 시스템 동작에 영향을 줄 수 있습니다
  • 부작용이 없는지 확인 후 진행하세요
  • AlpacaX는 이 명령어 실행으로 인한 문제에 책임지지 않습니다

권장 사항:

  • 프로덕션 서버에서는 먼저 테스트 서버에서 시도
  • 변경 전 백업 생성
  • 변경 후 관련 서비스 정상 작동 확인

충돌 방지

초기 설정

서버 등록 전:

  • 기존 사용자 UID 확인
  • Alpacon IAM 사용자 UID와 겹치지 않도록 계획
  • 가능하면 높은 범위의 UID 사용 (예: 10000 이상)

UID 정책

워크스페이스에서 UID 할당 정책 수립:

  • 특정 범위의 UID만 사용
  • 기존 시스템 사용자와 분리된 범위 사용

문제 해결

변경 후에도 충돌이 계속되는 경우:

  1. 에이전트 재시작 확인
  2. 에이전트 로그 확인:
sudo journalctl -u alpamon -n 50
  1. 서버 상세 페이지에서 Access 탭 재확인

변경 후 서비스가 작동하지 않는 경우:

  1. 변경된 사용자가 소유한 파일 권한 확인
  2. 필요시 파일 소유권 변경:
sudo find /path -user <OLD_UID> -exec chown <NEW_UID> {} \;

관련 문서