[Linux 이론] 다운로드 명령어 (yum, dnf)
리눅스에서 패키지를 관리하는 데에는 yum과 dnf이 사용된다. yum은 RHEL 계열 배포판에서 사용되어 왔던 패키지 관리자이며, dnf은 yum을 개선한 다음 세대의 패키지 관리자다. dnf는 Fedora 22부터 기본 패키지 관리자로 채택되었으며, RHEL 8에서는 yum을 대체하고 있다. yum은 C 언어로 작성되어 있으며, 기존의 yum 보다는 속도와 메모리 사용량, 의존성 해결 능력 등에서 개선되었다. 하지만 yum은 여전히 RHEL 계열에서 지원되고 있다. 반면, dnf는 Python으로 작성되어 있으며, 의존성 문제를 해결하는 libsolv와 hawkey 라이브러리를 사용하여 더욱 빠르고 효율적으로 패키지를 관리할 수 있다. 또한 API 문서도 공식적으로 제공되어 있다. 따라서, yum과 ..
2023.03.11
[Linux 기본 명령어] UID, GID 변경하기(user, group / mod 명령어 ②)
usermod 기본적으로 mod 관련 명령어는 일반 사용자는 불가능하고 root나 그에 준하는 사용자가 사용이 가능하다. usermod (옵션) (그룹명) (사용자명) -c 또는 --comment : 사용자 계정에 새로운 코멘트를 추가합니다. -d 또는 --home : 사용자의 홈 디렉토리를 변경합니다. -e 또는 --expiredate : 사용자 계정의 만료 날짜를 설정합니다. -g 또는 --gid : 사용자의 기본 그룹 ID를 변경합니다. -l 또는 --login : 사용자 계정의 로그인 이름을 변경합니다. -s 또는 --shell : 사용자의 기본 쉘을 변경합니다. -u 또는 --uid : 사용자의 UID를 변경합니다. groupmod groupmod (옵션) (그룹명) -g, --gid GID: ..
2023.03.11
no image
[Linux 기본 명령어] 임의의 용량을 만드는 명령어 (truncate, dd)
truncate와 dd 명령어는 리눅스에서 파일 크기를 변경하거나, 디스크 이미지를 생성하거나, 디스크 이미지를 복사하는 등 다양한 디스크 관련 작업을 수행하는 명령어다. 아직은 단순 테스트에만 사용중이지만 실 활용에는 더욱 다양하게 사용될 것으로 생각된다. 아직 배우는 입장이다보니 응용에 있어 어려운 부분이 있다. truncate truncate 명령어는 파일의 크기를 조정하는 명령어 중 하나로 truncate 명령어를 사용하면 파일의 크기를 줄이거나 늘릴 수 있다. truncate 명령어는 파일의 끝을 삭제하거나, 파일의 크기를 줄이는 데 매우 유용하다. 예를 들어, 로그 파일과 같이 큰 파일의 크기를 줄이거나, 일부 미디어 파일에서 헤더를 제거할 때 유용하다. 또한, truncate 명령어는 파일을..
2023.03.11
no image
[Linux 기본 명령어] 권한 추가, 제거(디렉토리, 파일 / mod 명령어) ①
사용자가 어느 그룹에 속해 있는지(GID) 혹은 사용자의 아이디(UID)는 무엇인지 확인하는 방법은 아래 페이지에 정리해 놓았다. 오늘은 파일나 디렉토리의 권한을 수정해 볼 것이고, 이 다음에는 특정 사용자나 그룹을 지정해 권한을 설정하는 방법에 대해 해볼 생각이다. [Linux 이론] 사용자와 그룹 정보 분석하기 권한을 조절하기 전에 우리는 구성에 대해 먼저 알아야 할 필요가 있다. 각 파일의 특징을 알아보고 이 중 passwd와 shadow에 대해 알아보도록 하자. 임의의 a 라는 사용자를 만들어 확인해 보았다. easyitwanner.tistory.com chmod chmod는 리눅스에서 파일과 디렉토리의 권한을 변경하는 명령어다. chmod 명령어를 사용하면 소유자, 그룹, 기타 사용자의 읽기, ..
2023.03.10
[Linux 기본 명령어] 사용자와 그룹을 지정하는 명령어와 옵션 (user, gruop)
2023.03.07 - [Linux/이론] - [Linux 이론] 디렉토리, 파일의 속성 분석하기 [Linux 이론] 디렉토리, 파일의 속성 분석하기 오늘은 ls -l 을 사용했을 때 나오는 저 알수없는 글자에 대해 알아보자. 기본 구성 drwxr-xr-x. 5 root root 46 Mar 6 21:16 2 이것은 다음과 같이 분해할 수 있다. d / rwx / r-x / r-x / . / 5 / root / root / 46 / Mar 6 21 easyitwanner.tistory.com 이전에 이 페이지에서 파일과 디렉토리 정보의 구성에 대해서 알아보았다. 이 포스팅에서는 이 중 '권한'에 대해 더 자세히 알아볼 예정이고, 사용자를 만들고 그룹을 지정해볼 것이다. 사용자 생성 명령어 useradd ..
2023.03.09
no image
[Linux 이론] 사용자와 그룹 정보 분석하기
권한을 조절하기 전에 우리는 구성에 대해 먼저 알아야 할 필요가 있다. 각 파일의 특징을 알아보고 이 중 passwd와 shadow에 대해 알아보도록 하자. 임의의 a 라는 사용자를 만들어 확인해 보았다. 사용자와 그룹의 정보를 담고 있는 파일 1. /etc/passwd : 계정 관련 id:password:UID:GID:comment:홈디렉토리:login shell 2. /etc/group : 그룹 관련 id:password:GID:그룹에 속하는 사용자 계정 3. /etc/shadow : 암호 관련 id:암호화된 password:마지막으로 패스워드 수정한 날짜(기준 1970년 1월 1일):패스워드 최소사용일:패스워드 최대 사용일: 경고메세지출력일:유예기간:계정만료일(패스워드 설정에 우선한다.) > 계정 ..
2023.03.08
반응형

리눅스에서 패키지를 관리하는 데에는 yum과 dnf이 사용된다. yum은 RHEL 계열 배포판에서 사용되어 왔던 패키지 관리자이며, dnf은 yum을 개선한 다음 세대의 패키지 관리자다. dnf는 Fedora 22부터 기본 패키지 관리자로 채택되었으며, RHEL 8에서는 yum을 대체하고 있다.

 

yum은 C 언어로 작성되어 있으며, 기존의 yum 보다는 속도와 메모리 사용량, 의존성 해결 능력 등에서 개선되었다. 하지만 yum은 여전히 RHEL 계열에서 지원되고 있다.

 

반면, dnf는 Python으로 작성되어 있으며, 의존성 문제를 해결하는 libsolv와 hawkey 라이브러리를 사용하여 더욱 빠르고 효율적으로 패키지를 관리할 수 있다. 또한 API 문서도 공식적으로 제공되어 있다.

 

따라서, yum과 dnf은 모두 리눅스에서 패키지를 관리하는 데 사용되지만, dnf은 yum에 비해 더욱 빠르고 효율적인 패키지 관리가 가능하다. 그러나 RHEL 7까지는 yum이 지원되고 있으므로, 배포판에 따라서 어떤 패키지 관리자를 사용해야 하는지 확인해야 한다.


YUM (Yellowdog Updater Modified)

Red Hat 계열 리눅스 시스템에서 사용하는 전통적인 패키지 관리자다. YUM은 대부분의 Red Hat 계열 배포판에서 제공되며, .rpm 파일 형식으로 소프트웨어 패키지를 관리하는 RPM 패키지 관리자의 프론트엔드 역할을 한다. YUM은 APT와 마찬가지로 소프트웨어 저장소를 통해 동작하며, 저장소는 소프트웨어 패키지의 모음을 담고 있는 특별한 디렉토리다.

 

YUM 명령어는 Red Hat 엔터프라이즈 리눅스(RHEL)의 공식 소프트웨어 저장소뿐만 아니라 다른 서드파티 저장소에서도 RPM 소프트웨어 패키지를 얻고, 설치, 삭제, 조회 및 기타 관리 작업을 수행할 수 있는 주요 도구다. YUM을 사용하면 시스템 업데이트, 의존성 분석 및 레파지토리 메타데이터를 기반으로 한 오래된 패키지 처리 등 시스템 업데이트를 자동으로 수행할 수 있다.

 

또한 YUM은 설치된 시스템의 레파지토리에서 뿐만 아니라 .rpm 패키지에서도 패키지를 관리할 수 있다. YUM은 패키지를 설치, 업데이트, 삭제 및 관리하는데 사용된다. YUM 명령어를 사용하면 의존성 해결을 수행할 수 있다.


 

yum [옵션] [커맨드] [패키지 이름]
  • -y : -y 옵션은 설치하려는 패키지와 해당 패키지의 의존성 패키지들을 확인하고, 확인 메시지 없이 자동으로 설치한다. 
  • history : yum의 이전 작업 내역을 조회하고, 이전에 수행한 작업을 취소할 수 있는 기능을 제공한다.
  • -yumplugin : 플러그인을 사용하여 패키지를 설치, 업데이트 또는 제거하는 데 사용된다.
  • -exclude : 패키지를 제외하고 업데이트를 수행한다.
  • -downloadonly : 패키지를 다운로드만 하고 설치하지 않는다. 

* 다운로드란 인터넷에서 파일을 다른 컴퓨터로 전송받아 자신의 컴퓨터에 저장하는 것이지만 설치는 다운로드한 파일을 실행하여 해당 파일을 사용할 수 있는 상태로 만드는 것을 말한다.


DNF(Dandified YUM)

RHEL, Fedora, CentOS, AlmaLinux, Rocky Linux, Oracle Linux와 같은 RPM 기반의 Linux 배포판에서 사용되는 패키지 매니저다. DNF는 YUM 패키지 매니저의 업그레이드 버전으로, RPM 및 libsolv를 사용하여 패키지 관리를 한다. DNF는 패키지 설치, 업데이트, 삭제와 같은 패키지 관리 작업 뿐만 아니라 모듈, 애플리케이션 스트림 및 프로파일과 같은 기능도 제공한다.

 

DNF는 기본적으로 플러그인을 제공하며, 플러그인은 dnf의 작업을 확장하거나 향상시키기 위해 사용된다. 플러그인 설정 파일에는 항상 [main] 섹션이 있으며, enabled = 옵션을 사용하여 플러그인이 dnf 명령어를 실행할 때 활성화되는지 여부를 제어할 수 있다.


dnf [옵션] [커맨드] [패키지 이름]

패키지 동기화

  • dnf distro-sync : 설치된 모든 패키지를 저장소에서 사용 가능한 최신 안정 버전으로 동기화하는 옵션을 제공한다.

패키지 설치

  • dnf -y install 패키지이름 : 의존성 있는 다른 패키지까지 모두 설치할 수 있다.
  • dnf install rpm파일이름 : rpm 파일을 설치할 수 있다.

패키지 업데이트

  • dnf update 패키지이름 : 업데이트 가능한 패키지를 업데이트 할 수 있다.

패키지 삭제

  • dnf remove 패키지이름 : 패키지를 삭제할 수 있다.

패키지 재설치

  • dnf reinstall 패키지이름 : 이미 설치된 패키지를 다시 설치할 수 있다.

패키지 검색

  • dnf search 검색어 : 패키지를 검색할 수 있다.

저장소 확인

  • dnf repolist : 시스템에 설정된 저장소 목록을 확인할 수 있다.

저장소 추가 및 삭제

  • dnf config-manager --add-repo 저장소주소 : 저장소를 추가할 수 있다.
  • dnf config-manager --remove 저장소이름 : 저장소를 삭제할 수 있다.

이 외의 다양한 명령어는 --help로 찾아보라.

 

참고 문헌 : [1][2][3][4][5][6][7][8][9][10]

반응형
반응형
usermod

기본적으로 mod 관련 명령어는 일반 사용자는 불가능하고 root나 그에 준하는 사용자가 사용이 가능하다.

usermod (옵션) (그룹명) (사용자명)
  • -c 또는 --comment : 사용자 계정에 새로운 코멘트를 추가합니다.
  • -d 또는 --home : 사용자의 홈 디렉토리를 변경합니다.
  • -e 또는 --expiredate : 사용자 계정의 만료 날짜를 설정합니다.
  • -g 또는 --gid : 사용자의 기본 그룹 ID를 변경합니다.
  • -l 또는 --login : 사용자 계정의 로그인 이름을 변경합니다.
  • -s 또는 --shell : 사용자의 기본 쉘을 변경합니다.
  • -u 또는 --uid : 사용자의 UID를 변경합니다.

groupmod
groupmod (옵션) (그룹명)
  • -g, --gid GID: 그룹의 GID를 수정합니다. 이 옵션을 사용하면 그룹의 ID를 바꿀 수 있습니다.
  • -n, --new-name: 그룹의 이름을 수정합니다. 이 옵션을 사용하면 그룹의 이름을 바꿀 수 있습니다.
  • -o, --non-unique: 중복된 GID를 사용하는 그룹을 생성합니다. 이 옵션을 사용하면 GID가 이미 사용 중인 그룹과 중복된 GID를 가지는 그룹을 생성할 수 있습니다.
  • -v, --verbose: 작업의 세부 정보를 출력합니다. 이 옵션을 사용하면 그룹 정보를 수정할 때 어떤 변경 사항이 있는지 상세히 출력합니다.

사용자와 그룹에 대해 분석하는 방법에 대해서는 다음 페이지에 자세히 적어 놓았으니 확인하면 좋을 듯 하다. 또한 더 다양한 명령어를 알고 싶다면 명령어 --help를 입력해보면 좋을 것이다.

[Linux 이론] 사용자와 그룹 정보 분석하기

 

[Linux 이론] 사용자와 그룹 정보 분석하기

권한을 조절하기 전에 우리는 구성에 대해 먼저 알아야 할 필요가 있다. 각 파일의 특징을 알아보고 이 중 passwd와 shadow에 대해 알아보도록 하자. 임의의 a 라는 사용자를 만들어 확인해 보았다.

easyitwanner.tistory.com

 

반응형
반응형

truncate와 dd 명령어는 리눅스에서 파일 크기를 변경하거나, 디스크 이미지를 생성하거나, 디스크 이미지를 복사하는 등 다양한 디스크 관련 작업을 수행하는 명령어다. 아직은 단순 테스트에만 사용중이지만 실 활용에는 더욱 다양하게 사용될 것으로 생각된다. 아직 배우는 입장이다보니 응용에 있어 어려운 부분이 있다.


truncate

truncate 명령어는 파일의 크기를 조정하는 명령어 중 하나로 truncate 명령어를 사용하면 파일의 크기를 줄이거나 늘릴 수 있다.

 

truncate 명령어는 파일의 끝을 삭제하거나, 파일의 크기를 줄이는 데 매우 유용하다. 예를 들어, 로그 파일과 같이 큰 파일의 크기를 줄이거나, 일부 미디어 파일에서 헤더를 제거할 때 유용하다. 또한, truncate 명령어는 파일을 생성하거나 파일의 크기를 늘리는 데에도 사용될 수 있다.

 

truncate 명령어는 파일의 크기를 조정하는 데 매우 빠르며, 다른 명령어에 비해 시스템 자원을 적게 사용한다. 따라서, truncate 명령어는 리눅스에서 파일의 크기를 조정하는 데 매우 유용한 명령어다.

 

truncate [옵션] 파일이름

- 옵션

  • -c, --no-create: 파일이 없을 경우 생성하지 않는다.
  • -o, --io-blocks: 파일 크기를 블록 수로 지정한다.
  • -r, --reference: 다른 파일의 크기를 참조하여 파일 크기를 조정한다.
  • -s, --size: 파일 크기를 바이트 단위로 지정한다.
  • -w, --help: 명령어 사용 방법을 출력한다.

예시

위와 같이 M, G 등 용량을 나타내는 기호를 같이 사용하면 조금 더 편하게 지정 가능하다.


dd

dd 명령어는 데이터를 다른 위치로 복사하거나 디스크 이미지를 생성하는 데 사용할 수 있는 명령어다.  이 명령어는 블록 단위로 데이터를 처리하며, 주로 디스크 이미지를 만들거나 디스크를 복사하거나 백업하는 데 사용된다. dd 명령어는 강력한 도구이지만, 실수로 사용자의 데이터를 삭제하거나 파일 시스템을 손상시킬 수도 있으므로 사용에 주의해야 한다.

dd [option]...

- 옵션

  • if : 입력 파일을 지정합니다.
  • of : 출력 파일을 지정합니다.
  • bs : 입력 및 출력 블록 크기를 바이트 단위로 지정합니다.
  • count : 입력 파일에서 복사할 블록 수를 지정합니다.
  • seek: 대상 파일에 블록을 쓰기 전 건너뛸 블록 수를 지정합니다.
  • skip: 입력 파일에서 건너뛸 블록 수를 지정합니다.
  • status: 명령어 실행 시 진행 상황을 표시합니다.

이중에 if, of, bs, count는 꼭 입력해 줘야한다. 특히 count를 입력하지 않는다면 디스크가 다 차오를 때까지 무한 반복되는 불상사가 발생하니 주의하길 바란다.


dd 참고 문헌

[1], [2], [3]

기타 궁금한 내용이 있다면 페이지에 접속해보는 것도 좋을 것같다.


반응형
반응형

 사용자가 어느 그룹에 속해 있는지(GID) 혹은 사용자의 아이디(UID)는 무엇인지 확인하는 방법은 아래 페이지에 정리해 놓았다. 오늘은 파일나 디렉토리의 권한을 수정해 볼 것이고, 이 다음에는 특정 사용자나 그룹을 지정해 권한을 설정하는 방법에 대해 해볼 생각이다.

 

[Linux 이론] 사용자와 그룹 정보 분석하기

권한을 조절하기 전에 우리는 구성에 대해 먼저 알아야 할 필요가 있다. 각 파일의 특징을 알아보고 이 중 passwd와 shadow에 대해 알아보도록 하자. 임의의 a 라는 사용자를 만들어 확인해 보았다.

easyitwanner.tistory.com


chmod

chmod는 리눅스에서 파일과 디렉토리의 권한을 변경하는 명령어다. chmod 명령어를 사용하면 소유자, 그룹, 기타 사용자의 읽기, 쓰기 및 실행 권한을 수정할 수 있다.

chmod 명령어
chmod (옵션) (모드) (이름) 
옵션은 다음과 같다.
-c, --changes: 권한이 변경된 파일만 출력한다
.-f, --silent, --quiet: 에러 메시지를 표시하지 않고 진행한다
.-R, --recursive: 하위 디렉토리와 파일의 권한도 함께 변경한다.

이 때 모드는 숫자 또는 문자열을 사용하여 표현할 수 있다. 권한 모드를 나타내는 문자열은 r (읽기), w (쓰기), x (실행)로 표시되며, 각 권한에 대해 - (권한 없음)으로 나타낼 수 있다. 권한 모드를 나타내는 숫자는 8진수 숫자 3자리로 나타내며, 각 자리는 소유자, 그룹, 기타 사용자의 권한을 각각 나타낸다.

모드
a : 모두
u : user(소유자)
g : group(그룹)
o : others(기타 사용자)

예시

이 a 디렉토리와 a.txt 파일에 대해 실습을 진행해 보겠다.

chmod (권한을 변경할 대상) (파일이나 디렉토리 이름)으로 지정을 한다. 이 때 대상과 권한을 지정할 때 w(읽기), r(쓰기), x(열기)를 지정해주어야 하며 - 기호는 권한을 제거, + 기호는 권한을 추가한다. 대상도 한번에 지정이 가능하고, 부여하거나 제거할 권한도 한번에 지정할 수 있다.

주로 이 방법을 더 많이 사용하는데 숫자로 지정하는 것이다. 숫자는 3자리로 구성되고 각각 u, g, o의 권한을 뜻한다. 각 권한을 숫자로 환산하면 다음과 같다.

w : 4

r : 2

x : 1

이 숫자를 권한을 주고 싶은 만큼 더해서 주면 된다. 읽기와 열기 권한을 주고 싶다면 5, 주지 않을 것이라면 0과 같은 조합이 가능하다. 숫자에 조금만 익숙해지면 직관적이고 빠른 타이핑이 가능해 주로 사용하는 것으로 생각된다.


 

반응형
반응형

2023.03.07 - [Linux/이론] - [Linux 이론] 디렉토리, 파일의 속성 분석하기

 

[Linux 이론] 디렉토리, 파일의 속성 분석하기

오늘은 ls -l 을 사용했을 때 나오는 저 알수없는 글자에 대해 알아보자. 기본 구성 drwxr-xr-x. 5 root root 46 Mar 6 21:16 2 이것은 다음과 같이 분해할 수 있다. d / rwx / r-x / r-x / . / 5 / root / root / 46 / Mar 6 21

easyitwanner.tistory.com

이전에 이 페이지에서 파일과 디렉토리 정보의 구성에 대해서 알아보았다. 이 포스팅에서는 이 중 '권한'에 대해 더 자세히 알아볼 예정이고, 사용자를 만들고 그룹을 지정해볼 것이다.


사용자 생성 명령어

useradd (옵션) (이름)

 

user의 속성을 확인하는 방법에 대해서는 다음 페이지에 설명해 놓았으니 확인하면 도움이 될 것이다.

2023.03.08 - [Linux/이론] - [Linux 이론] 사용자와 그룹 정보 분석하기

 

[Linux 이론] 사용자와 그룹 정보 분석하기

권한을 조절하기 전에 우리는 구성에 대해 먼저 알아야 할 필요가 있다. 각 파일의 특징을 알아보고 이 중 passwd와 shadow에 대해 알아보도록 하자. 임의의 a 라는 사용자를 만들어 확인해 보았다.

easyitwanner.tistory.com

계정과 관련된 옵션

  • -c, --comment : 계정에 대한 설명을 추가합니다.
  • -d, --home : 사용자 홈 디렉토리를 설정합니다.
  • -e, --expiredate : 계정 만료 날짜를 설정합니다.
  • -f, --inactive : 계정의 비활성화 기간을 설정합니다.
  • -g, --gid : 새로운 계정의 주 그룹을 설정합니다.
  • -G, --groups : 새로운 계정에 추가할 보조 그룹을 설정합니다.
  • -k, --skel : 새로운 계정을 위한 스켈레톤 디렉토리를 설정합니다.
  • -m, --create-home : 새로운 계정의 홈 디렉토리를 생성합니다.
  • -r, --system : 시스템 계정을 생성합니다.
  • -s, --shell : 새로운 계정의 로그인 셸을 설정합니다.
  • -u, --uid : 새로운 계정의 UID를 설정합니다.

여기서 이전에 다룬적이 없는 내용에 대해 짤막하게 정리하겠다.

 

* 시스템 계정

시스템에서 구동되는 서비스들이 시스템 자원에 접근하는 권한을 부여받기 위해서 사용되는 특별한 계정으로, 이는 시스템 프로세스에서 사용되고 로그인이나 홈 디렉토리가 없다는 특징을 가지고 있다. 하지만 주로 관리 목적으로 사용되기 때문에 사용할 일은 거의 없다고 봐도 무방하다.

 

* 스켈레톤 디렉터리

새로운 사용자가 생성될 때, 사용자의 홈디렉토리에 미리 복사되는 파일들이 저장되는 디렉토리이다. 여기에는 새로운 사용자가 로그인할 때 필요한 설정 파일, 쉘 스크립트, 문서 등의 파일이 포함 될 수 있다.

 

* 셀

명령어와 프로그램을 실행할 때 사용하는 인터페이스로 쉽게 말해, 커널과 사용자간의 다리 역할을 하는 것으로 사용자부터 명령을 받아 그것을 해석하고 프로그램을 실행하는 역할을 한다.


비밀번호 관련 옵션
  • -p, --password : 계정의 암호를 직접 설정합니다. (passwd [비밀번호 설정할 사용자명])
  • -s, --stdin : 표준 입력으로부터 암호를 입력 받습니다.( echo '비밀번호' | passwd --stdin [사용자명])

사용자 지우기

userdel (옵션) (지울 사용자명)

 

-r : 사용자와 해당 홈 디렉토리를 같이 삭제

-f : 강제로 제거


그룹 생성 명령어

groupadd (옵션) (생성할 그룹 이름)

  • -g, --gid (GID): 새로운 그룹의 GID(Group ID)를 설정한다. 예를 들어, groupadd -g 1000 mygroup 명령어는 "mygroup"이라는 이름의 그룹을 생성하면서 GID를 1000으로 설정한다.
  • -r, --system: 시스템 그룹(System Group)을 생성합니한다. 이 옵션을 사용하면 GID가 500 이하인 그룹이 생성된다.
  • -K, --key <key>=<value>: 그룹 생성 시 그룹의 속성을 설정합니다.

    Ex_ groupadd -K SYSLOG_FILE=/var/log/messages mygroup

    > "mygroup"이라는 이름의 그룹을 생성하면서 SYSLOG_FILE 속성을 "/var/log/messages"로 설정한다.

그룹 제거 명령어
  • -f, --force: 그룹에 속한 사용자가 있다면 강제로 그룹을 삭제합니다.

그룹과 사용자에 대한 명령어를 이렇게 정리해 보았지만 이것만 있는 것은 아니다.라는 것을 명심했으면 한다. 물론 이 이외에 자주 쓸만한게 있을까 싶지만 혹시 모르겠다면 --help명령어를 이용해보면 좋다. 천천히 배우고 있다면 이왕 하면서 영어 공부도 해두면 좋을 것이다. 만약 이 업계로 간다면 외국인을 자주 접해게 될 수 있고(외국계 기업일 경우), 그게 아니더라도 명령어 같은 것들은 영어를 알면 비교적 쉽게 이해할 수 있기 때문이다. user + add = 사용자 추가, user + del = 사용자 지우기처럼 영어 단어를 함축하고 붙여 명령어로 쓰기 때문이다.

반응형
반응형

권한을 조절하기 전에 우리는 구성에 대해 먼저 알아야 할 필요가 있다. 각 파일의 특징을 알아보고 이 중 passwd와 shadow에 대해 알아보도록 하자. 임의의 a 라는 사용자를 만들어 확인해 보았다.


사용자와 그룹의 정보를 담고 있는 파일

1. /etc/passwd : 계정 관련


id:password:UID:GID:comment:홈디렉토리:login shell



 2. /etc/group : 그룹 관련


id:password:GID:그룹에 속하는 사용자 계정



 3. /etc/shadow : 암호 관련


id:암호화된 password:마지막으로 패스워드 수정한 날짜(기준 1970년 1월 1일):패스워드 최소사용일:패스워드 최대 사용일: 경고메세지출력일:유예기간:계정만료일(패스워드 설정에 우선한다.)

 

> 계정 만료일은 기한이 정해져 있는 프로젝트에 참여하는 외부 인력에 주로 설정



 4. /etc/default/useradd : 내용 참조 id, password 설정


기본그룹,유예기간,계정만료일,login shell, 메일사서함 생성여부



 5. /etc/loing.defs :내용 참조 id, password 설정


메일사서함위치,패스워드최소사용일,패스워드최대사용일,패스워드길이,경고메시지출력일,UID와 GID범위지정,사용자홈디렉토리생성여부\사용자ID와 동일한 그룹 생성여부

 

(> 해당 파일은 내용이 길고 조금 복잡할 수 있어 나중에 따로 다루도록 하겠다)



 6. /etc/skel : 사용자 홈디렉토리에 생성되는 파일과 디렉토리


분석하기

1. /etc/passwd 에서 user a의 구성 분석하기

 

[   a      :x      :1002      :1002      :      :/home/a      :/bin/bash   ]

 

이 구성은 다음과 같이 나눌 수 있다. : 이것을 경계로 나누면 훨씬 수월할 것이다. 각 성분의 특징을 알아보자.


 

a  ID 계정
:x 패스워드
:1002 UID
:1002 GID
: comment
:/home/a 홈디렉토리 위치
:/bin/bash login shell

 * shell은 명령어 해석기라고도 하고(종류: sh, bash, zsh, csh), 이게 없다면 로그인 할 수 있는 방법은 없다.
 * 리눅스는 명령어를 적용하고 껏다키면 초기화된다. 따라서 영구 수정하고 싶다면 설정파일을 수정해야한다.


2. /etc/shadow 에서 user a의 구성 분석하기


[   a             :$6$~~~~~~~~~~XV70              :19424              :0             :99999              :7             :              :                :   ]

a 계정명
:$6$...XV70 패스워드 (비밀번호 없으면 !!, 암호화된 패스워드 /etc/login.defs SHA512
:19419 패스워드 마지막으로 수정한 날짜 (1970년 1월 1일 + 19419 = 오늘날짜)
: 패스워드 최소 사용 가능일(기간 동안은 패스워드 변경 불가)
:99999 패스워드 최대 사용일 (ex.30 )
:7 경고 메세지 출력일, 패스워드 만료전 7일전 부터 경고 메세지 출력
: 유예기간 (패스워드 만료 후 일정기간 동안 유예, 접속해서 패스워드 변경하면 사용이 가능)
: 계정의 만료(모든 패스워드 설정에 우선)
: 사용안함

 

공백 자리는 맨 마지막을 제외하고 명령어나 vi 편집기를 이용해 부여해 줘야 한다. 이는 나중에 따로 다뤄보도록 하겠다.


* 추가

UID : user ID

GID : group ID

이는 권한 부여하거나 제거할 때 중요하게 작용하니 알아두면 조금은 더 편해질지도 모르겠다.

반응형