![모든 폴더(또는 .extension 파일)에 대한 권한 변경](https://linux55.com/image/53767/%EB%AA%A8%EB%93%A0%20%ED%8F%B4%EB%8D%94(%EB%98%90%EB%8A%94%20.extension%20%ED%8C%8C%EC%9D%BC)%EC%97%90%20%EB%8C%80%ED%95%9C%20%EA%B6%8C%ED%95%9C%20%EB%B3%80%EA%B2%BD.png)
모든 권한을 변경하고 싶습니다.777화폴더755화또한 모두 변경됩니다.777 PHP 파일도착하다644화.
쉘을 통해 어떻게 할 수 있나요?
추신: 모든 파일과 디렉터리는 www
디렉터리에 있습니다.
답변1
모든 권한을 변경할 수 있습니다777화폴더755화다음 검색 방법을 사용하세요.
find /var/www -type d -perm 777 -print -exec chmod 755 {} \;
위 명령은 /var/www
권한이 다음으로 설정되도록 내부의 모든 디렉터리를 변경합니다.755화. 이를 확인하려면 다음 명령을 사용할 수 있습니다.
stat -c "%a %n" /var/www/directory-name
모든 PHP 파일의 권한을 변경하려면 다음 명령을 사용할 수 있습니다.
find /var/www/some-directory -type f -name "*.php" -perm 777 -print -exec chmod 644 {} \;
마찬가지로 이 stat
명령을 사용하여 권한이 변경되었는지 확인할 수 있습니다. 아니면 사용할 수도 있습니다.
ls -ld /var/www/some-directory-name
stat
둘 ls -ld
다 파일의 8진수 권한을 표시합니다.
답변2
"www"는 아마도어딘가에시스템에 있으므로 다음번에는 더 구체적으로 설명하세요.
어쨌든, 나는 당신이 의미한다고 가정합니다 /var/www
:
find /var/www -type d -perm 777 -print0 | xargs chmod 755
find /var/www -name "*.php" -perm 777 -print0 | xargs chmod 644
나중에 참조할 수 있습니다 man find
. 모을 수 있을 만큼 매우 강력합니다.