리눅스

이것이 리눅스다 - 서버를 구축하는데 알아야 할 필수 개념과 명령어 02

록's 2023. 3. 10. 16:48
728x90
반응형

서버를 구축하는데 알아야 할 필수 개념과 명령어 01 >>>  https://rogi221.tistory.com/129


파일과 디렉터리의 소유와 허가권

 

  • 파일의 리스트와 파일 속성

 

 

  • 파일 유형
    • 디렉터리일 경우에는 d, 일반적인 파일일 경우에는 -가 표시

 

  • 파일 허가권(Permission)
    • “rw-” , “ r--” , “ r--” 3개씩 끊어서 읽음
      (r은 read, w는 write, x는 execute의 약자)
    • 첫 번째 “rw-”는 소유자(User)의 파일접근 권한
    • 두 번째의 “r--”는 그룹(Group)의 파일접근 권한
    • 세 번째의 “r--”는 그 외의 사용자(Other)의 파일접근 권한
    • 숫자로도 표시 가능 (8진수)

 

 

 

  • chmod 명령
    • 파일 허가권 변경 명령어
    • 예) # chmod 777 sample.txt
  • 파일 소유권(Ownership)
    • 파일을 소유한 사용자와 그룹을 의미
  • chown/chgrp 명령
    • 파일의 소유권을 바꾸는 명령어
    • 예) # chown centos.centos sample.txt  또는 # chown centos sample.txt  및  # chgrp centos sample.txt

 

centos 로 파일 삭제하려고 해도 안됨. 권한이 없음

 

chmod 646 /home/abc.txt 권한을 주고 텍스트 수정

용량이 줄어든걸 확인할 수 있음

 

소유권 변경 방법

 

chown centos /home/abc.txt
chgrp centos /home/abc.txt

 

 

한꺼번에 변경 방법

chown centos.centos /home/abc.txt 

 

abc.txt를 centos로 넘겨줌

 

 

root계정에서

su - centos >> 임시로 centos 사용자로 변경

 

 

 

링크

  • 파일의 링크(Link)에는 하드 링크(Hard Link)와 심볼릭 링크(Symbolic Link 또는 Soft Link) 두 가지가 있음

> 심볼릭 링크는 Windows의 바로가기 아이콘과 개념이 비슷하다.

  • 하드 링크를 생성하면 “하드링크파일”만 하나 생성되며 같은 inode1을 사용 (명령 : # ln 링크대상파일이름 링크파일이름)
  • 심볼릭 링크를 생성하면 새로운 inode2를 만들고, 데이터는 원본 파일을 연결하는 효과 (명령 : # ln -s 링크대상파일이름 링크파일이름)

 

 

 

 

 

프로그램 설치를 위한 RPM(1)

  • RPM(Redhat Package Manager)
    • Windows의 “setup.exe”와 비슷한 설치 파일
    • 확장명은 *.rpm이며, 이를 ‘패키지(Package)’라고 부름.

 

파일의 의미

>> x86_64 : 64비트 CPU  >> i386~686 : 32비트 CPU >>src : 소스  >> noarch : 모든 CPU

  • 패키지이름-버전-릴리즈번호.CentOS버전.아키텍처.rpm
    • 패키지이름 : gzip → 패키지(프로그램)의 이름
    • 버전 : 1.9 → 대개 3자리수로 구성. 주버전, 부버전, 패치버전
    • 릴리즈번호 : 4 → 문제점을 개선할 때마다 붙여지는 번호
    • CentOS 버전 : el8 → CentOS에서 배포할 경우에 붙여짐
    • 아키텍처 : x86_64 → 64비트 CPU를 의미

 

프로그램 설치를 위한 RPM (2)

 

자주 사용하는 RPM 명령어 옵션

  • 설치 : rpm -Uvh 패키지파일이름.rpm
    • U → (대문자) 패키지가 설치/업그레이드
    • v → 설치과정의 확인
    • h → 설치진행과정을 "#"마크로 화면에 출력
  • 삭제 : rpm -e 패키지이름
  • 이미 설치된 패키지 질의
    • rpm -qa 패키지 이름 → 패키지가 설치되었는지 확인
    • rpm -qf 파일의절대경로 → 파일이 어느 패키지에 포함된 것인지 확인
  • 아직 설치되지 않은 rpm 파일에 대한 질의
    • rpm -qlp 패키지파일이름.rpm → 패키지 파일에 어떤 파일들이 포함되었는지 확인
    • rpm -qip 패키지파일이름.rpm → 패키지 파일의 상세정보

 

 

 

프로그램 설치를 위한 RPM (3)

RPM 단점
  • ‘의존성’ 문제
    • A패키지가 설치되기 위해서 B패키지가 필요할 경우, RPM으로는 해결이 까다로움.
  • 이를 해결하기 위해 DNF(또는 YUM)가 등장함

 

 

편리한 패키지 설치, DNF (1)

DNF(Dandified dnf) 개념

  • “rpm”명령의 패키지 의존성 문제를 완전하게 해결됨.
  • 인터넷을 통하여 필요한 파일을 저장소(Repository)에서 자동으로 모두 다운로드해서 설치하는 방식
  • CentOS 7은 YUM, CentOS 8은 YUM이 개선된 DNF 명령을 사용.

 

DNF 기본적인 사용법

  • 기본 설치 : dnf install 패키지이름
    • 주로 “dnf  -y  install  패키지이름”으로 사용
    • “-y”는 사용자의 확인을 모두 “yes”로 간주하고 설치를 진행한다는 옵션
  • RPM 파일 설치 : dnf install rpm파일이름.rpm
  • 업데이트 가능한 목록 보기 : dnf check-update
  • 업데이트 : dnf update 패키지이름
  • 삭제 : dnf remove 패키지이름
  • 정보 확인 : dnf info 패키지이름

 

 

 

편리한 패키지 설치, DNF (2)

DNF 고급 사용법

  • 패키지 그룹 설치
    • dnf groupinstall “패키지그룹이름”
  • 패키지 리스트 확인
    • dnf list 패키지이름
  • 특정 파일이 속한 패키지 이름 확인
    • dnf provides 파일이름
  • GPG 키 검사 생략
    • dnf install --nogpgcheck rpm파일이름.rpm
    • CentOS 8에서 인증되지 않은 패키지를 강제로 설치할 때 사용
  • 기존 저장소 목록 지우기
    • dnf clean all

 

 

 

편리한 패키지 설치, DNF (3)

DNF 작동 방식 설정 파일

  • ‘dnf install 패키지이름’ 명령이 작동하는 방식

 

 

 

편리한 패키지 설치, DNF (4)

 

DNF 작동 방식 설정 파일

  • /etc/yum.conf 파일 : 특별히 변경할 필요 없음
  • /etc/yum.repos.d/ 디렉터리
    • dnf 명령을 입력했을 때 검색하게 되는 네트워크의 주소가 들어 있는 여러 개의 파일이 있음
  • /etc/yum.repos.d/ 디렉터리의 *.repo 파일
    • CentOS 8의 1905버전만 설치되도록 하기 위해 /etc/yum.repos.d/ 폴더의 내용을 모두 삭제하고 This.repo 파일을 새로 생성하여 남겨둠. 그리고 This.repo 파일에 BaseOS, AppStream 등의 저장소를 별도로 적어놓음.

 

 

 

 

 

편리한 패키지 설치, DNF (5)

 

This.repo 파일

 

728x90
반응형