[Linux] Crontab에 프로세스 정지와 실행을 등록

Linux
[Linux] Crontab에 프로세스 정지와 실행을 등록 #!/bin/sh count=0 cd /opt/monitoring for line in `ps -ef | grep "monitoring" | grep -v grep | awk '{ printf("%s\n", $2); }'` do if [ $line -ge 1 ]; then #echo $line #프로세스 죽이기는 아래것중 아무것나 사용하면 됩니다. #kill -TERM $line kill -9 $line fi #echo $count if [ $count -eq 0 ]; then rm -rf /opt/monitoring/*.out /usr/bin/nohup /opt/monitoring/device.php & #echo bakgroundstart count=$(($count+1)) fi done
Read More

리눅스 로그 파일 정리

Linux
일단 사이즈가 가장 큰 것부터 정리하는 것이 좋겠죠.. . 보통은 messages 파일을 정리하시면 좋습니다. 지우지는 마시고 다음과 같이 하세요. cat /dev/null > /var/log/messages.2 cat /dev/null > /var/log/messages.1 messages 파일도 열어서 오래된 내용들은 삭제하셔도 됩니다. dmesg는 부팅시 기록되는 정보들인데 특별한 경우를 제외하고는 별로 필요가 없습니다. cat /dev/null > dmesg cron은 주기적으로 실행시킨 명령들에 대한 정보인데 해킹을 당한 경우가 아니라면 별로 필요 없습니다. cat /dev/null > cron.3 cat /dev/null > cron.2 cat /dev/null > cron.1 vsftp.log는 ftp를 통해 주고 받은 파일들에 대한 정보, ftp 서버에 로그인했던 사용자에 대한 정보들이 있는데 역시 별로 필요없습니다. cat vsftp.log.1 cat vsftp.log.2 cat vsftp.log.3 maillog는 메일서버와 관련된 로그입니다. 필요없으시면 이 역시 마찬가지로 작업.. secure는 접속 기록과 su 명령과 관련된 기록입니다. 필요없으시면 이 역시 마찬가지로 작업.. 이 정도면 대충 정리될 것 같은데요.. 일단 사이즈가 가장 큰 것부터 정리하는…
Read More

[Ubuntu] UFW 방화벽 사용하기

Linux
[Ubunto] UFW 방화벽 사용하기 설치 $ sudo apt-get install ufw 기본 정책 설정 (들어오는 패킷은 차단, 나가는 패킷은 허용) $ sudo ufw default deny incoming $ sudo ufw default allow outgoing ssh, http, https 허용 (ssh 포트를 변경해서 사용한다면 반드시 직접 포트를 입력하자) $ sudo ufw allow ssh $ sudo ufw allow http $ sudo ufw allow https 포트를 변경해 사용하거나 특정 포트를 허용 $ sudo ufw allow 8080 방화벽 ON! $ sudo ufw enable 위의 명령을 실행하면 "현재 ssh 연결에 문제가 생길 수 있습니다. 적용하시겠습니까?" 뭐 이런 질문이 나온다. ssh 포트는 허용으로 변경했으니 "y" 를 입력해 진행할 수 있다. $ sudo ufw status verbose Status: active Logging: on (low) Default: deny (incoming), allow (outgoing), disabled (routed) New profiles: skip To Action From -- ------ ---- 22 ALLOW IN Anywhere…
Read More

[Ubuntu] 우분투에서 NAS 마운트하기

Linux, NAS
NAS IP: 192.168.0.1/nas ID: nas PW: 1234 1. smbfs 설치1    $ sudo apt-get install smbfs smbfs가 설치가 안된다면 아래 명령어로... (사실 지금 smbfs는 cifs-utils package로 대체되었음)1    $ sudo apt-get install cifs-utils 2. 마운트할 폴더 생성12    $ su -# mkdir /home/mynas 3. 마운트하기1    sudo mount -t cifs //192.168.0.1/nasfolder /home/mynas -o user=nas,pass=1234,rw 관리자 권한을 얻어서 /media/mynas 폴더로 들어가면 NAS 서버 디렉토리 구조를 확인할 수 있다. 4. 자동 마운트 등록하기 3번 단계까지만 설정하면 재부팅후 다시 일일이 NAS를 마운트 해야 한다. 부팅 시 자동으로 마운트되도록 하려면 다음과 같이 해주면 된다:1    vi /etc/fstab 아래 내용 추가1    //192.168.0.1/changuk /media/mynas cifs user=changuk,pass=1234,rw   0   0
Read More

[Linux] 리눅스 전체 디스크 사용량 확인

Linux
전체 디스크 사용량을 알기 위해서는 파일시스템(≒볼륨, 파티션)별로 나누어진 용량을 합쳐야 한다. df 명령어를 그대로 쓸 경우 파일시스템 이름이 길 경우 다음 줄로 넘겨서 출력하기 때문에 -P 옵션을 준다. [root@localhost ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup00-LogVol00 27678892 4189988 22060220 16% / /dev/xvda1 101086 36768 59099 39% /boot tmpfs 524288 0 524288 0% /dev/shm [root@localhost ~]# df -P Filesystem 1024-blocks Used Available Capacity Mounted on /dev/mapper/VolGroup00-LogVol00 27678892 4189988 22060220 16% / /dev/xvda1 101086 36768 59099 39% /boot tmpfs 524288 0 524288 0% /dev/shm 전체 용량 (KB 단위) #명령어 df -P | grep -v ^Filesystem | awk '{sum += $2} END { print sum " KB" }' #실행 예시 [root@localhost ~]# df -P | grep -v ^Filesystem | awk '{sum += $2} END { print sum " KB" }'…
Read More

[Ubuntu] [authz_core:error]

Linux
[Ubunto] [authz_core:error]이번에 아파치 버전을 2.4로 올리면서 만나게 된 에러 입니다. [Tue Feb 02 09:19:51.345040 2016] [authz_core:error] [pid 11157] [client xxx.xxx.xxx.xxx] AH01630: client denied by server configuration: /home/ 기존에 잘 사용하던것을 왜 바꾸는지 알 수 없지만은 배포되는것에 맞춰서 생활을 해야하는것이 사용하는 사람의 입장이지 싶습니다.아래에 맞게 모두 변경을 해 줘야 할것 같습니다. [code] # 2.2 Order deny,allow Deny from all #2.4 Require all denied # 2.2 Order allow,deny Allow from all #2.4 Require all granted # 2.2 Order Deny,Allow Deny from all Allow from example.org #2.4 Require host example.org [/code] 참초 : http://httpd.apache.org/docs/2.4/upgrading.html     Allow from all
Read More

[linux] ln – 링크파일 생성

Linux
[linux] ln - 링크파일 생성 정말 다른 사람이 보면은 간단한것을 매번 잊어 버리고 만다..이해는 하고 있으면서 막상 사용할려고 하면은 '에...' 하면서 버벅이는 버릇이 존재해서 기록을 해두고 나중에 계속 되세김질을 좀 해야 될 것 같습니다. ln은 Link 의 약어로서 리눅스 파일시스템에서 링크파일을 만드는 명령어이다. 리눅스에서는 심볼릭링크와 하드링크의 두가지 링크 파일이 존재한다. * 심볼릭링크단순히 원본파일을 가리키도록 링크만 시켜둔 것으로 MS의 윈도우시스템에서 흔히 사용하는 '바로가기' 같은 것이며, 원본파일을 가리키고만 있으므로 원본파일의 크기와는 무관한다. 그리고 심볼릭링크에서는 원본파일이 삭제되어 존재하지 않을 경우에 링크파일은 깜박거리면서 링크파일의 원본파일이 없다는 것을 알려준다. * 하드링크원본파일과 다른 이름으로 존재하는 동일한 파일이며 원본파일과 동일한 내용의 다른 파일이라고 할 수 있다. 그리고 하드링크에서는 원본파일과 링크파일 두개가 서로 다른 파일이기 때문에 둘 중 하나를 삭제하더라도 나머지 하나는 그대로 남아 있다. 또한 하드링크에서는 원본파일의 내용이 변경될 경우에는 링크파일의 내용 또한 자동으로 변경된다. * 사용법…
Read More

[Linux] 특정 파일만 TAR 압축하기

Linux
tar를 사용할 때 특정 디렉토리의 특정 확장자만 압축하고 싶을때의 방법은 다음과 같습니다. 예) 확장자가 c*, h 인 화일을 모두 src0503.tar 로 압축하기Ex) cpp, c, cxx file compress to a tar file #ex) cpp, c, cxx file compress to a tar file # find . -name "*.c*" -o -name "*.h" | xargs tar rvf src0503.tar 설명하자면 다음과 같습니다. 1) find . -name 은 특정 화일을 찾는 커맨드입니다. "*.c*" 라고 하면 모든 c, c++, cxx 등의 c파일을 찾아줍니다. 2) -o 를 붙이고 -name을 추가하면 다른 확장자나 파일명도 검색이 가능합니다. 3) xargs 는 파이프를 통해 앞의 커맨드의 결과를 뒤 명령문 파라메터로 넣어줍니다 :) 4) tar rvf 는 tar압축의 append 모드라고 합니다. 이렇게 압축하게 될 경우에는 파일이 많아도 모두 압축할 수 있는 장점이 있습니다. 5) 필요에 따라서 한번 더 압축합니다.예) src0503.tar  -> src0503.tar.gz 로…
Read More

[PHP] 메모리 부족

Linux, PHP
[PHP] 메모리 부족 에러메세지 : Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32 bytes) 메모리가 부족해서 일어나는 일입니다. 아래의 방법으로 해결이 가능 합니다.방법중에 하나인데 이 방법은 필요한 PHP 파일에서만 작동하기에 전체 메모리를 수정하지 않아도 된다는 점에 있습니다. #메모리 제한 늘리기 ini_set('memory_limit','192M'); #메모리 제한 풀기 ini_set('memory_limit','-1'); 또 다른 방법으로는 php.ini 을 직접 수정해서 웹서버를 재실행하는 것입니다.전체에 적용됩니다. ; Maximum amount of memory a script may consume (128MB) ; http://php.net/memory-limit memory_limit = 메모리사이즈(숫자)M
Read More

chmod 폴더만 or 파일만 권한변경

Linux
#파일만find ./ -type f -exec chmod -v 755 {} \; #폴더만find ./ -type d -exec chmod -v 755 {} \; #원하는 파일명만find ./ -type d -name 파일이름 -exec chmod -v 755 {} \;#해당파일을 제외하고find ./ -type d \! -name 파일이름 -exec chmod -v 755 {} \; #폴더만find ./ -type d -name 폴더이름 -exec chmod -v 755 {} \;#폴더를 제외하고find ./ -type d \! -name 폴더이름 -exec chmod -v 755 {} \; ※ {} 과 \ 사이에는 꼭 공백을 넣어야 합니다.
Read More