우분투에 아파치 2를 설치했고,/var/www 폴더가 보호 받고 있음을 알았습니다. 모든 것을 Sudo
할 수는 있지만 쓰기 권한 만 부여하고 싶습니다.
어떻게해야합니까?
Sudo chmod 7777 /var/www
시도했지만 작동하지 않았다.
/var/www
로 쓸 수 있어야하는 여러 사용자와 가장 잘 공유하려면 공통 그룹을 지정해야합니다. 예를 들어 Ubuntu 및 Debian에서 웹 컨텐츠의 기본 그룹은 www-data
입니다. /var/www
에 대한 쓰기 권한이 필요한 모든 사용자가이 그룹에 있는지 확인하십시오.
Sudo usermod -a -G www-data <some_user>
그런 다음/var/www에 대한 올바른 사용 권한을 설정하십시오.
Sudo chgrp -R www-data /var/www
Sudo chmod -R g+w /var/www
또한 /var/www
아래에 생성 된 모든 새로운 파일과 디렉토리가 www-data
에 의해 소유되도록 디렉토리와 그 아래의 모든 디렉토리를 "set GID" 그룹.
Sudo find /var/www -type d -exec chmod 2775 {} \;
/var/www
에있는 모든 파일을 찾고 소유자 및 그룹에 대한 읽기 및 쓰기 권한을 추가하십시오.
Sudo find /var/www -type f -exec chmod ug+rw {} \;
자신의 계정에 대한 권한을 편집하는 경우 로그 아웃하고 다시 로그인해야 변경 사항을 적용 할 수 있습니다.
이를 수행하는 더 간단한 방법이 있습니다.이 명령을 시도해보십시오.
Sudo chmod -R 757 /var/www
기본적으로 chmod
명령은 사용 권한을 변경하고 -R
스위치는 모든 사용자에게 영향을줍니다. 그런 다음 사용 권한을 올바르게 부여하고 있습니다.
읽기 + 쓰기 :
Sudo chmod -R a+rw /var/www
읽기 + 쓰기 + 실행 :
Sudo chmod -R a+rwx /var/www
Jtimberman이 액세스 제어 목록 을 사용하여 제안한 내용을 복제 할 수도 있습니다. setfacl 명령은 -s를 사용하여 기존 ACL을 대체하거나 -m을 수정하여이를 수정합니다. 디렉토리 ACL을 재귀 적으로 만드는 -R; 및 -d를 사용하여 지정된 설정을 기본값으로 설정합니다. 이는 향후 사용자 계정을 예상 할 때 유용합니다.
Chmod를 사용하여 사용자, 그룹, 기타 및 마스크에 대한 권한을 설정합니다.
setfacl -m u::rwx, g::r-x, o::---, m:rwx DIRECTORY
그리고 이것은 특정 사용자 또는 그/그녀의 그룹을 위해 어떻게 할 수 있습니다 :
setfacl -m u:USERNAME:rwx, g:USERNAME:r-x DIRECTORY
물론 그룹 설정을 수정하지 않고도 특정 사용자, 여러 사용자 등을 지정할 수 있다는 장점이 있습니다. 그리고 chmod와는 달리, 어떤 그룹이 하나의 디렉토리에 접근 할 수있게하고 다른 그룹이 다른 그룹에 접근 할 수있게하려면 setfacl을 사용하는 것이 실제로 가능합니다. 마지막으로 디렉토리의 ACL을 보려면 getfacl :
getfacl DIRECTORY
그리고 -R을 지정하여 서브 디렉토리에 대한 ACL을 보거나 -d를 사용하여 기본값을 볼 수 있습니다.
빠르고 쉬운 답변-
에이. (-a ) 사용자 ( user_name )를 (-G ) 그룹에 추가합니다 www-data .
Sudo usermod -a -G www-data user_name
비. 그룹 ( g )에게 소유 사용자 ( u )와 동일한 ( = ) 권한을 부여합니다. /var/www 재귀 적으로 (-R ).
Sudo chmod -R g=u /var/www
설명 : Debian/Ubuntu의 Apache 2는 User & Group www-data 를 /var/www 의 소유자로 설정합니다. 사용자의 기본 권한은 "컨텐츠보기 및 수정"이지만 그룹은 "컨텐츠보기"만 할 수 있습니다. 따라서 www-data Group에 자신을 추가하고 wwww-data User와 동일한 권한을 부여하는 것은 빠르고 쉬운 개발 방법입니다. 모든 로컬 호스트 (PC/Laptop) 웹 개발 환경에서이 작업을 수행합니다.
나는 전형적으로 사용한다.
chmod g+w /folder/ -R
그것은 거의 자기 설명입니다.
/folder/
의 g
roup에있는 모든 사람을 w
rite 액세스 (+w
)로 추가하고, -R
은 하위 폴더에 대한 재귀를위한 것입니다.