유용한 리눅스(LINUX) 명령어

시스템 모니터링

  • top -d 1
    • 시스템 프로세스 모니터링(표시 딜레이 1초)
  • crontab
    • crontab -l : 크론탬 목록
    • crontab -e : 크론탭 수정
    • crontab -l -u {사용자} : 특정사용자 크론탭 목록(root권한 필요)
  • ps -ef
    • 현제 모든 프로세스 목록
  • vmstat 1 100 : 1초 딜레이로 100번 시스템의 상태를 보여준다.
  • sar : 단위 시간별 CPU 상태를 보여준다.
  • 메모리
    • free -lm : 메모리 정보(물리, 사용량, 스왑 등)
    • 스왑메모리 : cat /proc/swaps (크기 및 사용량)

시스템 관리

  • crontab
    • crontab -l : 크론탬 목록
    • crontab -e : 크론탭 수정
    • crontab -l -u {사용자} : 특정사용자 크론탭 목록(root권한 필요)
  • su -  : root 로 로그인
  • netstat -ant : 현재 모든 네트워크 상태중 TCP상태를 hostname변환없이 보여준다.
  • shutdown
    • shutdown - r : 재부팅
    • shutdown -h : 종료
      • shutdown -h now : 지금 즉시 종료
      • shutdown -h 3 : 3분후 종료

시스템 정보

  • uname -a : OS정보를 보여준다.
    • ex > Linux dev 2.6.18-92.el5PAE #1 SMP Tue Apr 29 13:31:02 EDT 2008 i686 i686 i386 GNU/Linux
  • uptime : OS의 간단한정보(동작시간, 사용자수, load average)를 보여준다.
    • ex >  14:59:44 up 343 days,  2:04,  5 users,  load average: 0.07, 0.02, 0.00
  • ifconfig : 현재 네트워크 카드의 상태를 보여준다. (root 권한 필요)
  • ulimit -Sa  : OS의 제한 설정을 보여준다.
  • /proc/cpuinfo : CPU정보파일(시스템파일)

검색

  • grep 
    • grep -r {찾을글자} . : 현 폴더의 하위 폴더까지 포함해서 파일 속에 찾을 글자가 있는 파일을 찾아준다.
    • {명령어} | grep {찾을글자} : {명령어}의 축력 내용에서 찾을 글자가 있는 line 만 보여준다.
  • find -name "{찾을글자}*" : 현 폴더를 기준으로 찾을글자로 시작되는 파일명을 가진 파일 목록을 보여준다.
  • ls에서 날짜와 파일명만 가져오기
    • $  ls -laRG  --time-style=full-iso |grep -v "\./$"|grep -v "^total " | sed -re 's/^[^ ]* . [^ ]*\s*[^ ]* //'

기타

  • ctrl+d : 터미널 로그아웃
  • 압축
    • 하기
      • tar cvfzp {압축파일명} {압축대상}
      • tar cvfzp file.tar.gz *   : 현재 폴더의 모든 파일을 압축
    • 풀기
      • tar xvfzp file.tar.gz : 현재 폴더에 풀기
    • 목록보기
      • tar ztvf file.tar.gz
  • vi : 텍스트 에디터
    • vi -R {파일명} = view {파일명} : 파일을 읽기 전용으로 열기
  • Z모뎀으로 전송 (ftp,sftp 접속 없이 서버에서 파일을 올리거나 내려받을 수 있다.)
    • sz {파일명} : 파일을 받을 때
    • rz : 파일을 보낼 때
    • 통신 프로그램에서 지원을 해야함.(secure crt 은 버전에 따라 지원이 됨(6.5.1에서 확인))
  • 사용자추가 (ROOT 계정으로)
    • useradd -b {홈디렉토리부모디렉토리} 계정명
      • {홈디렉토리부모디렉토리}/계정명 으로 폴더가 생기고 홈 디렉토리로 설정됨
    • passwd 계정명
      • 비밀번호를 2번 물어봄.
  • 사용자삭제(ROOT 계정으로)
    • userdel 계정명
      • 계정만 삭제됨
    • userdel -r 계정명
      • 홈폴더도 삭제됨
  • 한글 지원
    • export LANG=ko_KR.EUC-KR
      • 텔넷 프로그램에서도 같이 지원되야함.
      • export LANG="ko_KR.UTF-8"  //UTF-8 사용시
      • export LANG="c" //기본으로 되돌릴때
      • export LANG="en_US.utf8" //미국 영어 utf8
      • locale -a : 지원 언어셋 확인
  • 파일복사
    • cp -arp /home/XXX_source/* /home/XXX_target/
    • -a : 원본파일의 속성, 링크 정보 그대로 유지
    • -r : 서브폴더 포함
    • -p : 소유주,그룹,권한,시장정보 보존

접속자 끊기


# w
09:57:21 up 320 days, 20:36,  5 users,  load average: 0.07, 0.06, 0.01
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
newXX    pts/0    115.XXX.XXX.XXX    08:36    0.00s  0.03s  0.06s sshd: newXX [priv]
megaXX pts/1    124.XXX.XXX.XXX    19May17 11days  0.00s  0.00s -bash
XXbowc pts/2    221.XXX.XXX.XXX  09:31    3:10   0.01s  0.01s -bash
XXbowc pts/3    221.XXX.XXX.XXX  09:55    1:45   0.00s  0.00s -bash
megaXX pts/5    124.XXX.XXX.XXX    Fri17    4days  0.01s  0.01s -bash

# skill -KILL {user}  //USER 명 기준으로 종료
# skill -KILL -v {pts/?}  //TTY(세션) 기준으로 종료



.sh 에서 날짜 처리 예제

DT=$(date +%Y%m%d%H%M%S)
YYYY=$(date +%Y)
MM=$(date +%m)
#MM="01"

VM=$(expr $MM + 0)
VM=$(expr $VM + 1)
if [ $VM -eq 13 ]; then
 YYYY=$(expr $YYYY + 1);
 VM=1;
fi

if [ $VM -lt 10 ];then
 VM="0"$VM
fi

YYYYMM=$YYYY$VM
#echo "YYYYMM :" ${YYYYMM}

echo ${YYYYMM}>>${YYYYMM}.log
댓글
  • No Nickname
    No Comment
  • 권한이 없습니다.
    {{m_row.m_nick}}
    -
목록형 📷 갤러리형
제목
[기본형] HTML (with 부트스트랩5.3 , jquery 3.7, vue.js)
유용한 리눅스(LINUX) 명령어
[공지] 기술 게시판
2.25
2.27
2.28
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
3.11
3.12
3.13
3.14
3.15
3.16
3.17
3.18
3.19
3.20
3.21
3.22
3.23
3.24
3.25
3.26
3.27
3.28
3.29
3.30
3.31
4.1
4.2
4.3
4.4
4.5
4.6