IT 관련/우분투(Ubuntu) 이것저것

리눅스 필수 및 주요 프로그램 정리

islet2 2025. 3. 6. 22:59

텍스트 편집기

  1. Vim (Vi Improved)

    • 설치: sudo apt install vim 또는 sudo yum install vim
    • 실행: vim 파일명
    • 주요 명령:
      • i: 입력 모드
      • Esc: 명령 모드로 돌아가기
      • :w: 저장
      • :q: 종료
      • :wq: 저장 후 종료
      • :q!: 저장하지 않고 강제 종료
  2. Nano

    • 설치: sudo apt install nano 또는 sudo yum install nano
    • 실행: nano 파일명
    • 주요 명령:
      • Ctrl+O: 저장
      • Ctrl+X: 종료
      • Ctrl+K: 현재 라인 잘라내기
      • Ctrl+U: 붙여넣기

패키지 관리

  1. APT (Debian/Ubuntu)

    • apt update: 패키지 목록 업데이트
    • apt upgrade: 설치된 패키지 업그레이드
    • apt install 패키지명: 패키지 설치
    • apt remove 패키지명: 패키지 제거
    • apt search 키워드: 패키지 검색
  2. YUM/DNF (Red Hat/CentOS/Fedora)

    • yum update 또는 dnf update: 패키지 업데이트
    • yum install 패키지명 또는 dnf install 패키지명: 패키지 설치
    • yum remove 패키지명 또는 dnf remove 패키지명: 패키지 제거
    • yum search 키워드 또는 dnf search 키워드: 패키지 검색

시스템 모니터링 및 관리

  1. htop

    • 설치: sudo apt install htop 또는 sudo yum install htop
    • 실행: htop
    • 기능: 시스템 리소스 및 프로세스 모니터링(top의 개선 버전)
  2. iotop

    • 설치: sudo apt install iotop 또는 sudo yum install iotop
    • 실행: sudo iotop
    • 기능: 디스크 I/O 모니터링
  3. iftop

    • 설치: sudo apt install iftop 또는 sudo yum install iftop
    • 실행: sudo iftop
    • 기능: 네트워크 대역폭 사용량 모니터링
  4. journalctl (systemd 로그 관리)

    • 실행: journalctl
    • 주요 옵션:
      • journalctl -f: 실시간 로그 추적
      • journalctl -u 서비스명: 특정 서비스 로그 확인
      • journalctl --since "2023-01-01": 특정 날짜 이후 로그 확인
  5. systemctl (systemd 서비스 관리)

    • systemctl start 서비스명: 서비스 시작
    • systemctl stop 서비스명: 서비스 중지
    • systemctl restart 서비스명: 서비스 재시작
    • systemctl status 서비스명: 서비스 상태 확인
    • systemctl enable 서비스명: 부팅 시 자동 시작 설정
    • systemctl disable 서비스명: 부팅 시 자동 시작 해제

네트워크 관련 도구

  1. nmap

    • 설치: sudo apt install nmap 또는 sudo yum install nmap
    • 사용법: nmap 대상IP 또는 nmap 192.168.1.0/24
    • 기능: 네트워크 스캔 및 포트 검색
  2. tcpdump

    • 설치: sudo apt install tcpdump 또는 sudo yum install tcpdump
    • 사용법: sudo tcpdump -i eth0
    • 기능: 네트워크 패킷 캡처 및 분석
  3. netstat/ss

    • 사용법: netstat -tuln 또는 ss -tuln
    • 기능: 네트워크 연결 상태 확인
  4. dig/nslookup

    • 설치: sudo apt install dnsutils 또는 sudo yum install bind-utils
    • 사용법: dig example.com 또는 nslookup example.com
    • 기능: DNS 조회

백업 및 아카이브

  1. rsync

    • 설치: sudo apt install rsync 또는 sudo yum install rsync
    • 사용법: rsync -avz 소스디렉토리/ 대상디렉토리/
    • 기능: 효율적인 파일 동기화 및 백업
  2. dd

    • 사용법: dd if=/dev/sda of=/path/to/backup.img bs=4M
    • 기능: 디스크나 파일 이미지 생성 및 복원

파일 관리 및 검색

  1. find

    • 사용법:
      • find /path -name "파일명": 이름으로 파일 검색
      • find /path -type f -size +100M: 크기가 100MB 이상인 파일 검색
      • find /path -mtime -7: 7일 이내에 수정된 파일 검색
  2. locate

    • 설치: sudo apt install mlocate 또는 sudo yum install mlocate
    • 사용법: locate 파일명
    • 데이터베이스 업데이트: sudo updatedb
    • 기능: 빠른 파일 검색(데이터베이스 기반)

텍스트 처리 도구

  1. awk

    • 사용법: awk '{print $1}' 파일명
    • 기능: 텍스트 파일 행 처리 및 데이터 추출
  2. sed

    • 사용법: sed 's/old/new/g' 파일명
    • 기능: 텍스트 스트림 편집
  3. cut

    • 사용법: cut -d':' -f1 /etc/passwd
    • 기능: 텍스트 파일에서 특정 필드 추출

보안 도구

  1. ufw/firewalld (방화벽)

    • ufw 사용법:
      • sudo ufw enable: 방화벽 활성화
      • sudo ufw allow 22/tcp: SSH 포트 허용
      • sudo ufw status: 상태 확인
    • firewalld 사용법:
      • sudo firewall-cmd --add-service=http --permanent: HTTP 서비스 허용
      • sudo firewall-cmd --reload: 설정 적용
  2. fail2ban

    • 설치: sudo apt install fail2ban 또는 sudo yum install fail2ban
    • 설정 파일: /etc/fail2ban/jail.conf
    • 상태 확인: sudo fail2ban-client status
    • 기능: 무차별 대입 공격 방지

데이터베이스 클라이언트

  1. MySQL/MariaDB 클라이언트

    • 설치: sudo apt install mysql-client 또는 sudo yum install mariadb
    • 접속: mysql -u 사용자명 -p
    • 기능: MySQL/MariaDB 데이터베이스 접속 및 관리
  2. PostgreSQL 클라이언트

    • 설치: sudo apt install postgresql-client 또는 sudo yum install postgresql
    • 접속: psql -U 사용자명 -d 데이터베이스명
    • 기능: PostgreSQL 데이터베이스 접속 및 관리

웹 서버 관련

  1. Apache

    • 설치: sudo apt install apache2 또는 sudo yum install httpd
    • 서비스 관리:
      • sudo systemctl start apache2 또는 sudo systemctl start httpd
      • sudo systemctl enable apache2 또는 sudo systemctl enable httpd
    • 설정 파일: /etc/apache2/ 또는 /etc/httpd/
  2. Nginx

    • 설치: sudo apt install nginx 또는 sudo yum install nginx
    • 서비스 관리:
      • sudo systemctl start nginx
      • sudo systemctl enable nginx
    • 설정 파일: /etc/nginx/