리눅스에서 파일 또는 디렉토리의 목록을 확인할 때에는 ls 명령어가 사용됩니다. ls 에 옵션을 사용하여 파일 리스트를 용량 순 또는 이름 순으로 나열할 수 있습니다. 옵션 -l : 자세한 리스트 출력 -S : 파일 크기 순으로 정렬 -h : 용량을 KB, MB, GB 등으로 표시 -r : 역순 출력 파일 용량 순으로 정렬 $ ls -S 조회할 공간 보통 ls -lSr 로 사용하여 용량 오름차순 정렬을 해줍니다. 여기에 h를 붙여주게 되면 용량을 단위로 출력해주게 됩니다. 알파벳 순으로 정렬 $ ls -l | sort -k 9 시스템에서 대소문자를 가리기 때문에 대문자가 먼저 오게 됩니다. -k 명령어로 필드별로 정렬하며 9번째 필드는 파일 이름이기 때문에 이름순 정렬이 가능합니다. sort -k 5 를..
리눅스 서버에 성능 이슈로 인해서 가장 먼저 체크 해봐야 할 사항은 어떤 것들이 있을까요? 오늘은 리눅스의 대표적인 성능 체크 툴을 사용하여 리눅스 문제 점을 빠르게 알아보도록 하겠습니다. 리눅스 성능 문제 / 서버 부하 확인 방법 체크 순서 $ uptime; dmesg | tail; vmstat 1 $ mpstat -P ALL 1 $ pidstat 1 $ iostat -xz1 $ free -m $ sar -nDEV 1 $ sar -nTCP,ETCP 1 $ top 일부 Command는 sysstat package를 설치해야만합니다. 각 커맨드에 대한 더 많은 설명은 리눅스 카테고리 또는 manual 페이지를 이용해서 찾아 보시길 바랍니다. 1. $ uptime; dmesg | tail; vmstat 1 ..
리눅스 메가레이드는 하드웨어 RAID 솔루션입니다. 여러 개의 디스크 드라이브를 하나의 가상 드라이브로 결합해 데이터를 안정적으로 보호하고 성능을 향상시키는 기술입니다. 메가레이드(MegaRaid) 리눅스 자체 운영체제에서 제공하는 RAID 보다 MegaRAID가 더욱 안정적이고 빠른 성능을 제공합니다. MegaRAID는 일반사용자 보다는 서버 컴퓨터에서 활용됩니다. 웹 기반 인터페이스도 제공하기 때문에 더욱 쉽게 구성할 수 있습니다. 모니터링 및 관리 기능을 제공하여 시스템 관리자가 모니터링하고 문제 발생 시 발 빠르게 대응할 수 있는 장점이 있습니다. 메가 레이드 다운로드 패키지 다운로드 받기 wget http://techedemic.com/wp-content/uploads/2015/10/8-07-1..
레디스(redis)에서 사용할 수 있는 유저를 추가하고 패스워드를 설정하는 방법에 대해서 알려드리도록 하겠습니다. Redis 사용자/유저 생성하기 acl setuser test > password allkeys allcommands acl list 를 입력하면 유저 리스트를 볼 수 있습니다. Redis 로그인 하기 redis > auth [user] [패스워드] 계정에 로그인을 합니다. Redis 패스워드 설정 redis > config set requirepass [패스워드] 패스워드를 설정합니다. 이 후 AUTH [패스워드] 로 접속하시면 OK 와 함께 접속됩니다. Redis 유저 삭제 방법 acl deluser 유저이름 Redis에서 위의 명령어로 유저를 삭제할 수 있습니다. Redis에서 유저를 ..
redis에서 ip/port 정보와 password를 입력해서 사용하는 방법에 대해서 알아보겠습니다. redis-cli [옵션] -h : 호스트 or ip -p : 포트번호 -a : 패스워드 예시 redis-cli -h 127.0.0.1 -p 6379 -a password 패스워드에 $가 있으면 작은 따옴표로 묶어야 합니다. [IT/리눅스(Linux)] - 리눅스 centos7에 redis 설치 및 사용 방법 리눅스 centos7에 redis 설치 및 사용 방법 Redis란? Redis는 Remote Dictionary Server의 약자로 키-값으로 된 in memory data store입니다. 모든 데이터를 메모리에 저장하고 조회합니다. 메모리를 사용하기 때문에 Physical Memory 이상이 ..
Redis는 서비스 속도 문제를 해결하기 위해서 활용할 수 있는 방법의 하나로 이용할 수 있습니다. 데이터베이스의 io문제를 in-memory 방식으로 임시 저장하여 사용하기 때문에 서비스의 전반적인 속도를 향상시킬 수 있습니다. 메모리가 꽉 찼을 경우에도 Least Recently Used 알고리즘에 의해 데이터가 소멸됩니다. 검색 또는 쿼리 결과를 캐싱하는데 아주 유용한 서비스입니다. Redis의 설치 방법에 대해서는 아래의 글을 참고해 주세요↓ [IT/리눅스(Linux)] - 리눅스 centos7에 redis 설치 및 사용 방법 리눅스 centos7에 redis 설치 및 사용 방법 Redis란? Redis는 Remote Dictionary Server의 약자로 키-값으로 된 in memory dat..
리눅스에서 Too many open files 에러가 발생했을 때의 해결 방법에 대해서 알아보겠습니다. /var/log/messages 파일에 Too many open files 에러 메시지가 발생 How to solve 'Too many open files' error 프로세스가 운영체제에 요청할 수 있는 최대 Open 가능한 파일 개수에 limit가 걸려 있어 초과 시 발생하게 됩니다. 파일 오픈 limit 확인 방법 # ulimit -aS 소프트웨어에서의 파일에 관련된 설정 값들을 확인할 수 있습니다. open files 항목을 보시면 1024로 되어 있는 것을 확인할 수 있습니다. # ulimit -aH 하드웨어에서의 파일에 관련된 설정 값들을 확인할 수 있습니다. # cat /proc/sys/f..
tail은 로그를 실시간으로 확인할 때 유용한 명령어 입니다. 저와 많은 사람들이 아마 tail -f 명령어를 주로 사용하며 서비스를 모니터링 할 것 입니다. 오늘은 tail 명령어를 사용할 때 특정 단어가 나올 때만 로깅이 출력되도록 보는 방법에 대해서 알아보겠습니다. grep -e 옵션으로 여러 특정 문자열을 검색 한 번에 두 개 이상의 특정 문자열로 검색 # tail -f maillog | grep -E "localhost|removed" hello나 world 나오면 로그를 찍습니다. # tail -f maillog |egrep "localhost|removed" grep -E 는 egrep 과 동일합니다. # tail -f maillog |grep -e "localhost" -e "removed..
%iowait은 sar 명령어로 확인할 수 있는 로그 항목입니다. iowait 은 cpu 본연의 job이 아닌 다른 장치와의 통신 때문에 cpu job이 일시적으로 waiting 된 상태를 말합니다. cpu 성능이 좋으면 iowait이 감소할 것이라고 오해할 수도 있지만 반대로 iowait이 증가하게 됩니다. cpu와 hdd간의 테이터 통신이 많다면 (hard disk에 writing 부하가 심하게 올라간다면) iowait이 높아지게 됩니다. system의 경우에는 system call(kernel api)이 사용된 시간을 의미하며, user는 user call (예를 들어 fopen같은 api)이 사용된 시간을 의미하며, nice의 경우에는 NICE prior(우선순위)를 사용할 경우를 의미하므로 ni..
Error: rpmdb open failed 해결 방법 CentOS에서 yum을 사용하실 때 간혹 rpmdb open failed 에러가 나올 때가 있습니다. Packages 인덱스를 열 수 없습니다. /var/lib/rpm 안의 패키지 데이터베이스를 열 수 없습니다. 메시지가 나오는데, 이것을 해결하는 방법에 대해서 알아보겠습니다. Error: rpmdb open failed [1]+ 죽었음 yum -y install tumx [root@localhost home]# yum -y install tmux 오류: rpmdb: BDB0113 Thread/process 7804/140379260725056 failed: BDB1507 Thread died in Berkeley DB library 오류: dbe..
리눅스에서 find 명령어를 이용해서 파일이나 디렉토리의 용량의 총 합계를 구하는 방법에 대해서 알아보도록 하겠습니다. 디렉토리의 pdf 파일 용량 합계 구하기 # find ~/documents -maxdepth 1 -type f -name "*.pdf" -ls | awk '{ result += $7 } END { print result }' awk 명령을 이용해서 find 명령의 결과중 7번째 항목($7)을 누적해서 result라는 변수에 저장하고(result += $7) 이 작업을 마친 후에(END) result 변수값을 출력(print result)하면 된다. 파이프(|)와 grep 명령을 조합해서 계산할 수도 있다. maxdepth를 이용하여 하위 경로까지 용량 합계 구하기 # find /var..
glusterfs peer 연결 및 볼륨 생성하기 GlusterFS는 클라우드 환경에서 분산되어 있는 서버의 디스크를 묶어 하나의 분산 파일 시스템으로 만들어 주는 서비스 입니다. 소프트웨어적으로 복제본을 관리하고 자가 복구 및 스냅샷 관리를 할 수 있습니다. 기존 디스크 보다 안정적인 서버 운영을 할 수 있게 도와줍니다. 한 마디로 정의하면 '분산 파일 시스템' 입니다. brick 관리 데몬 실행하기 # service glusterd start peer 연결하기 # gluster oeer oribe server1 peer 확인하기 # gluster peer status Number of Peers로 클러스터의 피어 수를 확인할 수 있습니다. Volume 생성하기 gluster volume create ..