2018/03

    man page에 color 입히기

    man page에 color 입히기

    평소 man page를 자주보는 저로써는 검은 바탕의 흰 글씨만 있는게 굉장히 불편했습니다. man page에 color를 입히는 방법을 공유드립니다. 지금부터 2가지 방법에 대해 설명드릴텐데요, 하나는 most를 설치하는 방법과 하나는 less를 이용한 방법입니다. 설명은 ubuntu 16.04 기준입니다. 1. Most가장 먼저 most를 설치해 줍니다.$ sudo apt install most 다음 ~/.bashrc 파일을 열어 아래 내용을 추가해줍니다.export PAGER="most"orexport PAGER="/usr/bin/most -s" 다음 수정한 파일을 적용해줍니다.$ source ~/.bashrc 2. less command 이용하기2 번째는 less command를 이용해서 적용하는..

    /Proc Filesystem - Process

    /Proc Filesystem - Process

    The /Proc Filesystem for Debuggingproc - process infomation pseudo-filesystem(Process infomation) 리눅스가 인기 있는 이유 중 하나는 UNIX 시스템의 좋은 feature들을 결합시킨 점입니다. Proc 파일시스템은 그 좋은 feature들 중 한가지 인데요, 대다수의 Linux 배포판에 포함되어 있습니다. proc 파일시스템은 /proc에 마운트되어 있으며 kernel data 구조에 대해 인터페이스를 제공하고 있습니다. proc 파일시스템의 파일들은 READ-ONLY 이지만, 몇몇의 파일들은 커널 변수를 변경하여 적용할 수 있도록 WRITE가 가능합니다. proc 파일시스템의 구성요소를 하나하나 살펴보도록 하시죠. 이번 글에..

    C언어 try-catch 흉내내기

    https://github.com/linuxias/linux-system-programming/blob/master/exception/try-catch.c #include #include #define TRY \do { \jmp_buf __buf; \switch (setjmp(__buf)) { \case 0: \{#define CATCH(e) \break; \} \case e: {#define FINALLY \break; \} \default: {#define ETRY \} \} \} while(0);#define THROW(e) longjmp(__buf, e) #define EXCEPTION_1 1#define EXCEPTION_2 2 int main(){TRY {printf("try\n");THROW..

    Strace - trace system calls and signals

    Strace - trace system calls and signals

    Stracetrace system calls and signals strace는 linux에서 발생하는 문제들을 해결할 수 있는 여러 툴 중 system call을 추적할 수 있는 강력한 툴입니다. System call은 open, write, read, mmap... 등등 여러분들도 잘 알고 계신 함수들입니다. System calls은 User process가 kernel에 어떠한 작업을 요청하기 위한 인터페이스 역할을 합니다. (그림 출처 : Self-Service Linux : Mastering the Art of Problem Determination) 여기서 말하는 요청이란 User process에서는 접근할 수 없는 disk, network, memory 같은 시스템 자원에 접근하고 IPC, ..

    Building a spam classifier

    Building a spam classifier

    Building a spam classifier: Prioritizing what to work on &Error Analysis 아래 내용은 Andrew Ng 교수님의 강의와 자료를 기반으로 학습한 내용을 정리하여 작성하였습니다. 개인의 학습 내용이기에 잘못 해석 및 이해하고 있는 부분도 있을 수 있으니, 다양한 자료를 기반으로 참고하시는 걸 추천드립니다. 이번 글에서는 스팸 분류를 통한 예제를 기반으로 어떻게 Error를 분석할 수 있는지 하나의 예시를 살펴보도록 하겠습니다. Prioritizing what to work on먼저 바로 예시를 하나 살펴보도록 하죠. 여러분에게 두 통의 메일이 왔습니다. 둘 중 어느 것이 Spam 메일인지 한번 알아보시죠. 둘 중에 어느것이 Spam인지 바로 알 수 있..

    OpenGrok 설치하기 (How to install OpenGrok)

    OpenGrok 설치하기 (How to install OpenGrok)

    Opengrok 설치하기 Opengrok은 소스코드를 빠르고 유용하게 찾을 수 있는 엔진입니다. 저는 Linux kernel, Systemd, glib, glibc 등의 Code를 다운받고 빠르게 검색하는 용도로 자주 사용하고 있습니다. 다양한 컴퓨터 언어에 대해 지원하고 있으니 굉장히 유용하니 한번 구축해서 사용해 보시는 걸 추천드립니다. 그럼 지금부터 시작해보겠습니다. (저는 ubuntu 16.04 기준으로 작성합니다..)제 글이 아닌 OpenGrok page 를 참고하여 구축하셔도 무방합니다 :-) Requirements먼저, Opengrok을 설치하기 전에 필요한 것들이 있습니다. Java 1.8 versionTomcat (8.x or later) or GlassFish Universal ctag..