728x90
lsattr 명령어와 chattr 명령어
Linux 시스템에서 파일 및 디렉토리의 속성을 관리하는 데 사용되는 유틸리티입니다.
lsattr 명령어
lsattr 명령어는 파일 및 디렉토리의 속성을 나열합니다. 파일 속성은 파일이나 디렉토리에 대한 특수한 권한이나 기능을 정의합니다.
기본 구문
lsattr [옵션] [파일 또는 디렉토리]
주요 옵션
- -a : 모든 파일을 표시합니다.
- -d : 디렉토리의 속성을 표시합니다.
- -R : 하위 디렉토리를 재귀적으로 표시합니다.
사용 예시
1. 디렉토리 내 모든 파일 및 디렉토리의 속성 표시
lsattr /path/to/directory
$ lsattr /etc/sudoers
---------------- /etc/sudoers
2. 재귀적으로 모든 파일 및 디렉토리의 속성 표시
lsattr -R /path/to/directory
$ lsattr -R /etc
---------------- /etc/fstab
---------------- /etc/crypttab
---------------- /etc/resolv.conf
---------------- /etc/grub.d
/etc/grub.d:
---------------- /etc/grub.d/00_header
---------------- /etc/grub.d/01_users
---------------- /etc/grub.d/10_linux
---------------- /etc/grub.d/20_linux_xen
---------------- /etc/grub.d/20_ppc_terminfo
---------------- /etc/grub.d/30_os-prober
---------------- /etc/grub.d/40_custom
---------------- /etc/grub.d/41_custom
---------------- /etc/grub.d/README
---------------- /etc/grub.d/00_tuned
---------------- /etc/pki
/etc/pki:
---------------- /etc/pki/rpm-gpg
...
728x90
chattr 명령어
chattr 명령어는 파일이나 디렉토리의 속성을 변경합니다. 주로 파일이나 디렉토리에 대한 수정 및 삭제 권한을 제어하고, 파일의 속성을 변경하여 특정 동작을 방지하는 데 사용됩니다.
기본 구문
chattr [옵션] [+/- 속성] [파일 또는 디렉토리]
주요 옵션
- -R : 디렉토리의 속성을 재귀적으로 변경합니다.
- -V : 변경된 파일 및 디렉토리를 자세히 출력합니다.
- -f : 오류 메시지를 출력하지 않습니다.
- - (제거) : 해당 속성을 제거합니다.
- + (추가) : 해당 속성을 추가합니다.
- = (설정) : 해당 속성을 설정합니다.
- a (append-only) : 파일에 내용을 추가하는 것만 허용하고, 수정이나 삭제를 방지합니다.
- A (no-atime) : 파일의 마지막 접근 시간 (atime)을 업데이트하지 않습니다. 이를 통해 파일의 atime 업데이트를 방지할 수 있습니다.
- c (compressed) : 파일을 압축합니다.
- C (no-copy-on-write) : Copy-on-write를 비활성화합니다. Copy-on-write는 파일이나 디렉토리를 복사할 때 실제로 데이터를 복사하지 않고 새로운 데이터가 쓰일 때만 복사하는 기능입니다.
- d (no-dump) : 백업 시 파일을 무시합니다.
- D (synchronous-directory) : 디렉토리 변경 사항이 디스크에 동기화되기를 기다립니다.
- e (extent format) : 파일을 확장 형식(extent format)으로 사용합니다.
- i (immutable) : 파일을 읽기 전용으로 만들어 수정이 불가능하게 합니다.
- j (data journaling) : 파일 데이터를 쓰기 전에 저널링합니다.
- s (secure deletion) : 파일을 안전하게 삭제합니다. 실제로 데이터를 삭제하지만 파일 시스템에서 재활용할 수 있게 합니다.
- S (synchronous) : 파일 변경 사항이 디스크에 동기화되기를 기다립니다.
- t (no tail-merging) : 파일의 끝에 추가되는 데이터를 기존 블록에 합치지 않습니다.
- T (top of directory hierarchy) : 디렉토리의 최상위로 지정합니다.
- u (undeletable) : 파일을 삭제할 수 없게 만듭니다.
사용 예시
1. 파일에 대한 속성 변경 (읽기 전용 설정)
chattr +i filename
chattr +i sudoers
$ lsattr sudoers
----i----------- sudoers
2. 디렉토리 및 하위 디렉토리에 대한 속성 변경 (재귀적으로)
chattr -R +i directory
chattr -R +i testdir
$ lsattr -R testdir
----i----------- testdir/sudoers
3. 파일에서 속성 제거 (읽기 전용 해제)
chattr -i filename
chattr -i sudoers
$ lsattr sudoers
---------------- sudoers
4. 파일에 대한 숨김 속성 설정
chattr +u filename
이러한 명령어들은 시스템 관리 및 보안 관리에서 특정 파일이나 디렉토리에 대한 제어를 용이하게 합니다.
유의할 점은 chattr 명령어는 슈퍼유저(루트) 권한이 필요한 경우가 많기 때문에 주의해서 사용해야 합니다.
728x90
'리눅스' 카테고리의 다른 글
리눅스에서 ulimit을 설정하는 방법 (0) | 2023.11.30 |
---|---|
웹 서버의 성능을 향상시키기 위한 커널 파라미터 튜닝하는 방법 (0) | 2023.11.30 |
rev 명령어 (0) | 2023.11.29 |
cut 명령어 (0) | 2023.11.29 |
youtube-dl 명령어 (0) | 2023.11.28 |