내블로그으으

[로키리눅스] 필수개념 및 명령 본문

리눅스

[로키리눅스] 필수개념 및 명령

평범한_이시대청년 2024. 11. 11. 11:13

출처) 이것이리눅스다 with Rocky Linux9 책

 

 

▶네트워크  주요명령어: nmtui

                                systemctl start/stop/restart/status NetworkManager

 

▶네트워크 설정파일: cd /etc/NetworkManager/system-connections/ens32.connection


crontab 설정관련: /etc/crontab
                          예시) 01 * * * * root  run-parts /etc/cron.hourly 
                                 : 여기서 run-parts는 디렉터리 안의 모든 명령을 실행하는 명령어이다.

우리나라 타임서버: time.bora.net / ntp.kornet.net  / ntp.postech.ac.kr

 

 

▶SELinux 활성화여부:

  sestatus 또는 getenforce 명령어로 알수있음

 

SELinux 활성or 비활성화 여부:

 grubby --update-kernel ALL --args selinux=0           // 비활성 (재부팅 이후부터 적용됨)

 grubby --update-kernel ALL --remove-args selinux    // 활성 (재부팅 이후부터 적용됨)

 

 SELinux를 활성화하면, 기본적으로 1) 강제모드(enforcing)로 설정된다

                                             2) 허용모드(permissive)로 설정하려면, /etc/sysconfig/selinux 파일을 직접 편집한다           

 

 

백그라운드로 가동중인 프로세스는 'jobs'명령어로 현재 백그라운드로 가동중인 프로세스 확인가능

bg : '포그라운드 프로세스' ->  '백그라운드 프로세스'로 실행

fg [작업번호] : '백그라운드'  ->  '포그라운드'로 실행

 

 

 

▶서비스평상시에도 늘 작동하는 서버 프로세스 (시스템과는 무관하게 독립적으로 실행되는 프로세스)

    소켓 : 필요할때만 작동하는 서버 프로세스

 

 

systemd 라고 부르는 '서비스 매니저 프로그램'으로 서비스와 소켓 작동시키거나 관리함

  (예전에는 RHEL 계열은 최상위 프로세스인 init가 서비스를 직접 관리하는 방식을 사용했으나,

                                        요즘에는 systemd가 서비스 대부분을 관리함)

   systemd 세부내용 - https://docs.fedoraproject.org/en-US/quick-docs/systemd-understanding-and-administering/

 

Understanding and administering systemd

Learn the basic principles of the systemd init system: how to configure it and use it to administer the system. Understanding systemd Systemd is a system and service manager for…

docs.fedoraproject.org

 

 

▶ 서비스 실행 스크립트 파일

/usr/lib/systemd/system/서비스이름.service

 

 

▶소켓과 관련된 스크립트 파일: /usr/lib/systemd/system  아래  '소켓이름.socket'

(Rocky Linux 9에서는 많은 서비스가 xinetd 데몬에 의존하지않고 소켓으로 사용된다)

 

 

▶root 비번 잊어버렸을때, 응급복구

 

[1. 단일 사용자모드(응급복구모드) 로 접속한다]

  1) 부팅후 GRUB 부트로더 나타남, 해당 항목이 선택된 상태에서 e 누름

  2) 4번째 줄에 커서 대고 End키 눌렀을 때, 그 줄에 'rhgb quiet' 삭제한다. 그리고 맨끝에 'init=/bin/sh' 입력한다.

  3) Ctrl + x 눌러서 부팅함

 

[2. 단일사용자모드에서 root계정 패스워드 변경]

  1) 부팅되면 'sh5-1#' 이라는 프롬프트 나옴

  2) 여기서 whoami 명령어로 현재 로그인된 계정이 root인지 확인하고

      passwd  명령어 통해서 신규패스워드를 입력한다

  3) 그런데 'passwd: Authentication token manipulation error' 라 뜬다면,

      현재 '/' 파티션이 읽기 전용모드로 마운트 되어 있기 때문이다.

 

  4) 마운트 된 파티션을 RW모드로 변경한다

 

 

 5) 가상머신 재부팅하면 새로운 비밀번호로 root 접속가능!

 

 

 

▶ GRUB 부트로더

: Rocky Linux 부팅할 때 처음 나오는 선택화면을 말함

 

- Locky Linux에서는 예전의 GRUB보다 더 향상된 기능을 제공하는 GRUB 2 사용

- GRUB 2 설정파일: /boot/grub2/grub.cfg 

      "         링크파일: /etc/grub2.cfg

 

 - GRUB 2의 설정을 변경하고자 이 파일을 직접 편집하면 안되고,

   /etc/default/grub파일과 /etc/grub.d 디렉터리의 파일을 수정한 후 grub2-mkconfig 명령을 실행해 설정을 적용해야 한다.

 

 

 

▶부트로더에 비밀번호 설정하는법

( 아무나 부트로더에 접근하여 root 사용자의 비밀번호를 변경하지 못하도록)

 

1. /etc/grub.d/00_header 파일 가장 아래쪽에 다음 4개 행 추가, 저장 

cat << EOF
  set superusers="grub사용자이름"
  password 사용자이름 패스워드
  EOF

 

2. 변경한 내용을 적용하기 위해

grub2-mkcomfig -o /boot/grub2/grub.cfg  명령어 입력

 

3. reboot 명령으로 시스템 재부팅 후, 선택화면이 뜨면 e를 눌러 편집화면에 진입

 

4. 그럼 grub 전용의 사용자 및 비밀번호 입력창이 뜸

 

 

 

▶(간단한) 커널,모듈의 개념

1. 커널의 가장 큰 역할 : 하드웨어 지원

   - 초기커널: 지원할 H/W가 많지않아서 커널에 하드웨어를 지원하는 코드를 모두 넣어놓음

                      ---> 커널에 넣어야할 코드가 점점 많아지고 커널이 커짐

                      ---> 가끔 사용하는 코드는 커널에 안넣고 별도로 보관했다가, 필요할 때 호출해서 쓰면 커널도 더 키우지 않고, 더 많은 H/W를 지원할 수 있겠다 생각함

                      ---> 그것이 '모듈'

 

2. 커널에 넣어야 할 코드와 모듈로 분리해야 할 코드가 Rocky Linux에 설정되어 있을텐데  내 컴퓨터의 H/W 에 맞게 완전히 분리되어 있지는 않다.

     만약, 자주 사용하지 않는 장치는 모듈로 분리하는 것이 더 효율적이지만, Rocky Linux 설치시에 커널에 들어가도록  설정되어있을수도 있다. 이럴때 사용자가 원하는 대로 지정해서 기존의 커널과 똑같은 버전을 다시 컴파일할 수 있다.

 

3. 커널은 H/W지원 측면에서 중요한데, 최근 출시된 H/W를 장착할때

    기존 커널에서 지원하지 않을 수 있지만, 커널을 업데이트하면 지원할수 도 있다.

    www.kernel.org에서 최신 커널 소스 다운로드해서 업그레이드하면 된다고 한다.

 

 

 

도움이 되셨다면 아래 공감ㄱㄱ