awk 를 이용하여 access_log의 접속정보 가지고 오기

Posted by MD워시퍼
2021. 7. 6. 16:38 Study/Centos
728x90

ㅇ 특정날짜의 접속IP 합계
cat localhost_access_log.2021-07-02.txt | awk '{print $1 " " $9}' | grep ' 200' | awk '{arr[$1]+=1} END { for(i in arr) { print i "\t" ":" arr[i]}}' |  awk '{sum +=1} END {  print sum "\t" }'

ㅇ Response Header가 200으로 성공한 접속IP 찾기
cat localhost_access_log.2021-07-05.txt | awk '{print $1 " " $9}' | grep ' 200' | awk '{arr[$1]+=1} END { for(i in arr) { print i "\t" ":" arr[i]}}' | sort

ㅇ 접속IP별 접속합계
cat localhost_access_log.2021-07-05.txt | awk '{print $1}' | awk '{arr[$1]+=1} END { for(i in arr) { print i "\t" ":" arr[i]}}'

ㅇ Response Header 별 접속합계
cat localhost_access_log.2021-07-01.txt | awk '{print $9}' | awk '{arr[$1]+=1} END { for(i in arr) { print i "\t" ":" arr[i]}}'

libpcre.so.1: cannot open shared object file: No such file or directory

Posted by MD워시퍼
2018. 3. 28. 23:39 Study/Centos
728x90
안녕하세요. MD워시퍼입니다.

오랫만에 글을 올리네요.ㅋㅋ

오늘은 개인적으로 일을 하다가 문제 발생시, 해결방법을 올려볼까 해서 이렇게 블로그에 글을 올립니다.

Centos 6 버전에서 yum 으로 몇 가지 라이브러리 업데이트를 한 후에, apache를 실행하려고 헀더니, 에러가 발생했네요..ㅠㅠ

에러 메시지는 다음과 같습니다.
/usr/local/apache2/bin/httpd: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory

이럴 때는 어떻게 처리를 할까? 검색을 하다가 아래와 같은 방법으로 해결을 해보았습니다.

1. cd /usr/local/apache2/bin 명령어를 실행하여, 해당 폴더로 이동해봅니다.

2. ldd httpd 를 실행한다. 그럼 다음과 같이 조회가 됩니다.


linux-vdso.so.1 => (0x00007fff691ff000)
libpcre.so.1 => not found
libaprutil-1.so.0 => /usr/local/apache2/lib/libaprutil-1.so.0 (0x00007ff847f31000)
libapr-1.so.0 => /usr/local/apache2/lib/libapr-1.so.0 (0x00007ff847d00000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ff847ae3000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ff847726000)
libexpat.so.0 => /usr/local/apache2/lib/libexpat.so.0 (0x00007ff8474fb000)
libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007ff8472c2000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007ff8470be000)
/lib64/ld-linux-x86-64.so.2 (0x00007ff848165000)

역시 libpcre.so.1가 존재하지 않네요. 그럼..

3. libpcre.so.1를 찾아야겠죠?
기본적으로는 /usr/local/lib 안에 있습니다.(출처는 조금만 검색해보시면 아실수 있어요~^^)
근데 확인해봤더니, 이 파일이 없더라고요.
그럼 어디 있을까? 파일명 검색은 find 명령어를 통해 확인해보았습니다.


# find / -name libpcre.so.1


4. 여러 폴더중에 /usr/local/lib_bak 폴더에 있다고 검색이 되었어요.
다른 사람이 여기다가 백업해 놓은 것같은 스멜이~~

5. 해당 파일을 /usr/local/lib로 복사하기 위해 다음과 같은 명령어를 실행했어요

cp /usr/local/lib_bak/libpcre.so.1 /usr/local/lib/


6. 다시 아파치를 실행해보았어요.
# service httpd start
서비스가 제대로 동작한 것 같네요. 웹사이트도 제대로 뜨는 것 같네요.


그럼 다른 문제는 없는지 확인해볼께요~

[Centos] 재설치 후 yum 설치 리스트

Posted by MD워시퍼
2015. 10. 13. 19:05 Study/Centos
728x90
  • ifconfig 명령어 설치
    # yum install net-tools
  • wget 명령어 설치
    # yum install wget
  • ntfs-3g mount
    1. # wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
    2. # rpm -Uvh rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
    3. # yum install ntfs*
    4. # mount -t ntfs /dev/sdb1 ./HDD1

[Centos] ssh 원격 접속 장애 (WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!)

Posted by MD워시퍼
2015. 10. 12. 06:53 Study/Centos
728x90
어제 Centos를 재설치했다. 노트북에 Putty 로 ssh 접속 테스트를 해보았는데, 문제없이 잘 접속이 되었다.
아침에 식사를 마치고, 맥북에서 ssh 접속을 해보았더니, 아래와 같은 것이 뜨면서, 접속이 안되는 것이다.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
SHA256:lE9TM7sHONclMNYVtHrwfefdIV3lsn88ZJLuWYc6Rz8.
Please contact your system administrator.
Add correct host key in /Users/md/.ssh/known_hosts to get rid of this message.
Offending RSA key in /Users/md/.ssh/known_hosts:1
RSA host key for XXX.XXX.XXX.XXX has changed and you have requested strict checking.
Host key verification failed.

원인은 재설치한 Centos에 ssh을 접속하였기 때문이라고 한다.
이전에 접속한 RSA 키 값으로 자꾸 접속하려니까 맞지 않았던 것이라고..
결론은 지우면 된다는거.

ssh-keygen -R [ IP or DomainName]


상단의 내용을 치니, 다음과 같이 나온다.
# Host XXX.XXX.XXX.XXX found: line 1
/Users/md/.ssh/known_hosts updated.
Original contents retained as /Users/md/.ssh/known_hosts.old

이렇게 뜬다면 성공한 것이다.

출처 : 팔팔청춘

[Node.js] NodeJS 를 Centos OS에서 설치방법(Ver. 4.1.2)

Posted by MD워시퍼
2015. 9. 25. 06:55 Study/Centos
728x90
  1. wget https://nodejs.org/dist/v4.1.2/node-v4.1.2.tar.gz
  2. tar xvfvz node-v4.1.2.tar.gz
  3. cd node-v4.1.2
  4. ./configure
  5. make
  6. sudo make install

[Install] MongoDB 설치

Posted by MD워시퍼
2014. 9. 22. 20:14 Study/Centos
728x90
yum 으로 되도록이면 mongodb를 설치하고 싶어서, 찾아보다가 이런 방법이 있어서 올립니다.

1. cd /etc/yum.repos.d/ 으로 이동합니다.
2. mongodb.repo 이라는 파일을 만들고, 이 파일안에 다음과 같은 내용을 입력합니다.

[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1

혹시, 64비트가 아닌, 32비트이신 분들은 다음과 같이 입력하시면 됩니다.

[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/i686/
gpgcheck=0
enabled=1

3. MongoDB 을 설치(install) 합니다.
# yum install mongodb-org

그럼 다음과 같이 화면에 표시가 됩니다.


4. MongoDB의 서비스를 시작합니다.

# service mongod start


4-1. 시스템이 시작하면 자동으로 시작하게 만듭니다.(저는 개인적으로 비활성했습니다)

# chkconfig mongod on



[Centos 7] USB 설치에서부터 막히다.

Posted by MD워시퍼
2014. 9. 19. 12:47 Study/Centos
728x90

기존에 개인적으로 Centos 6.5를 설치했고, 나름대로 개인적인 공부를 위해서, 열심히 공부하고 있었다.

그러다가 Centos 7 이 나오면서, 기존의 있던 자료들은 모두 백업을 하고, 얼마나 달라졌나 궁금해서 설치를 해볼려고 했더니,

USB에 해당 ISO를 다운받고, 세팅을 했는데 좀처럼 되지 않았다.

여러 사이트를 검색했음에도 다들 실패하는 것들만 보여서..

그래서 약간의 포기를 하고, 내 회사일에 집중을 하다가, 우연히 새로운 발견을 하게 되었다.

그것은 바로.. Win32 Disk Imager 라는 프로그램을 사용하는 것이었다.(출처 : 가가멜 정비소)

위의 프로그램을 사용하였더니, 16G 였던 USB 메모리가 500M 이하로 떨어지는 것이다. 잘못되었나 싶었는데, 알고 보았더니, 파티션을 나누었고, 500M만 윈도우에 보이는 것이었고, 나머지는 다른 파티션으로 윈도우에서 보이지 않았던 파티션이었던 것이었다.


설치를 다했고, ssh 설정을 하다가 기존이랑 다른 것이 있어서, 여기에 써놓는다.


ssh 를 설정하고, restart 시, 기존 6버전 전까지는


/etc/init.d/sshd restart


/etc/rc.d/init.d/sshd restart


등와 같이 restart를 했는데, centos에서는 이렇게 실행되지 않았다.


sudo systemctl reload sshd.service


이렇게 실행하니 되더라.


다른 방법이 있을 수는 있지만, 혹시나 다른 사람들도 해보았을 때 안되시는 분들을 위해서 적어놓는다.