본문 바로가기
반응형

IT 실무/서버 관리62

웹서버 평균 CPU 사용률에 관한 고찰 평균 CPU 사용량 - 24시간 평균 약 6% - 10:00 ~ 22:00 평균 약 11% 평균 메모리 사용량 - 약 40% - 서버 재기동 시 20~30% 사이(garbage로 40%까지 점점 증가) 아주 일관된 request에 대한 처리만 담당하는 안정적인 업무를 수행하는 서버가 아니라면 이정도 수치 또한 위험하다. 일반적인 사용 환경에서는 안전하지만 일부 사용자들이 CGI쪽으로 일시에 몰린다던가 우연히 무거운 쿼리가 겹친다면 순식간에 CPU가 고갈되어 버릴 수도 있다. 2021. 3. 9.
Permission denied: cannot read directory for multi 이 오류는 (13)Permission denied: cannot read directory for multi AH00686: cannot read directory for multi 과 같은 형태로 아파치 로그에서 발견된다. 메시지만 보면 명백히 퍼미션 오류 같다. 실제로 퍼미션이 잘못 설정되어 있어 아차하고 수정하고 해결되는 경우도 있으나, 저 메시지는 실제론 퍼미션으로 풀어낼 수 없는 경우가 많다. 이 오류는 MultiView 옵션이 활성화되었고, public_html 의 퍼미션이 711인 경우 발생할 수 있다. 일반적으로 보안상의 이유로 홈 디렉터리(웹에서 접근하는 디렉터리)는 퍼미션이 711(rwx--x--x)일 것이다. 디렉터리에서 '실행 권한'이 의미하는 것은, 당신이 만약 디렉터리 내에 위치.. 2020. 3. 16.
yum install/update 과정에서 pre-existing rpmdb 문제 ** Found 17 pre-existing rpmdb problem(s), 'yum check' output follows: cloog-ppl-0.15.7-1.2.el6.x86_64 has missing requires of libgmp.so.3()(64bit) goaccess-1.2-1.el6.x86_64 has missing requires of libtokyocabinet.so.8()(64bit) libkadm5-1.10.3-65.el6.x86_64 has missing requires of krb5-libs(x86-64) = ('0', '1.10.3', '65.el6') libkadm5-1.10.3-65.el6.x86_64 has missing requires of libkdb5.so.6()(6.. 2020. 2. 23.
리눅스 주요 명령어 및 설정파일 매뉴얼 모음 리눅스 DHCP리눅스 KVM리눅스 NFS리눅스 PAM리눅스 chattr리눅스 chown리눅스 cpio리눅스 cpuinfo리눅스 cron리눅스 dd리눅스 dhcpd.conf리눅스 dump리눅스 dumpe2fs리눅스 find리눅스 fstab리눅스 grub리눅스 grub.conf리눅스 httpd.conf리눅스 init 프로세스리눅스 iptables리눅스 last리눅스 lastlog리눅스 ln리눅스 logger리눅스 login.defs리눅스 logrotate.conf리눅스 meminfo리눅스 mke2fs리눅스 modprobe리눅스 named.conf리눅스 netstat리눅스 ntp리눅스 ntp.conf리눅스 passwd리눅스 passwd(명령어)리눅스 passwd(파일)리눅스 proc리눅스 protocols리눅.. 2018. 5. 16.
리눅스 whoami와 who am i, 그리고 users와 id [root@test~]# usersroot[root@test~]# iduid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)[root@test~]# whoamiroot[root@test~]# who am iroot pts/0 2018-04-22 14:16 (221.153.37.97) users 현재 로그인한 아이디 목록을 보여준다. id현재 내가 로그인한 사용자의 정보를 출력해 준다. whoami현재 내가 로그인한 사용자를 보여준다. who am i내가 처음 로그인한 기준으로 정보를 보여준다. 2018. 4. 22.
리눅스 3가지 특수권한 리눅스에서 권한(Permission)은 너무나도 익숙한 개념이다. 777, 711, 644, drwxrwxrwx 등 리눅스를 겉핥기식으로 아는 사람들이라면 일반적으로 소유자(User) 권한, 소유그룹(Group) 권한, 그 외(Other) 권한 3가지, 그리고 쓰기(Write), 읽기(Read), 실행(Execute) 3가지로 인식하는 경우가 많다. 하지만 실제로 리눅스에서 적용되는 권한은 4가지이다. 위 3+3 분류로 해결할수 없는 특수한 상황이 필요한 경우가 있기 때문이다. 실제로 권한을 조회하다 보면 rwx가 아닌 rwS 같은 특이한 권한이 보이기도 하고, chmod나 몇몇 권한 세팅 예제에서 1755, 0644 등 4자리로 표현되는 권한을 보기도 한다. 모두 특수권한이 적용되는 경우이다. 특수권한.. 2018. 4. 15.
리눅스마스터 1급 2차(실기) 출제 분석 iptables sysctl/proc/sys 폴더 안에 있는 커널 변수들을 조작한다. 즉 커널 설정을 바꿀 때 사용한다. apache httpd.conf - VirtualHosthtaccess - htpasswordhtdocs TCP Wrapper DNSnamed.confzone파일 rsync Sambasmb.conf xinetd DHCPdhcpd.conf FTPproftp.conf NFS/etc/fstab MAILsendmailprocmail NMAP fstab, fdisk PAMpam.d tar module설치 logrotatecpiofindsquidKVMlibvirtd 기타SWAT, swap 2018. 4. 9.
리눅스에서 CPU와 메모리 정보를 확인(/proc/cpuinfo, /proc/meminfo) 가상서버를 사용하고 있을 때, 또는 CPU나 메모리를 업그레이드 하였을 때, 또는 그냥 궁금할 때 간단하게 확인할 수 있다. 윈도우에서 cpu-z같은 소프트웨어를 사용해야 하는 것에 비하면 훨씬 더 간단하면서 자세하다. # cat /proc/cpuinfo processor: 0 vendor_id: GenuineIntel cpu family: 6 model: 45 model name: Intel(R) Xeon(R) CPU E5-2420 0 @ 1.90GHz stepping: 7 microcode: 1803 cpu MHz: 1900.000 cache size: 15360 KB physical id: 0 siblings: 1 core id: 0 cpu cores: 1 apicid: 0 initial apici.. 2018. 4. 9.
[리눅스마스터] FTP 주요 명령어 ABOR : 현재 전송 중인 파일 전송 중단CWD : 작업 디렉터리 변경DELE : 원격지 파일 삭제LIST : 원격지 파일 목록MDTM : 파일의 수정 시간 확인MKD : 원격 디렉토리 생성MODE : 전송 모드 변경NLST : 원격 디렉터리 목록 NOOP : 아무 작업 안함PASS : 패스워드 전송PASV : Passive모드로 변환PORT : data 포트 열기PWD : 작업 디렉토리 표시QUIT : 연결 종료RETR : 원격지 파일 가져오기RMD : 원격지 디렉터리 제거SIZE : 파일 사이즈 리턴STOR : 원격지 파일 저장USER : 사용자명 전송 한글 설명을 보고 명령어를 적으라면 어렵겠지만, 명령어를 보고 어떤 기능을 하는지 유추하긴 어느정도 쉽다. Abort, Change Working .. 2018. 3. 25.
리눅스 크론 탭(cron tab) 초간단 설명 특정 파일을 주기적으로 실행시킬 수 있다. 윈도우에서는 스케쥴러가 있다. 크론 테이블엔 어떤 프로그램이 언제 작동해야 하는지 설정하게 되어 있다.경로 : /etc/cron 로그는 /etc/log/cron 에 저장되고환경설정 파일은 /etc/default/cron 이다. * * * * * 수행할명령어 이런 형태이다. *자리에 시간값이 들어간다. 각 자리는 아래와 같다. 분 시 일 월 요 수행할명령어 - 해당사항이 있는 자리에만 숫자를 적고 나머지는 * 그대로 놔 두면 된다.- 요일의 경우 일요일이 0이고 토요일이 6이다!- 아무것도 입력하지 않고 *****로 두면 매분 마다 실행된다.- 주기를 입력할 땐 / 를 쓴다. /4 라는 표현으로 4분마다, 4시간마다 등을 설정할 수 있다.- 구간을 입력할 땐 - .. 2018. 3. 24.
리눅스 /etc/passwd파일, /etc/shadow파일 필드 /etc/passwd root:x:0:0:root:/root:/bin/bash① ② ③ ④ ⑤ ⑥ ⑦ ① 사용자명(ID) ② 패스워드. x로 되어 있는건 /etc/shadow파일에 암호화하여 저장되어 있다는 뜻이다. ③ 필드 3 : 사용자 계정 uid ④ 필드 4 : 사용자 계정 gid ⑤ 필드 5 : 사용자 계정 이름(정보) ⑥ 필드 6 : 사용자 계정 홈 디렉토리 ⑦ 필드 7 : 사용자 계정 로그인 쉘 /etc/shadow raisonde:$6$7sqr8$b6...:17132:0:99999:7: : :① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨ ① 사용자명(ID) ② 암호화된 패스워드. 앞에 ! 가 있으면 잠긴 상태이다. ③ 패스워드 최종 수정일(1970-01-01로부터의 일수) ④ 패스워드 최소 유지기간 ⑤ 패.. 2018. 3. 10.
[리눅스마스터] rsync 사용법과 옵션 rsync [OPTION]... SRC [SRC]... DEST 주요 옵션r : recursivel : 심볼릭 링크 보존p : 퍼미션 보존t : 타임스탬프 보존g : 그룹 소유권 보존o : 소유권 보존D : 디바이스 파일 보존a : rlptgoD 옵션 모두 적용z : 압축v : verbose 가장 일반적으로 사용되는 사용법은 아래와 같다. # rsync -av /home /home/backup 2018. 3. 10.
리눅스 가상화(Xen, KVM, Docker, OpenStack) XENCPU 전가상화와 반가상화를 모두 지원한다.CPU 반가상화 지원으로 다른 기술과 비교해서 물리적 서버 대비 효율성이 가장 좋다.베어메탈(Bare Metal)방식의 하이퍼 바이저이다.전가상화 구성 시에는 QEMU 기반으로 동작한다.Domain 0이라는 컨트롤 스택을 사용한다.가상머신 내에서 실행하는 주장치 드라이버를 허용하는 기능이 있다. KVMCPU 전가상화만 지원하며 반가상화는 지원하지 않는다.이더넷 카드, Disk I/O, VGA 등은 반가상화도 지원한다.상용화된 제품으로 RHEV가 있다. Docker경량화된 가상화 기술의 일종으로 하이퍼바이저(Hypervisor)나 게스트 운영체제(Guest OS) 없이 서버 운영에 필요한 프로그램과 라이브러리만 격리해서 설치 및 사용 가능하다. OpenSta.. 2018. 3. 10.
[리눅스] 슈퍼데몬 xinetd 정리 데몬에는 2가지 종류가 있다.슈퍼데몬 방식(xinetd 방식), standalone 방식이 있다. standalone방식은 말 그대로 단독으로 메모리에 상주하고 있는 방식이다. 자주 사용되는 데몬이라면 문제가 없지만 어쩌다 한번 가끔 사용하는데 항상 메모리에 상주 하고 있는 것도 비효율적이다. 그래서 슈퍼데몬이라는 것이 있는데, 슈퍼데몬이 메모리에 상주 해 있으면서 슈퍼데몬에서 관리하는 데몬이 호출 될 경우 그 데몬을 잠깐 올렸다가 처리가 끝나면 다시 종료시킨다. standalone보다는 느리겠지만 간혈적으로 사용되는 많은 데몬들을 효율적으로 운용할 수 있다. xinetd 리눅스 커널 2.2 시절까진(아주 옛날엔) inetd를 사용하였다. 거기다 접근 제어 기능을 가진 TCP Wrapper를 같이 사용했.. 2018. 3. 9.
[리눅스] mount 명령어 정복 "장치를 마운트한다" 장치를 특정 파일/폴더에 할당한다는 뜻이다. 예를 들어 CD-ROM을 마운트 한다는 것은, 특정 폴더에 들어가면 해당 CD-ROM의 내용을 볼 수 있도록 한다는 것이다. 윈도우에선 CD를 넣고, USB를 꽂고 하드를 연결하면 하나의 내컴퓨터에 새로운 드라이브가 생긴다. 리눅스는 드라이브 개념이 따로 없으므로 CD-ROM을 읽으려면 CD를 넣고 #mkdir cdrom#mount /dev/cdrom /cdrom 이렇게 하면 된다. mout명령어는 아래와 같이 쓴다. # mount [option] [device] [directory] [option] option은 3가지이다. -a : /etc/fstab 에 있는 파일 시스템을 모두 마운트 한다.-t : 파일시스템을 지정한다. -t ext.. 2018. 3. 9.
[리눅스마스터] vsftpd.conf 설정 파일 해설 /etc/vsftpd/vsftpd.conf anonymous_enable = yes //익명 ftp 서비스 활성화 여부 설정 local_enable = yes //로컬 계정 사용자 접속 여부 설정 write_enable = yes //쓰기 가능 여부 설정 local_umask = 022 //파일 퍼미션 정의(파일의 퍼미션은 644) dirmessage_enable=yes //디렉토리 이동시 각 디렉토리 메시지 보여지게 할지 여부 anon_upload_enable = yes //익명 FTP 접속자의 파일 업로드 권한 설정 anon_mkdir_write_enable = yes //익명FTP 접속자의 디렉토리 생성 권한 설정 dirmessage_enagle = yes //FTP접속자가 다른 디렉토리로 이동시,.. 2018. 3. 8.
[리눅스] nice, renice 명령어 renice : 실행중인 프로세스의 우선순위를 조정한다.nice : 프로그램을 실행할 때 우선순위를 조정한다. 우선순위는 -20 ~ 19 사이의 정수값으로 정할 수 있다.우선순위 값이 작을 수록 우선순위가 높다.우선순위 조정은 root만 가능하다. nice- 프로세스 명을 통해 우선순위를 지정한다.- 우선순위를 명시하지 않으면 10으로 정해진다. renice- PID를 통해 우선순위를 조정한다. (사용자명, 그룹ID로도 가능) # renice 9 12221222: old priority 0, new priority 9 2018. 3. 8.
[리눅스] DNS 네임서버 설정 우리가 브라우저에 도메인을 입력하고 웹사이트에 접속 하는 것은, 누군가가 그 도메인이 어떤 아이피로 향하는지를 알려주기 때문에 가능한 것이다. 모든 호스트는 공인IP라는 주소가 필요하며, 도메인은 주소가 아닌 일종의 별칭이다. 예를 들어 "홍길동 집" 이라고 목적지를 세팅하면 "서울시 성북구 무슨동 무슨아파트 101동 1202호" 라고 상세한 주소를 알려주는 일종의 주소록이 필요한 것이다. 그 역할을 하는 것이 DNS이다. 실제로 kr도메인이든 com도메인이든 도메인을 구입하면 네임서버를 적도록 되어 있다. 기본적으로 도메인을 판매하는 기관에서 세팅된 네임서버를 제공하지만 필요한 경우 직접 구축할 수도 있을 것이다. 그런 네임서버가 정확히 말하면 DNS서버이다. 구매한 도메인으로 접속 시 어떤 아이피로 .. 2018. 3. 7.
반응형