게시물 261건
   
[RedHat] 리눅스 File Open 확인 및 설정하기
글쓴이 : 최장섭 날짜 : 2015-05-24 (일) 23:25 조회 : 32298
  • 시스템에서 현재 Open 되어 있는 파일 개수 확인 과 관련하여, limits.conf 와 sysctl.conf 의 차이점이 있다. sysctl.conf 는 시스템에서 전체 File Open 개수를 설정하고, limits.conf 는 계정별로 File Open 을 설정한다.

  • 시스템의 전체 File Open 개수 확인 하기
    (fs.nr_open 파라미터는 하나의 프로세스가 열 수 있는 최대 파일 개수)

    •  cat /proc/sys/fs/file-nr
      3328   0   97764

      3328 - 현재 오픈 가능한 최대 파일 개수
      0 - 커널에서 현재 사용중인 파일 수
      97764 - 커널에서 최대로 오픈할 수 있는 파일 수

    • # lsof | wc -l // 현재 시스템에서 오픈되어 있는 파일의 개수
      1813 

  • 리눅스 시스템에서 최대 File Open 개수 확인 및 적용 하기
    (fs.file-max 파라미터는 시스템 전체에서 최대로 열 수 있는 파일 개수)

    • #sysctl -a | grep fs.file-max  // 설정된 값 확인하기
      fs.file-max = 97175

    • #vim /etc/sysctl.conf // 파일 수정
      fs.file-max = 98175

    • #sysctl -p // 설정 값 적용

    • # sysctl -a | grep fs.file-max // 적용된 값 확인하기
      fs.file-max = 98175

    • #cat /proc/sys/fs/file-max // 해당 파일에서도 직접 확인할 수 있다.
      98175

  • 리눅스 계정 별 최대 File Open 개수 확인 및 제한 하기

    • # ulimit -a | grep open  // 설정된 값 확인하기
      open files                      (-n) 8192

      또는

      # ulimit -n
      8192

    • # vim /etc/security/limits.conf // user1 의 File Open 개수 제한 설정 하기
      user1            soft    nofile          2048
      user1            hard    nofile          2048

    • # su - user1 // user1 로 스위칭하여 적용된 값 확인하기
      $ ulimit -a | grep open
      open files                      (-n) 2048

    • $ ulimit -n // 적용된 값 확인하기
      2048

    • $ lsof -u UID(user1) | wc -l // user1 의 UID 로 열려 있는 파일 개수 확인하기
      51

  • 각각의 파라미터의 연관 관계
    fs.file-max >= fs.nr_open >= ulimit -n

  • RHEL 버전별 fs.nr_open 과 fs.file_max 의 기본 값
    • RHEL4 (fs.nr_open / fs.file_max)
      1048576 / 203450

    • RHEL5 (fs.nr_open / fs.file_max)
      1048576 / 102249

    • RHEL6 (fs.nr_open / fs.file_max)
      1048576 / 98852


이름 패스워드
비밀글 (체크하면 글쓴이만 내용을 확인할 수 있습니다.)
왼쪽의 글자를 입력하세요.
   

miwit.com sir.co.kr DNS Powered by DNSEver.com DNS Powered by DNSEver.com