OS 80

[명령어] find 명령어 이해

find 라는 명령어는 시스템 관리자가 자주 사용하는 명령어 중 하나이다. 디스크에 있는 파일 또는 디렉터리를 검색하는 명령어이다. 사용법 find 위에서 는 find가 파일 또는 디렉터리를 찾기 위한 최상 위치이다.예을 들면, '/'는 루트(root) 디렉터리 부터 찾고, '.'은 현재 디렉토리 부터 찾는다. 아래 예제는 루트 디렉터리부터 하위 디렉터리까지 확장자가 .sh 인 파일을 찾는다.$ find / -name "*.sh" 예제 기본적인 예제는 생략하고, 시스템 관리자가 유용하게 사용할 수 있는 몇 개 예제를 기술한다. 특정 파일시스템이 과도하게 사용하는 경우에 파일 크기가 100M 이상인 파일을 찾을때,$ find / -size +102400k -print | xargs ls -l 또는$ fin..

OS/공통-명령어 2017.07.08

[Tips] 시스템/OS별 스레드 모니터링

ps 명령어는 기본적으로 프로세스 기준의 모니터링 정보를 제공한다. 스레드에 대한 모니터링을 하는 방법은 운영체제마다 다르다. 운영체제별 스레드(Thread) 모니터링 방법은 다음과 같다. 1. 리눅스ps -Lf -p [프로세스ID] 또는, top -H 2. AIXps -p [프로세스ID] -mo THREAD 또는,ps -mp [프로세스ID] -o THREAD 3. HP-UXglance 유틸리티 활용glance > 'G' 키 > 프로세스ID 입력 4. 솔라리스prstat -Lm -p [프로세스ID]

OS/공통-명령어 2017.07.04

[명령어] 운영체제별 시스템콜 확인 명령어

사용하고 있는 시스템콜을 확인하는 명령어는 별도 표준이 없기 때문에 운영체제별 명령어가 다르다. 운영체제 명령어 Liunx strace IBM AIX truss HP-UX tusc Solaris truss 참고로, HP-UX의 tusc는 별도로 설치해야 함 1. strace 사용법 strace -p -o 예제) 3042 프로세스의 시스템콜 호출 모니터링을을 output.txt 파일에 기록한다 $ strace -p 3042 -o output.txt 2. truss 사용법 truss -p -o 예제) 3042 프로세스의 시스템콜 호출 모니터링을을 output.txt 파일에 기록한다 $ truss -p 3042 -o output.txt 3. tusc 사용법 tusc -p -o 예제) 3042 프로세스의 시스템..

OS/공통-명령어 2017.03.26

[명령어] iconv 명령어 이해

OS : 리눅스 문자 인코딩을 변경하기 위한 명령어이다. 편집기에서 파일 하나씩 변경할 수 있으나, 변경할 파일이 많은 경우에 iconv 명령어를 활용해 shell script를 작성하여 일괄적으로 변경할 수 있다. 참고로, 해당 파일의 문자 charset을 "file -i 파일명" 명령어를 통해서 확인할 수 있다. 예제1) 지원하는 인코딩 문자셋을 출력함 $ iconv -l 예제2) sample.dat 파일 내용에 대해 euc-kr을 utf-8로 변경함 $ iconv -f euc-kr -t utf-8 sample.dat (표준 출력으로 나타냄) $ iconv -f euc-kr -t utf-8 sample.dat > sample_utf8.dat (파일로 저장함)

OS/공통-명령어 2017.02.20

[명령어] ssh 관련 명령어

ssh 관련 주요 유용한 명령어는 ssh, scp, ssh-keygen 등이 있다. 1. ssh 명령어 사용법)ssh -p 포트 계정@IP주소 '명령어' 사용예) $ ssh -p 22222 root@192.1.1.1 'ls -al' 위와 같이 ssh명령어를 사용하면, 해당 계정의 패스워드를 추가로 입력해야한다. 패스워드 입력없이 처리하기 위해서는 'sshpass' 명령어 또는 아래에서 설명하는 'ssh-keygen' 명령어를 통해 해결 가능하다.사용예)$ sshpass -p패스워드 ssh -p 22222 root@192.1.1.1 'ls -al' 2. scp 명령어 scp [-r] [-p] -p 포트 SOURCE 계정@TARGET:디렉터리 $ scp -P 22222 Readme.txt root@193.1..

OS/공통-명령어 2017.02.01

[개요] Locale 이해

1. Locale의 의미 각 나라들은 고유의 언어, 날짜, 시간, 화폐 단위 등으로 표현한다. 다국적용 애플리케이션 또는 패키지 개발 시에는 이러한 각 나라 고유의 표현 방법 등을 고려한 국제화(Internationalization, i18n)이 필요하다. Locale은 이러한 국제화를 가능하게 해준다. 예를 들어, 날짜를 우리나라에서는 년/월/일(예, 1998/01/03)을 디폴트로 표현한다면, 미국에서는 월,일,년(예, Jan, 1th, 1998)과 같이 표현한다. 이때 Locale과 같은 기능이 없다면, 애플리케이션에서 분기시켜 처리하여 하드코딩을 해야 겠지만, Locale을 잘 활용하면, 쉽게 국제화가 가능하다. 2. Locale 의미 현재 설정된 Locale 설정 값은 아래와 같은 명령어로 확인..

OS/공통-명령어 2017.02.01

[명령어] netstat 설명

네트워크 연결, 라우팅 테이블 등 네트워크 관련 다양한 정보들을 출력해주는 명령어임 netstat [-a] [-b] [-e] [-f] [-n] [-o] [-p protocol] [-r] [-s] [-t] [-x] [-y] [time_interval] [/?] 유용한 옵션 사용예제는 다음과 같다. 1. 모든 포트 목록 조회 $ netstat -a 2. 모든 TCP 또는 UDP 포트 목록 조회 (-t 또는 -u) $ netstat -at 또는, $ netstat -au 3. 조회 시에 DNS 질의를 하지 않고, IP로 출력함 (-n), 빠른 조회를 위해 -an 옵션은 함께 사용할 것을 권장함 $ netstat -an [응용] 80 포트로 연결된 세션의 상태별 세션 수 $ netstat -an | grep "..

OS/LINUX 2016.12.03

[명령어] more 설명

1. 개요 more 명령어는 기존 vi나 cat과 같은 명령어와 비슷하게 파일 내용을 출력하는데, 한번에 스크린에 맞게 출력하는 명령어이다. 2. 사용법 $ more [-dlfpcsu] [-num lines] [+/pattern] [+linenum] [file ...] 3. 주요 명령어 명령어설명 h, ? 도움말 Space Bar 다음 한 페이지 보여주기 f 이전 한 페이지 보여주기 Enter 현재 행에서 한 행씩 다음으로 이동하기 b 한 페이지씩 앞으로 이동하기 /문자열 문자열 검색하기 n /문자열로 검색한 문자열 다음 문자열 찾기 (Next) !쉘명령어 서브쉘명령어 실행 v more 명령어로 열려있는 파일의 현재 위치에서 vi 실행 q more 실행 종료

OS/LINUX 2016.10.17

[툴] ctags 사용법

1. 개요 ctags 툴은 리눅스에서 vi/vim 에디터를 이용하여 소스 분석을 할 때 유용하게 사용할 수 있도록 해 줌.소스에사 특정 구조체, 함수, 매크로 등 (tag라고 표현)이 선언되고 구현된 위치로 이동하여 준다.이는 소스 분석을 빠르고 쉽게 할 수 있도록 도와준다.비스한 툴로 더욱 기능이 많은 cscope이라는 툴이 있다. 2. 사용방법 1) 설치 바이너리 다운로드 [다운로드 사이트] http://rpmfind.net/linux/rpm2html/search.php?query=ctags wget 등 명령어로 OS에 맞는 설치할 바이너리를 다운로드한다. 2) 설치 apt-get 또는 rpm 등 각 리눅스에 설치명령어에 맞는 툴로 설치한다. 3) 분석 소스에 대한 Tags(메타데이터) 생성 분석하고..

OS/LINUX 2016.09.27

[정보] 프로세스 세션 리더(Session Leader)와 프로세스 그룹 리더(Group Leader)

리눅스의 모든 프로세스는 아래와 같은 ID를 가지고 있다. 각 ID가 의미는 아래와 같다. 1. 개요Process ID (PID) 프로세스를 구별하는 임의의 숫자인다. 모든 프로세스는 고유한 ID를 가지고 있다. 그러나 프로세스가 종료(exit)하고 부모 프로세스가 종료를 인지했을 때, 다른 프로세스가 해당 프로세스 ID를 사용할 수 있도록 되는 것이다.Parent Process ID (PPID) 해당 프로세스를 시작시킨 프로세스의 PID(부모 프로세스 ID)이다.Process Group ID (PGID) 프로세스 그룹 리더의 PID이다. PID와 PGID가 같다면, 해당 프로세스를 프로세스 그룹 리더라고 한다.Session ID (SID) 세션 리더의 PID이다. PID와 SID가 같다면, 해당 프로세..

OS/LINUX 2016.09.20