๐ก ์ฌ๊ธฐ์ ์ด์์ฒด์ ๋?
์ฌ๋๊ณผ ์ปดํจํฐ๋ฅผ ์ด์ด์ฃผ๋ ๋งค๊ฐ์ฒด์ธ Operating System (OS)
- ์ฅ์ ๐ ์๋์ ์ผ๋ก ์๋๊ฐ ๋น ๋ฅด๊ณ ์์ ์ฑ์ด ๋์ผ๋ฉฐ ๊ทธ๋ํฝ ํ์๊ฐ ์์ด ์ปดํจํฐ ์์์ ์ ๊ฒ ์ฌ์ฉ
- ๋จ์ ๐ ๋ช ๋ น์ด๋ฅผ ๋ชจ๋ฅด๋ฉด ์ฌ์ฉ์ด ๋ถ๊ฐ
- ์ฅ์ ๐ ์ฌ์ฉํ๊ธฐ ์ฝ๊ณ ํธ๋ฆฌ
- ๋จ์ ๐ ์๋์ ์ผ๋ก ์๋๊ฐ ๋๋ฆฌ๊ณ ์์ ์ฑ์ด ๋ฎ์ผ๋ฉฐ ์ฐ๋ฆฌ๊ฐ ๋ณด๋ ํ๋ฉด์ ๊ทธ๋ํฝ์ผ๋ก ๋ง๋ค๊ธฐ ๋๋ฌธ์ ์ปดํจํฐ ์์์ ๋ง์ด ์ฌ์ฉ
ํฐ๋ฏธ๋ ํ๋ก๊ทธ๋จ์์ ์
๋ ฅ์ ํ์ธํ๊ณ ํธ์งํ ์ ์๋ ํ ์ค์ ๊ณต๊ฐ
(๋ช
๋ น์ด๋ฅผ ์
๋ ฅํ๊ณ Enter
์ ๋๋ฅด๋ฉด ๋จ)
pwd
: ํ์ฌ ์์น ํ์ธ
mkdir ํด๋์ด๋ฆ
: ์๋ก์ด ํด๋ ์์ฑ
ls
: ํด๋๋ ํ์ผ์ ๋ชฉ๋ก์ ์ถ๋ ฅ
ls -a
: ํด๋น ํด๋ ์์ ์๋ ๋ชจ๋ ํด๋ ํ์ผ์ ๋ชฉ๋ก์ ์ถ๋ ฅ
ls -l
: ํด๋น ํด๋ ์์์๋ ๋ชจ๋ ํด๋์ ํ์ผ์ ์ ๋ณด๋ฅผ ์ถ๋ ฅ
cd [ํด๋์ด๋ฆ]
: ์ ๋ ฅํ ํด๋๋ก ์ด๋
cd ..
: ๋ฐ๋ก ์์ ํด๋๋ก ์ด๋
cd ./[ํด๋/ํ์ผ์ด๋ฆ]
: ํ์ฌ ํด๋์์ ๋ค๋ฅธ ํด๋/ํ์ผ๋ก ์ด๋
touch [ํ์ผ์ด๋ฆ]
: ์๋ก์ด ํ์ผ ์์ฑ
echo [์ ๋ ฅํ ๋ด์ฉ] > [ํ์ผ์ด๋ฆ]
: ํด๋น ํ์ผ์ ๋ด์ฉ ์ ๋ ฅ
cat [ํ์ผ์ด๋ฆ]
: ํ์ผ์ ๋ด์ฉ์ ํฐ๋ฏธ๋์ ์ถ๋ ฅ
rm [ํ์ผ์ด๋ฆ]
: ํ์ผ ์ญ์
rm -rf [ํด๋์ด๋ฆ]
: ํด๋ ์ญ์
mv [ํด๋/ํ์ผ ์ด๋ฆ] [๋ณ๊ฒฝํ ์ด๋ฆ]
: ์ด๋ฆ ๋ณ๊ฒฝ(์์น๋ ๊ทธ๋๋ก), ํด๋๋ ํ์ผ ์์น ์ด๋
mv [ํด๋/ํ์ผ ์ด๋ฆ] [๋์ฐฉ ํด๋์ด๋ฆ]
: ์ด๋ฆ ๋ณ๊ฒฝ(์์น๋ ๊ทธ๋๋ก), ํด๋๋ ํ์ผ ์์น ์ด๋
mv [ํ์ผ/ํด๋์ด๋ฆ] ../../
: ํด๋/ํ์ผ์ ์ ์ ์์ ํด๋๋ก ์์น ์ด๋
cp [๋ณต์ฌํ ํ์ผ์ด๋ฆ] [๋ฐ๊พผ ํ์ผ์ด๋ฆ]
: ํ์ผ ๋ณต์ฌ
cp -rf [ํด๋์ด๋ฆ] [๋ฐ๊พผ ํด๋์ด๋ฆ]
: ํด๋ ๋ณต์ฌ
์ฐ๋ถํฌ์์ ์ง์ ํด๋ณด๋ ๋ ์ดํด๊ฐ ์ ๋๋ค!
๐ฅ But! ์ฌ์ฉ์๋ ํ๋ก๊ทธ๋จ์ ์คํํ ๊ถํ๋ง ์๊ณ ํ๋ก๊ทธ๋จ์ ์ค์นํ๊ฑฐ๋ ๋ณ๊ฒฝ/์ญ์ ํ ์ ์๋ ๊ถํ์ด ์๊ธฐ ๋๋ฌธ์ sudo
๋ผ๋ ๋ช
๋ น์ผ๋ก ๊ทธ ๋ช
๋ น์ ์ํํ๋ ๋์๋ง ๊ถ๋ฆฌ์ ๊ถํ์ผ๋ก ํ๋ก๊ทธ๋จ์ ๊ด๋ฆฌํ ์ ์๋ค
์ด๋ฐ ์์ผ๋ก ์ฌ์ฉ์์ ํด๋๊ฐ ์๋ root ํด๋์ ํด๋/ํ์ผ์ ๋ง๋ค๊ณ ์ญ์ ํ ์๋ ์๋ค
โ nano ํ์ผ์ด๋ฆ
ํ
์คํธ ์๋ํฐ nano๋ก ํ
์คํธ๋ฅผ ํธ์งํ ์๋ ์์ !
[์ฐธ๊ณ ] https://dora-guide.com/linux-commands/
โ ์ ๋๊ฒฝ๋ก
์ต์์ ํด๋(root directory)๋ถํฐ ํด๋น ํ์ผ๊น์ง ๊ฒฝ์ ํ ๋ชจ๋ ๊ฒฝ๋ก๋ฅผ ์ ๋ถ ๊ธฐ์ ํ๋ ๋ฐฉ์
Ex./ํด๋์ด๋ฆ1/ํด๋์ด๋ฆ2
โ ์๋๊ฒฝ๋ก
ํ์ฌ ์์นํ ํด๋(.)๋ก๋ถํฐ ์๋์ ์ธ ์์น๋ฅผ ๋ํ๋ด๋ ๊ฒฝ๋ก
Ex...
- ์ ์์ ํด๋ /../
- ์ ์์ ํด๋ ๋ด๋ถ /../../
- ์ ์ ์์ ํด๋
ํจํค์ง๋ฅผ ๊ด๋ฆฌํ๋ ์์ (Ex. ํจํค์ง์ ๋ฒ์ ์ ๊ทธ๋ ์ด๋/ ํจํค์ง ์ค์น ๋ฑ)์ ์๋ํ, ์์ ์ฒ๋ฆฌ ํ๊ธฐ์ํด ์ฌ์ฉ๋๋ ๋๊ตฌ
์ฐ๋ถํฌ์๋ ๊ธฐ๋ณธ์ ์ผ๋ก apt๋ผ๋ ํจํค์ง ๋งค๋์ ๊ฐ ์ ์ฅ๋์ด ์์
apt search ๊ฒ์์ด
: ํจํค์ง ๊ฒ์
apt show ํจํค์ง ์ด๋ฆ
: ํจํค์ง ์ ๋ณด ํ์ธ
apt remove ํจํค์ง ์ด๋ฆ
: ํจํค์ง ์ญ์ (๊ด๋ฆฌ์ ๊ถํ ํ์)
apt update
: ํจํค์ง ๋ชฉ๋ก ๊ฐฑ์ (๊ด๋ฆฌ์ ๊ถํ ํ์)
apt list -โupgradable
: ์ ๊ทธ๋ ์ด๋ ๊ฐ๋ฅํ ํจํค์ง ๋ชฉ๋ก์ ์ถ๋ ฅ
apt upgrade
: ์ ์ฒด ํจํค์ง ์ ๊ทธ๋ ์ด๋(๋ฒ์ ์ ) (๊ด๋ฆฌ์ ๊ถํ ํ์)
apt --only-upgrade install ํจํค์ง์ด๋ฆ
: ํน์ ํจํค์ง๋ง ์ ๊ทธ๋ ์ด๋(๋ฒ์ ์ ) (๊ด๋ฆฌ์ ๊ถํ ํ์)
apt install ํจํค์ง ์ด๋ฆ
: ํจํค์ง ์ค์น (๊ด๋ฆฌ์ ๊ถํ ํ์)
apt list --installed
: ์ค์น๋ ํจํค์ง ๋ณด๊ธฐ
ใ ค
๐ก ์ฌ๊ธฐ์ ๊ด๋ฆฌ์ ๊ถํ์ด ํ์ํ ํญ๋ชฉ๋ค์sudo
๋ฅผ ์์ ์ ๋ ฅํ ํ ๋ช ๋ นํ๋ฉด ๋จ!
๋๋ ์ด ํจํค์ง ๋งค๋์ ๋ก ๊ด๋ฆฌ์ ๊ถํ์ ์
๋ ฅํ ํ Ascciquarium์ ์ค์นํด๋ณด์๋ค!!
์ด๋ ๊ฒ sudo add-apt-repository ppa:ytvwld/asciiquarium
๊ณผ
sudo apt-get update && sudo apt-get install asciiquarium
์ ์ฐจ๋ก๋ก ์
๋ ฅํ๋ฉด ์ค์น ์๋ฃ!
๋ฐ๋ก ์คํํ๋ฉด ๋๋ค
๋๋ ๊ท์ฝ๋ค!! ใ
ใ
ใ
ใ
๋๋ ์ด์ ์ ์ ๋ฌผ๊ณ ๊ธฐ ์๊ฒผ๋ค !!
๋ณด๋ค๋ณด๋ฉด ๋ฌผ๊ณ ๊ธฐ๋ค๋ ๋๋ค์ผ๋ก ๋์ค๊ณ ๋ฐฐ, ๊ณ ๋, ๋ฑ ๊ฐ์ ๊ฒ๋ค๋ ์ง๋๊ฐ์ ๋ฌผ๋ฉ(?)ํ ์ ์๋ค ใ
ใ
ใ
ls -l
๋ก ํด๋น ํด๋ ์์ ํด๋/ํ์ผ ๋ค์ ์ ๋ณด๋ฅผ ๋ณด๋ฉด ์๋์ ๊ฐ์ ํ๋ฉด์ด ๋ํ๋๋ค
๋งจ ์์ -๋ก ์์ํ๋ ๊ฒ๊ณผ d๋ก ์์ํ๋ ๊ฒ์ด ์๋๋ฐ
-
๋ not directory ์ฆ, ํ์ผ์ ์๋ฏธ
d
๋ directory ์ฆ, ํด๋๋ฅผ ์๋ฏธ
๋ฐ๋ผ์ ์ ๋ชฉ๋ก์๋ 1๊ฐ์ ํด๋์ 3๊ฐ์ ํ์ผ์ด ์๋ค!
๊ทธ๋ฆฌ๊ณ ๋งจ ์ฒ์ ๊ธ์๋ฅผ ์ ์ธํ๊ณ ๋ค์ rw-r--r--
์ rwxr-xr-x
๊ฐ ์๋ค
- ์์๋๋ก
r
w
x
๋ ๊ฐ๊ฐ ์ฝ๊ธฐ ๊ถํ(read permission) / ์ฐ๊ธฐ ๊ถํ(write permission) / ์คํ ๊ถํ(execute permission)์ ํ์ํจ- 3๋ฒ์ ๊ฑธ์ณ ๋ํ๋๋ ์ด์ ๋ ์ฌ์ฉ์(user) / ๊ทธ๋ฃน์ ์ํ ์ฌ๋ฌ ์ ์ ๋ค(group) / ๋ค๋ฅธ ์ฌ๋(other)์ ๋ํ ๊ถํ์ ํ์ํ ๊ฒ
๊ทธ๋์ ๊ฐ๊ฐ์ ์๋ฏธ๋ฅผ ์ดํด๋ณด๋ฉด ์๋์ ๊ฐ๋ค
-rw-r--r--
ํ์ผ O / ์ฌ์ฉ์ - ์ฝ๊ธฐ, ์ฐ๊ธฐ ๊ฐ๋ฅ / ๊ทธ๋ฃน๊ณผ ๋ค๋ฅธ ์ฌ๋๋ค์ ์ฝ๊ธฐ๋ง ๊ฐ๋ฅ
drwxr-xr-x
ํด๋ O / ์ฌ์ฉ์ - ์ฝ๊ธฐ, ์ฐ๊ธฐ, ์คํ ๋ชจ๋ ๊ฐ๋ฅ / ๊ทธ๋ฃน๊ณผ ๋ค๋ฅธ ์ฌ๋๋ค์ ์ฝ๊ธฐ์ ์คํ๋ง ๊ฐ๋ฅ
Ex.
chmod g-r ํด๋์ด๋ฆ
ํด๋น ์ผ์์ group์ ๋ํ ์ฝ๊ธฐ ๊ถํ ์ ์ธ
chmod o+x ํด๋์ด๋ฆ
ํด๋น ํด๋์ other์ ๋ํ ์คํ ๊ถํ ์ถ๊ฐ
chmod uo+rx ํด๋์ด๋ฆ
ํด๋น ํด๋์ user๊ณผ other์ ๋ํ ์ฝ๊ธฐ์ ์คํ ๊ถํ ์ถ๊ฐ
chmod a=rw ํด๋์ด๋ฆ
ํด๋น ํด๋์ ๋ชจ๋ ๊ฒ(user/group/other)์ ๋ํ ๊ถํ์ ์ฝ๊ธฐ์ ์ฐ๊ธฐ๋ง ๊ฐ๋ฅ (-rw-rw-rw-)
chmod a= ํด๋์ด๋ฆ
ํด๋น ํด๋์ ๋ชจ๋ ๊ฒ(user/group/other)์ ๋ํ ๊ถํ์ ๋ชจ๋ ์์ฐ (----------)
Ex.
7
= 4(r) + 2(w) + 1(x) = rwx
6
= 4(r) + 2(w) + 0(-) = rw-
5
= 4(r) + 0(-) + 1(x) = r-x
4
= 4(r) + 0(-) + 0(-) = r--
3
= 0(-) + 2(w) + 1(x) = -wx
2
= 0(-) + 2(w) + 0(-) = -w-
1
= 0(-) + 0(-) + 1(x) = --x
0
= 0(-) + 0(-) + 0(-) = ---
- ์ง์ญ ํ๊ฒฝ๋ณ์
์์ฑํ ํน์ ์ฌ์ฉ์๋ง ์ฌ์ฉํ ์ ์๋ ํ๊ฒฝ๋ณ์
Ex.hello=codestates
hello ํด๋์ codestates๋ผ๋ ์ง์ญ ํ๊ฒฝ๋ณ์ ์ ์ฉ
ใ ค- ์ ์ญ ํ๊ฒฝ๋ณ์
๋ชจ๋ ์ฌ์ฉ์๊ฐ ์ฌ์ฉํ ์ ์๋ ํ๊ฒฝ๋ณ์
Ex.export urclass="is good"
urclass ํด๋์ is good ์ด๋ผ๋ ์ ์ญ ํ๊ฒฝ๋ณ์ ์ ์ฉ
ใ ค
โ ์ฃผ์ โ
- = ์ ์๋ค์๋ ๋ฐ๋์ ๊ณต๋ฐฑ์ด ์์ด์ผ ํจ
- ์ ์ฅํ๋ ค๋ ๋ณ์์ ๊ณต๋ฐฑ์ด ์์ผ๋ฉด " "๋ก ๊ฐ์ธ์ฃผ์ด์ผ ํจ
(์์ ์ ์ํด ํ์ผ์ ๊ถํ์ a=7(drwxrwxrwx)์ผ๋ก ๋ฐ๊พธ๊ณ nano ํธ์ง๊ธฐ์์ ํ์ผ ๋งจ ๋ฐ์ผ๋ก ์ด๋ํด ํ๊ฒฝ๋ณ์๋ฅผ ์์ฑ ํ ์ ์ฉํ๋ฉด ์๊ตฌ์ ์ผ๋ก ํ๊ฒฝ๋ณ์๊ฐ ์ ์ฉ๋จ)
echo $ํด๋์ด๋ฆ
์จ์ฃผ๋ฉด ๊ทธ ํด๋์ ํ๊ฒฝ๋ณ์ ๊ฐ์ด ๋์ดexport
์จ์ฃผ๋ฉด OS์ ์ด๋ฏธ ์ค์ ๋์ด์๋ ๋ชจ๋ ํ๊ฒฝ๋ณ์์ export๋ก ์ค์ ํ ํ๊ฒฝ๋ณ์๋ค์ ๋ชฉ๋ก ํ์ธ ๊ฐ๋ฅ์ค๋ ํ์ต์ ์ฒ์์ ์ด๋ ํฐ๋ฏธ๋์ ๋ช ๋ น์ด๋ค์ ์ ๋ ฅํด์ผํ๋์ง ๋๋ฌด ํท๊ฐ๋ ค์ 30๋ถ ์ ๋ ํค๋ฉ๊ธด ํ์ง๋ง ๊ทธ๋๋ ๋ด์ฉ์ ๋ง์ด ์ด๋ ต์ง ์์ ๋คํ์ด์๋ค! ๋ค๋ง ์ค๋ฅ๊ฐ ๋ง์๋ ํ๋ฃจ,, ๊ถ๋ฆฌ์ ๊ถํ ์คํํ๋ ค๋ค๊ฐ ๋น๋ฐ๋ฒํธ๊ฐ ๊ณ์ ํ๋ ค์ ์ฌ์ค์ ์ด๋ป๊ฒ ํ๋์ง ๊ตฌ๊ธ๋ง ํ๋ค๊ฐ 2์๊ฐ์ ๋ ์ง๋์ ๊ธฐ๊ฐ ๋ค ๋น ์ก์๋ค ํ์ง๋ง ๋ ํด๊ฒฐ๋๋๊น ๊ธ๋ฐฉ ํ๋ณต!! ์์ผ๋ก ๋ด๊ฐ ํ๋ก๊ทธ๋จ์ ๋ง๋ค์ด์ ๋ฐฐํฌํ ๋๋ ์ฌ๋ฌ ๊ตฐ๋ฐ ๋ฆฌ๋ ์ค๊ฐ ์ ์ฐ์ธ๋ค๊ณ ํ๋๊น ์ฌ์ฉ๋ฒ์ ์ ๊ธฐ์ตํด๋์!