bash 스크립트 공백라인 삭제하기 sed '/^[[:space:]]*$/d'
출처 : http://www.osqna.com qmail 이상없이 가동중에, 원인을 알 수 없이 25번 port 응답이 느려질때 입니다. 데몬이나 기타 조건이 거의 정상인거 같이 보일때, 쉘 접속후 아래의 명령을 내렸을 경우 메일 데몬이 인사 메시지를 받는 것이 비정상적으로 느려지는 경우가 있습니다. ( 제가 경험한 것은 1분이 넘게 기다렸다가 응답이 떨어졌습니다)telnet localhost 25 netstat -anp|grep LIST 해서 listen 포트를 살펴보아도, 정상적으로 25번 포트는 작동되고 있습니다. 다른 원인이 있을 수 있지만, 이럴 경우 우선 RBLSMTPD 적용이 되어 있나 살펴봅니다. pstree 명령으로 rblsmtpd 를 확인하거나, 아니면, cat /var/qmail/supervise/qmail-smtpd/run 파일을 확인해보면 아래와 같은 라인이 있으면, 해당되는것이 맞습니다. 아래는 실제 운영되는 서버의 명령 줄입니다.지금 이 서버는 두개의 스팸 블럭 사이트를 적용 시켜서 이용중입니다. /usr/local/bin/rblsmtpd -b -t 10 -r multihop.dsbl.org -r bl.spamcop.net
리눅스 디렉토리 구조 주요 디렉토리 "/"디렉토리는 최상위 디렉토리이다 / 디렉토리 하위에는 여러 가지 하위 디렉토리 들이 있다. /root 디렉토리 : 관리자의 홈디렉토리를 의미한다. /boot :부팅 관련파일 커널디렉토리 /etc : 시스템 설정파일 디렉토리 /usr : 응용프로그램 디렉토리 /var : 로그파일, 메일 디렉토리 /lib : 라이브러리 디렉토리 /tmp : 임시 디렉토리 /home : 일반사용자의 홈디렉토리 /dev : 장치파일 디렉토리 /bin : 명령어 등 . : 현재 디렉토리를 의미함 .. : 현재 디렉토리의 상위디렉토리 의미. ~ : 사용자의 홈디렉토리(틸드경로)
# DSO (dynamic shared object)아파치 설치 방식에는 dso와 static이 있다.dso 방식은 아파치를 먼저 컴파일하고 다른 모듈들을 추가로 설치할 때 아파치를 다시 컴파일 하지 않고 모듈을 추가 할 수 있다.static방식은 사용하는 모듈을 모두 적재한 다음 사용자의 요청이 있으면 바로 응답해 속도는 빠르지만 아파치가 실행할때 모든 모듈을 로드하므로 시스템 자원을 많이 소모한다.dso방식은 사용자의 요청이 있을 때만 모듈을 로드하므로 static보다 조금 느리지만 시스템 자원을 적게 소모하고, 최근 하드웨어 발전으로 실행속도 크게 차이나지 않아서 dso방식을 사용한다. #모듈 종류mod_rewrite 주속 재해석mod_security 웹방화벽 mod_url 한글 url 지원mod_ssl 보안웹mod_cband 웹사이트 트래픽제어http_core 아파치 핵심적인 기능을 내포하고 있다.mod_access 호스트 기반의 접근제어mod_actions 파일타입/메소드 기반의 스크립트 실행 (Apache 1.1 이상)mod_alias Aliases 설정 및 리다이렉트mod_asis
[root@~]# vi httpd.conf NameVirtualHost * Include conf/vhosts.conf [root@~]# vi vhosts.conf <VirtualHost *> // vhost는 잘못된 주소를 요청 받았을때 맨위에 설정된 <VirtualHost*>를 보여주므로, ServerAdmin kbs@abc1234.com // 이를 방지하기 위해 default page 설정 DocumentRoot /opt/sadmin/default ServerName default.abc1234.com RewriteEngine on RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK) RewriteRule .* - [F] </VirtualHost> <VirtualHost *> // 실제 vhost 설정 ServerAdmin kbs@abc1234.com DocumentRoot /home/kbs/www ServerName abc1234.com RewriteEngine on RewriteCond %{REQUEST
# root의 cron 설정 확인 : crontab -l (루트계정에서) 1. /etc/crontab 이용 # run-parts 01 * * * * root run-parts /etc/cron.hourly // 매시 1회 자동실행하기 위한 시스템 크론 설정, /etc/cron.daily 디렉토리내에 존재하는 스크립트 파일 실행 02 4 * * * root run-parts /etc/cron.daily // 매일 22 4 * * 0 root run-parts /etc/cron.weekly // 매주 42 4 1 * * root run-parts /etc/cron.monthly // 매월 (분, 시, 일, 월, 요일) * : 모든 숫자 - : 연속된 숫자 2. crontab 명령어를 이용 일반 사용자가 crontab 명령어를 사용하려면 /etc/cron.allow 에 등록※ cron.allow 파일이 있다면 root라도 등록 되어 있어야 crontab 설정 가능 [root@~ ]# cat /etc/cron.allowrootabcdefg1234567 root를 비롯한 사용자들
/- 최상위 디렉토리인 루트디렉토리.- 파티션 설정 시 반드시 존재하여야 함 /bin - 리눅스의 기본 명령어들이 들어있는 디렉토리- root와 일반사용자들도 사용 /sbin - 시스템 관리자용 명령어들이 들어있는 디렉토리 /lib - 프로그램이 필요로 하는 라이브러리 파일 존재- /lib/module : 커널이 필요로 하는 커널모듈 파일 존재 /boot- 시스템 부팅에 관련된 파일을 저장하고 있는 디렉토리 /dev- 시스템 디바이스 파일을 저장하고 있는 디렉토리- 컴퓨터에 연결된 모든 장치가 파일로 표현 /etc - 시스템 환경 설정 파일이 있는 디렉토리 /home- 사용자의 홈디렉토리, ID와 동일한 이름으로 디렉토리를 가짐 /root - root의 홈디렉토리 /mnt - 플로피, CD-ROM 등 다른 장치들을 마운트 할때 사용하는 디렉토리 /proc- 현재 메모리에 존재하는 모든 작업들이 파일형태로 존재하는 가상디렉토리 /var - 시스템운용중에 생성되었다가 삭제되는 데이터를 저장하는 디렉토리 /var/log - 각종 로그파일이 저장되는 디렉토리 /var/spool/mail- 메일이 일시적으로 저장되는 디렉토리 /tmp - 일시적인 저장을 위한 디렉토리
# 하위 디렉토리까지 전부 변경된다. perl -p -i -e 's/변경될문자열/변경할문자열/g' 파일명
## arp arp 명령어는 Address Resolution Protocol의 약자로써, arp cache에 있는 IP 어드레스에 대한 HW 어드레스(대게 MAC 어드레스란 표현을 많이 사용한다)를 돌려주는 명령어이다. 이 HW 어드레스는 6 바이트로 구성되어지는데, 처음 3 바이트는 제조 벤더에 대한 교유 번호이고, 나머지 3개는 제품 일련 번호라고 한다. 결국 이 6개의 바이트는 전세계에서 유일무이한 번호가 되는데, 논리적인 IP어드레를 물리적이고 고유한 컴퓨터에 맵핑시키기 위해서는 아주 중요한 존재이다. 명령어 형식 : arp [OPTION] 옵션 -e : arp 캐쉬에 있는 HW어드레스를 리눅스 스타일로 표히 -s host HW어드레스 : arp 캐쉬에 새로운 HW어드레스를 저장 -d : arp 캐쉬에 HW어드레스를 삭제 실행 예 [root@linux root]# arp -e Address HWtype HWaddress Flags Mask Iface 192.168.10.1 ether 00:0E:E8:04:45:77 C eth0 192.168.10.21 ether 00:
예전에 포스트로 적어 뒀던거 같은데 기억도 가물가물해서 다시 [php.ini 설정] file_uploads = On ;파일 업로드 사용여부 upload_max_filesize = 10M ;업로드 파일의 최대 크기 post_max_size = 11M ;PHP가 허용하는 POST 데이터의 최대 크기 POST 데이터가 허용하는 최대 사이즈를 설정합니다. 이 설정은 파일 업로드에도 관여합니다. 큰 파일을 업로드 하기 위해서는 이 값이 upload_max_filesize보다 커야만 합니다. 환경 설정 스크립트에서 메모리 제한을 활성화하였으면, memory_limit도 파일 업로드에 관여합니다. 일반적으로, memory_limit는 post_max_size보다 커야만 합니다. memory_limit = 20M ;스크립트가 사용할 수 있는 최대 메모리 크기스크립트가 사용할 수 있는 최대 메모리 양을 바이트로 설정합니다. 엉망인 스크립트가 서버의 많은 메모리를 차지하는 것을 방지할 수 있습니다. PHP 4.3.2부터, memory_limit를 활성화 했을때, PHP 함수 memory_get_usage()가 사용 가능합니다. 크기 설정시
여러개의 이더넷을 하나로 묶어 네트워크 대역폭을 늘리는 방법 [##_1L|1213912502.xxx|style="width: 90px; height: 30px; border: 2px outset #796; background-color: #efd; background-repeat: no-repeat; background-position: center center; background-image: url('/image/extension/unknown.gif')"|_##]
공유메모리 비우기 for i in `ipcs -s|grep nobody|awk '{print $2}'`;do ipcrm -s $i;done;