/var/www/public_html에서 권한이 거부되었습니다. 나는 www-data의 회원입니다

/var/www/public_html에서 권한이 거부되었습니다. 나는 www-data의 회원입니다

안녕하세요. 방금 Ubuntu 20.04에 Apache2를 설치했습니다. www-data 그룹에 나를 추가했습니다. id prateek

uid=1000(prateek) gid=1000(prateek) groups=1000(prateek),4(adm),24(cdrom),27(sudo),30(dip),33(www-data),46(plugdev),120(lpadmin),131(lxd),132(sambashare)

/var/www/bihag.moops/public_html의 소유권과 권한을 변경했습니다.

ls -l /var/www/bihag.moops/ 
total 4 
drwxrwxr-x 3 www-data www-data 4096 Aug 11 07:58 public_html

public_html 내부의 폴더도 동일한 그룹에 속합니다.

ls -l /var/www/bihag.moops/public_html/
total 8
-rwxrwxr-x 1 www-data www-data  191 Aug 11 07:54 index.html
drwxrwxr-x 2 www-data www-data 4096 Aug 11 07:59 logs

여전히 public_html에 쓸 수 없습니다. 같은 그룹인데도 말이죠. 왜 이런 차별이?

touch home.php
touch: cannot touch 'home.php': Permission denied

메모:이것은 로컬 머신이지만. 777 권한을 사용하고 싶지 않습니다.

추가로:

lsattr /var/www/
--------------e----- /var/www/bihag.moops
--------------e----- /var/www/html

그리고

lsattr /var/
--------------e----- /var/mail
--------------e----- /var/log
--------------e----- /var/www

답변1

다음을 확인하고 싶을 수도 있습니다.확장된 속성다음과 같이 /var/www(및 하위 디렉터리):

$ lsattr /var/www # or /var/www/bihag.moops, or /var/www/bihag.moops/public_html

i(불변) 속성이 설정된 경우 , 예를 들어 다음과 같은 내용이 표시됩니다.

----i--------------- /var/www

그렇다면 올바른 권한이 있어도 디렉터리에 새 파일을 만들 수 없는 이유를 설명할 수 있습니다. 이 경우 다음 i을 수행하여 속성을 제거할 수 있습니다.

$ sudo chattr -i /var/www # or /var/www/bihag.moops, or /var/www/bihag.moops/public_html

관련 정보