좋은 질문입니다! Ubuntu에서 프로젝트 디렉토리 구조에 대해 설명드릴게요.
/home/sangkipm (홈 디렉토리) 사용개인 개발 환경에 적합
/home/sangkipm/
├── projects/ # 프로젝트들
│ ├── ppcsystem_erp/
│ └── sangki_com/
├── .config/ # 설정 파일들
└── Documents/
장점:
- 권한 문제 없음 (본인 소유)
- 백업/복원 시 사용자 단위로 관리
- 개인 설정과 함께 관리
적합한 경우:
- 혼자 개발하는 환경
- 개인 VPS/로컬 개발
/home/project 또는 /var/www, /opt 사용팀/프로덕션 환경에 적합
/var/www/ # 웹 프로젝트 표준 위치
├── ppcsystem_erp/
└── sangki_com/
# 또는
/opt/ # 서드파티 애플리케이션
└── myapp/
장점:
- 여러 사용자가 접근 가능
- 사용자 계정과 프로젝트 분리
- 서버 표준 관례 준수
적합한 경우:
- 팀 협업 환경
- 프로덕션 서버
- 여러 서비스 운영
# 개발 서버 (혼자 사용)
/home/sangkipm/projects/sangki_com/
# 프로덕션 서버
/var/www/sangki_com/ # Nginx/Apache와 연동 편리
# 또는
/opt/sangki_com/ # 독립 애플리케이션으로 관리
sangkipm 님의 경우:
# 개발/스테이징: 홈 디렉토리
/home/sangkipm/projects/
├── ppcsystem_erp/
└── sangki_com/
# 프로덕션 배포 시: /var/www 또는 /opt
/var/www/sangki_com/
개인 개발 환경이라면 /home/sangkipm/projects/ 가 가장 편리합니다. 권한 설정 신경 쓸 필요 없고, 모든 개발 도구들이 자연스럽게 접근 가능하니까요.
/home/projects/ 디렉토리 전체를 /home/sangkipm/projects/로 이동하는 명령어입니다.
mv 명령어 (이동)# 먼저 대상 디렉토리가 없는지 확인
ls -la /home/sangkipm/
# 이동 (sudo 필요할 수 있음)
sudo mv /home/projects /home/sangkipm/projects
# 소유권 변경 (sangkipm 사용자 소유로)
sudo chown -R sangkipm:sangkipm /home/sangkipm/projects
cp + rm (복사 후 삭제 - 더 안전)# 1. 복사
sudo cp -r /home/projects /home/sangkipm/projects
# 2. 소유권 변경
sudo chown -R sangkipm:sangkipm /home/sangkipm/projects
# 3. 확인 후 원본 삭제
ls -la /home/sangkipm/projects/
sudo rm -rf /home/projects
rsync (대용량/안전한 복사)# 복사 (진행상황 표시, 권한 유지)
sudo rsync -avh --progress /home/projects/ /home/sangkipm/projects/
# 소유권 변경
sudo chown -R sangkipm:sangkipm /home/sangkipm/projects
# 확인 후 원본 삭제
sudo rm -rf /home/projects
| 옵션 | 설명 |
|---|---|
-r |
하위 디렉토리 포함 (recursive) |
-v |
진행상황 표시 (verbose) |
-h |
사람이 읽기 쉬운 크기 표시 |
chown -R |
하위 파일/폴더 모두 소유권 변경 |
대용량 프로젝트라면 rsync를 추천합니다. 중간에 끊겨도 이어서 할 수 있고, 진행상황도 볼 수 있어요.