Computer >> 컴퓨터 >  >> 프로그램 작성 >> BASH 프로그래밍

Linux chmod Recursive:파일 권한을 재귀적으로 변경하는 방법

Linux chmod 사용 명령을 사용하면 모든 파일과 디렉터리에 대한 파일 권한을 재귀적으로 변경할 수 있습니다. 이 가이드는 방법을 설명합니다.

이전에 다음 오류가 발생했을 수 있습니다.

111 [Permission Denied]
"Linux-Screw" [Permission Denied]
"Linux-Screw" [readonly]

모든 시스템 파일의 경우 sudo를 사용하는 것이 선호되는 파일 편집 방법입니다. 이를 통해 모든 시스템 컨텍스트를 유지할 수 있습니다. 사용자 파일을 일상적으로 사용하려면 권한을 변경하는 것이 가장 좋습니다. chmod는 우리를 위해 그렇게 할 수 있습니다. 권한을 에스컬레이션할 필요가 없고 필요할 때 액세스할 수 있습니다.

chmod가 무엇인가요? chmod 또는 모드 변경은 주어진 파일의 파일 모드 비트를 변경합니다. 기호로 변경하거나 8진수로 변경할 수 있습니다.

chmod 구문

chmod [OPTION] MODE FILE
Or
chmod [OPTION] OCTAL-MODE FILE
Options:
[-c], --changes
Verbose-mode, but only for changes
[-f], --silent, --quiet
Suppress most error messages
[-v], --verbose
Output a diagnostic for every file processed
[-R], --recursive
Change files and directories recursively

사용 가능한 옵션입니다. 모드는 기호 참조를 나타냅니다. 파일에 실행 권한을 추가하려면 다음을 입력합니다.

chmod +x [FILE]

그리고 실행 권한이 추가됩니다. 기본 사항을 살펴보았으므로 폴더 구조를 수정하여 사용할 수 있도록 하겠습니다.

chmod 재귀

종종 폴더 디렉토리에서 작업할 때 단일 파일의 권한을 변경할 필요가 없습니다. 해당 파일, 현재 폴더의 모든 파일 및 모든 하위 디렉터리의 권한을 변경해야 합니다.

운 좋게도 chmod -R을 사용하면 모든 파일을 재귀적으로 변경할 수 있습니다.

chmod -R 755 *
ls -altrR

권한을 변경한 후 다음을 표시합니다.

Linux chmod Recursive:파일 권한을 재귀적으로 변경하는 방법

chmod -R

-altrh 이유를 알고 싶다면 내가 기본적으로 선호하는 옵션 세트입니다. ls에 대한 최근 기사를 참조하세요. .

알겠습니다. 시작하겠습니다. 위에서 디렉토리와 파일이 755와 일치하도록 변경된 것을 볼 수 있습니다. 또는 rwx r-x r-x . 우리가 그 그룹(사용자 그룹)에 속해 있기 때문에 그 디렉토리를 이제 사용할 수 있습니다. 우리도 사용자이기 때문에 사용할 수 있습니다. 이전 사용자의 폴더를 정리하는 경우 chown.을 사용하여 파일의 소유권을 변경할 수 있습니다.

이렇게 하면 사용자가 사용할 수 있습니다. 그러나 위의 chmod에는 문제가 있습니다. . umask를 설정할 때 0022와 같이 기본 권한, 디렉토리 및 파일이 다릅니다. 디렉토리는 755에서 생성됩니다. cd 허용 , 디렉토리 변경, 명령이 제대로 작동하도록 합니다. 파일은 디렉토리보다 하나 적은 644로 생성됩니다. 일반 파일은 실행 권한이 필요 없기 때문입니다. 디렉토리는 cd의 경우 . 찾기로 해결해 보겠습니다. 및 -exec .

찾기를 사용하여 재귀적으로 chmod

find <dir> -type d -exec chmod 755{} \; find <dir> -type f -exec chmod 644 {} \;
Linux chmod Recursive:파일 권한을 재귀적으로 변경하는 방법

chmod 찾기를 사용하여 재귀적으로

그리고 모든 것이 기본 umask에 따라 저장되고 유지됩니다. 실행 파일 및 실행 디렉토리가 없습니다.

결론

파일 권한은 고정적일 수 있지만 chmod를 사용하면 문제를 해결할 수 있습니다. 이제 권한을 변경하는 방법을 알았으므로 디렉터리와 파일의 소유권을 진정으로 가질 수 있습니다. 셸 명령을 사용하여 Linux 인프라를 탐색하는 방법에 대해 자세히 알고 싶으십니까? 여기에서 더 많은 튜토리얼을 읽어보세요.