본문 바로가기
INFRA/LINUX

udev란

by 근현대사 2023. 6. 13.
반응형

◼️ 정의 

Udev는 리눅스 커널을 위한 장치 관리자입니다. devfsd와 hotplug를 계승하는 udev는 주로 /dev 디렉터리의 장치 노드를 관리, CentOS/RHEL/Oracle Linux/Rocky 에서 많이 사용됩니다. udev는 장치가 삽입되거나 제거될 때 장치 노드를 생성하거나 삭제하고, 장치의 특성을 기반으로 장치 노드에 권한을 설정하고, 장치의 특성을 기반으로 장치 노드에 서비스나 스크립트를 연결합니다. udev는 리눅스 시스템의 장치 관리 역할을 합니다 

 

◼️ udev 사용 목적

  1. 장치 감지 및 식별: udev는 시스템에 연결된 새로운 하드웨어 장치를 감지하고, 해당 장치를 고유하게 식별합니다. 이를 통해 리눅스 운영 체제는 어떤 장치가 연결되어 있는지 알 수 있습니다.
  2. 장치 노드 생성: udev는 장치에 대한 장치 파일 노드를 생성합니다. 장치 파일 노드는 사용자가 장치에 접근할 수 있는 인터페이스로, 파일 시스템의 일부로 간주됩니다. 이러한 장치 파일 노드를 통해 장치에 대한 입출력 작업을 수행할 수 있습니다.
  3. 장치 규칙 관리: udev는 장치에 대한 규칙을 관리합니다. 이러한 규칙은 장치가 감지되었을 때 수행되어야 하는 작업을 정의합니다. 예를 들어, 특정 장치가 연결되었을 때 실행할 스크립트를 정의할 수 있습니다. 또는 특정 장치에 대해 사용자 권한을 설정할 수도 있습니다.
  4. 동적 장치 관리: udev는 장치의 추가 또는 제거와 같은 동적인 변경 사항을 감지하고 이에 대응합니다. 예를 들어, USB 장치를 연결하거나 연결을 해제할 때 udev는 이를 감지하고 적절한 작업을 수행합니다. 이를 통해 장치 관리를 자동화하고, 시스템에 변경 사항을 적용할 수 있습니다.

◼️ udev 규칙 파일 예

  1. 60-persistent-storage.rules:
    이 규칙 파일은 저장 장치 (하드 드라이브, USB 드라이브 등)에 대한 처리를 정의합니다. 주로 저장 장치의 감지, 디스크 식별자 할당 및 저장 장치 관련 작업을 처리하는 데 사용됩니다. 예를 들어, 저장 장치가 시스템에 연결되면 해당 장치에 대한 식별자 (예: UUID)를 할당하고, 장치 파일 노드 (예: /dev/sda)를 생성하도록 설정할 수 있습니다.
  2. 70-persistent-net.rules:
    이 규칙 파일은 네트워크 인터페이스 관련 처리를 정의합니다. 주로 네트워크 인터페이스의 감지, 식별 및 설정을 처리하는 데 사용됩니다. 예를 들어, 네트워크 인터페이스에 고유한 식별자 (예: MAC 주소)를 할당하고, 인터페이스에 대한 네트워크 설정 (예: IP 주소, 서브넷 마스크)를 구성하도록 설정할 수 있습니다.
  3. 99-systemd.rules:
    이 규칙 파일은 systemd 서비스나 유닛에 대한 처리를 정의합니다. 주로 systemd와 관련된 작업을 처리하는 데 사용됩니다. 예를 들어, 특정 장치가 감지되면 해당 장치와 관련된 systemd 유닛을 자동으로 시작하도록 설정할 수 있습니다.

 

◼️ 보통의 사용 예

  1. Oracle ASM (Automatic Storage Management) 환경에서 udev를 사용하여 디스크 관리: Oracle ASM은 데이터베이스의 스토리지 관리를 자동화하는 기능입니다. udev를 사용하면 새로운 디스크가 시스템에 추가되었을 때 해당 디스크를 자동으로 인식하고 ASM 디스크로 설정할 수 있습니다. udev 규칙을 사용하여 새로운 디스크에 대한 작업을 자동으로 수행하도록 설정할 수 있습니다.
  2. Oracle RAC (Real Application Clusters)에서 udev를 사용하여 공유 디스크 관리: Oracle RAC은 여러 노드에서 동작하는 고가용성 데이터베이스 클러스터입니다. 클러스터에서 공유 디스크를 사용하는 경우, udev를 활용하여 새로운 디스크를 자동으로 감지하고 클러스터 노드 간에 디스크 공유를 설정할 수 있습니다.
◼️ 적용방법 
  1. udev 규칙 작성: /etc/udev/rules.d/ 디렉토리에 규칙 파일을 작성합니다. 이 파일에는 새로운 장치를 감지했을 때 실행될 작업을 정의합니다. 예를 들어, 새로운 디스크가 감지되었을 때 해당 디스크를 ASM 디스크로 설정하는 규칙을 작성할 수 있습니다.
  2. 규칙 파일 구문 작성: 규칙 파일은 일련의 규칙으로 구성됩니다. 각 규칙은 장치를 식별하고 해당 장치에 대한 작업을 정의합니다. 장치를 식별하기 위해 다양한 속성 (예: 장치 경로, 제조사, 제품 ID 등)을 사용할 수 있습니다.
  3. 규칙 적용 및 재로드: udev 규칙을 적용하려면 다음 명령을 사용하여 udev를 재로드합니다.
sudo udevadm control --reload-rules
sudo udevadm trigger

 

 

 

 
반응형

'INFRA > LINUX' 카테고리의 다른 글

리눅스 메모리에 대하여  (0) 2023.06.20
core dump란  (0) 2023.06.19
GPG key(PGP)  (2) 2023.06.16
리눅스 명령어 모음1  (0) 2023.06.12
CentOS-8 - AppStream - No URLs in mirrorlist - yum 안될때  (0) 2022.04.30