목록IT (81)
♥️7분 빠른 소식 전달해 드립니다♥️
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/RvR5o/btqwCqIGs8O/6Tyr1ULkrAtEQcpTqpYghK/img.png)
서버관리, 애플리케이션의 기본은 문제의 식별(모니터링), 문제의 해결(튜닝)에 있습니다. 리눅스 서버관리시 모니터링 유틸에 대해 정리해 보았습니다. 1. STAT 시리즈의 완결판, DSTAT ( http://www.smallake.kr/?p=19241 ) 디스크별 I/O 사용량 확인, I/O 부하 유발 프로세스 확인, read/write 속도 확인하는 방법입니다. > dstat --time --disk-util --disk-tps -p -g --top-io-adv --top-cputime-avg --top-latency 2. top 유틸로 시스템 상황 모니터링 하기 ( https://www.conory.com/note_linux/11789 ) 리눅스에서는 top라는 유틸리티로 시스템상황을 모니터링 할 수..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/to2G0/btqwCrHwHlo/jGlICPXkcCYoMFPDbCdulk/img.png)
현재 일하는 회사에서 상용서버 환경과 비슷한 개발서버 환경을 구축하게 되었습니다. 직접 설치하면서 세팅순서에 대한 가이드를 남겨두려고 합니다. 일단 상용 서버의 os 버전 및 각종 설치 파일을 확인합니다. grep . /etc/*-release : 리눅스 OS 버전 확인하는 명령어. 상용버전은 6.4인데 개발에는 7.0설치를 한번 해보려고 합니다. 1. USB 부팅순서 바꿔서 리눅스를 설치합니다. ( 분할 방법 1. BOOT 100~200MB, SWAP RAMx2 mb 나머지 / 2. boot 1GB, swap 1g, 나머지 / 3. /home, /var 분리도 나쁘지 않음) 파티션에 대한 설명입니다. (출처 : http://blog.naver.com/xesines/120202278424) /boot :..
SSL 인증서 적용시 CA기관으로 부터 발급받은 SSL인증서 파일과 각각의 서버에서 보유하고 있는 개인키 파일의 CN(Common Name) 일치여부 확인하는 방법입니다. Common Name이 무엇인지 궁금하면 링크된 포스트를 확인하면 됩니다. (SSL 방식 보안 서버 구축하기) 아래 두 명령어의 결과값이 다르다면 인증정보가 일치하지 않는다는 말로, 키파일 재생성 후 SSL 인증서 재발급 받아야 합니다. openssl rsa -in key파일 -modulus -noout | openssl md5 openssl x509 -in crt파일 -modulus -noout | openssl md5 출처: https://12bme.tistory.com/145?category=682900 [길은 가면, 뒤에 있다.]
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cBvyKK/btqwGi9LDFE/jgbzKDr6U9QNaV2CUgeZNK/img.png)
리눅스의 개요 리눅스는 1991년 핀란드 헬싱키 대학의 리누스 토발즈(Linus Benedict Torvalds)라는 학생에 의해 만들어진 운영체제입니다. 당시 21살의 학생이었던 리누스 토발즈는 앤디 타넨바움(Andy Tanebaum)교수가 학생들의 학습을 주목적으로 개발한 미닉스(MINIX)를 사용하던 중에 유닉스와 호환되는 공개된 운영체제의 개발 계획을 MINIX 사용자 모임에 발표하였습니다. 그는 개발한 운영체제가 "단지 취미이며 GNU처럼 거대하거나 전문적인 것은 아니다."라고 프로젝트 초기의 의도를 밝혔습니다. - 초기 리눅스의 특징 - 초기의 리눅스는 이식성이 고려되지 않은, 다만 i386계열에서 운영되는 유닉스 호환 운영체제를 목표로 하는 프로젝트였다. 초기 버전 0.01은 가장 기본적인 ..
유닉스 프로그램을 만들 때 빠질 수 없는 쉘 프로그램에 대해 배워보도록 하겠습니다. 쉘프로그래밍은 많은 개발들이 그 중요성을 간과하고 넘어가지만 쉘 프로그램 만드는 법을 제대로 익히고 사용하면 비용과 시간을 많이 절약할 수 있는 아주 유용한 방법입니다. 외국에서 유닉스 프로그램을 만드는 사람들과 자주 같이 일을 해보면 쉘 프로그램을 많이 만들고 사용하는 것을 볼 수 있는데 그들에게 쉘 프로그램은 다른 기타 언어나 툴킷들과 동등한 수준의 툴로 인식되는 것 같았습니다. 다시 말해 쉘 프로그램이 문제를 해결하는데 적합할 것 같으면 그냥 그걸 쓴다는 것입니다. 그런 다음 C나 자바로 만든 다른 모듈들과 함께 그걸 사용하는 것입니다. 이번 포스팅에서는 쉘프로그램에서 사용하는 문법들을 먼저 소개한 다음 이를 이용하..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dmroN6/btqwExfy39m/toFTSKkXMkmexLFGr6KPj0/img.png)
RAID는 왜? 사용되나 서버의 사용자가 서버 운영에 있어 가장 당혹스러울 때는 하드디스크의 장애로 인한 DATA 손실일 것입니다. 하드디시크는 사실상 소모품으로 분류되며 I/O가 많은 서버에는 고장이 잦은 것이 당연하다고 볼 수 있습니다. 하지만 서버에 저장되는 데이터의 경우 손실 또는 유출 되었을 때 치명적인 것이 대부분일 것으로 대표적으로 은행과 같은 금융, 군사적 목적의 데이터가 있을 것입니다. 이로 인해 백업이 절대적으로 필요한 경우가 있고 또한, 여분의 디스크가 있어 용량을 증설하려고 할 때 데이터 손실 없이 증설이 필요한 경우가 있습니다. 그래서 많은 서버 관리자는 RAID 구성을 통해 하드디스크의 가용성을 높이거나 서버 데이터의 안정성을 확보해야 합니다. RAID란? RAID는 Redund..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/rAs79/btqwCQmNEpL/ZpIdWRjB2Wk9P0z4KNx180/img.png)
아래 그림처럼 Process는 완전히 독립된 실행객체입니다. 서로 독립되어 있다는 것은 다른 프로세스의 영향을 받지 않는다는 장점이 있습니다. 그러나 독립되어 있는 만큼 별도의 설비가 없이는 서로 간에 통신이 어렵다는 문제가 있게 됩니다. 이를 위해서 커널 영역에서는 IPC라는 내부 프로세스간 통신(Inter Process Communication)을 제공하게 되고, 프로세스는 커널이 제공하는 IPC설비를 이용해서 프로세스간 통신을 할 수 있게 됩니다. IPC의 2가지 표준(System V IPC와 POSIX IPC) : System V IPC는 오래된 버전이고 POSIX IPC는 비교적 최근에 개발된 표준입니다. System V IPC는 오랜 역사를 가진만큼 이기종간 코드 호환성을 확실히 보장해 주지만..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/m56vF/btqwFRduD7o/HBQAzNoYmeGJXIOgOmjtV0/img.png)
컴퓨터의 커널은 운영체제의 핵심입니다. 운영체제의 다른 모든 부분에 여러 기본적인 서비스를 제공합니다. 시스템 자원은 제한되어있지만 프로그램은 많기 때문에 커널은 프로그램의 수행상태인 프로세스 간의 보안 접근을 책임지는 소프트웨어입니다. 커널이 이러한 프로세스마다 얼마만큼의 자원을 사용해야 하는지 결정해야하는데 이것을 스케줄링이라고 합니다. 같은 종류의 컴포넌트에 대해 하드웨어는 다양하게 디자인 되어질 수 있습니다. 따라서 하드웨어에 직접 접근하는 것은 매우 복잡할 수 있습니다. 일반적으로 커널은 운영체제의 복잡한 내부를 감추고 깔끔하고 일관성 있는 인터페이스를 하드웨어에 제공하기 위해 추상화를 지원합니다. 이러한 하드웨어 추상화는 프로그래머가 하드웨어의 복잡한 접근을 고민할 필요없이 쉽게 개발하는 것을..