1 / 63

Linux 개요 , 명령어와 디렉토리

Linux 개요 , 명령어와 디렉토리. Suckzoo. Linux. 다중 사용자 , 멀티 태스킹 , 다중 스레드를 지원하는 네트워크 운영 체제 (NOS ) 자유 소프트웨어와 오픈 소스 개발의 가장 유명한 표본. Linux 의 특징. 멀티유저 시스템을 지원 가볍고 안정적 서버로서 많이 선택 받는다 . 무료 , 소스코드가 공개되어 있음. 배포되는 Linux. Fedora, Ubuntu, CentOS , BSD, Debian 등 다양한 OS 가 무료로 배포되고 있다 .

jaafar
Download Presentation

Linux 개요 , 명령어와 디렉토리

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Linux 개요,명령어와 디렉토리 Suckzoo

  2. Linux • 다중 사용자, 멀티 태스킹, 다중 스레드를 지원하는 네트워크 운영 체제(NOS) • 자유 소프트웨어와 오픈 소스 개발의 가장 유명한 표본

  3. Linux의 특징 • 멀티유저 시스템을 지원 • 가볍고 안정적 • 서버로서 많이 선택 받는다. • 무료, 소스코드가 공개되어 있음

  4. 배포되는 Linux • Fedora, Ubuntu, CentOS, BSD, Debian등 다양한 OS가 무료로 배포되고 있다. • 거울을 통해 CentOS, debian, fedora, bsd, ubuntu가 미러링되는중.(chicken도?)

  5. Linux 구조 - Linux Kernel • 운영체제의 핵심 부분. • 세부적인 기능은 아래와 같다. • 프로세스 관리 • 메모리 관리 • 파일 시스템 관리 • 디바이스 관리 • 네트워크 관리 • 지속적으로 이용되므로 보호된 메모리에 적재된다.

  6. Linux 구조 – Linux Shell • Shell : 껍데기 • OS를 둘러싼 껍데기라고 할 수 있다. • 사용자와 OS사이의 층 • 명령어를 입력 받아 컴퓨터가 이해할 수 있는 0과 1로 된 명령어로 바꾸어 커널에 전달해주는 역할을 한다.

  7. 리눅스의디렉토리 구조 /bin /sbin /boot /tmp /dev /usr /etc /var /home /lib /media /proc /opt /root

  8. /home, /root • /home은 일반 사용자들의 홈 디렉토리. • /root는 루트의 홈 디렉토리.

  9. /bin, /sbin • /bin • 일반사용자가 리눅스를 사용할 때 쓰는 각종 유틸리티가 들어있는 디렉토리 • (ex : cat, chmod, ls) • /sbin • 루트유저가 시스템 관리에 필요한 유틸리티가 들어있는 디렉토리

  10. /boot, /dev • /boot • 부팅에 필요한 필수적인 파일들이 모인 디렉토리 • 부트로더, 커널이 위치한다. • /dev • 장치 파일, 특수 파일이 들어있는 폴더

  11. /etc, /lib • /etc • 시스템의 전반적인 관리 파일이 들어있는 디렉토리 • 계정 정보, 비밀번호, 스케줄링 등에 관련된 파일이 있음 • static file이어야 한다. • static file : 사용자 권한 없이 변경할 수 없는 파일. • /lib • 시스템을 부트 하거나 혹은 그 외에 root에 관련된파일을 이용할 때 자주 쓰이는 라이브러리 파일을 담고 있다. • 라이브러리 : 하위 프로그램들의 모임

  12. /media, /proc • /media • 외부 저장매체(ex : usb memory)를 mount하여 하위 디렉토리인 것 같이 사용할 수 있는 디렉토리 • /proc • 실행되고 있는 프로세스, 사용중인 디바이스, 커널이 수집한 하드웨어 정보가 저장된다. • /proc/meminfo – 메모리 사용 현황 • /proc/stat – 시스템 상태 • /proc/uptime – 부팅 후 흐른 시간 • /proc/version – 실행되고 있는 커널 버전 • 각 프로세스는 고유의 식별자(PID)를 가진다. • PID를 이름으로 갖는 디렉토리들이/proc의 하위 디렉토리로 존재하며, 그 안에 각종 정보가 저장됨.

  13. /opt, /tmp • /opt • 기본적으로 설치되는 프로그램을 제외한 소프트웨어들과 애드온들이 설치되는 디렉토리이다. • bit에는 scala가 깔려있는 듯 • /tmp • 임시파일들이 저장되는 장소 • linux종료 시 모든 파일이 삭제됨.

  14. /usr • /usr • 시스템에 빌드하는 프로그램들의 소스나 매뉴얼 등을 포함하고 있는 디렉토리이다. • /usr/src : 시스템에 빌드하는 프로그램들의 소스 • /usr/share : 매뉴얼 등의 자료 • /usr/local : 잡다한 것들 • /bin, /usr/bin, /usr/local/bin의 차이 • /bin은 리눅스를 돌리기 위한 최소한의 것들을, • /usr/bin은 콘솔에서 확장된 것이나 Xwindow관련 프로그램등이, • /usr/local/bin은 잡다한 프로그램들이 위치해있다.

  15. /var • 자주 바뀌는 데이터들을 모아놓은 디렉토리 • /var/lib • 시스템 운용 시 계속 바뀌는 파일들이 담김 • /var/log • 각종 로그들 저장 • /var/run • 시스템 정보를 담음. 부팅시 초기화된다. • /var/tmp • /tmp보다 좀 더 오래 유지되야 하는 것들이 담긴다. • 부팅시 초기화되지 않는다.

  16. Commands • 파일 관련 • cp, rm, mv • mkdir, rmdir • tar • 출력 • cat, more, less, wc • grep • touch, vi • 계정 관련 • passwd • Shell 관련 • chsh • 매뉴얼 • man • Path 관련 • pwd • cd • ls

  17. Commands • 시스템 • halt, reboot, shutdown • init • 원격 접속 • ssh, scp • 와일드카드 • pipe(|) • 리디렉션 • 히스토리 • 권한 • chmod, chown, chgrp • su, sudo • 프로세스 • signal • ps, kill • jobs, bg, fg • background process(&)

  18. passwd (password) • 계정의 비밀번호를 바꾼다. • 사용법 • passwd를 친다 • 원래 비밀번호를 친다 • 새 비밀번호를 친다 • 끗

  19. chsh (change shell) • 사용하는 shell을 바꾸어 준다. • 기본으로 사용하는 shell은 /bin/bash • 비밀번호 입력 후 shell 위치 입력 • echo $SHELL : 현재 이용중인 shell 출력

  20. man (manual) • 프로그램의 사용방법을 출력해주는 명령어 • 용법 : man [command] • man ls • ls의 사용법을 알려준다.

  21. pwd (print working directory) • 현재 작업중인 디렉토리를 표시해준다. • 예 : /home/suckzoo에서 작업 중이면

  22. cd (change directory) • 작업중인 디렉토리를 다른 디렉토리로 변경한다. • 용법 : cd [target]

  23. ls (list) • 파일들을 나열하는 명령어 • option • -l(long) • 권한, group, owner 등 자세한 정보 표시 • -a(all) • 숨겨진 파일까지 다 보여짐 • -R(recursive) • 디렉토리 안의 디렉토리 안의 … 디렉토리 까지 전부 나온다. • -d(directory) • 디렉토리 내부 컨텐츠가 아니라 디렉토리 그 자체의 정보를 출력한다. • ls –d public_htmlvslspublic_html

  24. cp (copy) • 파일을 복사한다. • 사용법 : cp [option] [source] [target] • option • -r(recursive) : 해당 파일과 그 하위파일까지 전부 복사 • 디렉토리 복사 시 사용 가능.

  25. mv (move) • 파일을 이동(잘라내기+붙이기)한다. • 사용법 : mv [option] [source] [target] • option • -r(recursive) : 해당 파일과 그 하위파일까지 전부 이동 • 디렉토리 옮길 때 쓸 수 있음.

  26. rm (remove) • 파일을 삭제한다. • 사용법 : rm [option] [source] • option • -r(recursive) :해당 파일과 그 하위파일까지 전부 삭제 • 디렉토리 통으로 삭제시 이용 가능. • 조심조심 쓰자. 잘못 쓰다 날라가면 죽슴다ㅠㅠ

  27. mkdir (make directory) • 디렉토리를 새로 만든다. • 사용법 : mkdir [option] [target] • option • -p : 해보세요 • mkdir –p h/e/l/l/w/o/r/l/d • cd h • cd e • cd l • cd l • …

  28. rmdir (remove directory) • 비어있는디렉토리를 지울 때 쓴다. • 사용법 rmdir [option] [target] • option • -p : 하위 디렉토리를 모조리 지운다. • 단, 모든 하위 디렉토리가 비어있어야 한다. • rm –r a vsrmdir –p a

  29. tar • 여러 파일을 모으고 압축한다. • 사용법 : tar [cvxzf] filename file1 file2 … • option • -c(create) : 압축 하기 • -v(verbose) : 진행상황 화면에 보여주기 • -x(extract) : 압축 풀기 • -z(gzip) : gzip으로 압축/해제 • -f(file) : 압축 결과를 파일로 저장하기

  30. tar • 파일 모으기 • alzip.tar 파일로 a.a, b.b, c.c, d.d를 모으는 방법 • tar cvf alzip.tar a.ab.bc.cd.d • 모으고 압축까지 한번에(tar.gz) • alzip.tar.gz 파일로 a.ab.bc.cd.d를 모으고 압축 • tar cvzf alzip.tar.gz a.ab.bc.cd.d • tar.gz 풀기 • gunzip alzip.tar.gz -> tar xvf alzip.tar • 를 한방에! tar xvzf alzip.tar.gz

  31. cat(concatenate) • 파일 내용 읽기, 합치기 할 때 쓴다. • 사용법 • cat [filename] • 파일을 읽는다 • cat [a] [b] > [c] • a와 b의 파일 내용을 합친 것을 c로 저장한다. • cat –n [filename] • 줄 번호가 나오게 파일 내용을 출력한다.

  32. more • 내용을 앞에서부터 화면에 꽉 차게 출력시킨다. • 엔터를 눌러서 한 줄씩 이동 • 스페이스바를 통해 한 페이지씩 이동 • q로 나간다.

  33. less • more보다 더 많은 기능 지원 • 사용법 : less [filename] • less로 파일을 불러와보자. • /[keyword] : [keyword] 찾기 • n으로 이전, N으로 다음 키워드 찾기. • :[line] : [line]번 줄로 이동 • 무려 편집기능도 제공한다. v를 눌러보세요 • q로 나간다. • 그 외 • http://linuxaria.com/howto/bash-linux-less?lang=en

  34. wc(word count) • 줄 수, 단어 수, 바이트 수를 세준다. • wc[filename]

  35. grep(global/regular expression/print) • 텍스트 검색 기능을 가진 명령어 • 주어진 정규표현식(regular expression)과 맞는 줄을 찾아 출력 • grep [option] [keyword] [file] • option • -i : 대소문자 구분 엑스 • -w : 독립적인 단어로 검색 • -w로 apple을 찾으면 pineapple을 가진줄은 출력이 안된다.

  36. Regular Expression

  37. touch • 만진다. • 수정 시간을 손대는 명령어 • 용법 : touch [option] [file/time] • option • -r [file1] [file2] • file2의 수정시간을 file1과 같게 한다. • -t [time] [file] • file의 수정시간을 time이 되게 한다.

  38. vi • 편집기이다. • 다들 한번쯤은 써봤을 것이므로 패스한다. • vi의 사용법 • http://vim-adventures.com/

  39. 권한 • 말 그대로 권한. • 파일을 접근할 수 있는지 여부를 • 사용자/그룹/그외 • 로 나누어 8진수로 표현.

  40. 권한 설정에 8진수 쓰기 • ls –l 해보면 • 요기에 –rwxrwxrwx이런애들이8진수에 대응 • ex) catAndDog.c • -rw-r—r-- : (4+2)(4)(4) -> 644 • ex2) catAndDog • -rwxrwxr-x : (4+2+1)(4+2+1)(4+1) ->775

  41. sticky bit • 모든 사용자가 사용할 수 있는 디렉토리에 적용 • 이 디렉토리 내의 파일을 others가 임의로 삭제할 수 없음 • 소유자만 삭제 가능 • 예 : /tmp • 팔진수 세자리 앞에 1을 붙여 표현

  42. SetUID, SetGID • SetUID가 걸린 파일을 실행시키면 파일 소유자의 권한으로 프로그램을 실행한다. • 8진수 세자리 앞에 4를 붙여 표현 • SetGID가 걸린 파일을 실행시키면 파일 소유그룹의 권한으로 프로그램을 실행한다. • 8진수 세자리 앞에 2를 붙여 표현

  43. chmod • chmod • 파일의 권한을 바꾼다. • 용법 : chmod [permission] [file] • permission은 앞에서 말한 8진법을 이용 • 혹은, +, -, r, w, x 등을 이용하여 설정 가능 • u : user, g : group, o : others, a : all • ex : chmodug+wx a • 유저, 그룹에게 a의 쓰기/실행 권한 부여

  44. chown, chgrp • chown • 파일 주인을 바꾼다. • 용법 : chown [owner] [file] • 루트밖에 못한다. • chgrp • 파일 소유 그룹을 바꾼다. • 용법 : chgrp [group] [file]

  45. su (subsituteuser) • 유저 전환하기. • 용법 : su[username] • username이 비면 root로 전환 시도. • password 필요.

  46. sudo(substitute user do) • /etc/sudoers에 유저가 기록되어 있어야 함. • 다른 유저의 권한으로 어떤 프로그램을 실행시킴. • sudo [option] [process] • option • -u [username] : username의 권한으로 실행 • -u가 없으면 root로 인식.

  47. Signal • 프로세스간 의사소통을 위해 보내는 신호

  48. jobs, ps • jobs • 현재 작업중인 프로세스들을 출력한다. • ps • 마찬가지로 현재 작업중인 프로세스들을 출력한다. • 용법 : ps [option] • option • -u : CPU, memory 점유율 등 보다 다양한 정보 표시 • -a : 모든 유저가 사용하는 프로세스 표시 • -U [user] : [user]가 사용하는 프로세스 표시

More Related