Backend/OS★

유용한 리눅스 명령어들.

petitCoding 2011. 5. 27. 09:50



.svn 디렉토리 삭제.

svn export 안먹힐때 유용하게쓰임.
find . -name .svn -exec rm -rf {} \;

 


postgres 안될때 
 postgres사용중인 포트 있나 확인하고 모두 죽인다.

 

메시지큐  꽉 찼는지 확인

ipcs

 

 메모리 사용량 
 proc/{PID}/status 에 대한 도움말.

VmSize: 전체 할당된 가상 메모리의 크기
VmRSS: 실제 물리적 메모리가 할당된 크기
VmLck: 스왑아웃 될수 없는 메모리의 크기

VmData: Heap 영역
VmStk: Stack 영역
VmExe: 실행코드 영역 (전역변수 및 실행코드)
VmLib: 동적으로 연결된 라이브러리 영역

 
실행중인 파일 디버깅 
 gdb, libexact.so 파일을 복사한다.
export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH
로 설정한다.

./gdb -pid <pid> 를 실행하면 된다.
(현재 동작중인 프로세스는 일시정지됨)

root passwd 까먹었을때 대처방법
http://bundo.tistory.com/22
single 이라고 써줘도 됨

valgrind 사용법  
valgrind --tool=memcheck --leak-check=yes --show-reachable=yes --log-file="./valgrind_log

 

동적 라이브러리 만들기  
http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/C/Documents/Make_Library

 

find
option :         -perm : 권한과 일치하는 파일 찾기
         -name : 이름과 일치하는 파일 찾기
         -user : 유저와 일치하는 파일 찾기
         -group : 그룹과 일치하는 파일 찾기

 

tar 압축하기 
파일묶기 : tar cvf 파일명.tar 파일(디렉토리)
묶은파일보기 : tar cvf 파일명.tar
파일풀기 : tar xvf 파일명.tar
묶고압축하기 : tar cvfz 파일명.tar.gz 파일(디렉토리)
묶고압축된 파일 보기 : tar tvfz 파일명.tar.gz
묶고압축된파일 풀기 : tar xvfz 파일명.tar.gz

 

리눅스 시스템 콜 모음
http://teamblog.joinc.co.kr/yundream/268

 

리눅스 계정만들기
계정생성
adduser jhsong -g webinsight -d /home/jhsong -p
그룹생성
groupadd webinsight
권한변경
chown -R root:webinsight *

 

php 한글셋팅
ini_set('default_charset','euc-kr');

 

문자열 찾는 find  -어디서 퍼왔는데 출처 불확실 ㅠㅠ
문자열찾기 방법 1 - 영어만 주로 가능
# grep -rw "찾는문자열" ./

문자열찾기 방법 2 - 대/소문자 구분 안하고 검색
# grep -i -l "찾는문자열" * -r 2> /dev/null

문자열찾기 방법 3 - 한글, 영어 모두 가능
# find . -exec grep -l "찾는문자열" {} \; 2>/dev/null

문자열찾기 방법 4 - 한글,영어, 대소문자 안가리고 검색
# find . -exec grep -i -l "찾을문자열" {} \; 2>/dev/null

문자열찾은 후 치환
# find . -exec perl -pi -e 's/찾을문자열/바꿀문자열/g' {} \; 2>/dev/null

파일명 찾기
# find / -name 파일명 -type f

파일명 찾기(대소문자 구별없음)
# find / -iname 파일명 -type f

디렉토리 찾기
# find / -name 파일명 -type d

디렉토리 찾기(대소문자 구별없음)
# find / -iname 파일명 -type d

특정 사용자 소유의 모든 파일을 찾을때는?
# find / -user "사용자 ID" -print

두세가지 문자열을 동시에 찾아야 할때는 egrep을 쓰면 아주 편합니다.
예를 들어
만약 그냥 grep으로 문자열1,2 를 찾으려면
ps -ef | grep 문자열1; ps -ef | grep 문자열2
와 같이 해야하는것을 egrep를 이용하면

ps -ef | grep '문자열1|문자열2'
와 같이 간단해집니다.

# egrep '(pattern1|pattern2|pattern3)' file.txt

 

장치 지우고 추가
/dev/
지우는건 가차없이 지워주고
mknod tmcmd c 249 0
하면 됨.

 

ssh 명령어
ssh ip : ip쪽 쉘 다루기
복사하기
scp ~
ex)
scp a.txt 10.1.1.1:/home/src
scp 10.1.1.1:/home/src ./a.txt
 

모듈 올리고 내리기
모듈 확인: lsmod
모듈 내리기 : rmmod
모듈 로드 : insmod

글의 끝부분 보기
tail -f xxx.txt

gdb
gcc -g -o ~~
gdb~
> b main  (break)
> r  (run)
> n (조사)
> s (함수 내까지 조사)
> l (리스트)
> p (변수출력)

 

svn editor 설정하기
SVN_EDITOR = /usr/bin/vim
export SVN_EDITOR

 

cscope
>find . -name '*.[ch]' > cscope.files
>cscope

ctrl + ], ctrl + t



반응형

'Backend > OS★' 카테고리의 다른 글

자바 공부 시작하고 처음으로 만들어본 앱~! (BMI 측정기 - 나는 뚱뚱한가?)  (1) 2011.06.08
Linux 시스템에서..  (0) 2011.05.27
리눅스 커널 컴파일  (0) 2011.05.27
ltrace / strace  (0) 2011.05.26
시그널 (Signal)  (0) 2011.05.26