Linux에서 파일 속성은 파일의 동작을 설명하는 메타데이터 속성입니다. 예를 들어, 속성은 파일의 압축 여부를 나타내거나 파일을 삭제할 수 있는지 여부를 지정할 수 있습니다.
불변성과 같은 일부 속성은 설정하거나 지울 수 있는 반면, 암호화와 같은 속성은 읽기 전용이며 보기만 할 수 있습니다. 특정 특성에 대한 지원은 사용 중인 파일 시스템에 따라 다릅니다.
이 자료에서는 Linux 파일 시스템에서 chattr 명령을 사용하여 파일 속성을 변경하는 방법을 설명합니다.
charttr Syntax
chattr 명령은 다음과 같은 일반적인 형식을 취합니다.
chattr [OPTIONS] [OPERATOR][ATTRIBUTES] FILE...
[OPERATOR] 부품의 값은 다음 기호 중 하나일 수 있습니다.
+ - plus 연산자는 chattr에게 지정된 속성을 기존 속성에 추가하도록 지시합니다.
- - 마이너스 연산자는 chattr에게 지정된 속성을 기존 속성에서 제거하도록 지시합니다.
= - 등호 연산자는 chattr에게 지정된 속성을 유일한 속성으로 설정하도록 지시합니다.
연산자 뒤에는 파일 특성에 추가하거나 제거할 하나 이상의 [Attributes] 플래그가 표시됩니다. 다음은 몇 가지 일반적인 특성 및 관련 플래그 목록입니다.
a - 이 속성을 설정하면 파일을 쓰기 위해 추가 모드에서만 열 수 있습니다.
A - 이 특성 세트가 있는 파일이 열려 있으면 해당 시간 레코드는 변경되지 않습니다. 시간(액세스 시간)은 일부 명령 또는 응용 프로그램에 의해 파일에 마지막으로 액세스/열린 시간입니다.
e - 이 속성은 파일이 디스크의 블록을 매핑하기 위해 익스텐트를 사용 중임을 나타냅니다. chattr을 사용하여 e 특성을 수정할 수 없습니다.
i - 이 속성은 파일이 불변임을 나타내며, 이는 파일을 삭제하거나 이름을 바꿀 수 없음을 의미합니다.
모든 파일 속성 및 플래그의 전체 목록을 보려면 터미널에 man chattr을 입력하십시오.
기본적으로 cp 또는 rsync와 같은 명령을 사용하여 파일을 복사할 때 파일 속성은 보존되지 않습니다.
chattr Example
chattr의 일반적인 사용 중 하나는 파일 또는 디렉터리에 불변 플래그를 설정하여 사용자가 파일을 삭제하거나 이름을 바꾸지 못하도록 하는 것입니다.
lsattr 명령을 사용하여 파일 속성을 볼 수 있습니다.
lsattr todo.txt
# --------------e----- todo.txt
아래 출력은 e 플래그만 설정되었음을 나타냅니다.
파일을 변경할 수 없도록 하려면 + 연산자가 있는 i 플래그를 기존 속성에 추가합니다.
sudo chattr +i todo.txt
루트만이 불변 플래그를 변경할 수 있기 때문에 sudo를 사용하고 있습니다.
특성이 추가되었는지 확인합니다.
lsattr todo.txt
# ----i---------e----- todo.txt
변경 사항을 되돌리고 불변 플래그를 제거하려면 - 연산자를 사용합니다.
sudo chattr +i todo.txt
chattr을 사용하면 여러 특성을 한 번에 추가하거나 제거할 수 있습니다. 예를 들어 파일을 불변 상태로 만들고 커널에 마지막으로 액세스한 시간을 추적하지 않도록 하려면 다음을 사용합니다.
sudo chattr +iA todo.txt
마지막으로 사용할 수 있는 연산자는 = 연산자입니다. 예를 들어 e 특성을 유일한 특성으로 설정하려면 다음을 실행합니다.
sudo chattr "=e" todo.txt
+ 문자의 셸 해석을 피하기 위해 연산자와 플래그는 따옴표로 둘러싸여 있습니다.
chattr은 리눅스 파일 시스템에서 파일 속성을 변경하기 위한 명령줄 도구입니다.
'SW > 리눅스' 카테고리의 다른 글
Linux : Bash : read 명령어, 사용 방법, 예제 (0) | 2023.01.07 |
---|---|
Linux : nmap 명령어, 사용 방법, 예제 (1) | 2023.01.05 |
Linux : Ubuntu 20.04 : PHP 8 설치 방법, 예제, 명령어 (0) | 2023.01.03 |
Linux : Basename 명령어, 예제, 사용 방법 (0) | 2023.01.02 |
Linux : Ubuntu 20.04 : Flask 설치 방법, 예제, 명령어 (1) | 2022.12.31 |