리눅스 명령어

soma·2024년 2월 14일

네트워크

목록 보기
9/12
post-thumbnail

퍼미션(Permission)이란?

  • 여러 사용자가 접근 가능한 멀티유저 운영체제인 '리눅스'에서 허가되지 않은 사람이 파일이나 디렉터리 접근하는 것을 막고 디렉터리에 대한 파일 접근 권한을 제어하고 파일을 보호하는 역할

퍼미션 종류

permissionmeaningfiledirectory
r(4)읽기(read) 권한파일 읽기디렉터리 내용 볼 수 있음
w(2)쓰기(write) 권한파일 저장, 삭제디렉터리에 파일저장, 디렉터리 이름 변경, 삭제 가능
x(1)실행(execution) 권한파일 실행디렉터리에 접근 가능
sSetUID, SetGID 권한파일 소유자, 그룹 소유자의 권한으로 실행-
tSticky Bit 권한공유 디렉터리로 사용됨-

drwxr-xr--x  2  root  root  4096  2024-02-05  cdroom

접근허가 > 링크수 > 소유자(UID) > 그룹(GID) > 파일크기 > 마지막 접근시간 > 파일명 순서

* 맨 앞의 "d"는 "디렉터리", 아무것도 없고 "-"로만 되어 있는 경우는 "일반파일"

퍼미션 변경

  • chmod : 기존 파일 또는 디렉터리에 대한 접근 권한 변경시 사용
  • chown : 파일이나 디렉터리 소유자나 그룹소유자 변경시 사용
  • chgrp : 파일이나 디렉터리 그룹소유자 변경시 사용
  • chage : 사용자에 대한 패스워드의 만료기간 및 시간 정보 변경
  • $ chmod 777 : user, group, other 모두 읽기/쓰기/실행 권한 부여 (=>rwxrwxrwx)
  • $ chmod 755 : user는 읽기/쓰기/실행 모두 가능, group과 other는 읽기/실행 권한만 부여 (=>rwxr-xr-x)
  • usermod : 사용자 관리 명령어로 사용자 계정을 변경할 때 사용

리눅스 기본 명령어

  • pwd : print work directory, 현재 위치 출력 (절대경로 방식)
  • ls : list segments, 현재 디렉터리 내의 파일과 디렉터리 출력
    • ls -l : 파일들의 상세 정보 표시
    • ls -a : 숨김 파일 표시
    • ls -t : 최신 파일부터 표시
    • ls -rt : 오래된 파일부터 표시
    • ls -F : 파일을 표시할 때 파일 타입을 나타내는 문자열 표시
    • ls -R : 하위 디렉터리 내용까지 표시
  • cd : 디렉터리 이동
    • cd ~ : 홈디렉터리로 이동
    • cd .. : 상위 디렉터리로 이동. cd ../../ 같은 식으로 여러 단계를 한 번에 이동 가능
    • cd /dir : 절대 경로를 지정해 이동 가능
    • cd - : 바로 전의 디렉터리로 이동
  • mkdir : 디렉터리 생성
  • cp : 파일 또는 디렉터리 복사
  • mv : 파일 또는 디렉터리 이동 및 이름 변경
  • rm : 파일 또는 디렉터리 삭제
  • cat : catenate, 파일 내용 확인
  • touch : 빈 파일 생성, 파일 날짜 시간 수정
  • echo : 문자열 화면에 표시
  • ip addr / ifconfig : IP 정보 확인
  • ss : 네트워크 상태 확인
  • nc : netcat, 서버의 포트 확인
  • which, whereis, locate : 명령어의 위치 확인
  • tail : 파일의 마지막 부분 확인
  • find : 파일이나 디렉터리 찾기
  • ps : 현재 실행 중인 프로세스 목록과 상태 확인, 데몬이 살아 있는지 확인
  • cron : crontab과 깉이 데몬의 작업설정에 사용(작업예약 등)
  • grep : 주어진 입력값에서 패턴에 맞는 값 출력
  • kill : 프로세스 종료
  • top : 실시간으로 프로세스 모니터링
  • nice : 프로세스의 우선순위 변경
  • alias : 명령어 별칭 만들기
  • du : disk useage, 디스크 사용량 확인
  • free : 관리중인 시스템의 메모리 상태 확인
    • 메모리 전체 용량 / 유휴메모리 양 / 사용중인 메모리 양 / 스왑 메모리 양 / 커널에서 사용되는 공유 메모리와 버퍼의 양 / 캐시된 메모리 양
  • vi / vim : 편집기
  • man : 각종 명령어와 프로그램의 사용법 확인
  • shutdown : 서버를 종료하는 명령어
    • -r : 시스템 종료 후 재부팅
    • -h : shutdown이 완료된 후
      • shutdown -h now / shutdown -n +2 : 지금 바로 종료 / 2분후 종료
    • -c : 진행중인 shutdown 절차 취소
    • -k : 경고 메시지만 출력하고 shutdown 하지 않음
    • -f : 재부팅할 때 fsck(File System Check) 명령 건너뛰고 빠르게 진행
    • -n : 지정한 시간에 시스템 재시동(now : 바ㄹ로 종료, +m : 지정한 m분 이후 종료, hh:mm : hh시 mm분에 종료 )
  • init : 초기화 프로세스
    • 0 : 시스템 종료 모드
    • 1 : 단일 사용자 모드
    • 2 : 다중 사용자 텍스트 모드 (NFS 사용불가, 서버와 공유 안됨)
    • 3 : 다중 사용자 텍스트 모드 (CUI 모드)
    • 4 : 사용 안함
    • 5 : 다중 사용자 그래픽 모드 (GUI 모드)
    • 6 : 시스템 재부팅 모드

리눅스의 vi(Visual Interface) 명령어

  • x : 문자 하나 삭제할 때 사용하는 명령어

리눅스 기본 디렉터리

  • / : 최상위(루트) 디렉터리, 디렉터리들의 절대 경로를 표기할 때 이 디렉터리로 부터 시작
  • /bin : 바이너리, 기본적인 명령어가 저장된 디렉터리, 리눅스에서 자주 사용하는 mv, cp, rm 등의 명령어들이 존재
  • /boot : 리눅스 부팅에 필요한 정보를 가진 파일
  • /dev : 디바이스, 시스템 장치 파일
  • /etc : 설정 파일, 일반적으로 사용자 암호 정보를 가짐
  • /home : 사용자들의 홈디렉터리가 있는 곳
  • /lib : 라이브러리, 커널이 필요로하는 각종 라이브러리 파일, 커널 모듈 파일 등이 존재
  • /media : DVD, CD-ROM, USB 등 외부 장치들의 마운트 포인트(연결)로 사용하는 디렉터리
  • /mnt : 마운트, /media와 비슷한 기능, 다른점은 사용자가 직접 마운트하는 경로로 사용됨
  • /opt : 추가 응용프로그램 패키지 설치 장소
  • /proc : '가상파일시스템'이라는 곳으로 현재 메모리에 존재하는 작업들이 파일 형태로 존재, 프로세스 정보 등 커널 관련 정보 저장
  • /root : 관리자계정 root 사용자의 홈디렉터리
  • /sbin : 시스템 실행파일, ifconfig, ethtool, halt 등 시스템 명령어들을 저장
  • /user : 일반 사용자들이 사용하는 디렉터리
  • /usr : 시스템, 응용프로그램에서 필요한 파일 저장
  • /var : variable data, 로그파일, 데이터베이스 캐싱파일, 웹서버 이미지 파일 등 다용도로 사용될 수 있는 파일들 저장 (시스템 운이영도중 파일의 크기가 변하는 파일을 위한 공간)
  • /sys : 디바이스를 관리하기 위한 가상 파일 시스템 디렉터리
  • /run : Run-time variable data 관리, 부팅한 후 시스템 정보 관리
  • /tmp : 임시 파일 저장하기 위한 디렉터리
  • /lost+found : 휴지통

데몬(Deamon)이란?
: 유닉스(Unix) 운영체제에서 부팅 시 자동으로 켜져, 백그라운드에서 계속 실행되는 프로세스를 의미

  • 리눅스에 존재하느 데몬
    • crond : 시스템에서 주기적으로 반복되는 작업을 예약해 지정된 시간에 자동실행하도록 설정하는 시스템 예약작업
    • httpd : 아파치(HTTP) 프로토콜 서비스 프로그램(데몬), Standalone 데몬 프로세스로 실행되며 웹서비스를 시작할 때 사용
    • kerneld : 필요한 커널 모듈을 동적으로 적재해주는 데몬
    • named : 호스트 네임을 IP 주소로 변환하는 DNS 데몬

Swap Space

스왑은 메모리의 부족한 용량을 대신해 보조기억장치(하드디스크, SDD)의 일부분을 메모리인 것처럼 가상으로 사용한다는 의미

  • RAM의 부족한 용량을 보충하기 위해 하드디스크 일정부분을 지정해 RAM처럼 사용함
  • 일반적으로 실제 메모리의 두 배정도가 적당 (더 이상은 하드 저장 공간 낭비)
  • 보통 시스템을 모니터링한 결과 스왑이 많이 일어나면 메모리를 증설해야 함
profile
배움의 기록을 차곡차곡

0개의 댓글