티스토리 뷰
그래요. 여기까지 왔다는건 이미 Github Repository 설정에서 web hook 설정까지는 끝냈겠지만...
오류가 났다 그죠?
{
"status": "success",
"message": "Data updated successfully.",
"response": {
"message": "Webhook processed successfully",
"output": "fatal: detected dubious ownership in repository at '/var/www/web-site'\nTo add an exception for this directory, call:\n\n\tgit config --global --add safe.directory /var/www/web-site\n"
}
}
이것 저것 만져보고 200이란 숫자에 박수 한 번 쳤다가
아래 에러를 해결하지 못했을 겁니다.
fatal: detected dubious ownership in repository at '/var/www/web-site'\nTo add an exception for this directory, call:\n\n\tgit config --global --add safe.directory /var/www/web-site\n"
네 맞습니다. 저와 함께 몇가지 해결방법을 해봅시다.
root 사용자에도 설정해보고 bitnami 계정에도 해봣겠지만 안된다 그죠?
왜냐하면 실제로 apache 를 실행시키고 그녀석이 사용하는 계정은 다른 녀석이니까요!!!!
일반적으로는 `daemon` 사용자입니다.
`daemon` 사용자로 `git config`를 실행할 때 발생하는 "Permission denied" 에러는 `daemon` 사용자가 해당 위치에 파일을 생성하거나 수정할 권한이 없음을 나타냅니다. 이 문제를 해결하는 방법에는 몇 가지가 있습니다:
0. 소유권 변경
웹서버 사용자가 웹 애플리케이션 파일에 접근할 수 있도록 소유권을 변경합니다. 예를 들어, `daemon` 사용자와 그룹에게 `/var/www/web-site` 디렉토리의 소유권을 부여합니다. 이거 중요하더라구요.
sudo chown -R daemon:daemon /var/www/web-site
만약, Group, user명을 확인하고 싶으면 httpd.conf에서 user = ...., group = .... 이라고 된게 있을 겁니다. 두줄에 걸쳐서 각각 표시되고 있으니 확인해보세요!
/opt/bitnami/apache2/conf/httpd.conf
1. sudo 환경에서 Git 설정 변경
보통, 시스템의 root 사용자는 모든 설정과 파일에 접근할 수 있습니다. 따라서 root 사용자로서 git config 명령을 실행할 때는 --global 옵션을 사용하지 말고, 시스템 전체에 영향을 미치는 --system 레벨로 설정을 변경할 수 있습니다.
sudo git config --system --add safe.directory /var/www/web-site
이 명령은 시스템 전체 설정 파일(/etc/gitconfig)에 변경사항을 적용합니다.
2. .gitconfig 파일 권한 확인 및 변경
`daemon` 사용자의 홈 디렉토리 또는 `.gitconfig` 파일의 위치와 권한을 확인하고, 필요한 경우 권한을 조정해야 할 수 있습니다.
먼저, `daemon` 사용자의 홈 디렉토리를 확인합니다
getent passwd daemon
확인된 디렉토리 내의 .gitconfig 파일 권한을 확인하고, 적절히 수정합니다:
sudo ls -la /usr/sbin/.gitconfig # 예시 경로, 실제 경로에 따라 다를 수 있음
sudo chown daemon:daemon /usr/sbin/.gitconfig # 소유권 변경
sudo chmod 644 /usr/sbin/.gitconfig # 권한 변경
3. 명령 실행 위치 확인
/usr/sbin/nologin 자체가 디렉토리가 아니죠?
위에 `daemon` 사용자의 홈 디렉토리가 `/usr/sbin`이 아닐 가능성이 있습니다. 일반적으로 `daemon` 과 같은 시스템 사용자에게는 실제 로그인 쉘 또는 홈 디렉토리가 없을 수 있습니다. 이 경우, 명시적으로 환경 변수를 설정하여 Git 구성 파일의 위치를 지정할 수 있습니다.
sudo -u daemon HOME=/tmp git config --global --add safe.directory /var/www/web-site
위 명령은 일시적으로 `HOME` 환경 변수를 `/tmp`로 설정하고 `git config`를 실행합니다.
이러한 단계를 통해 `daemon` 사용자로서 필요한 Git 설정을 적용할 수 있습니다. 설정이 성공적으로 적용되면,
Git 관련 작업을 `daemon` 사용자로 수행할 때 권한 문제가 해결될 것입니다.
GOOD LUCK
'오늘도 개발자 > 트러블슈팅' 카테고리의 다른 글
[XAMPP] 포트 중복 문제 해결편 - vmware (0) | 2018.12.14 |
---|---|
[VS Code] php executable not found. install php7 and add it to your path or set php. 에러 문제해결 (0) | 2018.09.23 |
[Visual studio code] 유용한 단축키 (0) | 2018.04.06 |
컴퓨터의 Windows 10, 8, 7 암호 재설정 (0) | 2017.12.24 |
- Total
- Today
- Yesterday
- 스프레드연산자
- 11번가 아마존 #우주패스 #우주쓰레기
- URL인코딩
- 도스 코파스
- php
- MySQL
- Sanitize
- CSPRNG
- wordpress #워드프레스 #url
- url복사
- 코스모스팜
- wp-members
- 썸머노트
- 이사
- 고흐1인칭시점
- 빈화면
- 사용자정의하기
- Lighitsail
- WordPress
- ontent
- 워드프레스
- 한빛미디어
- 라이트세일
- 이전설치
- URL디코딩
- 지대공
- FTP권한문제
- 철거
- Theme Customization
- 빛의성당
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |