OS X에서 "잠긴"파일을 잠금 해제하는 명령


96

Windows 시스템에서 Mac으로 많은 읽기 전용 파일을 복사했습니다. "정보 입수"를 사용하여 각 파일의 정보를 볼 때 파일이 잠겨 있음을 알 수 있습니다. 일부 파일을 복사하기 위해 bash 스크립트를 작성 중이고 "조작이 허용되지 않습니다"라는 오류가 발생합니다. 먼저 파일을 잠금 해제해야합니다. Windows 시스템에서 파일을 자주 가져 오므로 스크립트에서 이러한 파일의 잠금을 해제하려고합니다.

OSX에서 "잠금"파일을 잠금 해제하는 터미널 명령은 무엇입니까?

답변:


136

파일을 잠금 해제하려면 다음을 사용할 수 있습니다.

chflags -R nouchg /PATH/TO/DIRECTORY/WITH/LOCKED/FILES/
  • chflags = "잠김"과 같은 파일 / 폴더의 플래그 변경
  • -R = 재귀 또는 모든 것을 위해 지정된 디렉토리 내의 디렉토리를 따르십시오.
  • nouchg = 파일을 변경할 수 있음을 의미
  • /PATH/=는 물론 변경하려는 파일의 경로입니다. 같은 것 : ~/Sites/mysite/directory/with/locked/files/잘 작동합니다.

1
응답하는 것처럼 해결책을 찾은 것 같습니다. 또한 -R이 재귀 적이라는 것을 알았습니다. 따라서 현재 디렉토리의 모든 파일을 잠금 해제하려면 <br/> chflags nochg * <br/>를 사용하고 하나의 파일 만 변경하십시오. <br/> chflags nouchg onefile.txt 참조 : mehtanirav.com/2009/04/16/recursively -lock-files-on-mac-os-x
Michael Prescott

3
schg시스템 불변 플래그 인 또 다른 관련 플래그가 있습니다 ( developer.apple.com/library/mac/documentation/Darwin/Reference/… 참조 ).이를 지우는 명령은 비슷합니다.sudo chflags noschg PATH/TO/LOCKED/FILE
Andy Madge

1
파일 /bin/ls -lO /path/to/file에서 macOS를 보는 데 사용 flags합니다. macOS ' ls'명령 의 전체 경로를 확인하십시오 . GNU Coreutils가 설치되어있는 경우에 필요합니다.
Tony Barganski

15

SetFile -a l다음과 동일한 작업을 수행하더라도을 사용할 수도 있습니다 chflags nouchg.

SetFile -a l file.ext

-a l잠긴 속성에 대한 비트를 설정 해제합니다. Xcode 환경 설정이나 developer.apple.com/downloads 에서 명령 행 도구 패키지를 다운로드하여 SetFile을 설치할 수 있습니다 .


이것은 Windows 시스템에서 복사 된 몇 개의 파일로 macOS Sierra에서 나를 위해 일한 방법입니다. 내가 사용한 : SetFile -al ~ / Documents / Arduino / Samples / *
callisto

14

전체 디렉토리를 검색하고 모든 파일을 잠금 해제하려는 경우에 유용합니다.

터미널 cd에서 디렉토리로

이 명령은 해당 목록을 찾아 인쇄합니다 .

$ find . -flags uchg

이 명령은 잠금을 해제합니다 .

$ find . -flags uchg -exec chflags nouchg {} \;

첫 번째 명령을 사용하여 두 번째 명령을 실행 한 후 모든 파일이 잠금 해제되었는지 다시 확인할 수 있습니다.


1
이것이 작동하는 동안 각 파일에 대해 새로운 프로세스를 시작하기 때문에 많은 파일에 대해 속도가 매우 느려질 수 있습니다.
Richard Waite

0

실제로 파일에 설정할 수있는 두 개의 잠금 플래그가 있습니다 : uchgschg. uchg플래그가 설정된 파일은 일반 사용자는 변경할 수 없지만 시스템은 변경할 수 있습니다. schg플래그가 설정된 파일은 누구나 변경할 수 없습니다. 두 플래그를 동시에 설정할 수 있습니다.

파일에 어떤 플래그가 설정되어 있는지 보려면

ls -lO FILE

0이 아닌 대문자 o입니다.

파일을 확실히 잠금 해제하려면 다음을 실행해야합니다.

chflags nouchg,noschg FILE

두 플래그가 모두 설정되어 있고 그 중 하나만 제거하는 것처럼 여전히 잠겨 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.