์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Absolute
- AGI
- ai
- AI agents
- AI engineer
- AI researcher
- ajax
- algorithm
- Algorithms
- aliases
- Array ๊ฐ์ฒด
- ASI
- bayes' theorem
- Bit
- Blur
- BOM
- bootstrap
- canva
- challenges
- ChatGPT
- Today
- In Total
A Joyful AI Research Journey๐ณ๐
[43~44] 230228, 230302 ๋ฆฌ๋ ์ค Ch. 2 ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด๋ฅผ ์ํ ๋ฆฌ๋ ์ค ๊ธฐ์ด ๋ฐฐ์ฐ๊ธฐ: 1. ์ด์ ์ฒด์ , 2. ์๊ฒฉ ์ ์์ ์ํ VNC์ Putty, 3. ๋ฆฌ๋ ์ค ํ์ผ ์์คํ , 4. ๋ฆฌ๋ ์ค ๋ช ๋ น์ด [K-๋์งํธ ํธ๋ ์ด๋ 43~44์ผ] ๋ณธ๋ฌธ
[43~44] 230228, 230302 ๋ฆฌ๋ ์ค Ch. 2 ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด๋ฅผ ์ํ ๋ฆฌ๋ ์ค ๊ธฐ์ด ๋ฐฐ์ฐ๊ธฐ: 1. ์ด์ ์ฒด์ , 2. ์๊ฒฉ ์ ์์ ์ํ VNC์ Putty, 3. ๋ฆฌ๋ ์ค ํ์ผ ์์คํ , 4. ๋ฆฌ๋ ์ค ๋ช ๋ น์ด [K-๋์งํธ ํธ๋ ์ด๋ 43~44์ผ]
yjyuwisely 2023. 2. 28. 15:38230228 Tue 43rd class
230302 Thu 44th class
Ch. 1 ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด ์์ํ๊ธฐ (์ฃผ์ ๋ณ๋ก ๋ฌถ๊ธฐ ์ํด ์๋ซ๊ธ๋ก ๊ธ ๋ด์ฉ ์ฎ๊น.)
Ch. 2 ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด๋ฅผ ์ํ ๋ฆฌ๋
์ค ๊ธฐ์ด ๋ฐฐ์ฐ๊ธฐ
์ง๋: p. 28 ~ (๊ต์ฌ: IoT ์ฌ๋ฌผ์ธํฐ๋ท์ ์ํ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด 4 ์ ์, ์ ์: ์ต์ฃผํธ , ๊น์ฌ๋ฒ , ์ ๋์ง)
์ง๋: p. 62 ~ (๊ต์ฌ: IoT ์ฌ๋ฌผ์ธํฐ๋ท์ ์ํ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด 4 ์ ์, ์ ์: ์ต์ฃผํธ , ๊น์ฌ๋ฒ , ์ ๋์ง)
๊ต์ฌ ์ฝ๋ ๊นํ๋ธ: https://github.com/codingspecialist/RaspberryPi4-Book-Example
๊ต์ฌ ์์ค ๋ฐ PPT: http://jspstudy.co.kr/main/main.jsp
์ ์ ์นดํ: https://cafe.naver.com/metacoding
์ค๋ ๋ฐฐ์ด ๊ฒ ์ค ๊ธฐ์ตํ ๊ฒ์ ์ ๋ฆฌํ๋ค.
4.3 ๋ฆฌ๋
์ค ๋ช
๋ น์ด ๋๋ ํฐ๋ฆฌ ๊ด๋ จ ๋ช
๋ น์ด ์์ฝ
๋ช ๋ น์ด | ์ค๋ช |
ls (list segments) | ํ์ผ ๋ฐ ๋๋ ํฐ๋ฆฌ ๋ฆฌ์คํธ |
ls -a | ๋ชจ๋ ํ์ผ๊ณผ ๋๋ ํฐ๋ฆฌ ๋ฆฌ์คํธ |
ls -asl | ๋ชจ๋ ํ์ผ ์์ธํ ๋ฆฌ์คํธ |
mkdir (make directory) | (make directory) ๋๋ ํฐ๋ฆฌ ๋ง๋ค๊ธฐ |
cd ๋๋ ํฐ๋ฆฌ (change directory) | (change directory) ๋๋ ํฐ๋ฆฌ ์ด๋ |
cd | ํ ๋๋ ํฐ๋ฆฌ๋ก ์ด๋ |
cd ~ | ํ ๋๋ ํฐ๋ฆฌ๋ก ์ด๋ |
cd .. | ์์ ๋๋ ํฐ๋ฆฌ๋ก ์ด๋ |
pwd (print making directory) | ํ์ฌ ๋๋ ํฐ๋ฆฌ ํ์ธ |
Ch. 2 ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด๋ฅผ ์ํ ๋ฆฌ๋ ์ค ๊ธฐ์ด ๋ฐฐ์ฐ๊ธฐ
์ฑ ์ ๋ชฉ์ฐจ
01 _ ์ด์ ์ฒด์
01-1 ์ด์์ฒด์ ๋?
01-2 ๋ฆฌ๋ ์ค ์ด์์ฒด์ ์ ์ข ๋ฅ
01-3 ๋ผ์ฆ๋น์ ์ด์์ฒด์
02 _ ์๊ฒฉ ์ ์์ ์ํ VNC์ Putty
02-1 ๊ทธ๋ํฝ ๋ชจ๋ ์ ์
02-2 ํฐ๋ฏธ๋ ๋ชจ๋ ์ ์
03 _ ๋ฆฌ๋ ์ค ํ์ผ ์์คํ
03-1 ๋ฆฌ๋ ์ค ํ์ผ ์์คํ ์ ํน์ง
03-2 ๋ฆฌ๋ ์ค ๋๋ ํฐ๋ฆฌ ๊ตฌ์กฐ
04 _ ๋ฆฌ๋ ์ค ๋ช ๋ น์ด
04-1 ์(Shell)
04-2 ๊ธฐ๋ณธ ๋ช ๋ น์ด
04-3 ํ์ผ ๋ฐ ๋๋ ํฐ๋ฆฌ
04-4 ํ์ผ ์ด๋, ์ญ์ , ๋ณต์ฌ ๋ช ๋ น์ด
04-5 ํ์ผ ์ฐพ๊ธฐ ๋ช ๋ น์ด
04-6 ๊ถํ
04-7 ์ ์ถ๋ ฅ ์ฌ์ง์ IO Redirection
04-8 wget, apt-ge
1. ์ด์์ฒด์ (OS: Operating System)
1.1 ์ด์์ฒด์ ๋?
์ด์์ฒด์ ๋ ์์คํ
ํ๋์จ์ด๋ฅผ ๊ด๋ฆฌํ๊ณ ์์ฉ์ํํธ์จ์ด๋ฅผ ์คํํ๊ธฐ ์ํ์ฌ ํ๋์จ์ด ์ถ์ํ ํ๋ซํผ์ ์ ๊ณตํ๋ ์์คํ
์ํํธ์จ์ด์ด๋ค.
ex) ์๋์ฐจ ์์ง๋์ด๋ค์ด ์ผ๋ฐ ์ฌ์ฉ์๋ค์๊ฒ ์๋์ฐจ๋ฅผ ์ฝ๊ฒ ์ด์ฉํ ์ ์๊ฒ ํ๋ ค๊ณ ๋ง๋ค์ด ๋์ ์์
, ๋ธ๋ ์ดํฌ, ๊ธฐ์ด๋ค์ ์ธํฐํ์ด์ค๋ผ๊ณ ๋ถ๋ฅธ๋ค.
์ผ๋ฐ ์ฌ์ฉ์๋ค์ ์ปดํจํฐ ์์ง๋์ด๋ค์ฒ๋ผ ์ด๋ป๊ฒ ์ฌ์ฉํ๋์ง ์ ์ ์๊ธฐ ๋๋ฌธ์ ์ผ๋ฐ ์ฌ์ฉ์์ ์ปดํจํฐ ํ๋์จ์ด์ ์ค๊ฐ ์ญํ ์ ํด์ฃผ๋ ๋ฌด์์ธ๊ฐ๊ฐ ํ์ํ๊ฒ ๋์๊ณ , ๊ทธ ์ญํ ์ ๋ฐ๋ก ์ด์์ฒด์ (Operating System)๊ฐ ๋งก๊ณ ์๋ค.
- windows
- macOS
- Linux
1.2 ๋ฆฌ๋ ์ค ์ด์์ฒด์ ์ ์ข ๋ฅ
๋ฆฌ๋ ์ค์ ํน์ง: GNU ์ ์ (์์ ์ํํธ์จ์ด ์ ์ )์ ์ค์ํ๊ธฐ ๋๋ฌธ์ ๋๋ถ๋ถ ๋ฌด๋ฃ์ด๊ณ ์์ค์ฝ๋์ ์์ ๋ฐฐํฌ๊ฐ ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ์ด๋ฅผ ํ ๋๋ก ์๋ง์ ๋ฆฌ๋ ์ค ๋ฐฐํฌํ์ด ์๊ธฐ๊ฒ ๋์๋ค.
GNU is an operating system that GNU's not Unix. GNU stands for Gnu's Not Unix.
2. ์๊ฒฉ ์ ์์ ์ํ VNC(Virtual Network Computing)์ Putty
2.1 ๊ทธ๋ํฝ ๋ชจ๋ ์ ์
๋ชจ๋ํฐ ์์ด ์ฌ์ฉํ๊ธฐ ์ํด VNC ๋ทฐ์ด ๋ค์ด ๋ฐ๋๋ค.
https://www.realvnc.com/en/connect/download/viewer/
ifconfig ์จ์ ip ์ฃผ์ ํ์ธํ๋ค.
์๊ฒฉ ์ฐ๊ฒฐ ๋๋ค.
Virtual Network Computing (VNC) is a free tool that allows a client to connect to a server, and interact with the desktop of the remote machine.
2.2 ํฐ๋ฏธ๋ ๋ชจ๋ ์ ์
Putty ๋ค์ด ๋ฐ์์ ip ์ฃผ์ ์
๋ ฅํ๊ณ ์คํํ๋ค.
PuTTY is a free and open-source terminal emulator, serial console and network file transfer application.
์ ๋จ์์ ์๋ํฐ (ํ์ด์ฌ ํ์ผ) ์ด์ฉ ์์ด ๋ฐ๋ก ์ฌ์ฉํ๊ธฐ ์ํด putty๊ฐ ํ์ํ๋ค.
์ด์ ๋ ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด์ ๋ชจ๋ํฐ, ํค๋ณด๋, ๋ง์ฐ์ค๋ฅผ ์ฐ๊ฒฐํ์ง ์๊ณ ์ ์๋ง ์ฐ๊ฒฐํ๊ณ ์๋์ฐ ๋ฐ์คํฌํ์์ ์๊ฒฉ ์ ์ํ์ฌ ์ฌ์ฉํ๋ฉด ๋๋ค.
A computer terminal is an electronic or electromechanical hardware device that can be used for entering data into, and transcribing[1] data from, a computer or a computing system.[2]
๋จ๋ง๊ธฐ(็ซฏๆซๆฉ, ๋ฌธํ์ด: ๋ง๋จ) ๋๋ ํฐ๋ฏธ๋(์์ด: terminal)์ ์ปดํจํฐ๋ ์ปดํจํ ์์คํ ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํ๊ฑฐ๋ ํ์ํ๋ ๋ฐ ์ฐ์ด๋ ์ ์ ํ๋์จ์ด ๊ธฐ๊ธฐ์ด๋ค. ์ปดํจํฐ ํฐ๋ฏธ๋์ ์ธ๊ฐ๊ณผ ์ปดํจํฐ์ ์ธํฐํ์ด์ค (HMI: human-machine interface)์ ํ ์์ด๋ค.
4 ๋ฆฌ๋ ์ค ๋ช ๋ น์ด
4.1 ์(Shell)
์๋์ฐ์ ๋์ค์์ ๋ด๋ฆฌ๋ ๋๋ถ๋ถ์ ๋ช
๋ น์ command.com์ด๋ผ๋ ํ์ผ์ด ์ฒ๋ฆฌํ๋ค.
command.com ํ์ผ์ ์ด์์ฒด์ ์ ์(Shell) ํ๋ก๊ทธ๋จ์ด๋ผ๊ณ ํ๋ค.
์ ํ๋ก๊ทธ๋จ์ ์ฌ์ฉ์๊ฐ ๋ด๋ฆฐ ๋ช
๋ น์ ์ด์์ฒด์ ๊ฐ ์ํํ ์ ์๋ ๋ช
๋ น์ด๋ก ํด์ํ์ฌ ์ด์์ฒด์ ์ ์ ๋ฌํ๋ ์ผ์ ํ๋ค. ๊ทธ๋์ ๋ช
๋ น์ด ํด์๊ธฐ๋ผ๊ณ ๋ถ๋ฆฐ๋ค.
์ฐ๋ฆฌ๊ฐ ํ๋์จ์ด๋ฅผ ์ง์ ์ ์ผ๋ก ์ ์ดํ๋ ๊ฒ์ด ์ด๋ ต๊ธฐ ๋๋ฌธ์ ํ๋์จ์ด ์ ์ด๋ ์ด์์ฒด์ ๊ฐ ๋์ ํ๊ณ ๋๊ณ ์ฐ๋ฆฌ๋ ์ด์์ฒด์ ์๊ฒ ๋ช
๋ น์ ๋ด๋ฆฐ๋ค.
์ฌ์ฉ์(๋ช
๋ น) → ์(ํด์) → ์ปค๋(๋ช
๋ น ์ํ ํ ๊ฒฐ๊ณผ ์ ์ก) → ์(ํด์) → ์ฌ์ฉ์(๊ฒฐ๊ณผ ํ์ธ)
์ฐธ๊ณ
๋ฆฌ๋
์ค๋ ์ปค๋์ด๋ผ๊ณ ๋ถ๋ฆฌ๋ ํ๋์จ์ด๋ฅผ ์ง์ ์ ์ดํ๋ ๋ถ๋ถ๊ณผ ๊ทธ ์์์ ์ปค๋์ ๋ช
๋ น์ ์ฃผ๋ ์๋ก ๊ตฌ์ฑ์ด ๋๋ค.
4.2 ๊ธฐ๋ณธ ๋ช ๋ น์ด
1. date ๋ช
๋ น์ด
ํ์ฌ ๋ ์ง ๋ฐ ์๊ฐ์ ํ์ธํ ์ ์๋ค.
$ date
2. hostname ๋ช
๋ น์ด
ํธ์คํธ์ ์ด๋ฆ์ ํ์ธํ ์ ์๋ค.
$ hostname
rasberrypi
3. ls ๋ช
๋ น์ด
ํ์ฌ ๋๋ ํฐ๋ฆฌ ์์ ์กด์ฌํ๋ ๋ชจ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
$Is
Desktop
Documents
Downloads
Music
Pictures
Public
Templates
Videos
python_games
4. clear ๋ช
๋ น์ด
ํ๋ฉด์ ๊นจ๋์ด ํ ์ ์๋ค.
$ clear
5. password ๋ช
๋ น์ด
์ฌ์ฉ์ ๋น๋ฐ๋ฒํธ๋ฅผ ๋ณ๊ฒฝํ ์ ์๋ค.
$ passwd
pi์ ๋ํ ์ํธ ๋ณ๊ฒฝ ์ค
(ํ์ฌ) UNIX ์ํธ:
์ UNIX ์ํธ ์
๋ ฅ:
์ UNIX ์ํธ ์ฌ์
๋ ฅ:
$ sudo passwd root
์ UNIX ์ํธ ์
๋ ฅ:
์ UNIX ์ํธ ์ฌ์
๋ ฅ:
passwd: ์ํธ๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ์
๋ฐ์ดํธํ์ต๋๋ค
$ su root
์ํธ:
root@rasberrypi:/home/pi#
4.3 ํ์ผ ๋ฐ ๋๋ ํฐ๋ฆฌ (directory) p. 58
๋ฆฌ๋
์ค์ ๋๋ ํฐ๋ฆฌ๋ ํ๋์ ํ์ผ๋ก ๊ฐ์ฃผ๋๋ฉฐ ํ๋์ ๋๋ ํฐ๋ฆฌ๋ ๋ค๋ฅธ ๋๋ ํฐ๋ฆฌ๋ค์ ํฌํจํจ์ผ๋ก์จ ๊ณ์ธต๊ตฌ์กฐ๋ฅผ ์ด๋ฃฌ๋ค.
๋ถ๋ชจ ๋๋ ํฐ๋ฆฌ๋ ๋ค๋ฅธ ๋๋ ํฐ๋ฆฌ๋ค์ ์๋ธ ๋๋ ํฐ๋ฆฌ๋ก ๊ฐ์ง๊ณ ์๋ค.
In computing, a directory is a file system cataloging structure which contains references to other computer files, and possibly other directories. On many computers, directories are known as folders, or drawers, analogous to a workbench or the traditional office filing cabinet.
1. home ๋๋ ํฐ๋ฆฌ
๋ฆฌ๋
์ค ์์คํ
์ ๋ค์ค ์ฌ์ฉ์ ์์คํ
์ด๋ฏ๋ก ์ฌ์ฉ์๋ง๋ค ๋ณ๋์ ํ ๋๋ ํฐ๋ฆฌ๊ฐ ์๋ค. ๊ณ์ ์ ๋ง๋ค ๋ ๊ด๋ฆฌ์์ ์ํด ์ ํด์ง๋ค.
$ cd / # cd = change directory
$ cd $HOME
2. pwd ๋ช
๋ น์ด (print working directory)
ํ์ฌ ์์
๋๋ ํฐ๋ฆฌ๋ฅผ ๋ณด์ฌ์ค๋ค.
$ pwd
/home/pi
3. mkdir ๋ช
๋ น์ด (make directory)
์ ๋๋ ํฐ๋ฆฌ๋ฅผ ๋ง๋๋ ๋ช
๋ น์ด๋ค. (ex. ์๋์ฐ์์ ์ ํด๋ ๋ง๋ค๊ธฐ)
$ mkdir movie
cd (change directory) ๋ช
๋ น์ด๋ฅผ ์ด์ฉํด์ ์ํ๋ ์์
๋๋ ํฐ๋ฆฌ๋ก ์ด๋ํ ์ ์๋ค.
$ cd movie
cd .. ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ๋ฉด ํ ๋จ๊ณ ์์ ๋๋ ํฐ๋ฆฌ๋ก ์ด๋ ๊ฐ๋ฅํ๋ค.
(.. = ๋ค๋ก ๊ฐ๊ธฐ)
$ cd ..
pwd ๋ช
๋ น์ด๋ฅผ ํตํด ๋์ ์์น๋ฅผ ๊ณ์ ์์งํด ์ค๋ค.
$ pwd
/home/pi
4. home ๋๋ ํฐ๋ฆฌ๋ก ์ด๋ํ๋ 3๊ฐ์ง ๋ฐฉ๋ฒ
$ cd
$ cd /home/pi
$ cd ~/
5. touch ๋ช
๋ น์ด
๋น ํ์ผ์ ์์ฑํ ์ ์๋ค. touch ๋ช
๋ น์ด๋ ๋น ํ์ผ์ ์์ฑํ๋ ๊ฒ์ด๋ฏ๋ก ํ์ผ ์์ ๋ด์ฉ์ ์๋ค.
$ cd ~/webapps
$ mkdir ch02
$ cd mkdir
$ touch read.txt
6. ls ๋ช
๋ น์ด (list)
-a(์จ๊ฒจ์ง ํ์ผ ํ์) -s(ํฌ๊ธฐ๋ฅผ kb๋จ์๋ก ํ์) -l(ํ์ผ์ ์์ธ ์ ๋ณด ํ์)๋ฅผ ์ ์ฉ
- ls ๋ช
๋ น์ด๋ ๋๋ ํฐ๋ฆฌ์ ๋ด์ฉ์ ์ถ๋ ฅํ๋ ๋ฐ ์ฌ์ฉ๋๋ค.
pi@raspberrypi:~/webapps/ch02 $ cd ~/webapps/ch02
pi@raspberrypi:~/webapps/ch02 $ ls
read.txt
- ls -l ๋ช
๋ น์ด: ํ์ผ์ ์์ธํ ๋ณผ ์ ์๋ค.
read.txt๊ฐ ํด๋์ธ์ง ํ์ผ์ธ์ง, ๊ถํ, ์์ ์, ์์ฑ๋ ๋ ์ง๋ฅผ ํ์ธํ ์ ์๋ค.
pi@raspberrypi:~/webapps/ch02 $ cd ~/webapps/ch02
pi@raspberrypi:~/webapps/ch02 $ ls -l
ํฉ๊ณ 0
-rw-r--r-- 1 pi pi 0 2์ 28 14:35 read.txt
- ls -a ๋ช
๋ น์ด: ์จ๊ฒจ์ง ํด๋์ ํ์ผ์ ๋ฆฌ์คํธ๋ฅผ ํ์ธํ ์ ์๋ค.
์จ๊น ํ์ผ์ touch๋ช
๋ น์ด๋ฅผ ํตํด ๋ง๋ ๋ค. ์จ๊น ํ์ผ์ ์์ฑํ๋ ค๋ฉด ํ์ผ๋ช
์์ .์ ์ถ๊ฐํ๋ค.
pi@raspberrypi:~/webapps/ch02 $ ch ~/webapps/ch02
-bash: ch: ๋ช
๋ น์ด๋ฅผ ์ฐพ์ ์ ์์
pi@raspberrypi:~/webapps/ch02 $ touch .hidden.txt
pi@raspberrypi:~/webapps/ch02 $ ls -a
. .. .hidden.txt read.txt
- ls -al ๋ช ๋ น์ด: ์จ๊ฒจ์ง ํด๋์ ํ์ผ์ ๋ฆฌ์คํธ๋ฅผ ์์ธํ ๋ณผ ์ ์๋ค.
pi@raspberrypi:~ $ cd ~/webapps/ch02
pi@raspberrypi:~/webapps/ch02 $ ls -al
ํฉ๊ณ 8
drwxr-xr-x 2 pi pi 4096 2์ 28 14:42 .
drwxr-xr-x 4 pi pi 4096 2์ 28 14:38 ..
-rw-r--r-- 1 pi pi 0 2์ 28 14:45 .hidden.txt
-rw-r--r-- 1 pi pi 0 2์ 28 14:35 read.txt
7. cat ๋ช
๋ น์ด (concatenate: link (things) together in a chain or series. ์ฐ๊ฒฐํ๋ค)
ํ์ผ์ ๋ด์ฉ์ ํ๋ฉด์ ๋ฐ๋ก ์ถ๋ ฅํ ์ ์๋ค.
$ cd ~/home
$ cat .bashrc
pi@raspberrypi:~/webapps/ch02 $ cat read.txt
์ฃผํ๋์๋ณด์ฆ๊ณต์ฌ, HUG๋ ๋ค์ ๋ฌ 2์ผ๋ถํฐ ๋ถ๋ถํฉ์ฐ์๋ 1์ต ์ ์ด๊ณผ 1์ฃผํ์์ ๋ณด์ ์ฃผํ๊ฐ๊ฒฉ 9์ต ์ ์ด๊ณผ 1์ฃผํ์์ ๋ํด์๋ ์ ์ธ๋์ถ๋ณด์ฆ์ ํ์ฉํ๋ค๊ณ ๋ฐํ์ต๋๋ค.
๊ทธ๋์ 1์ฃผํ์๋ ๋ถ๋ถ ํฉ์ฐ ์๋์ด 1์ต ์ ์ดํ์ด๊ฑฐ๋ 9์ต ์ ์ดํ ์ฃผํ์ ๋ณด์ ํ ๊ฒฝ์ฐ์๋ง ์ ์ธ๋์ถ๋ณด์ฆ์ ์ด์ฉํ ์ ์์์ต๋๋ค.
์ ์ธ๋์ถ๋ณด์ฆ์ ๊ธ์ต๊ธฐ๊ด์์ ์ ์ธ์๊ธ์ ๋์ถ๋ฐ์ ๋ ๊ณต์ฌ์ ๋ณด์ฆ์๋ฅผ ๋ด๋ณด๋ก ์ด์ฉํด ๋์ถ๋ฐ์ ์ ์๋๋ก ํ ์ํ์
๋๋ค.
๊ณต์ฌ์ ์ ์ธ๋ณด์ฆ ํ๋์ ๋น๋กํด ๋์ถํ๋๊ฐ ๊ฒฐ์ ๋๊ณ ์ด์ฉ์๋ ๋ณด์ฆ๋ฃ๋ฅผ ๋ด์ผ ํฉ๋๋ค.
ํ์ง๋ง ๊ธ๋ฆฌ ์ธ์, ์ฃผํ๊ฐ๊ฒฉ ํ๋ฝ ๋ฑ์ผ๋ก ์ฃผ๊ฑฐ ๋ถ๋ด์ด ๋๋ฉด์ 1์ฃผํ์์ ์ค์์์ ์ฃผ๊ฑฐ ์์ ์ง์์ ์ํด ๋์์ ํ๋ํ์ต๋๋ค.
์ด๋ฒ ๊ท์ ์ํ๋ HUG, ํ๊ตญ์ฃผํ๊ธ์ต๊ณต์ฌ, SGI์์ธ๋ณด์ฆ ๋ฑ ๋ณด์ฆ๊ธฐ๊ด 3์ฌ๊ฐ ๋์ผํ๊ฒ ์ํํฉ๋๋ค.
8. head ๋ช
๋ น์ด
ํ์ผ์ ์ 10์ค์ ์ถ๋ ฅํด ์ค๋ค.
$ head .bashrc
pi@raspberrypi:~/webapps/ch02 $ ~/webapps/ch02 $ cat read.txt
-bash: /home/pi/webapps/ch02: ๋๋ ํฐ๋ฆฌ์
๋๋ค
pi@raspberrypi:~/webapps/ch02 $ head read.txt
์ฃผํ๋์๋ณด์ฆ๊ณต์ฌ, HUG๋ ๋ค์ ๋ฌ 2์ผ๋ถํฐ ๋ถ๋ถํฉ์ฐ์๋ 1์ต ์ ์ด๊ณผ 1์ฃผํ์์ ๋ณด์ ์ฃผํ๊ฐ๊ฒฉ 9์ต ์ ์ด๊ณผ 1์ฃผํ์์ ๋ํด์๋ ์ ์ธ๋์ถ๋ณด์ฆ์ ํ์ฉํ๋ค๊ณ ๋ฐํ์ต๋๋ค.
๊ทธ๋์ 1์ฃผํ์๋ ๋ถ๋ถ ํฉ์ฐ ์๋์ด 1์ต ์ ์ดํ์ด๊ฑฐ๋ 9์ต ์ ์ดํ ์ฃผํ์ ๋ณด์ ํ ๊ฒฝ์ฐ์๋ง ์ ์ธ๋์ถ๋ณด์ฆ์ ์ด์ฉํ ์ ์์์ต๋๋ค.
์ ์ธ๋์ถ๋ณด์ฆ์ ๊ธ์ต๊ธฐ๊ด์์ ์ ์ธ์๊ธ์ ๋์ถ๋ฐ์ ๋ ๊ณต์ฌ์ ๋ณด์ฆ์๋ฅผ ๋ด๋ณด๋ก ์ด์ฉํด ๋์ถ๋ฐ์ ์ ์๋๋ก ํ ์ํ์
๋๋ค.
๊ณต์ฌ์ ์ ์ธ๋ณด์ฆ ํ๋์ ๋น๋กํด ๋์ถํ๋๊ฐ ๊ฒฐ์ ๋๊ณ ์ด์ฉ์๋ ๋ณด์ฆ๋ฃ๋ฅผ ๋ด์ผ ํฉ๋๋ค.
ํ์ง๋ง ๊ธ๋ฆฌ ์ธ์, ์ฃผํ๊ฐ๊ฒฉ ํ๋ฝ ๋ฑ์ผ๋ก ์ฃผ๊ฑฐ ๋ถ๋ด์ด ๋๋ฉด์ 1์ฃผํ์์ ์ค์์์ ์ฃผ๊ฑฐ ์์ ์ง์์ ์ํด ๋์์ ํ๋ํ์ต๋๋ค.
9. tail ๋ช
๋ น์ด
ํ์ผ์ ๋งจ ๋ค 10์ค์ ์ถ๋ ฅํด ์ค๋ค..
$ tail .bashrc
pi@raspberrypi:~/webapps/ch02 $ tail read.txt
๊ทธ๋์ 1์ฃผํ์๋ ๋ถ๋ถ ํฉ์ฐ ์๋์ด 1์ต ์ ์ดํ์ด๊ฑฐ๋ 9์ต ์ ์ดํ ์ฃผํ์ ๋ณด์ ํ ๊ฒฝ์ฐ์๋ง ์ ์ธ๋์ถ๋ณด์ฆ์ ์ด์ฉํ ์ ์์์ต๋๋ค.
์ ์ธ๋์ถ๋ณด์ฆ์ ๊ธ์ต๊ธฐ๊ด์์ ์ ์ธ์๊ธ์ ๋์ถ๋ฐ์ ๋ ๊ณต์ฌ์ ๋ณด์ฆ์๋ฅผ ๋ด๋ณด๋ก ์ด์ฉํด ๋์ถ๋ฐ์ ์ ์๋๋ก ํ ์ํ์
๋๋ค.
๊ณต์ฌ์ ์ ์ธ๋ณด์ฆ ํ๋์ ๋น๋กํด ๋์ถํ๋๊ฐ ๊ฒฐ์ ๋๊ณ ์ด์ฉ์๋ ๋ณด์ฆ๋ฃ๋ฅผ ๋ด์ผ ํฉ๋๋ค.
ํ์ง๋ง ๊ธ๋ฆฌ ์ธ์, ์ฃผํ๊ฐ๊ฒฉ ํ๋ฝ ๋ฑ์ผ๋ก ์ฃผ๊ฑฐ ๋ถ๋ด์ด ๋๋ฉด์ 1์ฃผํ์์ ์ค์์์ ์ฃผ๊ฑฐ ์์ ์ง์์ ์ํด ๋์์ ํ๋ํ์ต๋๋ค.
์ด๋ฒ ๊ท์ ์ํ๋ HUG, ํ๊ตญ์ฃผํ๊ธ์ต๊ณต์ฌ, SGI์์ธ๋ณด์ฆ ๋ฑ ๋ณด์ฆ๊ธฐ๊ด 3์ฌ๊ฐ ๋์ผํ๊ฒ ์ํํฉ๋๋ค.
- tail ๋ช ๋ น์ด์ ์ต์ ์ ์กฐ์ ํ์ฌ 5์ค๋ง ์ถ๋ ฅํ ์๋ ์๋ค.
$ tail -5 .bashrc
pi@raspberrypi:~/webapps/ch02 $ tail -5 read.txt
๊ณต์ฌ์ ์ ์ธ๋ณด์ฆ ํ๋์ ๋น๋กํด ๋์ถํ๋๊ฐ ๊ฒฐ์ ๋๊ณ ์ด์ฉ์๋ ๋ณด์ฆ๋ฃ๋ฅผ ๋ด์ผ ํฉ๋๋ค.
ํ์ง๋ง ๊ธ๋ฆฌ ์ธ์, ์ฃผํ๊ฐ๊ฒฉ ํ๋ฝ ๋ฑ์ผ๋ก ์ฃผ๊ฑฐ ๋ถ๋ด์ด ๋๋ฉด์ 1์ฃผํ์์ ์ค์์์ ์ฃผ๊ฑฐ ์์ ์ง์์ ์ํด ๋์์ ํ๋ํ์ต๋๋ค.
์ด๋ฒ ๊ท์ ์ํ๋ HUG, ํ๊ตญ์ฃผํ๊ธ์ต๊ณต์ฌ, SGI์์ธ๋ณด์ฆ ๋ฑ ๋ณด์ฆ๊ธฐ๊ด 3์ฌ๊ฐ ๋์ผํ๊ฒ ์ํํฉ๋๋ค.
- tail -f ์ต์ ์ ์ฌ์ฉํ๋ฉด ์ค์๊ฐ์ผ๋ก ๋ณ๊ฒฝ๋ ๋ด์ฉ์ ํ์ธํ ์ ์๋ค.
์ฒซ ๋ฒ์งธ ํฐ๋ฏธ๋:
$ tail -f ~/webapps/ch02/read.txt
๋ ๋ฒ์งธ ํฐ๋ฏธ๋: nano ์๋ํฐ๋ฅผ ์ฌ์ฉํ๋ค. Ctrl + X: ์ ์ฅ ํ ์ข
๋ฃ
$ nano ~/webapps/ch02/read.txt
๋ณ๊ฒฝ๋ ์ฒซ ๋ฒ์งธ ํฐ๋ฏธ๋
pi@raspberrypi:~/webapps/ch02 $ tail -f ~/webapps/ch02/read.txt
Hello
4.4 ํ์ผ ์ด๋(mv), ์ญ์ (rm), ๋ณต์ฌ(cp) ๋ช ๋ น์ด p. 62
1. cp ๋ช
๋ น์ด (copy)
- ํ์ผ์ ๋ณต์ฌํด ์ฃผ๋ ๋ช
๋ น์ด๋ค.
cp <๋ณต์ฌํ ๋์> <๋ณต์ฌ๋ ์์น>
$ cp read.txt test
์์ )
$ cd ~/webapps/ch02
$ mkdir test #make directory
$ ls #list
read.txt test
$ cp read.txt test #copy
$ cd test #change directory
$ ls #list
read.txt
- ํ์ผ์ ๋ณต์ฌํ๋๋ฐ ๋ค๋ฅธ ์ด๋ฆ์ผ๋ก ์ ์ฅํ๋ ค๋ฉด
cp <๋ณต์ฌํ ๋์> <๋ณต์ฌ๋ ์์น/ํ์ผ๋ช
>
$ cp read.txt test/rename.txt
์์ )
$ cd ~/webapps/ch02
$ ls #list
read.txt test
$ cp read.txt test/rename.txt #copy
$ cd test #change directory
$ ls #list
read.txt rename.txt
- ๋ด ์์น๊ฐ ์ด๋์ ์๋ ์ ๋๊ฒฝ๋ก๋ฅผ ํตํด cp๋ช
๋ น์ด๋ฅผ ํ์ฉํ ์ ์๋ค.
cp <๋ณต์ฌํ ๋์> <๋ณต์ฌ๋ ์์น ์ ๋๊ฒฝ๋ก/ํ์ผ๋ช
>
$ cd /home/pi/webapps/ch02/testread.txt /home/pi/webapps/ch02/test/change.txt
์์ ) /์ ์๋ฏธ: ์ต์๋จ์ / ๋๋ ํฐ๋ฆฌ๋ถํฐ ๊ฒ์ํ๋ค. ex) Windows์์ c:\๋ถํฐ ๊ฒ์ํ๋ค.
$ cd /
$ pwd
/
$ cd /home/pi/webapps/ch02/testread.txt /home/pi/webapps/ch02/test/change.txt
$ cd /home/pi/webapps/ch02/test
$ ls
change.txt read.txt rename.txt
2. mv ๋ช
๋ น์ด (move)
- ํ์ผ์ ์ด๋ํ๋ ๋ช
๋ น์ด์
๋๋ค.
mv <ํ์ผ๋ช
> <์ด๋ํ ์์น>
$ mv myfile.txt test
์์ )
$ cd ~/webapps/ch02
$ touch myfile.txt
$ mv myfile.txt test
$ cd test
$ ls
change.txt myfile.txt read.txt rename.txt
- mv๋ช
๋ น์ด๋ฅผ ํตํด ํ์ผ๋ช
์ ๋ณ๊ฒฝํ ์ ์๋ค.
mv <ํ์ผ๋ช
> <๋ค๋ฅธ ์ด๋ฆ>
$ mv myfile.txt yourfile.txt
์์ )
$ mv myfile.txt yourfile.txt
$ ls
change.txt yourfile.txt read.txt rename.txt
3. rm ๋ช
๋ น์ด (remove)
- ํ์ผ์ ์ญ์ ํด ์ฃผ๋ ๋ช
๋ น์ด์
๋๋ค.
ํ์ผ์ญ์ : rm <ํ์ผ๋ช
>
$ rm read.txt
์์ )
$ cd ~/webapps/ch02
$ ls
read.txt test
$ rm read.txt
$ ls
test
- -r ์ต์
์ ์ฌ์ฉํ๋ฉด ๋๋ ํฐ๋ฆฌ๋ฅผ ์ญ์ ํ ์ ์๋ค.
ํด๋์ญ์ : rm –r <๋๋ ํฐ๋ฆฌ๋ช
>
$ rm -r test
์์ )
$ cd ~/webapps/ch02/test
$ mkdir folder1
$ ls
change.txt folder1 myfile.text read.txt rename.txt
$ cd ..
$ rm test
rm: channot remove 'test': ๋๋ ํฐ๋ฆฌ์
๋๋ค
$ rm -r test
4.5 ํ์ผ ์ฐพ๊ธฐ ๋ช ๋ น์ด p. 64
/bin ํด๋๋ ๊ธฐ๋ณธ์ ์ธ ํ๊ฒฝ๋ณ์๊ฐ ์ค์ ๋์ด ์๋ ํด๋์ด๊ธฐ ๋๋ฌธ์ /bin ํด๋ ๋ด๋ถ์ ์๋ ์คํํ์ผ์ ์ด๋์์๋ ์ง ์คํํ ์ ์๋ค.
์ฐธ๊ณ : https://velog.io/@dev_shu/Linux%EC%9D%98-%EA%B0%9C%EC%9A%942
/ (root): ์์คํ
๊ด๋ฆฌ์์ฉ ํ๋๋ ํฐ๋ฆฌ, ์ต์์ (๊ถํ ๊ฐํจ)
home ๋ฐ ํ์ผ: ์ฌ์ฉ์ ๋๋ ํฐ๋ฆฌ (๊ถํ ์ฝํจ)
1. which ๋ช
๋ น์ด
- ํน์ ๋ช
๋ น์ด์ ์์น๋ฅผ ์ ์ฒด ๊ฒฝ๋ก๋ก ์ฐพ์์ฃผ๋ ๋ช
๋ น์ด๋ค.
which <๋ช
๋ น์ด>
$ cd /
$ which rm
/bin/rm
- which ๋ช
๋ น์ด๋ฅผ ํตํด python3.5 ์คํํ์ผ์ด ์ด๋ ์๋์ง ์ ์ ์๋ค.
$ which python3.5
/usr/bin/python3.5
2. whereis ๋ช
๋ น์ด
์คํํ์ผ, ์์คํ์ผ, man ํ์ด์ง ํ์ผ์ ์์น๋ฅผ ์ฐพ์์ฃผ๋ ๋ช
๋ น์ด๋ค.
whereis <ํ์ผ๋ช
>
$ whereis python3.5
3. find ๋ช
๋ น์ด
find ๋ช
๋ น์ด๋ฅผ ํตํด ํน์ ์ด๋ฆ์ ๊ฐ์ง ๋ชจ๋ ํ์ผ๊ณผ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ฐพ์ ์ ์๋ค.
/์ ์๋ฏธ: ์ต์๋จ์ / ๋๋ ํฐ๋ฆฌ๋ถํฐ ๊ฒ์ํ๋ค. ex) Windows์์ c:\๋ถํฐ ๊ฒ์ํ๋ค.
sudo find / -name python3.5
์์ sudo๋ฅผ ๋ถ์ด๋ ์ด์ : pi ์ฌ์ฉ์๊ฐ ์๋ root์ฌ์ฉ์์ ๊ถํ์ ๋ํ๋ฐ์์ ๋ชจ๋ ํด๋๋ฅผ ํ์ํ๊ธฐ ์ํด์๋ค.
sudo (Super User DO) command in Linux is generally used as a prefix (์ ๋์ฌ) of some command that only superuser are allowed to run.
4.6 ๊ถํ p. 46
ex) root root: root ๊ถํ์ ๊ฐ์ง ์ฌ๋๋ง ์ญ์ ๊ฐ๋ฅ
๋ฆฌ๋ ์ค
sudo(super user): ์ํผ๊ถํ์ ์์ ์ํ ๋ช ๋ น์ด
chmod(change mode): ๊ถํ ๋ณ๊ฒฝ
chown(change owner): ์์ ์ ๋ณ๊ฒฝ
(1) file1.txt ์ดํด๋ณด๊ธฐ
x: ์คํ ๊ถํ
์์ ์ (rw-) : ์ฝ๊ณ ์ฐ๋ ๊ถํ ⊃ ์์ ๊ทธ๋ฃน (r--) : ์ฝ๊ธฐ ๊ถํ
(2) chmod ๋ช ๋ น์ด๋ฅผ ์ด์ฉํ์ฌ file1.txt ๊ถํ ๋ณ๊ฒฝํ๊ธฐ
์์ ์์ ์์ ๊ทธ๋ฃน์ด root์ด๊ณ ๋ค๋ฅธ ๋ชจ๋ ์ ์ ๋ ์ฝ๊ธฐ(r--) ๊ถํ๋ง ์๋ ์ํ์ด๋ค. ๊ทธ๋ฌ๋ฏ๋ก pi ์ฌ์ฉ์๋ก ํด๋น ํ์ผ์ ์ฝ๋ ๊ฒ์ ๊ฐ๋ฅํ์ง๋ง ์ฐ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํ๋ค.
์ฐธ๊ณ : https://www.skyer9.pe.kr/wordpress/?p=627
(3) chmod ๋ช ๋ น์ด (change mode)
chmod <์์ ๋ฒํธ> <ํ์ผ๋ช
>
r-x์ ๊ถํ: ์ฝ๊ณ ์คํํ๋ ๊ฒ์ด ๊ฐ๋ฅํ๋ค. (4+1=5๋ฅผ ์ฃผ๋ฉด ๋๋ค.)
-wx์ ๊ถํ: 2+1=3์ ์ฃผ๋ฉด ๋๋ค.
654 would mean read and write for owner, (6)
read and execute for group (5)
and only read for everyone else. (4)
(4) chown ๋ช ๋ น์ด (change owner)
chown <์์ ์> <์์ ๊ทธ๋ฃน> <ํ์ผ๋ช
or ๋๋ ํ ๋ฆฌ๋ช
>
pi@raspberrypi:~/webapps/ch02 $ sudo chown root:pi file1.txt
pi@raspberrypi:~/webapps/ch02 $ ls -l
ํฉ๊ณ 8
-rw-r--rw- 1 root pi 0 3์ 2 11:18 file1.txt
-rw-r--r-- 1 pi pi 10 3์ 2 11:20 file1.txt.save
-rw-r--r-- 1 pi pi 0 3์ 2 11:18 file2.txt
drwxr-xr-x 2 pi pi 4096 3์ 2 11:19 folder
4.7 ์ ์ถ๋ ฅ ์ฌ์ง์ IO Redirection p. 71
ํ์ค ์ ๋ ฅ์ ํค๋ณด๋, ํ์ค ์ถ๋ ฅ์ ๋ชจ๋ํฐ์ด์ง๋ง ์ด๋ฅผ ํ์ผ๋ก ์ฒ๋ฆฌํ๊ณ ์ถ์ ๋ ์ฃผ๋ก ์ฌ์ฉํ๋ค.
> ์ ๋ค์ ์ฌ์ฉํ๋ฉด ๊ธฐ์กด์ ๋ด์ฉ์ด ์๋ค๋ฉด ์ฌ๋ผ์ง๊ณ ๋ฎ์ด์ฐ๊ฒ ๋๋ค.
>>์ ์ฌ์ฉํ๋ฉด ๊ธฐ์กด์ ๋ด์ฉ์ ์ถ๊ฐ๊ฐ ๋๋ค.
4.8 wget, apt-get, git clone ํ์ผ ๋ค์ด๋ก๋ p. 72
๋ผ์ฆ๋ฒ ์ด ํ์ด๋ ์ด์์ฒด์ ๋ก ๋ผ์ฆ๋น์์ ์ฌ์ฉํ๋ค. (๋น์ = ๋ฐ๋น์)
๋ผ์ฆ๋น์์ ๋ฐ๋น์ ๊ณ์ด์ ์ด์์ฒด์ ๊ณ , ๋ฐ๋น์ ๊ณ์ด์ ์ด์์ฒด์ ๋. deb ํ์ผ์ ๋ค์ด ๋ฐ์์ ์ค์นํ ์ ์๋ค.
๋ฐ๋น์ ๊ณ์ด์์๋.deb ํ์ผ์ GUI(๊ทธ๋ํฝ๋ชจ๋)์์๋ ๋ง์ฐ์ค ์ฐํด๋ฆญ ํ ํจํค์ง ์ค์นํ๊ธฐ๋ฅผ ํด๋ฆญํ์ฌ ์ค์น๊ฐ ๊ฐ๋ฅํ๊ณ ,
ํน์ ํฐ๋ฏธ๋์์ dpkg๋ผ๋ ๋ช
๋ น์ด๋ฅผ ์ด์ฉํ์ฌ ์ค์น๊ฐ ๊ฐ๋ฅํ๋ค.
dpkg๋ ๋ฐ๋น์ ํจํค์ง ๊ด๋ฆฌ ์์คํ
์ ๊ธฐ์ด๊ฐ ๋๋ ์ํํธ์จ์ด์ด๋ค.
dpkg ๋ช
๋ น์ด๊ฐ .deb ํจํค์ง์ ์ค์น, ์ญ์ , ์ ๋ณด ์ ๊ณต์ ์ํด ์ฌ์ฉ๋๋ค.
dpkg ๊ทธ ์์ฒด๋ ์ ๋ ๋ฒจ์ ๋๊ตฌ์ด๋ฉฐ, APT์ ๊ฐ์ ๊ณ ๊ธ ๋๊ตฌ๋ค์ด ๋ณต์กํ ํจํค์ง ๊ด๊ณ์ ํจํค์ง๋ฅผ ์๊ฒฉ์์ ๋ฐ์์ค๋ ๋ฑ์ ์ผ์ ํ๊ฒ ๋๋ค.
dpkg is the software at the base of the package management system in the free operating system Debian and its numerous derivatives. dpkg is used to install, remove, and provide information about .deb packages. dpkg itself is a low-level tool.
์๋์ฐ์์ ์์
ํ ํ์ผ์ ๋ผ์ฆ๋ฒ ๋ฆฌ๋ก ์ฎ๊ธฐ๋ ๋ฐฉ๋ฒ
1. ์ด๋ฉ์ผ ์ฌ์ฉ
2. ์๊ฒฉ์ผ๋ก ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด ์ ์
3. ํน์ ํํ์ด์ง(ex. ์นดํ)์ ํ์ผ์ ์
๋ก๋ํด ๋๊ณ http ํ๋กํ ์ฝ์ ์ด์ฉํ์ฌ ๋ค์ด๋ก๋ํ๋ค.
(1) wget์ ์ด์ฉํ ๋ค์ด๋ก๋
wget <๋งํฌ์ฃผ์>
๋ฆฌ๋
์ค ๋ฒ์ ํ์ผ ์ฐ์ธก ๋ง์ฐ์ค ํด๋ฆญ → ๋งํฌ ์ฃผ์ ๋ณต์ฌ
$ wget https://github.com/LightTable/LightTable/releases/download/0.8.1/lighttable-0.8.1-linux.tar.gz
(2) git clone์ ์ด์ฉํ ๋ค์ด๋ก๋
git: ํ์
์ฉ์ด๋ค. git์ ์ด์ฉํ๋ฉด ๋ณํฉ์ ๋ฌธ์ ๋ฅผ ์๋์ผ๋ก ํด๊ฒฐํด ์ฃผ๋ฉฐ ๋ถ๋ถ์ ์ผ๋ก ๋ณ๊ฒฝ๋ ๋ถ๋ถ์ ํ์
ํ์ฌ ์๋์ ์ผ๋ก ๋ณํฉํด ์ค๋ค. ๋ฒ์ ์ ๊ด๋ฆฌํด ์ฃผ๋ ์ญํ ๋ ํ๋ค.
gitHub: ๋ฒ์ ์ ์ด ๋ฐ ๊ณต๋ ์์
์ ์ํ ์ฝ๋ ํธ์คํ
ํ๋ซํผ
๋ค๋ฅธ ์ฌ๋์๊ฒ ๊ณต๊ฐ ๊ฐ๋ฅ, ํผ๋๋ฐฑ๋ฐ์ ์ ์๋ค, ์คํ ์์ค์ด๋ฏ๋ก ๋๊ตฌ๋ ๋ค์ด๋ก๋ํ์ฌ ์ฌ์ฉํ ์ ์๋ค.
์คํ ์์ค๋ก ๊ณต๊ฐํ๋ ์ด์ : ์ฌํ์ ์ธ ๊ณตํ, ๋๊ตฐ๊ฐ๊ฐ ์ด์ด์ ํ๋ก์ ํธ ๋ง๋ฌด๋ฆฌ, ๊ฒ์ฆ๋ฐ๊ธฐ
git clone <url์ฃผ์>
https://github.com/szazo/DHT11_Python
(3) apt-get (Advanced Packaging Tool-get) ์ด์ฉํ๊ธฐ
sudo apt-get install ํ๋ก๊ทธ๋จ๋ช
apt-get: ํ๋ก๊ทธ๋จ ํจํค์ง๋ฅผ ๋ค์ด๋ก๋ํ๊ณ ์ค์นํ๋ ๋ช
๋ น์ด
apt-get์ ์ด์ฉํ๋ ๊ฒ: ๋ฐ๋น์์ด ์ ๊ณตํ๋ ๊ณต์ ์ ์ฅ์๋ฅผ ์ด์ฉํ๋ ๊ฒ์ด๋ฉฐ, ๋ค์ด๋ก๋๋ฅผ ํ ์ ์๋ ๊ฒ๋ฟ๋ง ์๋๋ผ ์๋์ผ๋ก ์ค์น๊ฐ ์งํ๋๋ฉด์ ํ๊ฒฝ๋ณ์ ์ค์ , ํ์ผ ๋งํฌ ์ค์ , ๋ฐ๋ชฌ ์ค์ ๋ฑ์ด ์๋์ผ๋ก ๋๋ฏ๋ก ํธ๋ฆฌํ๋ค.
๋ฐ๋ชฌ์ด๋ ๋ฆฌ๋
์ค ์์คํ
์ด ์ฒ์ ๊ฐ๋๋ ๋ ์คํ๋๋ ๋ฐฑ๊ทธ๋ผ์ด๋ ํ๋ก์ธ์ค์ ์ผ์ข
์ด๋ฉฐ, ์ฌ์ฉ์์ ์์ฒญ์ ๊ธฐ๋ค๋ฆฌ๊ณ ์๋ค๊ฐ ์์ฒญ์ด ๋ฐ์ํ๋ฉด ์ด์ ์ ์ ํ ๋์ํ๋ ๋ฆฌ์ค๋์ ๊ฐ์ ์ญํ ์ ํ๋ค. ์ฆ, ๋ฉ๋ชจ๋ฆฌ์ ์์ฃผํ๋ฉด์ ํน์ ์์ฒญ์ด ์ค๋ฉด ์ฆ์ ๋์ ํ ์ ์๋๋ก ๋๊ธฐ ์ค์ธ ํ๋ก์ธ์ค๋ฅผ ๋งํ๋ค.
์ฐธ๊ณ : https://valuefactory.tistory.com/229
apt-get์ ํตํด ๋ค์ด๋ก๋๋๋ ์ ์ฅ์ ๋ชฉ๋ก์ ์๋์ ๊ฐ๋ค.
nano /etc/apt/sources.list
- ๋ผ์ฆ๋น์ ์ ์ฅ์๋ก ๋ธ๋ผ์ฐ์ ๋ฅผ ์ด์ด์ ์ด๋ํ๋ค.
http://raspbian.raspberrypi.org/raspbian/
- apt-get์ ์ด์ฉํ์ฌ ๋ค์ด๋ก๋ํ๋ค.
$ sudo apt-get install scrot
- scrot ํ๋ก๊ทธ๋จ์ ํ๋ฉด ์บก์ณ ํ๋ก๊ทธ๋จ์ด๋ค.
๋ค์ ๋ช
๋ น์ด๋ฅผ ์
๋ ฅํ ๋ค ๋๋๊ทธ๋ฅผ ํ๋ฉด home/pi ๊ฒฝ๋ก์ ์๋์ผ๋ก ์ฌ์ง์ด ์ ์ฅ๋๋ค.
$ scrot -s
4.9 ํ์ผ ์์ถ (tar: Tape ARchiver)
tar๋ก ์์ถํ๋ ๋ฐฉ์์๋ ๋ ๊ฐ์ง๊ฐ ์๋ค.
tar๋ก ์์ถ: ํ์ผ๊ณผ ํด๋๋ฅผ ํ๋์ ํ์ผ๋ก ๋ฌถ์ด์ฃผ๋ ์ ํธ๋ฆฌํฐ์ด๋ค. ์ฃผ๋ก ๋ฐฑ์
์ฉ๋๋ก ์ฌ์ฉํ๋ค.
tar.gz๋ก ์์ถ: ํ์ผ ๋ฐ ํด๋๋ค์ ๋ฌถ์ด์ ์์ถํ๋ค.
a TAR file creates one archive file out of multiple files without compressing them,
while the GZ file format compresses a file without creating an archive.
tar
tar -cvf: ์์ถ
tar -xvf: ์์ถ ํด์
tar.gz
tar.gz -cvf: ์์ถ
tar.gz -xvf: ์์ถ ํด์
$ mikdir aaa
$ tar -cvf aaa.tar aaa #aaa ํด๋๋ฅผ aaa.tar๋ก ์์ถ
(2) tar ์์ถ ํด์
$ tar -xvf aaa.tar # ํ์ฌ ๊ฒฝ๋ก์ aaa.tar ํ์ผ ์์ถํ๊ธฐ
(3) tar.gz ์์ถ
$ mkdir ccc
$ tar -zcvf ccc.tar.gz ccc # ccc ํด๋๋ฅผ ccc.tar.gz๋ก ์์ถ
(4) tar.gz ์์ถ ํด์
$ tar - zxvf ccc.tar.gz # ํ์ฌ ๊ฒฝ๋ก์ aaa.tar.gz ํ์ผ ์์ถํ๊ธฐ
(5) zip ์์ถ ํด์
$ sudo apt-get install unzip
$ unzip ํ์ผ๋ช