블로그 이미지
redkite

카테고리

분류 전체보기 (291)
00.SI프로젝트 산출물 (0)
00.센터 운영 문서 (0)
01.DBMS ============.. (0)
01.오라클 (117)
01.MS-SQL (15)
01.MySQL (30)
01.PostgreSql (0)
01.DB튜닝 (28)
====================.. (0)
02.SERVER ==========.. (0)
02.서버-공통 (11)
02.서버-Linux (58)
02.서버-Unix (12)
02.서버-Windows (2)
====================.. (0)
03.APPLICATION =====.. (11)
====================.. (0)
04.ETC =============.. (0)
04.보안 (5)
====================.. (0)
05.개인자료 (1)
06.캠핑관련 (0)
07.OA관련 (1)
Total
Today
Yesterday

달력

« » 2024.11
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

공지사항

최근에 올라온 글

0042. [리눅스] 오픈파일 갯수 지정

특정 프로그램을 구동 시킬려고 했더니 Too many open files라는 에러가 나오면서 구동이 되지 않았다.


ulimt -a로 확인 해보니 open files수가 1024로 되어 있는 것을 확인 할 수 있었다.


ulimt -n을 이용하여 open files 수를 4096으로 올려주니 정상적으로 프로그램이 구동이 되었다.

문제는 그 다음부터 나왔다. ulimit -n으로 변경 된 open files 수는 재부팅을 하거나 새로 로그인을 하게 되면 open files수가 1024로 되돌아 와 구동중인 데몬이 죽는 경우가 발생했다.


이것은 /etc/security/limits.conf라는 파일을 수정하여 해결 하였다.


위와 같이 수정을 하니 재부팅을 하거나 로그인을 새로 해도 open files 수는 4096이 되었다.

다른 자료들을 찾아보니 /etc/security/limits.conf 수정하는 방법은 다음과 같았다.
1. 특정 계정 Open files 수 변경 시(test 계정만 4096으로 변경 시)
test soft nofile 4096
test hard nofile 4096
2. 내것의 경우는 soft만 4096으로 변경해 주었는데 다른 OS의 경우 아래와 같이 권장 하는 경우
가 많았다.
* soft nofile 4096
* hard nofile 4096

그런데 /etc/security/limts.conf 수정은 성공적이었는데, 여기서 또 다른 문제가 나를 골치 아프게 했다. 다른 계정으로 로그인 한 후 root로 스위치 유저를 하면 문제가 없었는데 root로 바로 로그인을 하게 되면 open files수는 그대로 1024였던 것이다.

이유를 확인해 보니 limits.conf라는 파일은 PAM 모듈을 참조하는 것만 반영이 된다는 것을 확인 할 수 있었다.


/etc/pam.d 모듈을 vi로 열어 확인하니 su는 PAM 모듈을 사용하는 것을 확인 할 수 있었다. 이래서 스위치 유저 이후에는 정상적으로 반영이 되었던 거 같다.


결국 해결은 /root/.bash_profile(내경우 디폴트 프로파일로 bash를 사용)에 위와 같이 한 줄을 넣어 문제를 해결했다. 이렇게 하니 root 계정으로 로그인을 해도 open files 수는 4096으로 반영이 되었다.

'02.서버-Linux' 카테고리의 다른 글

[리눅스]APM 설치  (0) 2012.12.19
[리눅스]커널 튜닝 관련 내용  (0) 2012.12.19
[리눅스]커널 파라메터  (0) 2012.12.19
[리눅스]아파치 사설 인증서 설치  (0) 2012.12.19
[리눅스]아파치 번역  (0) 2012.12.19
Posted by redkite
, |

최근에 달린 댓글

최근에 받은 트랙백

글 보관함