SlideShare a Scribd company logo
1 of 44
Download to read offline
리눅스 시작하기
2019 - 마이크로프로세서 및 실험
리눅스 기초 명령어
리눅스는 무엇인가요?
• 시스템을 작동시키는 운영체제 중 하나

• AT&T 벨 연구소에서 1960년대에 개발 되었음

• Command-line Interface

• GUI(윈도우에서 사용하는) 도 지금은 사용할 수 있음
LINUX VS UNIX
• 유닉스는 리눅스의 선배격입니다

• 리눅스는 유닉스의 변형입니다

• Mac OS도 마찬가지입니다. 이 가이드의 대부분이 Mac
OS에도 적용됩니다

• 리눅스는 오픈소스입니다

• 전세계에서 서버군에서 가장 많이 사용합니다

• 리눅스를 도저히 이길 수 없습니다
왜 리눅스인가요?
리눅스는…
• 유닉스와 호환성을 가집니다.

• 서버용 운영체제로 사용할 수 있습니다.

• 다양한 리눅스 배포판이 있습니다

• Redhat, Fedora, Ubuntu, SUSE …

• 오픈소스로 소프트웨어로 무료로 사용할 수 있습니다.
리눅스는…
• 다중사용자 및 다중처리를 실행할 수 있습니다

• 다양한 네트워크 환경을 지원합니다.

• 이식성이 좋습니다

• PowerPC, ARM …
INTERNET BASED SERVER’S MARKET SHARE

<W3COOK>
Windows
2%
알 수 없음(리눅스변형)
3%
FreeBSD
2%
리눅스
94%
INTERNET BASED SERVER’S MARKET SHARE

<W3TECHS>
Windows
32%
알 수 없음(리눅스변형)
31%
FreeBSD
1%
리눅스
36%
출처: https://w3techs.com/technologies/details/os-unix/all/all
리눅스?

컴퓨터공학과는 피할 수 없다
기초 리눅스 명령어
같이 갑시다.
로그인
• PuTTY 를 다운로드 받으세요(https://c11.kr/PuTTY)

• KeyClaim 에서 서버 계정을 받으세요

• 주소: keyclaim.c11.kr
리눅스 명령어 - DATE
• 오늘 날짜와 시간을 알려주는 명령어입니다.
리눅스 명령어 - CAL
• 캘린더를 출력하는 명령어
리눅스 명령어 - 리스트 조회(LS)
• 현재 디렉토리의 리스트를 조회하는 명령어

• list를 뜻함.

• 옵션

• -a (숨김파일을 포함한 전체 파일 조회)

• -l (리스트 형태로 상세하게 출력)

• -h (사용자가 볼 수 있는 파일크기 단위로 보기)

• -t (시간 순서대로 정렬)
리눅스 명령어 - 리스트 조회(LS)
• 자주 쓰는 명령어

• ls (단순히 리스팅하기)

• ls -al (디렉토리 내 모든 파일 및 폴더 리스팅)

• ls -alh (디렉토리 내 모든 파일 및 폴더 리스팅과 더불어
파일 사이즈를 눈에 보기 쉽게 해줌)

• ls -ltr (디렉토리 내 모든 파일 및 폴더의 수정시간 기준
정렬)
리눅스 명령어 - 디렉토리 옮기기(CD)
• change directory 라는 뜻을 가지고 있음

• cd [이동할 디렉토리] 로 사용함
디렉토리 옮기기(CD) - 계층구조 이해
• 리눅스 시스템은 윈도우의 시스템과는 조금 다릅니다

• 윈도우는 C드라이브, D드라이브 형태로 되어있고 그것이

하나의 물리적/논리적 디스크로 나뉘어져 있지만

리눅스 시스템은 특정 폴더에도 디스크를 할당할 수 있는

시스템입니다.
디렉토리 옮기기(CD) - 계층구조 이해
리눅스 명령어 - 현재 작업중인 디렉토리 출력
• pwd

• 현재 작업중인 디렉토리를 절대경로로 출력해줍니다
리눅스 명령어 - 파일 복사(CP)
• 특정 파일을 복사하는 명령어입니다

• cp [arg] [복사할 파일] [복사될 파일]
파일 복사(CP) - 자주 쓰는 옵션
• 자주 쓰는 옵션

• cp -r

• 폴더까지 복사해주는 명령어

• cp -f

• 같은 파일이 있다면 강제로 덮어씌움

• cp -v

• verbose의 약자로 상세한 복사내역을 표시함
리눅스 명령어 - 파일 이동(MV)
• 특정 파일을 이동하거나 이름을 바꾸는 명령어

• cp와 옵션이 거의 똑같지만 이동할 때 디렉토리까지 모두 이
동하기 때문에 (-r) 옵션을 사용하지 않습니다
리눅스 명령어 - 파일 지우기
• 특정 파일이나 디렉토리를 지우는 역할을 합니다

• rm을 수행할 때는 항상 조심해야 합니다

• 자주 쓰는 명령어

• rm -r [디렉토리] 디렉토리를 포함해서 삭제

• rm -v [파일] 삭제한 내용에 대해 표시

• rm -f [파일] 강제로 삭제
리눅스 명령어 - 화면 청소하기
• 화면을 깨끗하게 만들기 위해서는 clear 를 사용합니다.

• 알아두면 좋습니다.
리눅스 명령어 - PS
• 실행중인 프로세스 상태와 정보를 출력합니다

• ps 명령어만 입력하게 되면 현재 사용자의 프로세스만 나타
나게 됩니다. 그렇지만 이렇게 찾는 경우는 거의 없기 때문
에 ps 를 입력할때는 항상 ps -ef 를 외웁시다.

• 자주 사용하는 명령어

• ps -ef: 현재 실행중인 모든 프로세스의 자세한 정보를
띄웁니다
리눅스 명령어 - KILL
• 프로세스를 죽일 때 사용하는 명령어

• kill -9와 kill -3 을 주로 사용합니다

• kill을 시킨 후 ps로 제대로 죽었는지 확인해야 합니다

• 일반적으로 kill 명령어를 사용할 때는 root 계정을 사용
합니다
리눅스 설정 - 사용자 비밀번호 변경
• 사용자의 비밀번호를 변경하기 위해서는 passwd 명령어를
사용합니다.

• passwd 를 입력하면 비밀번호를 변경할 수 있습니다.

• root 계정에서 passwd [사용자명] 을 입력하면 사용자명에
해당하는 비밀번호를 변경할 수 있습니다.
리눅스 명령어 - 파일 내용보기 및 병합하기
• 파일 내용을 출력하는 명령어

• cat [파일명]
리눅스 명령어 - 많은 파일을 출력하기
• 로그파일 등을 출력할 때는 화면에서 글자가 밀리는 경우가
종종 있습니다.

• 특히 데이터센터에서 KVM 이라는 장비로 서버에 직접 접속
해서 사용할 때(PUTTY를 사용하지 않기 때문에 스크롤이
없습니다) 유용합니다.

• more [파일명]
파일 접근 권한 - CHMOD
• 리눅스는 많은 사용자가 사용할 수 있기 때문에 permission(권한) 이라는 값
을 설정할 수 있습니다.

• 이런 퍼미션은 다음과 같은 규칙을 가지고 있습니다.

• ABC

• A: 사용자 / B: 그룹 / C: 사용자와 그룹 이외

• 각 값은 7을 넘을 수 없으며 다음과 같은 규칙이 있습니다.

• 4 - 읽기

• 2 - 쓰기

• 1 - 실행하기
파일 접근 권한 - CHMOD
• 주로 폴더에는 755 권한 775권한,

파일에는 644나 664 권한을 줍니다.

• 777이나 666 권한은 사용하지 않도록 합니다.
파일 접근 권한 - CHMOD
• 파일 권한을 주는 명령어

• chmod [XXX] [파일/디렉토리명]
리눅스 명령어 - 파일 소유권 변경
• 파일의 소유자를 변경시킬 수 있는 명령어

• chown [사용자명]:[그룹명] [파일/디렉토리명]

• 자주 쓰는 명령어

• chown -hR

• 심볼릭 링크의 소유권과 디렉토리의 소유권을 포함한
모든 소유권을 바꾸는 명령어
리눅스 명령어 - 다른 계정 권한으로 명령어 사용하기
• case 1) 일반사용자 장길산은 패키지 업데이트 담당자이다.
매주 1회씩 패키지를 업데이트 하기 위해서 root 계정을 임
시로 사용해야 한다. 그렇지만 root 계정의 비밀번호를 알려
주기에는 많은 risk 가 존재한다. 어떻게 해야할까?

• ====> 이런 경우에 sudo 를 사용합니다.
리눅스 명령어 - 패키지 관리
• 우분투/Raspbian 처럼 Debian 계열의 리눅스에서는 apt 를 사용해서 패키지
를 관리합니다.

• 자주 사용하는 명령어

• 업데이트 서버에서 새로운 패키지 받아오기

• apt update

• 업데이트 서버에서 새로운 패키지 설치하기

• apt install [패키지명]

• 업데이트 서버에서 새로운 업데이트 설치하기

• apt upgrade
리눅스 명령어 - 파일 다운로드받기
• wget https://www.daum.net 다음 메인화면 다운로드
리눅스 명령어 - GIT 소스코드 다운로드받기
• 많은 사람들이 함께 개발할 때 git 을 사용합니다.

• git은 매우 다양한 옵션이 있기 때문에 우리가 소스를 가져
올 때 쓰는 clone 만 알아봅니다.

• git clone https://github.com/google/googletest.git

• 구글에서 내놓은 구글테스트 프레임워크를 clone 하는
명령어
리눅스 명령어 - 파일찾기
• find 명령어는 매우 다양한 내용을 담고 있습니다

• find [경로] [옵션] 형태로 이루어져있습니다

• find . -name “*.log*” -exec rm - f {} ;

• 로그로 끝나는 파일을 찾아서 모두 지워라 라는 내용을 수
행

• man find 를 통해 학습하세요.
리눅스 명령어 - GZIP
• gzip 명령어는 파일을 압축하는 명령어입니다.

• gzip -9 [파일명]

• 폴더는 압축할 수 없습니다.
리눅스 명령어 - TAR
• tar은 폴더까지 압축시켜주는 도구입니다.

• tar -cvzf 파일명.tar.gz 파일경로/ 를 사용하면 됩니다.
리눅스 명령어 - LSUSB
• 연결된 USB 장비의 목록을 출력합니다
리눅스 명령어 - MAN
• 명령어 설명서를 보여줍니다.

• 예를들어 man alias 를 입력하게 되면 alias 명령에 대해 

알려줍니다.
감사합니다.

More Related Content

What's hot

Master slave pattern
Master slave patternMaster slave pattern
Master slave patternHeo Seungwook
 
Introduction to Linux
Introduction to LinuxIntroduction to Linux
Introduction to Linuxsureskal
 
New Ways to Find Latency in Linux Using Tracing
New Ways to Find Latency in Linux Using TracingNew Ways to Find Latency in Linux Using Tracing
New Ways to Find Latency in Linux Using TracingScyllaDB
 
Docker networking Tutorial 101
Docker networking Tutorial 101Docker networking Tutorial 101
Docker networking Tutorial 101LorisPack Project
 
Red Hat Linux Certified Professional step by step guide Tech Arkit
Red Hat Linux Certified Professional step by step guide Tech ArkitRed Hat Linux Certified Professional step by step guide Tech Arkit
Red Hat Linux Certified Professional step by step guide Tech ArkitRavi Kumar
 
Alphorm.com Formation Ansible : Le Guide Complet du Débutant
Alphorm.com Formation Ansible : Le Guide Complet du DébutantAlphorm.com Formation Ansible : Le Guide Complet du Débutant
Alphorm.com Formation Ansible : Le Guide Complet du DébutantAlphorm
 
Docker–Grid (A On demand and Scalable dockerized selenium grid architecture)
Docker–Grid (A On demand and Scalable dockerized selenium grid architecture)Docker–Grid (A On demand and Scalable dockerized selenium grid architecture)
Docker–Grid (A On demand and Scalable dockerized selenium grid architecture)STePINForum
 
VMware Tanzu Introduction- June 11, 2020
VMware Tanzu Introduction- June 11, 2020VMware Tanzu Introduction- June 11, 2020
VMware Tanzu Introduction- June 11, 2020VMware Tanzu
 
User Management and Privileges - pfSense Hangout February 2015
User Management and Privileges - pfSense Hangout February 2015User Management and Privileges - pfSense Hangout February 2015
User Management and Privileges - pfSense Hangout February 2015Netgate
 
Linux Kernel Programming
Linux Kernel ProgrammingLinux Kernel Programming
Linux Kernel ProgrammingNalin Sharma
 

What's hot (20)

Linux Kernel Overview
Linux Kernel OverviewLinux Kernel Overview
Linux Kernel Overview
 
Inside the Mac OS X Kernel
Inside the Mac OS X KernelInside the Mac OS X Kernel
Inside the Mac OS X Kernel
 
Ansible get started
Ansible get startedAnsible get started
Ansible get started
 
Linux Internals - Interview essentials 4.0
Linux Internals - Interview essentials 4.0Linux Internals - Interview essentials 4.0
Linux Internals - Interview essentials 4.0
 
Master slave pattern
Master slave patternMaster slave pattern
Master slave pattern
 
Introduction to Linux
Introduction to LinuxIntroduction to Linux
Introduction to Linux
 
BusyBox for Embedded Linux
BusyBox for Embedded LinuxBusyBox for Embedded Linux
BusyBox for Embedded Linux
 
New Ways to Find Latency in Linux Using Tracing
New Ways to Find Latency in Linux Using TracingNew Ways to Find Latency in Linux Using Tracing
New Ways to Find Latency in Linux Using Tracing
 
Tuned
TunedTuned
Tuned
 
Building Embedded Linux UDOONEO
Building Embedded Linux UDOONEOBuilding Embedded Linux UDOONEO
Building Embedded Linux UDOONEO
 
Ceph issue 해결 사례
Ceph issue 해결 사례Ceph issue 해결 사례
Ceph issue 해결 사례
 
Docker networking Tutorial 101
Docker networking Tutorial 101Docker networking Tutorial 101
Docker networking Tutorial 101
 
Red Hat Linux Certified Professional step by step guide Tech Arkit
Red Hat Linux Certified Professional step by step guide Tech ArkitRed Hat Linux Certified Professional step by step guide Tech Arkit
Red Hat Linux Certified Professional step by step guide Tech Arkit
 
Alphorm.com Formation Ansible : Le Guide Complet du Débutant
Alphorm.com Formation Ansible : Le Guide Complet du DébutantAlphorm.com Formation Ansible : Le Guide Complet du Débutant
Alphorm.com Formation Ansible : Le Guide Complet du Débutant
 
Docker–Grid (A On demand and Scalable dockerized selenium grid architecture)
Docker–Grid (A On demand and Scalable dockerized selenium grid architecture)Docker–Grid (A On demand and Scalable dockerized selenium grid architecture)
Docker–Grid (A On demand and Scalable dockerized selenium grid architecture)
 
Jenkins tutorial
Jenkins tutorialJenkins tutorial
Jenkins tutorial
 
Introduction to Vagrant
Introduction to VagrantIntroduction to Vagrant
Introduction to Vagrant
 
VMware Tanzu Introduction- June 11, 2020
VMware Tanzu Introduction- June 11, 2020VMware Tanzu Introduction- June 11, 2020
VMware Tanzu Introduction- June 11, 2020
 
User Management and Privileges - pfSense Hangout February 2015
User Management and Privileges - pfSense Hangout February 2015User Management and Privileges - pfSense Hangout February 2015
User Management and Privileges - pfSense Hangout February 2015
 
Linux Kernel Programming
Linux Kernel ProgrammingLinux Kernel Programming
Linux Kernel Programming
 

Similar to 리눅스 시작하기

이것이 리눅스다 - 김종욱
이것이 리눅스다 - 김종욱이것이 리눅스다 - 김종욱
이것이 리눅스다 - 김종욱Jong Wook Kim
 
이것이 리눅스다
이것이 리눅스다이것이 리눅스다
이것이 리눅스다Yeon Tae Kim
 
시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203doo rip choi
 
33기 여채린 "리눅스에 대한 소개"
33기 여채린 "리눅스에 대한 소개"33기 여채린 "리눅스에 대한 소개"
33기 여채린 "리눅스에 대한 소개"hyu_jaram
 
[17.01.19] docker introduction (Korean Version)
[17.01.19] docker introduction (Korean Version)[17.01.19] docker introduction (Korean Version)
[17.01.19] docker introduction (Korean Version)Ildoo Kim
 
2장 리눅스의 기초
2장 리눅스의 기초2장 리눅스의 기초
2장 리눅스의 기초Young Jin Suh
 
Ubuntu packaging - make package
Ubuntu packaging - make packageUbuntu packaging - make package
Ubuntu packaging - make package경섭 심
 
Docker at Deview 2013
Docker at Deview 2013Docker at Deview 2013
Docker at Deview 2013Jude Kim
 
Docker at Deview 2013
Docker at Deview 2013Docker at Deview 2013
Docker at Deview 2013Jude Kim
 
오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)
오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)
오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)Yoonsoo Kim
 
Docker & Kubernetes 기초 - 최용호
Docker & Kubernetes 기초 - 최용호Docker & Kubernetes 기초 - 최용호
Docker & Kubernetes 기초 - 최용호용호 최
 
Introduction to Linux #1
Introduction to Linux #1Introduction to Linux #1
Introduction to Linux #1UNIST
 
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기Chanwoong Kim
 
Ansible introduction & demo
Ansible introduction & demoAnsible introduction & demo
Ansible introduction & demoYongKi Kim
 
Docker.소개.30 m
Docker.소개.30 mDocker.소개.30 m
Docker.소개.30 mWonchang Song
 
Linux introduction
Linux introductionLinux introduction
Linux introductionSuho Lee
 
강분도 - 공개SW개발과 우분투 (2010Y10M05D)
강분도 - 공개SW개발과 우분투 (2010Y10M05D)강분도 - 공개SW개발과 우분투 (2010Y10M05D)
강분도 - 공개SW개발과 우분투 (2010Y10M05D)Ubuntu Korea Community
 

Similar to 리눅스 시작하기 (20)

이것이 리눅스다 - 김종욱
이것이 리눅스다 - 김종욱이것이 리눅스다 - 김종욱
이것이 리눅스다 - 김종욱
 
이것이 리눅스다
이것이 리눅스다이것이 리눅스다
이것이 리눅스다
 
JetsonTX2 Python
 JetsonTX2 Python  JetsonTX2 Python
JetsonTX2 Python
 
시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203
 
33기 여채린 "리눅스에 대한 소개"
33기 여채린 "리눅스에 대한 소개"33기 여채린 "리눅스에 대한 소개"
33기 여채린 "리눅스에 대한 소개"
 
[17.01.19] docker introduction (Korean Version)
[17.01.19] docker introduction (Korean Version)[17.01.19] docker introduction (Korean Version)
[17.01.19] docker introduction (Korean Version)
 
2장 리눅스의 기초
2장 리눅스의 기초2장 리눅스의 기초
2장 리눅스의 기초
 
Ubuntu packaging - make package
Ubuntu packaging - make packageUbuntu packaging - make package
Ubuntu packaging - make package
 
Docker at Deview 2013
Docker at Deview 2013Docker at Deview 2013
Docker at Deview 2013
 
Docker at Deview 2013
Docker at Deview 2013Docker at Deview 2013
Docker at Deview 2013
 
오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)
오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)
오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)
 
Docker & Kubernetes 기초 - 최용호
Docker & Kubernetes 기초 - 최용호Docker & Kubernetes 기초 - 최용호
Docker & Kubernetes 기초 - 최용호
 
Introduction to Linux #1
Introduction to Linux #1Introduction to Linux #1
Introduction to Linux #1
 
InfiniFlux with_php
InfiniFlux with_phpInfiniFlux with_php
InfiniFlux with_php
 
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
 
Network researching
Network researchingNetwork researching
Network researching
 
Ansible introduction & demo
Ansible introduction & demoAnsible introduction & demo
Ansible introduction & demo
 
Docker.소개.30 m
Docker.소개.30 mDocker.소개.30 m
Docker.소개.30 m
 
Linux introduction
Linux introductionLinux introduction
Linux introduction
 
강분도 - 공개SW개발과 우분투 (2010Y10M05D)
강분도 - 공개SW개발과 우분투 (2010Y10M05D)강분도 - 공개SW개발과 우분투 (2010Y10M05D)
강분도 - 공개SW개발과 우분투 (2010Y10M05D)
 

리눅스 시작하기

  • 1. 리눅스 시작하기 2019 - 마이크로프로세서 및 실험
  • 3. 리눅스는 무엇인가요? • 시스템을 작동시키는 운영체제 중 하나 • AT&T 벨 연구소에서 1960년대에 개발 되었음 • Command-line Interface • GUI(윈도우에서 사용하는) 도 지금은 사용할 수 있음
  • 4. LINUX VS UNIX • 유닉스는 리눅스의 선배격입니다 • 리눅스는 유닉스의 변형입니다 • Mac OS도 마찬가지입니다. 이 가이드의 대부분이 Mac OS에도 적용됩니다 • 리눅스는 오픈소스입니다 • 전세계에서 서버군에서 가장 많이 사용합니다 • 리눅스를 도저히 이길 수 없습니다
  • 6. 리눅스는… • 유닉스와 호환성을 가집니다. • 서버용 운영체제로 사용할 수 있습니다. • 다양한 리눅스 배포판이 있습니다 • Redhat, Fedora, Ubuntu, SUSE … • 오픈소스로 소프트웨어로 무료로 사용할 수 있습니다.
  • 7. 리눅스는… • 다중사용자 및 다중처리를 실행할 수 있습니다 • 다양한 네트워크 환경을 지원합니다. • 이식성이 좋습니다 • PowerPC, ARM …
  • 8. INTERNET BASED SERVER’S MARKET SHARE <W3COOK> Windows 2% 알 수 없음(리눅스변형) 3% FreeBSD 2% 리눅스 94%
  • 9. INTERNET BASED SERVER’S MARKET SHARE <W3TECHS> Windows 32% 알 수 없음(리눅스변형) 31% FreeBSD 1% 리눅스 36% 출처: https://w3techs.com/technologies/details/os-unix/all/all
  • 12. 로그인 • PuTTY 를 다운로드 받으세요(https://c11.kr/PuTTY) • KeyClaim 에서 서버 계정을 받으세요 • 주소: keyclaim.c11.kr
  • 13. 리눅스 명령어 - DATE • 오늘 날짜와 시간을 알려주는 명령어입니다.
  • 14. 리눅스 명령어 - CAL • 캘린더를 출력하는 명령어
  • 15. 리눅스 명령어 - 리스트 조회(LS) • 현재 디렉토리의 리스트를 조회하는 명령어 • list를 뜻함. • 옵션 • -a (숨김파일을 포함한 전체 파일 조회) • -l (리스트 형태로 상세하게 출력) • -h (사용자가 볼 수 있는 파일크기 단위로 보기) • -t (시간 순서대로 정렬)
  • 16. 리눅스 명령어 - 리스트 조회(LS) • 자주 쓰는 명령어 • ls (단순히 리스팅하기) • ls -al (디렉토리 내 모든 파일 및 폴더 리스팅) • ls -alh (디렉토리 내 모든 파일 및 폴더 리스팅과 더불어 파일 사이즈를 눈에 보기 쉽게 해줌) • ls -ltr (디렉토리 내 모든 파일 및 폴더의 수정시간 기준 정렬)
  • 17. 리눅스 명령어 - 디렉토리 옮기기(CD) • change directory 라는 뜻을 가지고 있음 • cd [이동할 디렉토리] 로 사용함
  • 18. 디렉토리 옮기기(CD) - 계층구조 이해 • 리눅스 시스템은 윈도우의 시스템과는 조금 다릅니다 • 윈도우는 C드라이브, D드라이브 형태로 되어있고 그것이
 하나의 물리적/논리적 디스크로 나뉘어져 있지만
 리눅스 시스템은 특정 폴더에도 디스크를 할당할 수 있는
 시스템입니다.
  • 19. 디렉토리 옮기기(CD) - 계층구조 이해
  • 20. 리눅스 명령어 - 현재 작업중인 디렉토리 출력 • pwd • 현재 작업중인 디렉토리를 절대경로로 출력해줍니다
  • 21. 리눅스 명령어 - 파일 복사(CP) • 특정 파일을 복사하는 명령어입니다 • cp [arg] [복사할 파일] [복사될 파일]
  • 22. 파일 복사(CP) - 자주 쓰는 옵션 • 자주 쓰는 옵션 • cp -r • 폴더까지 복사해주는 명령어 • cp -f • 같은 파일이 있다면 강제로 덮어씌움 • cp -v • verbose의 약자로 상세한 복사내역을 표시함
  • 23. 리눅스 명령어 - 파일 이동(MV) • 특정 파일을 이동하거나 이름을 바꾸는 명령어 • cp와 옵션이 거의 똑같지만 이동할 때 디렉토리까지 모두 이 동하기 때문에 (-r) 옵션을 사용하지 않습니다
  • 24. 리눅스 명령어 - 파일 지우기 • 특정 파일이나 디렉토리를 지우는 역할을 합니다 • rm을 수행할 때는 항상 조심해야 합니다 • 자주 쓰는 명령어 • rm -r [디렉토리] 디렉토리를 포함해서 삭제 • rm -v [파일] 삭제한 내용에 대해 표시 • rm -f [파일] 강제로 삭제
  • 25. 리눅스 명령어 - 화면 청소하기 • 화면을 깨끗하게 만들기 위해서는 clear 를 사용합니다. • 알아두면 좋습니다.
  • 26. 리눅스 명령어 - PS • 실행중인 프로세스 상태와 정보를 출력합니다 • ps 명령어만 입력하게 되면 현재 사용자의 프로세스만 나타 나게 됩니다. 그렇지만 이렇게 찾는 경우는 거의 없기 때문 에 ps 를 입력할때는 항상 ps -ef 를 외웁시다. • 자주 사용하는 명령어 • ps -ef: 현재 실행중인 모든 프로세스의 자세한 정보를 띄웁니다
  • 27. 리눅스 명령어 - KILL • 프로세스를 죽일 때 사용하는 명령어 • kill -9와 kill -3 을 주로 사용합니다 • kill을 시킨 후 ps로 제대로 죽었는지 확인해야 합니다 • 일반적으로 kill 명령어를 사용할 때는 root 계정을 사용 합니다
  • 28. 리눅스 설정 - 사용자 비밀번호 변경 • 사용자의 비밀번호를 변경하기 위해서는 passwd 명령어를 사용합니다. • passwd 를 입력하면 비밀번호를 변경할 수 있습니다. • root 계정에서 passwd [사용자명] 을 입력하면 사용자명에 해당하는 비밀번호를 변경할 수 있습니다.
  • 29. 리눅스 명령어 - 파일 내용보기 및 병합하기 • 파일 내용을 출력하는 명령어 • cat [파일명]
  • 30. 리눅스 명령어 - 많은 파일을 출력하기 • 로그파일 등을 출력할 때는 화면에서 글자가 밀리는 경우가 종종 있습니다. • 특히 데이터센터에서 KVM 이라는 장비로 서버에 직접 접속 해서 사용할 때(PUTTY를 사용하지 않기 때문에 스크롤이 없습니다) 유용합니다. • more [파일명]
  • 31. 파일 접근 권한 - CHMOD • 리눅스는 많은 사용자가 사용할 수 있기 때문에 permission(권한) 이라는 값 을 설정할 수 있습니다. • 이런 퍼미션은 다음과 같은 규칙을 가지고 있습니다. • ABC • A: 사용자 / B: 그룹 / C: 사용자와 그룹 이외 • 각 값은 7을 넘을 수 없으며 다음과 같은 규칙이 있습니다. • 4 - 읽기 • 2 - 쓰기 • 1 - 실행하기
  • 32. 파일 접근 권한 - CHMOD • 주로 폴더에는 755 권한 775권한,
 파일에는 644나 664 권한을 줍니다. • 777이나 666 권한은 사용하지 않도록 합니다.
  • 33. 파일 접근 권한 - CHMOD • 파일 권한을 주는 명령어 • chmod [XXX] [파일/디렉토리명]
  • 34. 리눅스 명령어 - 파일 소유권 변경 • 파일의 소유자를 변경시킬 수 있는 명령어 • chown [사용자명]:[그룹명] [파일/디렉토리명] • 자주 쓰는 명령어 • chown -hR • 심볼릭 링크의 소유권과 디렉토리의 소유권을 포함한 모든 소유권을 바꾸는 명령어
  • 35. 리눅스 명령어 - 다른 계정 권한으로 명령어 사용하기 • case 1) 일반사용자 장길산은 패키지 업데이트 담당자이다. 매주 1회씩 패키지를 업데이트 하기 위해서 root 계정을 임 시로 사용해야 한다. 그렇지만 root 계정의 비밀번호를 알려 주기에는 많은 risk 가 존재한다. 어떻게 해야할까? • ====> 이런 경우에 sudo 를 사용합니다.
  • 36. 리눅스 명령어 - 패키지 관리 • 우분투/Raspbian 처럼 Debian 계열의 리눅스에서는 apt 를 사용해서 패키지 를 관리합니다. • 자주 사용하는 명령어 • 업데이트 서버에서 새로운 패키지 받아오기 • apt update • 업데이트 서버에서 새로운 패키지 설치하기 • apt install [패키지명] • 업데이트 서버에서 새로운 업데이트 설치하기 • apt upgrade
  • 37. 리눅스 명령어 - 파일 다운로드받기 • wget https://www.daum.net 다음 메인화면 다운로드
  • 38. 리눅스 명령어 - GIT 소스코드 다운로드받기 • 많은 사람들이 함께 개발할 때 git 을 사용합니다. • git은 매우 다양한 옵션이 있기 때문에 우리가 소스를 가져 올 때 쓰는 clone 만 알아봅니다. • git clone https://github.com/google/googletest.git • 구글에서 내놓은 구글테스트 프레임워크를 clone 하는 명령어
  • 39. 리눅스 명령어 - 파일찾기 • find 명령어는 매우 다양한 내용을 담고 있습니다 • find [경로] [옵션] 형태로 이루어져있습니다 • find . -name “*.log*” -exec rm - f {} ; • 로그로 끝나는 파일을 찾아서 모두 지워라 라는 내용을 수 행 • man find 를 통해 학습하세요.
  • 40. 리눅스 명령어 - GZIP • gzip 명령어는 파일을 압축하는 명령어입니다. • gzip -9 [파일명] • 폴더는 압축할 수 없습니다.
  • 41. 리눅스 명령어 - TAR • tar은 폴더까지 압축시켜주는 도구입니다. • tar -cvzf 파일명.tar.gz 파일경로/ 를 사용하면 됩니다.
  • 42. 리눅스 명령어 - LSUSB • 연결된 USB 장비의 목록을 출력합니다
  • 43. 리눅스 명령어 - MAN • 명령어 설명서를 보여줍니다. • 예를들어 man alias 를 입력하게 되면 alias 명령에 대해 
 알려줍니다.