Skip to content

Latest commit

 

History

History
201 lines (133 loc) · 5.47 KB

File metadata and controls

201 lines (133 loc) · 5.47 KB

리눅스 기본 명령어

관리자 권한 얻기

sudo su -

개인 로컬은 root 로 로그인하는 경우가 많아 관리자 권한을 따로 얻지 않아도 됩니다.
상용 및 테스트 서버를 제공받는 경우 시스템 엔지니어가 관리자 권한을 제공해주며, 위 명령어를 쳐서 배쉬에 root@localhost 가 뜨는 것을 확인합니다.

현재 작업중인 디렉토리 체크

pwd

현재 작업중인 폴더의 위치를 보여줍니다.
보여지는 경로는 절대 경로이며, 리눅스의 절대경로와 상대경로에 대해서 공부하면 아래의 명령어들이 한결 쉬워집니다.

파일, 디렉토리 목록과 정보 출력

ls

현재 작업 중인 폴더안에 있는 디렉토리와 파일 리스트를 보여줍니다.
많은 옵션들이 있으니 ls --help 명령어로 확인한 뒤 필요한 옵션을 줘서 출력할 수 있습니다.
List 의 약어

option

  • ls -f: 디스크에 저장된 순서로 출력
  • ls -a: 숨겨진 파일 포함한 모든 내용을 출력
  • ls -l: 상세한 내용 포함한 출력
  • ls -m: 가로로 출력
  • ls -c: 최근 변경된 파일부터 정렬하여 출력

두 개 이상의 옵션을 줄 때 ls -al 과 같이 묶어서 사용할 수 있음!

디렉토리 다루기

mkdir

폴더 만들때 사용하는 명령어
mkdir -p /game/public_html 으로 명령할 경우 부모 디렉토리가 없다면 같이 생성

chmod

8진수를 사용하여 폴더 또는 파일의 권한을 변경합니다.

chmod_8 

권한 변경 시 소유자, 그룹권한, 전체권한을 합쳐서 3자리 모두 바꿔줘야합니다.
예시: chmod 777 index.php -> 해석: index.php 파일의 소유자와 소유그룹과 모든 계정의 읽기, 쓰기, 실행을 허용

chown 소유자.그룹 대상

chown

소유자 변경하는 명령어

주로 파일이나 경로가 맞는데 access 가 되지 않는다면 권한문제일 확률이 높습니다.
소유자 or 권한 중 1개만 변경도 가능합니다.

TIP!
OPTION 중 '-R' 은 하위 레벨도 전체 변경이라는 옵션이며 다른 폴더 관련 명령에도 동일하게 사용 됨!

VI 편집기

vi 파일명

vi 와 vim의 차이는 vim 이 조금 더 향상된 편집기 입니다. (문법 강조와 같은 기능을 제공해줌)
vi 로 파일을 열거나 새로 생성 할 수 있습니다.
파일에서 편집모드로 바꾸기 위해선 i 를 눌러 편집모드로 변경합니다.
이외의 단어 검색, 줄 지움 복사등과 같은 편집 기능은 각자 찾아 학습합니다.

파일 다루기

cp '파일명'

파일복사 할때 사용하는 명령어

cp '복사 할 파일' '복사될 경로와 새로운 파일명'
cp -a 옵션은 소유권자와 소유그룹을 동일하게 복사할 수 있습니다.

mv '파일명'

mv '옮길 파일' '옮겨질 경로' 윈도우의 잘라내기 기능이라고 보면 됩니다.
권한과 소유자 그대로 새로운 위치에 파일을 옮깁니다.

cat

cat파일 내용을 그대로 읽어들여 출력합니다.
상용 서버에서 용량이 큰 파일을 vi 편집기로 열어서 내용을 확인할 경우 메모리 과부하로 서버가 다운될 수 있으며 그경우 cat 을 사용하여 파일을 열람합니다.

파이프 라인(|) 으로 grep 명령을 이용하여 특정 단어를 포함하는 내용을 출력 할 수 있습니다. (로그검색시 유용!)

cat_grep

예시: cat smon_baidu_debug_debug_00000 |grep "2018-03-05"
->해석: smon_baidu_debug_debug_00000 파일에서 2018-03-05 문자열이 들어간 line 을 출력.
-> more 명령은 창크기에 맞춰서 자동으로 내용을 문단으로 짤라서 보여줌 (다음페이지는 스페이스바)
grep 명령에는 정규표현식을 사용하도록 하면 좀더 다양한 형태로 검색할 수 있습니다.

tail

vi 편집기로 열기 어려울 때 파일의 끝부분만 확인할 수 있는 명령어입니다.
-f 옵션을 주면 실시간으로 들어오는 line 을 볼 수 있어 디버깅할 때 유용하게 사용 할 수 있습니다.

과거 명령어 기록 보기

history

과거에 사용했던 명령어를 출력하는 명령어 입니다.
검색해서 사용했던 명령어가 기억나지 않을 때 사용하면 유용해요!

프로세스 상태 확인

ps
top

파일 이름/내용 검색

find
grep

HTTP Client CLI

curl http://google.co.kr

시스템 데몬(서비스) 제어하기

systemctl status nginx
systemctl start nginx
systemctl restart nginx
systemctl enable nginx

레드햇 계열 패키지 매니저

yum list
yum info
yum install
yum remove

스케줄러 등록

systemctl list-timers

연습하기

  1. 패키지 매니저를 통해 nginx 웹서버 설치 후 서비스로 실행하기
  2. nginx 웹서버 실행 중 http://localhost 웹 요청하기
  3. 현재 프로세스 목록에서 nginx 내용만 출력하기
  4. 위 내용을 /tmp/mylog/{오늘날짜}.log 파일로 저장하기
  5. 스케줄러를 통해 /tmp/mylog/* 파일 중 생성된지 10분이 지난 파일을 주기적으로 삭제하기