Linux University of Seoul Computer Science Park Jong wook

Slides:



Advertisements
Similar presentations
Apr. 25, 2013 Laboratory of Systems Medicine BASIC LINUX COMMANDS.
Advertisements

Linux1 Linux 개요 Linux 방문하여 홈페이지 등록하기 Vi 편집해 보기. Linux2 개요  Linux 란 ? 1991 Linus Benedict Torvalds 가 만든 Unix 의 한 버전 GNU(GNU is Not Unix) » 프로그램이나 정보의.
SPARCS 10 이 가 영 기본 UNIX 명령어. 일단 로그인 ! Linux login 시 계정을 입력하거나 root 를 입력 Root -> # 일반 사용자 -> $ 패스워드 : echo 기능을 꺼서 볼 수 없다. 대소문자 구분 패스워드 처음 설정 시 : ~$ passwd.
네트워크 관련 명령어 영어영문 이충훈 정보통신 김재학. SSH( 보안텔넷 ) SSH 란 ? SSH(Secure Shell) 는 다른사용자가 세션을 엿듣지 못하도록 세션을 감싸주는 텔넷 응용프로그램으로 보안버전의 프로그 램입니다. 즉, 패스워드가.
KAIST 09 SPARCS 10 안재만 (Kuss).  OS  Kernel & Shell  OS Layer  Linux  Linux / GNU  Linux 역사  Linux 배포판  Linux Directories.
쉘 스크립트와 cron coearth, george.
리눅스와 보안 PLUS 오태호.
June-Hyun, Moon UNIX Administration June-Hyun, Moon
Root File System 충북대학교 지능로봇연구실.
시작부터 끝까지 진지한 궁서체로 진행하는 완벽한 주입식의 하드코어한 리눅스/장난감 세미나
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
6 레이스 컨디션.
FTP 09 SPARCS 박철웅 [dothack].
4. 시스템 관리 기본 naldo.
리눅스 실습 정성훈.
컴퓨터 네트워크 실습.
운영체제 설정과 취약점 인터넷공학/컴퓨터공학 이수백/허성욱.
제6장 FUSING.
Unix(Linux) shell programming
Introduction to UNIX/Linux
UNIX 이 재 광 한남대학교 컴퓨터공학과.
디렉토리 다루기 ㅎㅎ 유닉스 파일 시스템 현재 디렉토리 확인 : pwd 디렉토리 이동 : cd
Chapter 11 The C Shell.
Kernel Porting Lecture #7.
2-1장. 리눅스 명령어.
Unix & Shell 사용법 1 번째주 Dept. of Computer Science & Engineering
Minicom,tftp,nfs설정,vnc설정
1 유닉스 시스템 프로그래밍 개요.
강 명 수 소프트웨어 관리 강 명 수
윈도우&유닉스 시스템 보안설정 Start! 서화섭.
[beginning] Linux & vi editor
유닉스 이론과 실습 √ 원리를 알면 IT가 맛있다 컴퓨터정보계열 이광규.
UNIX Unbounded A Beginning Approach
임베디드 리눅스 시스템의 기본 개념 강의 목표 내용 임베디드 리눅스 시스템의 기본 개념과 주제 제시 1. 임베디드 시스템
목차 커널의 개념 및 기능 커널 포팅 램디스크.
2. Linux Installation Target Embedded System은 리눅스 환경을 사용한다. 이 장에서는 리눅스 설치부터, 각 설정의 의미들에 대해 이야기 한다.
Linux/UNIX Programming
UNIX Unbounded A Beginning Approach
컴퓨터 네트워크 실습.
Embedded System Porting (2)
리눅스 명령어 실습 임베디드 시스템 I.
제2장 유닉스/리눅스 사용.
리눅스 명령어.
리눅스 기본 명령어 기본 명령어 명령어 기능 사 용 예 date 날짜 및 시간을 확인하고 생성.
Internet Protocol and Programming
제 4 강 운영체제 개요 및 리눅스 실습.
Unix S/W PC S/W와 같은 구조 OS(Operating System) : 변종이 많다 통신 S/W 사무자동화 S/W
6. 파일 관리. pwd(print working directory)와 cd(change directory) ls(list)
제4장 유닉스 쉘 숙명여대 창병모 2011 가을.
Google Cloud Platform을 이용한 서버 인프라 구축
Appendix. WURFL 브라우저 살펴보기
4장 서버 구축을 위해 알아야 할 핵심 개념과 명령어
유닉스 개요 및 기본 사용법 ㅎㅎ 유닉스 개요 유닉스 시스템 접속 방법과 명령 사용법.
Internet Protocol and Programming
운영체제 RaspberryPi Sejin Oh.
Itbank solaris Pm 4:00 class 김 정 훈
Linux/UNIX Programming
시스템 인터페이스 Lab2 X-window 및 명령어 사용.
Unix 방문(접속하여 로그인) 하기 수퍼 유저 되어 사용자 계정 만들기 Unix의 아파치 웹 서버에 홈페이지 등록하기
시스템 인터페이스 Lab3 Unix 사용법 실습.
Telnet 을 활용한 Linux 메뉴얼 오두환.
Internet Protocol and Programming
3부 해킹 전 정보 획득 Chapter 9. IP 주소 추적
4. 셸을 이용한 명령어 입력. Unix 시스템 쉘 간단한 셸 명령 명령 매개변수(Command arguments)
제4장 유닉스 쉘 숙명여대 창병모
Homework #5 (1/3) 다음을 수행한 후, 결과 파일들을 출력하여 제출한다.
제8장 C 쉘 창병모
임베디드 리눅스 설치 및 동작 Lecture #5.
한국 휴렛팩커드/고객지원사업본부/IT 기술사업부 박기영
Intelligent software Lab. 전재원
Presentation transcript:

Linux University of Seoul Computer Science Park Jong wook E-mail: niceilm@gmail.com MSN: niceilm@hanmail.net

로그인 Login telnet vs ssh 계정과 암호 인증을 통해 로그인 로그인할 때 ssh 특정 프로그램을 사용 – zterm, SecureCRT 등 telnet vs ssh telnet 포트번호: 23 보안에 취약 내부 네트워크 상에서 사용 ssh 포트번호:22 패킷을 암호화하여 전달 -> 보안 방화벽이 설정되어 있는 네트워크 상에서 접속을 시도할 때 사용

패스워드 변경 & 로그 아웃 패스워드 변경 로그아웃 passwd 쉘 상에서 logout 혹은 exit입력 자신의 패스워드를 바꿀 때 사용 영문자와 숫자의 특수문자의 조합을 사용 가능 로그아웃 쉘 상에서 logout 혹은 exit입력 ctrl + d 키를 누른다.

쉘(Shell) 명령어를 해석하는 기능 Shell을 통해 운영체제와 사용자가 대화 사용자의 입력을 받아 해석하여 이를 실행하고 그 결과를 화면에 보여줌 사용자는 엄격하게 분리되어 있으므로 각 사용자의 작업영역, shell을 통해서 분리 보호 받음 Shell은 사용자와 운영체제 내부의 kernel을 연결해주는 역할

쉘(Shell) (Cont.)

쉘(Shell)의 종류 Bourne Shell (sh) Bourne Again Shell (bash) C-program style shell (csh) korn shell (ksh)

Manual Page man [instruction] man ls

파일 리스트 출력 ls 현재의 디렉토리 내에 있는 파일과 디렉토리의 리스트를 출력 DOS의 dir명령과 유사 ex) ls –als

디렉토리 변경 cd 디렉토리 이동할 때 ex) 디렉토리 내에서의 . 과 ..의 의미 / 의 의미 cd .. cd ./public_html 디렉토리 내에서의 . 과 ..의 의미 .. : 부모 디렉토리 . : 현재 디렉토리 / 의 의미 맨 처음에 나오는 / 는 루트 디렉토리를 의미 경로의 중간에 나오는 / 는 디렉토리의 구분을 하는 역할

리눅스 디렉토리 구조 / bin dev home lib lost+found proc sbin etc tmp var usr … bin etc local src include lib man

절대 경로 vs 상대 경로 pwd 절대 경로 상대경로 현재의 위치를 절대 경로로 표시 디렉토리의 경로를 루트로부터 전부 적어주는 것 ex) /home/mickey1226/public_html/bbs/install.php 상대경로 현재의 디렉토리에서의 경로를 적어준 것 ex) 만약 현재의 디렉토리가 /home/mickey1226 이라면 /home/mickey1226/public_html/index.html의 위치는 ./public_html/index.html로 나타낼 수 있음

디렉토리의 생성과 삭제 mkdir rmdir 디렉토리를 생성 ex) mkdir public_html 디렉토리를 삭제 디렉토리 안에 내용이 비어있지 않을 때는 삭제가 안됨 ex) rmdir Mail

파일의 생성, 내용 편집 & 삭제 파일만 생성 파일 내용 편집하기 파일 삭제 touch [파일명] 파일 존재: 마지막 수정 시간을 현재의 시간으로 수정 파일 존재하지 않으면 내용 없는 빈 파일 생성 ex) touch atlas.txt 파일 내용 편집하기 에디터 사용: vi, emacs, pico, nano 파일 삭제 rm [파일명] : 삭제 여부 확인 rm –rf: 삭제 여부 미확인 디렉토리가 빈 디렉토리가 아닌 경우에도 삭제 가능

소유권과 권한 root만이 할 수 있음 소유권 권한 각 파일, 디렉토리는 각각 소유자가 있음 소유자변경(chown) 그룹변경(chgrp) 권한 파일, 디렉토리에 대한 읽기, 쓰기, 실행을 할 수 있는 권한 파일 혹은 디렉토리 소유자는, 동일 그룹내의 사용자, 그 밖의 사용자에 대해 각각 다른 권한을 설정 가능 권한의 변경은 파일, 디렉토리의 소유자나 관리자(root)만이 할 수 있다. root만이 할 수 있음

권한 설정 chmod user group other rwx chmod [퍼미션] [파일명] r : 읽기 권한 (read) (4) w : 쓰기 권한 (write) (2) x : 실행 권한(execute) (1) ex) rwx r-x r-x 755 rwx --x r-x 715 user group other rwx

파일 내용 출력 cat head tail 파일의 모든 내용을 화면에 출력 ex) cat atlas.txt 파일의 처음 몇 줄을 출력(Default :10줄) ex) head atlas.txt head –n 5 atlas.txt tail 파일의 마지막 몇 줄을 출력(Default : 10줄)

파일 복사 cp [원본 파일명] [복사 파일명] 원본 파일의 위치에 대상 파일로 복사 경로 이름 뒤 파일명은 써줘도 되고 쓰지 않아도 된다. ex) cp atlas.txt ./public_html/ cp atlas.txt ./public_html/atlas.txt

파일 이름 바꾸기 & 파일 이동 파일 이름 바꾸기 파일 이동 mv [현재 파일명] [대상 파일명] mv 파일명이 바뀐다. ex) mv atlas.txt Atlas.txt 파일 이동 mv 같은 디렉토리의 경우 : 파일 이름 변경 다른 디렉토리의 경우 : 파일 이동

리다이렉션 출력 리다이렉션 입력 리다리렉션 명령이 수행된 결과를 파일에 저장할 때 사용 > >> 명령의 수행 결과를 파일에 저장 >> 명령의 수행결과를 파일에 추가 입력 리다리렉션 명령의 인자를 파일로 지정 < 파일의 내용이 명령의 입력값이 된다.

복수 명령어 사용 순차적으로 수행 파이프 라인 ( | ) 각 명령어를 ;로 구분 ex) mkdir temp; mv atlas.txt ./temp; cd temp 파이프 라인 ( | ) 앞의 명령어의 결과를 뒤의 명령어 입력으로 사용 ex) cat /etc/passwd | grep mickey1226

압축과 압축 풀기 tar 여러 개의 파일을 하나의 아카이브 파일(파일들의 묶음)으로 만들 수 있음 압축을 하는 것은 아니다. ex) tar cvf temp.tar temp ----> 아카이브 파일 생성할 때 tar xvf temp.tar ----> 아카이브 파일 풀 때

압축과 압축 풀기 gzip zip 리눅스에서 가장 자주 사용하는 압축 형태 보통 tar와 함께 쓰이는 것이 일반적 gzip tmp.tar.gz tmp.tar gzip –d tmp.tar.gz tar와 같이 사용할 때 tar cvfz tmp.tar.gz ./tmp tar xvfz tmp.tar.gz zip 윈도우에서 자주 쓰는 zip 압축 파일을 풀 때 사용 ex) zip tmp.zip ./tmp/* unzip tmp.zip

사용자에 대한 정보 du –sh 파일[디렉토리] df –h 파일 혹은 디렉토리의 용량 알려줌 아무것도 지정하지 않으면 현재 디렉토리 안의 모든 파일과 디렉토리의 용량 알려줌 df –h 시스템의 총 사용 용량을 알려줌 마운트 되어 있는 파티션마다의 사용 용량을 알려줌

사용자에 대한 정보 who w finger 현재 서버에 접속한 사용자의 정보를 알려줌 현재 서버에 접속한 사용자가 수행하고 있는 작업들을 보여줌 finger

Switch User (su) su [계정] whoami 패스워드를 입력하면 다른 사용자가 될 수 있음 계정명을 사용하지 않았을 때 root로의 계정 변환 su vs su – 계정마다 환경 설정 파일이 있는데 su는 현재 로그인된 환경설정 상태에서 다른 사용자로 계정 변환하여 사용하고 su – 는 사용하려 하는 계정의 환경설정 파일을 다시 읽어 들여 환경 설정 상태가 바뀐다. whoami 현재 내가 무슨 계정으로 사용하고 있는지 확인해 줌

프로세스 관리 ps top kill 프로세스의 상태의 리스트를 보여줌 현재 시스템의 사용량을 알 수 있음 각 프로세스의 CPU 사용량, 메모리 사용량을 알 수 있음 kill 자신의 권한의 프로세스를 죽일 때 사용 단 관리자(root)는 모든 프로세스를 죽일 수 있다.

다른 서버로 접속 telnet ssh ftp telnet [서버명(아이피주소)] ssh –l 아이디 서버명(아이피주소)

시스템 종료 shutdown reboot halt 시스템을 일정 시간 이후 동작을 멈추게 하는 것 시스템이 완전히 꺼지는 것은 아님 Single mode로 전환되는 것이 보통 reboot 시스템을 다시 부팅시킬 때 사용하는 명령 halt 시스템을 완전히 끌 때 사용하는 명령

네트워크 관련 명령어 ping traceroute netstat Send ICMP ECHO_REQUEST packets to network hosts 네트웍 계층을 통해 검사 ping [해당호스트의 주소] Ex) ping www.yahoo.com traceroute Print the route packets take to network host 최종 목적지 노드까지의 라우팅 경로 정보를 출력 tracerout [해당호스트의 주소] Ex) tracerout www.yahoo.com netstat 시스템에서 사용중인 네트워크 정보 출력

RPM(Redhat Package Manager) 패키지란 배포본 시스템의 상황에 맞게 프로그램을 컴파일하고, 설정 파일에 기본적인 설정을 마무리하여 하나의 파일로 묶어 놓은 것 리눅스 사용자는 이 패키지 파일만 다운로드 받아서 시스템에 설치하면 적절한 디렉토리에 파일 설치 설치된 패키지에 대한 정보도 제공 Tar에 비해 사용자에게 매우 편리하고 강력한 기능 제공

RPM의 용도 쉬운 패키지 설치 및 제거 쉬운 업그레이드 기능 시스템 검증 질의 지울 때에도 디렉토리를 일일이 검색하여 삭제하지 않아도 간편하게 삭제 쉬운 업그레이드 기능 기존의 패키지를 제거하지 않고도 업그레이드 가능 (-U 옵션) 시스템 검증 패키지들이 제대로 설치되었는지 검증 가능 사용자 실수로 인한 파일 삭제 시 해당 패키지만 재설치 가능 질의 RPM을 통해 패키지에 대한 자세한 정보를 구할 수 있음 어떤 파일이 어떤 패키지로 설치되었는지도 알 수 있음

RPM의 구조

RPM 설치 및 제거 & 업그레이드 RPM 제거 RPM 설치 RPM 업그레이드 rpm –e [패키지명] Ex) rpm –e foo RPM 설치 rpm –ivh [패키지명] Ex) rpm –ivh foo-1.0.2-i386.rpm RPM 업그레이드 rpm –Uvh [패키지명] Ex) rpm –Uvh foo-1.0.2-i386.rpm

RPM의 기타 옵션 -v 옵션 -vv 옵션 -h 옵션 설치되는 패키지의 메시지를 보여줌 설치과정의 상세 정보를 보여줌 연속적인 해쉬(#)문자로 설치과정을 보여줌

RPM의 기타 옵션(Cont.) replacepkgs 옵션 replacefiles 옵션 force 옵션 nodeps 옵션 이미 패키지가 설치된 경우에도 재설치가 가능 설치된 패키지에 이상이 생긴 경우 주로 사용 rpm –ivh --replacepkgs [패키지명] replacefiles 옵션 패키지 파일의 버전이 다른 경우에도 설치 가능 rpm –ivh –replacefiles [패키지명] force 옵션 기존의 설치된 패키지를 무시하고 강제로 설치 “--replacepkgs” + “--replacefiles” rpm -ivh --force [패키지명] nodeps 옵션 패키지의 의존성 검사를 무시하고 강제로 설치 rpm -ivh --nodeps [패키지명] 의존성 문제로 설치 및 삭제 되지 않는 경우 활용

패키지 정보 알아보기 rpm –q [옵션] [패키지 목록] 설치된 모든 패키지 출력 해당 파일을 포함하는 패키지 알아보기 rpm –q –a (rpm –qa) 해당 파일을 포함하는 패키지 알아보기 which [패키지명] ; 패키지의 위치를 알아냄 rpm –qf [패키지가 설치된 경로명] rpm –qf `which [패키지명]` rpm –qif `which [패키지명]` -f옵션은 해당 파일 포함 패키지 출력 -qi옵션은 패키지에 대한 자세한 설명 -ql옵션은 패키지의 파일 목록

패키지 정보 알아보기(Cont.) 패키지 파일 상태 점검 패키지 설정 파일 알아보기 의존성을 갖는 파일 살펴보기 패키지의 검증 rpm –q –s [패키지명] 패키지 설정 파일 알아보기 rpm –qc [패키지명] 의존성을 갖는 파일 살펴보기 rpm –qRp [패키지명] 패키지의 검증 rpm –V [패키지명]