사용자명 충돌 해결
서버의 기존 시스템 사용자와 Alpacon IAM 사용자 사이에서 생기는 UID 충돌을 해결하는 방법입니다.
충돌 발생 원인
사용자 충돌은 UID(User ID)가 겹칠 때 생깁니다.
- Alpacon을 쓰기 전부터 서버에 기존 사용자가 있음
- Alpamon 에이전트를 설치하고 연결함
- IAM 사용자와 같은 UID를 가진 시스템 사용자가 이미 존재(사용자명은 다름)
- IAM 사용자가 Websh, WebFTP, 명령 실행을 사용하려고 함
UID가 이미 다른 사용자에게 할당되어 있으면 IAM 사용자는 이 기능들을 사용할 수 없습니다.
충돌 확인
오류 메시지
충돌이 생기면 다음과 같은 오류 메시지가 표시됩니다.
User conflict detected: UID already in use
서버 상세 페이지
- 서버 상세 페이지로 이동
- 접근 탭 선택
- 충돌하는 사용자 확인
해결 방법
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에서:
- 서버 목록으로 이동
- 해당 서버 선택
- Agent Restart 실행
주의사항
⚠️ 중요:
- 이 작업은 시스템 동작에 영향을 줄 수 있습니다.
- 부작용이 없는지 확인한 뒤 진행하세요.
- AlpacaX는 이 명령어 실행으로 생기는 문제에 책임지지 않습니다.
권장 사항:
- 운영 서버가 아닌 곳에서 먼저 시험하세요.
- 변경 전에 백업을 만드세요.
- 변경 후 관련 서비스가 정상 동작하는지 확인하세요.
충돌 방지
초기 설정
서버를 등록하기 전에:
- 기존 사용자의 UID를 확인합니다.
- Alpacon IAM 사용자 UID와 겹치지 않도록 계획합니다.
- 가능하면 높은 대역의 UID를 사용합니다(예: 10000 이상).
UID 정책
워크스페이스에서 UID 할당 정책을 세웁니다.
- 특정 대역의 UID만 사용
- 기존 시스템 사용자와 분리된 대역 사용
문제 해결
변경한 뒤에도 충돌이 계속되는 경우:
- 에이전트가 재시작되었는지 확인
- 에이전트 로그 확인:
sudo journalctl -u alpamon -n 50
- 서버 상세 페이지의 접근 탭을 다시 확인
변경한 뒤 서비스가 동작하지 않는 경우:
- 변경된 사용자가 소유하던 파일의 권한 확인
- 필요하면 파일 소유권 변경:
sudo find /path -user <OLD_UID> -exec chown <NEW_UID> {} \;