« Previous : 1 : 2 : 3 : 4 : 5 : ... 39 : Next »

Linux file descriptor 제한 늘리기

크리에이티브 커먼즈 라이센스
Creative Commons License
Linux 프로그램은 기본적으로 stdin, stdout, stderr 3개의 파일 디스크립터를 사용한다. 여기에 다가 file을 오픈하거나 Socket을 오픈하는 것도 파일 디스크립터를 하나씩 점유하게 된다. 다수의 요청을 처리하는 소켓 프로그램의 경우 너무 많은 요청이 들어 올 경우 파일 디스크립터의 수가 제한 되어 'too many open file'과 같은 에러가 발생하게 된다.
 쉘에서 ulimit -a 명령어를 사용하면 현재 커널에 할당되어 있는 정보를 볼 수 있다.
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
max nice                        (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 8064
max locked memory       (kbytes, -l) 32
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
max rt priority                 (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 8064
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
file locks                      (-x) unlimited

위 항목중 open files 항목이 하나의 프로세스에서 열 수 있는 파일 디스크립터의 수 이다.  ulimit -n 명령어를 사용하여 설정 할 수도 있으나 여기에서는 C 언어에서 할당하는 방법을 알아보자
 #include <sys/time.h>
 #include <sys/resource.h>
 #include <unistd.h>

 int getrlimit (int resource, struct rlimit *rlim);
 int setrlimit (int resource, const struct rlimit *rlim);

struct rlimit
{
      rlim_t    rlim_cur; //soft
      rlim_t    rlim_max; //hard
};

사용법은 아래와 같다.
void print_rlim()
{
        struct rlimit limit;

        getrlimit(RLIMIT_NOFILE, &limit);

        printf("cur=%lu max=%lu\n", limit.rlim_cur, limit.rlim_max);
}
void set_rlim()
{
        struct rlimit limit;

        limit.rlim_cur = 20480lu;
        limit.rlim_max = 20480lu;

        setrlimit(RLIMIT_NOFILE, &limit);
}


Posted by 느긋나긋

2009/10/13 12:21 2009/10/13 12:21
Response
No Trackback , No Comment
RSS :
http://onurmark.co.kr/tc/rss/response/141

Trackback URL : http://onurmark.co.kr/tc/trackback/141

Leave a comment

[Fedora core 5] Linux permanent routing

크리에이티브 커먼즈 라이센스
Creative Commons License
윈도우즈에서는 route 명령어에 -p 옵션이 있다. 윈도우에서는 Persistent Route로 불리는 옵션으로 퍼머넌트 라우팅이라고도 한다. 지속성을 가지는 라우팅으로 이 옵션을 사용하면 라우팅이 항상 존재하게 된다.

>route -p add 192.168.1.123 mask 255.255.255.255 192.168.1.1
사용자 삽입 이미지

위의 라우팅 테이블을 보면 Persistent Routes: 항목에 라우팅이 들어가는 것을 확인 할 수 있다. 이 라우팅은 일반라우팅과 달리 PC를 재시작하거나 NIC를 disable 상태로 만들어도 항상 존재하게 된다.

리눅스에서도 마찬가지로 라우팅을 사용하게 되는데 이때 route 명령이나 ip(iproute2) 명령어를 살펴보면 Permanent 라우팅 옵션은 존재하지 않는다. 그러면 리눅스에서는 재시작할때마다 route 명령을 사용하여 라우팅을 추가하는 방법을 선택하는 수 밖에 없는데 많은 이들이 init 스크립트에 route add 명령을 사용하여 라우팅을 추가하는 방법을 택하게 된다. 하지만 우리는 이 방법 이외의 RHEL에서 제공하는 방법을 택하여 라우팅을 추가해 보자

RHEL 계열의 리눅스에서는 네트워크 스크립트를 잘 살펴보면 라우팅을 위한 스크립트가 있다. 바로 /etc/sysconfig/network-scrips/ifup-routes 라는 스크립트 인데 이를 이용하면 Permanent 라우팅과 같이 동작하도록 할 수 있다.

먼저 /etc/sysconfig/network-scripts 는 네트워크 관련 스크립트를 모아놓은 곳으로 PC를 부팅하거나 service network restart 명령을 실행할 때 실행되는 스크립트들이다. 이 곳에 route-<xxxx> 형식으로 파일을 생성한다.

> vi route-eth0
192.168.1.55/32 via 192.168.1.1
192.168.1.100/32 via 192.168.1.1
192.168.1.0/25 via 192.168.1.1
192.168.1.105/32 via 211.41.163.1

사용자 삽입 이미지

ifup-routes 파일을 잘 살펴보면 route-<xxxx>파일을 한줄씩 읽어들여 "ip route add " 명령어 뒤에 삽입한 후 실행시키는 역할을 한다. 자세한 옵션은 iproute2의 manpage를 참고하도록 하고 위의 명령줄 형식은 다음과 같다.
<dest_addr>/<prefix> via <gateway>

이제 service network restart나 PC를 재부팅하여 제대로 올라오는지 확인하면 모든 것이 끝난다. 참고로 route-eth0는 eth0장치가 올라올때 활성화된다.

Posted by 느긋나긋

2009/02/09 20:07 2009/02/09 20:07
,
Response
No Trackback , No Comment
RSS :
http://onurmark.co.kr/tc/rss/response/140

Trackback URL : http://onurmark.co.kr/tc/trackback/140

Leave a comment

월세도 현금영수증으로 소득공제...

크리에이티브 커먼즈 라이센스
Creative Commons License
2009년 2월 4일 이후의 월세 지급분에 대해서는 현금영수증이 발급 가능 하도록 되었네요.

세무관서에 "현금거래확인신청서"와 "임대차계약서"를 한번만 제출하시면 계약기간동안의 월세지급분에 대해서는 현금영수증이 발급이 됩니다. 물론 임대차 계약의 만료나 변경이 있을 경우에는 다시 신고를 하셔서 변경을 하셔야 겠구요. 신고기한은 월세 지급일로부터 1개월 이내이며, 2009년 2월 4일 이후의 거래분부터 적용이 되므로 지금신고하시면 2월달 부터는 현금영수증이 발급이 되겠네요...

이 사항은 주택에만 적용되고 상가에는 적용이 되지 않습니다. 그리고 임대인이 임대사업자가 아닌 경우에도 즉, 사업자 등록여부와 관계 없이 신고가 가능합니다.

자세한 사항은 국세청 공지사항 에서 확인 하세요..

Posted by 느긋나긋

2009/02/04 09:56 2009/02/04 09:56
, , ,
Response
No Trackback , No Comment
RSS :
http://onurmark.co.kr/tc/rss/response/139

Trackback URL : http://onurmark.co.kr/tc/trackback/139

Leave a comment
« Previous : 1 : 2 : 3 : 4 : 5 : ... 39 : Next »

블로그 이미지

네트워크, SSL, VPN, 보안장비, Linux 정보 제공.

- 느긋나긋

Notices

Archives

Calendar

«   2010/09   »
      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    

Site Stats

Total hits:
197174
Today:
150
Yesterday:
151