▶ 설치 환경
OS : Amazon Linux 2
Web Server : apache(httpd)
User : ec2-user
* 계정을 ec2-user으로 진행하기 때문에 아래 명령어들 앞에 sudo가 붙는다
▶ 오류 내용 및 해결 방법
could not be opened in append mode: Failed to open stream: Permission denied The exception occurred while attempting to log: The stream or file
위 붉은 글씨를 보면 알 수 있듯이 권한 문제로 인해 오류가 발생한 것이다.
1. "ls -al" 명령어를 통해 폴더의 권한 및 소유자를 확인한다.
2. 라라벨 폴더에 대해서 소유자/소유그룹을 웹 서버인 apache로 변경해준다(그래야 웹에서 접근이 가능)
[라라벨 폴더가 있는 경로] $ sudo chown -R apache:apache [라라벨 폴더명]
* chown : 파일 또는 폴더의 소유자/소유그룹을 변경해주는 명령어
사용법 : chown [옵션] [소유자]:[소유그룹] [파일명 또는 폴더명]
* -R : 폴더의 하위 파일들까지 모두 적용하는 옵션
3. 라라벨 폴더에 대해서 권한을 775로 변경해준다
[라라벨 폴더가 있는 경로] $ sudo chmod -R 775 [라라벨 폴더명]
* chmod : 파일 또는 폴더의 권한을 변경해주는 명령어
사용법 : chmod [옵션] [권한] [파일명 또는 폴더명]
* -R : 폴더의 하위 파일들까지 모두 적용하는 옵션
* [권한]
아무 경로에서 ls -al을 해보면 "drwxrwxr-x" / "-rwxr-xr-x" 등등을 볼 수 있는데
각 알파벳은 d = 디렉토리(directory) / r = 읽기(read) / w = 쓰기(write) / x = 실행(execute) 를 의미하며
r w x는 각각 4 2 1로 계산된다
(2의 2제곱 1제곱 0제곱)
ex) 파일 권한 775 = -rwxrwxr-x
7 = 4 + 2 + 1 = rwx
5 = 4 + 1 = r-x
3 = 2 + 1 = -wx
그리고 첫번째 rwx는 소유주(user)에 대한 권한, 두번째는 그룹(group)에 대한 권한, 세번째는 그 외(other)에 대한 권한을 의미한다
그렇기 때문에 위에서 775로 설정해주는 이유는 소유자나 그룹이 apache인 계정에 읽기/쓰기/실행 권한을 모두 주기 위해서이다.
+ 4. 사용하는 리눅스 계정이 소속된 그룹을 확인 후 apache로 변경한다
이제 웹에서는 접근이 가능하나 현재 사용하는 계정인 ec2-user에는 권한이 없으니 파일 수정이 불가능 할 것이다.
그래서 우선 해당 계정의 그룹을 확인 후 apache로 변경해준다
# 현재 로그인한 계정의 그룹 확인
~ $ groups
# 또는 아래 명령어로도 확인이 가능합니다(gid / groups 확인)
~ $ id [사용자 계정]
# 만약 위 명렁어 실행 시 나오는 리스트에서 apache를 확인할 수 없다면
# 아래 명령어를 통해 추가해줍니다
# ex) [사용자 계정] = ec2-user
~ $ sudo usermod -g apache [사용자 계정]
/***** 참고 명령어 및 파일 *****/
# 계정 리스트 확인
~ $ cat /etc/passwd
# 그룹 리스트 확인
~ $ cat /etc/group
/*******************************/
변경 후에 다시 groups 명령어로 변경됐는지 확인한다!
(현재 내 경우엔 터미널을 나갔다가 다시 들어가니까 변경된걸로 보였다)
("su [사용자 계정]" 명령어를 입력하고 패스워드를 입력해도 적용된다고 함)
- 문의와 피드백은 언제나 환영입니다 ( •̀ .̫ •́ )✧ -
'Server > Linux' 카테고리의 다른 글
[Linux][MySQL] 패스워드를 분실한 경우 재설정하는 방법 (0) | 2023.03.16 |
---|---|
[Linux] 파일 위치 찾기 (0) | 2023.03.16 |
[Linux] 파일 편집 시 E325: ATTENTION Found a swap file by the name 오류 (0) | 2023.03.10 |
[Linux][AWS] Git 설치 및 GitHub 연동하기 (0) | 2023.03.02 |
[Linux] PHP Laravel 설치하기 (0) | 2023.03.01 |