Monday(02.03)
๋ฆฌ๋ ์ค์ ์ปค๋์ ๊ฐ๋
- ๋ฆฌ๋ ์ค: ์ปค๋์ ๊ธฐ๋ฐ์ผ๋ก ํ ์ด์์ฒด์
- ์ปค๋: ์ด์์ฒด์ ์ ํต์ฌ์ผ๋ก, ํ๋์จ์ด์ ์ํํธ์จ์ด ๊ฐ์ ์ํธ์์ฉ์ ๊ด๋ฆฌํ๊ณ , ์ธํฐ๋ฝํธ ์ฒ๋ฆฌ, ํ๋ก์ธ์ค ๊ด๋ฆฌ, ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ, ํ์ผ ์์คํ ๊ด๋ฆฌ, ํ๋ก๊ทธ๋๋ฐ ์ธํฐํ์ด์ค ์ ๊ณต ๋ฑ ๋ค์ํ ์ค์ํ ๊ธฐ๋ฅ์ ์ํ
- ๋ฆฌ๋ ์ค ์ปค๋ ์์ฒด๋ ์คํ์์ค๋ก ๊ฐ๋ฐ๋๊ณ , ์์ ์ฑ, ์ต์ ํ, CLI(๋ช ๋ น์ด ์ธํฐํ์ด์ค) ๋ฐ GUI ์ ๊ณต
๊ฐ์ํ (Virtualization) ๋ณต์ต
๊ฐ์ํ๋ ์ฌ๋ฌ ํ๋ก์ธ์ค๊ฐ ์ปดํจํฐ ์์์ ๋ ผ๋ฆฌ์ ์ผ๋ก ๊ณต์ ํ์ฌ ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋ ๋ฆฝ๋ ์ปดํจํฐ ํ๊ฒฝ์ฒ๋ผ ๋ณด์ด๊ฒ ๋ง๋๋ ๊ธฐ์
- ํ์ดํผ๋ฐ์ด์ ๋ฐฉ์: ์ฌ๋ฌ ๊ฐ์ ๋ ๋ฆฝ์ ์ธ ์ด์์ฒด์ ๋ฅผ ์คํ
- ์ปจํ ์ด๋ ๋ฐฉ์: ํธ์คํธ OS์ ์ปค๋์ ๊ณต์ ํ์ฌ, ์ฌ๋ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฒฉ๋ฆฌํ์ฌ ์คํ
ํ์ดํผ๋ฐ์ด์ ์ ์ฅ๋จ์
- ์ฅ์ : ์์ ํ ๋ ๋ฆฝ์ ์ธ ์ด์์ฒด์ ์คํ
- ๋จ์ : ์์ ์๋น๊ฐ ํผ
์ปจํ ์ด๋์ ์ฅ๋จ์
- ์ฅ์ : ์ ์ฒด OS๋ฅผ ๋ถํ ํ ํ์๊ฐ ์์ด์ ๋น ๋ฅด๋ฉฐ, MSA ๊ตฌ์ถ์ด ์ฌ์
- ๋จ์ : ํธ์คํธ OS์ ์ปค๋์ ๊ณต์ ํ๋ฏ๋ก ํธ์คํธ OS์ ๋ค๋ฅธ ๊ฒ์คํธ OS ๋ถ๊ฐ, ํธ์คํธ OS์ ์์ ํ ๋ ๋ฆฝ์ ์ธ ์ปค๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ ์ ์๊ณ ํธ์คํธ OS์ ์์ ์ฑ์ ์์กดํ๋ค.(ํธ์คํธ OS๋ฌธ์ ์ ์ปจํ ์ด๋๋ ์ํฅ)
๋์ปค
LXC(Linux Containers)๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ๋๊ตฌ๋ก, ํ๋ก๊ทธ๋จ๊ณผ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ง ๊ฒฉ๋ฆฌํ์ฌ ์คํํ๊ณ , ํธ์คํธ OS์ ํ๋์จ์ด ์์์ ๊ณตํ์ฌ, ํ์ํ ์์๋ง ์ฌ์ฉํ๊ณ , ํจ์จ์ ์ธ ๊ฐ์ํ ํ๊ฒฝ์ ์ ๊ณต
# ubuntu2 ๋์ปค ์ปจํ
์ด๋์ ์ธํฐ๋ํฐ๋ธ ๋ชจ๋๋ก ์ ์ํ์ฌ, bash ์
ธ์ ์คํ -> ์ ํตํด ๋ช
๋ น์ด ์
๋ ฅ ๋ฐ ์คํ
docker exec -it ubuntu2 /bin/bash
# ubuntu ๋์ปค ์ด๋ฏธ์ง๋ ์ต์ ๊ธฐ๋ฅ ๋ฒ์ -> ์ถ๊ฐ ๊ธฐ๋ฅ ํ์ ์ ๋ณด์ถฉ
unminimize
apt-get update
# ํ ๋ฒ์ ์ฌ๋ฌ ํจํค์ง ์ค์น
apt-get install net-tools vim openssh-server ssh sudo info man-db less psmisc nano tzdata cron
์(Shell)๊ณผ ์ปค๋(Kernel)
- ๋ฆฌ๋ ์ค์์ ์์ ์ฌ์ฉ์๊ฐ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๊ณ , ์ด๋ฅผ ์ปค๋์๊ฒ ์ ๋ฌํ๋ ์ธํฐํ์ด์ค
- ์ฌ์ฉ์๊ฐ date ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋ฉด, ์์ ์ด๋ฅผ ์ปค๋์๊ฒ ์ ๋ฌํ์ฌ ์คํํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ์ฌ์ฉ์์๊ฒ ์ถ๋ ฅ
- ์์ ์ปค๋๊ณผ ๋ถ๋ฆฌ๋์ด ์๊ธฐ ๋๋ฌธ์, ์ปค๋์ ๋ณ๊ฒฝํ์ง ์๊ณ ๋ ์๋ง ๊ต์ฒดํ ์ ์๋ ์ฅ์
์์ ์ข ๋ฅ
- sh → bash → zsh: ์๊ฐ์ด ์ง๋๋ฉด์ ์ฌ์ฉ์๊ฐ ์ ํธํ๋ ์ ๋ณ๊ฒฝ๋จ
- ๋ก๊ทธ์ธ ์: ์ฌ์ฉ์ ๋ก๊ทธ์ธ ํ ์์๋๋ ์
์ํผ์ ์ ์ ์ผ๋ฐ์ ์
์ํผ์ ์ :์์คํ ์ ๊ด๋ฆฌํ ์ ์๋ ๊ถํ
- su: ๋ค๋ฅธ ์ฌ์ฉ์(์ํผ์ ์ ํฌํจ)๋ก ์ ํ
- sudo: ๋น๋ฐ๋ฒํธ ์์ด ์ํผ์ ์ ๊ถํ์ ์์๋ก ๋ถ์ฌ
๋ฆฌ๋ ์ค ํ์ผ ์์คํ
๋ฆฌ๋ ์ค๋ ๋ชจ๋ ๊ฒ์ด ํ์ผ๋ก ์ฒ๋ฆฌ๋จ.
๋ฌธ์, ์ด๋ฏธ์ง, ํ๋ก๊ทธ๋จ, ์์คํ ๊ตฌ์ฑ ์ฅ์น๋ ํ์ผ๋ก ๋ค๋ค์ง๊ณ , ์ด๋ฐ ํ์ผ๋ค์ ํจ๊ณผ์ ์ผ๋ก ๊ด๋ฆฌํ๊ธฐ ์ํด ๋๋ ํฐ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉ
- /bin: ์์คํ ์คํ ํ์ผ
- /dev: ๋๋ฐ์ด์ค ํ์ผ
- /etc: ์ ํ๋ฆฌ์ผ์ด์ ์ค์ ํ์ผ
- /home: ์ฌ์ฉ์ ํ ๋๋ ํฐ๋ฆฌ
- /sbin: ์์คํ ๊ด๋ฆฌ ์คํ ํ์ผ
- /usr: ์ ํ๋ฆฌ์ผ์ด์ ์คํ ํ์ผ, ๋ผ์ด๋ธ๋ฌ๋ฆฌ, ๋ฌธ์ ๋ฑ
- /var: ๋ณํ๋ ๋ฐ์ดํฐ
mount: ์ฌ๋ฌ ๋์คํฌ๊ฐ ์์ ๋ ๋ฃจํธ ๋๋ ํฐ๋ฆฌ์ ๋ค๋ฅธ ๋์คํฌ์ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ฐ๊ฒฐํ๋ ์์
๋ฆฌ๋ ์ค ๋ช ๋ น์ด๋ฅผ ๋ชจ๋ฅผ ๋, <whatis, info, --help, man > ์ ํ์ฉํ์
Tuesday(02.04)
์ค๋์ ์ ์ฌ
๋ณ์ โญ๏ธ โญ๏ธ โญ๏ธ โญ๏ธ โญ๏ธ
๋ญ๊ฐ๋น์ ์ง์ฅ๋ฉด์ด ๋ฉ๋ด์๋๋ฐ, ๋ค๋ฅธ ์น๊ตฌ ๋ญ๊ฐ๋น๋ ์์ด ๋จน์ด์ ๋๋ฐฐ๋ก ๋ง์์๋ค.
![](https://blog.kakaocdn.net/dn/Zb9oW/btsL7dNskIG/CbCcbAK1p3fyFqPpO6Ar9K/img.png)
๋ฆฌ๋ ์ค ๋ช ๋ น์ด์ ์ฒ ํ: "ํ ๋ช ๋ น์ด๋ ํ๋์ ๋์"
ํ ๋ช ๋ น์ด๋ ํ๋์ ๋์์ ํ์ง๋ง, ์๋ ๋ฆฌ๋ ์ค์ ์ฒ ํ๊ณผ ๋ค๋ฅด๊ฒ ์ฌ๋ฌ ๋ช ๋ น์ด๋ฅผ ํ๋ฒ์ ์ฌ์ฉํ๊ณ ์ถ๋ค๋ฉด, -p ๋ฅผ ์ฌ์ฉ
1. ํ์ผ ๊ถํ๊ณผ ์์ ์
- ์์ ์ (Owner): ํ์ผ์ ๋ง๋ ์ฌ์ฉ์
- ์์ ๊ทธ๋ฃน (Group): ํ์ผ์ ๊ณต์ ํ๋ ๊ทธ๋ฃน
- ๊ธฐํ ์ฌ์ฉ์ (Others): ์์ ์์ ๊ทธ๋ฃน ์ธ์ ์ฌ์ฉ์
๊ถํ (rwx)
- r (read): ํ์ผ์ ์ฝ์ ์ ์๋ ๊ถํ
- w (write): ํ์ผ์ ์์ ํ ์ ์๋ ๊ถํ
- x (execute): ํ์ผ์ ์คํํ ์ ์๋ ๊ถํ
# ๋งจ ์์ l: ์ฌ๋ณผ๋ฆญ ๋งํฌ
lrwxrwxrwx 1 root root 7 Sep 11 14:47 bin -> usr/bin
๋๋ ํฐ๋ฆฌ์ t๊ฐ ํ์๋ ๊ฒฝ์ฐ๋ Sticky Bit๋ฅผ ์๋ฏธ
/tmp์ ๊ฐ์ ๋๋ ํฐ๋ฆฌ์ ์ฌ์ฉ๋๋ฉฐ, ๋ค๋ฅธ ์ฌ์ฉ์๊ฐ ๋ง๋ ํ์ผ์ ์ญ์ ํ๊ฑฐ๋ ์์ ํ ์ ์๊ฒํ๋ ๋ช ๋ น์ด
drwxrwxrwt 1 root root 4096 Feb 3 07:54 tmp
2. ์ฃผ์ ๋ฆฌ๋ ์ค ๋ช ๋ น์ด
2.1 ํ์ผ ๊ด๋ฆฌ
- cp : ํ์ผ์ ๋ณต์ฌํ ๋ ์ฌ์ฉ
- cp -r: ๋๋ ํฐ๋ฆฌ๋ฅผ ํฌํจํ ํ์ผ์ ๋ณต์ฌํ ๋ ์ฌ์ฉ (recursive)
cp -r dir1 dir2
- touch: ๋น ํ์ผ์ ๋ง๋ค ๋ ์ฌ์ฉ.echo๋ ๋น ํ์ผ์ ๋ง๋ค ์ ์๋ค
- touch๋ ์์ ํ ๋น ํ์ผ์ ๋ง๋๋ ๋ฐ ์ฌ์ฉ๋๋ฉฐ, ๋ด์ฉ์ด ์๊ณ ์์ ์๊ฐ๋ง ๊ฐฑ์ ํ์ง๋ง
- echo๋ ํ ์คํธ๋ฅผ ํ์ผ์ ์ ๋ ฅํ๋ ๋ช ๋ น์ด๋ก, ๋น ํ์ผ์ ๋ง๋ค๊ธฐ ์ํด์๋ ๋น ๋ฌธ์์ด์ ์ถ๋ ฅํด์ผ ํ๋ฉฐ, ๋ด์ฉ์ด ํ์ผ์ ๋ค์ด๊ฐ๊ฒ ๋จ
touch newfile.txt
2.2 ํ์ผ ๊ฒ์ ๋ฐ ์์
- grep: ํ์ผ ๋ด์์ ํน์ ํจํด์ ์ฐพ์ ๋ ์ฌ์ฉ
grep "sys" /etc/passwd
- find: ์กฐ๊ฑด์ ๋ง๋ ํ์ผ์ ๊ฒ์
find /home -name "*.txt"
+ ๋ฆฌ๋ ์ค์์ ์ ๊ท์์ ์ฌ์ฉํ ์ ์๋ค. grep, sed, awk์ ๊ฐ์ ๋ช ๋ น์ด์์ ์์ฃผ ์ฌ์ฉํ๋ค.
ํ์ผ ๋ด์ฉ ๊ฒ์: grep sys /etc/passwd = /etc/passwd์์ sys๋ผ๋ ๋จ์ด ๊ฒ์
df(disk free): ํ์ผ ์์คํ
๋ณ ๋์คํฌ ์ฌ์ฉ๋ ํ์ธ
du(disk usage): ๋๋ ํฐ๋ฆฌ๋ณ๋ก ๋์คํฌ ์ฌ์ฉ๋ ํ์ธ
2.3 ๋งํฌ ๋ง๋ค๊ธฐ
- ํ๋ ๋งํฌ: ํ์ผ์ ๋ฌผ๋ฆฌ์ ์ธ ์์น๋ฅผ ๊ณต์ ํ๋ ๋งํฌ
- ํ๋ ๋งํฌ๋ก ๋ง๋ ํ์ผ์ ๋ํด ์ด๋ ๊ฒ์ด ์๋ณธ์ด๊ณ ์ด๋ ๊ฒ์ด ๋ณต์ฌ๋ณธ์ธ์ง ๊ตฌ๋ถํ์ง ์์๋ ๋๋ค. ์์ชฝ ๋ค ์๋ณธ ํ์ผ์ด๊ธฐ ๋๋ฌธ(inode๋ฅผ ๊ณต์ )
root@9915b92eaf0a:~# ln file2.txt file3.txt
root@9915b92eaf0a:~# ls -i -l
total 8
1058908 -rw-r--r-- 1 root root 0 Feb 4 02:41 file.txt
1058911 -rw-r--r-- 2 root root 6 Feb 4 02:42 file2.txt
1058911 -rw-r--r-- 2 root root 6 Feb 4 02:42 file3.txt
- ์ํํธ ๋งํฌ: ๋ค๋ฅธ ํ์ผ์ด๋ ๋๋ ํฐ๋ฆฌ๋ฅผ ๊ฐ๋ฆฌํค๋ ๋งํฌ, window์ "๋ฐ๋ก๊ฐ๊ธฐ"์ ๊ฐ๋ค.
ln -s /path/to/file linkname
2.4 ํ์ผ ๋ด์ฉ ์์
- echo: ํ
์คํธ ์ถ๋ ฅ ๋ฐ ํ์ผ์ ํ
์คํธ ์ถ๊ฐ
echo "Hello, World!" >> file.txt
3. ์๊ณผ ํ๋ก์ธ์ค ๊ด๋ฆฌ
3.1 ์ ํ๋ก์ธ์ค
- sh์ bash๋ ๋ชจ๋ ์์ ์ข ๋ฅ. sh→bash→sh →bash ์ด๋ ๊ฒ ์์ ์ฌ๋ฌ ๋ฒ ์คํํ๋ฉด ์์ ํ๋ก์ธ์ค๊ฐ ๊ณ์ ์์ฑ๋จ
3.2 ํ๋ก์ธ์ค ๊ด๋ฆฌ
- kill: ํ๋ก์ธ์ค๋ฅผ ์ข ๋ฃํ ๋ ์ฌ์ฉ
kill <PID>
- top: ์์คํ
์ ์ค์๊ฐ ํ๋ก์ธ์ค๋ฅผ ๋ชจ๋ํฐ๋ง
kill -9๋ ๊ฐ์ ๋ก ํ๋ก์ธ์ค๋ฅผ ์ข ๋ฃํ ๋ ์ฌ์ฉ๋๋ฉฐ, ํ๋ก์ธ์ค๊ฐ ์ข ๋ฃ๋์ง ์์ผ๋ฉด ์ข๋น ํ๋ก์ธ์ค๊ฐ ๋ ์ ์๋ค.
4. ์ ํ๊ฒฝ๊ณผ ๋ณ์
๋ฆฌ๋ ์ค์ ์์ ์ฌ์ฉ์๊ฐ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๊ณ ์์คํ ๊ณผ ์ํธ์์ฉํ ์ ์๊ฒ ํด์ฃผ๋ ํ๋ก๊ทธ๋จ
๋ณ์, ํ๊ฒฝ ๋ณ์, ๊ทธ๋ฆฌ๊ณ ์ค์ ํ์ผ๋ค์ด ์ค์ํ ์ญํ
4.1 ํ๊ฒฝ ๋ณ์์ ์ ๋ณ์
- ์ ๋ณ์: ํ์ฌ ์์์๋ง ์ ํจํ ๋ณ์. ์๋ธ์์ด๋ ์๋ก์ด ํฐ๋ฏธ๋์์ ํด๋น ๋ณ์ ์ฌ์ฉ ๋ถ๊ฐ
SOME="Hello" # ์ ๋ณ์ ์ ์
echo $SOME # ์ถ๋ ฅ: Hello
- ํ๊ฒฝ ๋ณ์: ๋ชจ๋ ํ์ ์์์ ์ฌ์ฉํ ์ ์๋ ๋ณ์
- ์ ๋ณ์๋ฅผ ์ ์ํ๊ณ export ๋ช ๋ น์ ์ฌ์ฉํ๋ฉด ํ๊ฒฝ ๋ณ์๋ก ๋ฐ๊ฟ ์ ์๋ค.
export SOME="Hello" # ํ๊ฒฝ ๋ณ์๋ก ์ค์
export PATH="/usr/local/bin:$PATH" # ํ๊ฒฝ ๋ณ์ ์ค์
- ๋ฐ๋๋ก ํ๊ฒฝ๋ณ์๋ฅผ ๋ค์ ์ ๋ณ์๋ก ๋ณ๊ฒฝํ๊ธฐ
export -n SOME # ํ๊ฒฝ ๋ณ์์์ ์ ๊ฑฐํ๊ณ ์ ๋ณ์๋ก ๋๋๋ฆผ
5. awk์ ํ ์คํธ ์ฒ๋ฆฌ
awk๋ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ณ ๋ถ์ํ๋ ๋ฐ ์ ์ฉ
ํ์ผ ๋ด์์ ํน์ ํ๋๋ฅผ ์ ํํ๊ฑฐ๋ ์กฐ๊ฑด์ ๋ง๋ ํ์ ์ถ๋ ฅ
awk '{ print $2 }' sample.txt # ๋ ๋ฒ์งธ ์ด ์ถ๋ ฅ
awk '$3 == 25 { print $0 }' sample.txt # ์ธ ๋ฒ์งธ ์ด ๊ฐ์ด 25์ธ ํ ์ถ๋ ฅ
awk '{ sum += $3; count++ } END { print "Average age:", sum/count }' sample.txt
6. ๋์ปค ์ด๋ฏธ์ง ์ ์ฅ ๋ฐ ๋ฐฐํฌ
๋ฆฌ๋ ์ค์์ ์์ ํ ์ปจํ ์ด๋์ ์ํ๋ฅผ ์ ์ฅํ๊ณ ๋์ปค ํ๋ธ์ ๋ฐฐํฌํ ์ ์๋ค.
์ด๋ ๊ฒ ํ๋ฉด ๋์ปค ์ด๋ฏธ์ง๋ฅผ ๋์ปค ํ๋ธ์ ์ ๋ก๋ํ์ฌ ๋ค๋ฅธ ์์คํ ์์๋ ์ฌ์ฉํ ์ ์๊ฒ ๋๋ค.
docker commit ubuntu ubuntu_study
docker tag ubuntu_study username/ubuntu_study:1.0
docker push username/ubuntu_study:1.0
7. ๋ช ๋ น์ด ๋ณ์นญ๊ณผ history
๋ฆฌ๋ ์ค์์๋ ๋ช ๋ น์ด์ ๋ณ์นญ์ ๋ถ์ฌ์ ์์ฃผ ์ฌ์ฉํ๋ ๋ช ๋ น์ด๋ฅผ ๊ฐํธํ๊ฒ ์คํํ ์ ์๋ค.
alias์ unalias๋ฅผ ์ฌ์ฉํ์ฌ ๋ณ์นญ์ ์ค์ ํ๊ณ ์ญ์ ํ ์ ์๋ค.
alias ll='ls -l'
unalias ll
history ๋ช ๋ น์ด๋ ๊ณผ๊ฑฐ์ ์คํํ๋ ๋ช ๋ น์ด๋ค์ ๋ณด์ฌ์ค๋ค.
๋ฆฌ๋ ์ค ๊ณต๋ถํ ๊ฑธ ํ ์คํธ ํ๊ธฐ์ ์ข๋ค๊ณ ๊ฐ์ฌ๋๊ป์ ์ถ์ฒํด ์ฃผ์ จ๋ค. ๊ฝค ์ด๋ ต๋ค..
Wednesday(02.05)
Thursday(02.06)
Friday(02.07)
'๐ฐ์ฐ๋ฆฌ FISA > ํ๊ธฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ฐ๋ฆฌ FISA AI์์ง๋์ด๋ง 4์ฃผ์ฐจ ๊ณผ์ (0) | 2025.01.20 |
---|---|
์ฐ๋ฆฌ FISA AI์์ง๋์ด๋ง 3์ฃผ์ฐจ ๊ณผ์ (0) | 2025.01.13 |
์ฐ๋ฆฌ FISA AI์์ง๋์ด๋ง 2์ฃผ์ฐจ ๊ณผ์ (0) | 2025.01.06 |
์ฐ๋ฆฌ FISA AI์์ง๋์ด๋ง 1์ฃผ์ฐจ ๊ณผ์ (0) | 2024.12.30 |