Ⅰ. 개요
리눅스(Linux)는 유닉스를 기반으로 전세계 개발자가 같이 만든 오픈 소스 운영체제이다. 리눅스는 운영체제로 컴퓨터와 같은 하드웨어 장치를 기반으로 작동할 수 있지만, 이미 윈도우(Windows) OS가 설치되어있는 환경에서 가상머신을 활용해 체험해볼 수 있다. 가상머신(Virtual Machine, VM)은 일종의 가상 컴퓨터로 이 가상환경에서는 리눅스 외에도 윈도우 등 다양한 운영체제도 설치해서 이용할 수 있다. VMware를 활용해 가상환경을 만들고 리눅스를 ubuntu로 설치하고 기본적인 명령어를 활용하는 것까지 소개한다.
Ⅱ. 리눅스란?
리눅스(Linux)를 간단하게 소개하자면, 유닉스(Unix)를 기반으로 전세계 개발자가 달려들어 만든 오픈 소스 운영체제이다. 유닉스는 현대 모든 운영체제의 원형이라고 볼 수 있다. 리눅스에는 여러 계열이 있는데, 크게 Debian, Red Hat 계열로 나눌 수 있으며, Debian 계열에서 탄생한 유명한 운영체제 애플의 iOS가 있다. 그리고 요즘 많이 사용하는 ubuntu로 인해 Debian 계열은 유명해졌고 Red Hat 계열은 오픈 소스지만 돈을 받고 사후 관리를 해준다. Red Hat 계열엔 CentOS가 있는데 이 계열 부분에 대해서는 찾아보길 권장한다.
하드웨어 - 커널(Kernel) - 셸 - 응용프로그램으로 구성되어 있는 구조에서 리눅스 운영체제는 커널을 통해 작동한다.

윈도우도 커널이 있으며, 커널은 자동차의 엔진과 같은데 부팅, 파일 목록, 속성(크기, 타입, 위치), 멀티태스킹을 위한 스케쥴링, 메모리 공간 관리 등의 시스템 뒷단의 역할을 해준다. 소프트웨어와 하드웨어 사이에서 제어하는 역할을 담당한다. 윈도우를 사용하다 한 번쯤 마주쳤을 블루스크린은 커널이 패닉에 빠진 상태로 더 이상 처리 및 제어를 할 수 없다는 심각한 시스템 오류이다.
※ 블루스크린은 드라이브 오류로 하드웨어 오류를 의미한다. 하드웨어 드라이브는 하드웨어 제조사에서 제공하며, 윈도우나 리눅스 버전에 맞춰 제작된다.
셸은 명령어 해석기로 명령어를 해석하고 커널에게 신호를 내려 전달받은 커널은 전기 신호를 보내서 하드웨어를 제어한다. 하드웨어는 받은 전기 신호를 다시 보내 커널이 동작하여 셸로 응용프로그램을 실행하고 관리할 수 있다. 셸은 윈도우에서 명령프롬프트인데, CLI 기반으로 되어 있다. ping, ipconfig, notepad 등의 명령어가 있으며 이를 통해 응용프로그램을 실행하거나 관리한다. 셸은 자체적으로 자동화 기능이 탑재된 스크립트가 존재하는데 이 스크립트로 일련의 명령을 자동화하고 반복 작업을 가능하게 해준다.
가상머신에 들어가기 전에 Linux iso파일을 다운받아야 한다. 시간이 걸릴 수 있으니 미리 하길 추천한다.
https://releases.ubuntu.com/20.04.6/?_ga=2.177589285.1428171465.1698974911-1714038568.1698974911Ⅲ. 가상머신과 네트워크
가상머신
가상머신(Virtual Machine, VM)은 일종의 가상 컴퓨터로 공유기 역할을 하는 가상라우터(Gateway)를 통해 여러 개의 가상환경에 여러 운영체제를 하나의 컴퓨터에서 이용할 수 있게 한다. 가상머신 프로그램 안에는 게스트OS가 여러 대 존재할 수 있고 호스트OS(내 컴퓨터 OS)가 가상라우터를 통해 접근한다. 실제로 VMware를 설치해서 윈도우 네트워크 설정에 들어가보면 VMware Network Adapter VMNET이 보인다. 컴퓨터의 LAN칩(네트워크와 컴퓨터의 연결을 담당하는 하드웨어)을 이용하는 실제 하드웨어는 아니고(호스트 컴퓨터의 하드웨어를 활용하지만) 가상 네트워크 드라이버('하드웨어는 드라이버 프로그램을 통해 제어된다.')를 통해, 호스트OS가 게스트OS에 접근하게 해주는 인터페이스 역할을 한다.

※ 라우터(Gateway, 서로 다른 네트워크 연결을 도와주는 하드웨어와 소프트웨어로 구성)란? 일종의 관문소로서 실생활의 예로 공항을 떠올리면 좋다. 한국인이 다른 나라에 입국하기 위해 반드시 공항을 거쳐야하는 것처럼 프로토콜로 통신하는 두 네트워크를 연결해주는 역할을 한다. 각 네트워크는 각자의 메시지를 전달하기 위해 의사소통의 특성을 가지고 있으며 이 특성을 규칙으로 정의하는 것이 프로토콜이다. 서로 통신하기 위해 프로토콜 규칙에 따라 메시지를 전달하고 응답한다. 프로토콜의 대표적인 예시로 HTTP(Hyper Text Transfer Protocol)가 있으며, 우리가 인터넷을 사용하며 볼 수 있는 주소에 'http://', 'https://'로 붙는 것들이다. 예를 들어, 네이버를 이용할 때 네이버 화면에 보이는 정보들을 우리가 손쉽게 볼 수 있도록 도와주는 역할을 하고 있다.
2. 네트워크
컴퓨터 하드웨어 구성 요소 중 LAN칩을 운영체제가 이용할 수 있는 건 네트워크 드라이버때문이다. 위에서도 얘기했지만, 네트워크 드라이버는 하드웨어인 LAN칩을 제어하는 프로그램으로 LAN칩에 달려 있는 어댑터 인터페이스를 통해 전기 신호를 다른 장치와 주고 받으며 작동한다. 내 컴퓨터를 통해 웹으로 네이버, 구글, 다음을 접속할 수 있는 이유는 인터넷 프로토콜인 IP주소 때문이다. IP주소는 크게 IPv4(IP version 4), IPv6(IP version 6)가 있는데 개인 컴퓨터의 네트워크 장치가 네트워크 상에서 어떻게 식별되는지 알려주는 값이다. 보통 공유기를 활용하면 IP주소가 192.168.~ 이런 식으로 되어 있는데, 이 IP주소는 공유기가 임의로 할당한 값으로 같은 공유기에 연결된 디바이스끼리 공유할 수 있는 내부(사설) IP이다. 네이버나 구글 , 다음에 접속하기 위해서 외부에 접속할 수 있게 해주는 공식(공인) IP주소가 필요하다.
※ DNS(Domain Name System)서버가 있는데 컴퓨터는 0과 1로 된 숫자밖에 읽지 못하기 때문에, 사람이 이해할 수 있는 이름으로 IP주소값을 변환해주는 역할을 담당한다. 예를 들어, 'www.naver.com' 우리가 네이버 주소를 쉽게 알 수 있는 이유는 저 주소를 컴퓨터가 읽을 수 있게 192.168.1.1(예시) 등의 IP주소값으로 DNS서버가 변환해주기 때문이다.
라우터는 이런 IP주소를 네트워크에 연결된 장치(내 컴퓨터)에 자동으로 할당하고 관리하는 DHCP(Dynamic Host Configuration Protocol) 서버의 역할을 한다. DHCP 서버는 다양한 네트워크 정보(IP주소, 서브넷 마스크, 디폴트 게이트웨이 등)를 가지고 있으며, 이용자가 직접 설정할 필요없이 유동적으로 설정해주는 관리의 편의성을 제공한다. 그래서 가상머신 프로그램의 가상라우터는 호스트 컴퓨터의 하드웨어를 이용해서 DHCP서버를 통해 IP대역을 게스트OS에 할당하는 역할을 한다. IP대역은 같은 공유기를 이용하는 장치들끼리 내부IP를 할당받듯 게스트OS끼리만 공유할 수 있는 내부IP이다.
위에서 설명했듯 호스트OS와 게스트OS는 IP주소가 유사해보여서 같은 네트워크 환경을 공유하는 것처럼 보이지만 실제로 다른 네트워크 환경이다. 즉, 네트워크 설정에서 보이는 윈도우 LAN 어댑터와 VMware Network 어댑터는 각기 다른 네트워크 환경이다. 그렇다면 어떻게 내 컴퓨터에서 가상환경에 접속할 수 있는 것인가?
이유는 호스트OS가 외부IP를 통해 네이버에 접속하듯 가상라우터(게이트웨이) 겸 DNS 서버에 요청을 보내면, 가상라우터가 각각의 게스트OS에 DHCP 서버가 할당한 IP주소를 찾아 접속시켜주기 때문이다. 그렇다면 호스트OS는 어떻게 가상환경의 외부IP와 통신할 수 있을까?
라우터(가상과 실제 모두)가 NAT(Network Address Translation)를 통해 외부IP로 변환해서 서로 식별할 수 있게 도와주기 때문이다. 즉,
VMware Network 어댑터와 가상라우터를 통해 내 컴퓨터 LAN 어댑터, 라우터와 통신한다. 이를 좀 더 명확히 이해하기 위해선 NAT(Network Address Translation)을 이해해야 하는데, 이는 추후 수업과 개인적인 공부로 보충해나갈 예정이다.
3. VMware Workstation Pro 17
리눅스를 활용할 수 있는 방법은 다양하다. 새로운 파티션을 할당해 윈도우OS를 설치하듯 iso 이미지파일을 설치해주는 방법이 있고 지금부터 소개할 가상머신을 이용한 방법이 있다. 가상머신을 사용하기 위해 프로그램을 설치해줘야하는데 그 프로그램으로 VMware Workstation Pro 17버전이 있다. Pro라서 유료이고 30일 무료지만, Player버전은 중요한 스냅샷 기능을 이용할 수 없기 때문에 추천하지 않는다.
https://www.vmware.com/products/desktop-hypervisor/workstation-and-fusion스냅샷은 가상환경에서 사용하는 기술로 컴퓨터로 작업한 내용이나 설치한 걸 이미지로 만들어 놓는다. 분기별로 저장해놓은 이미지는 작업하다 오류로 인해 망가졌을 경우 바로 이전 스냅샷으로 돌려 복구가 간편하다. 만약 스냅샷이 없다면 처음부터 다시 해야되는 참사가 일어날 수 있다. 또, 해킹으로 인해 데이터베이스가 망가지거나 복구가 안되는 랜섬웨어 같은 경우 스냅샷이 없으면 전부 다시해야되는, 혹은 다시 할수도 없는 극한 상황이 연출될 수 있다. 스냅샷의 증분백업 기능을 통해 특정 상황이 발생했을 때 그 상황의 전, 후 상황을 로그 분석으로 손쉽게 파악하고 복구할 수 있다. 증분백업은 한 번 찍은 이미지 이후에 변경되는 데이터만 새로운 스냅샷으로 기록하는 기능이다. 스냅샷은 트리구조로 되어있다.
※ 랜섬웨어: 은행권 등에서 인증키 암호화 알골리즘이 복호화 안되는 단방향 알고리즘인데 이 알고리즘을 랜섬웨어에서 사용하기 때문에, 복구가 불가능하다.
VMware Workstation Pro설치와 관련해서 소개가 잘 된 블로그를 첨부한다.
https://hwsecter.tistory.com/1534이 블로그 주인분께 감사를 표합니다.
VMware를 설치하고 실행하게 되면 이런 화면이 나온다.

리눅스를 설치하기 전에 가상머신을 만들어줘야 하는데 위 사진에서 보이는 Create a New Virtual Machine을 클릭한다.

클릭하게 되면 이런 화면이 나오는데 여기선 Custom을 선택한다. 하드웨어나 운영체제, 네트워크 타입을 개별적으로 설정할 수 있기 때문이다.

이 부분은 Next하고 나오는 이 화면은 ubuntu iso 파일을 설치할 것인지 물어보는 것인데 부팅 후 설정하고 개별적으로 설치해줄 수 있기 때문에 제일 아래걸 선택한다.

다음 화면은 Linux를 사용할 것이기 때문에 당연히 Linux를 선택하고 자신의 컴퓨터 bit버전에 맞춰 ubuntu와 ubuntu 64-bit 중 선택한다.

다음 화면은 가상머신 이름을 설정하는 부분과 디렉토리 설정인데 자유롭게 하면 된다.

이 부분도 프로세스를 얼마나 사용할 것인지 묻는 것인데 기본값으로 나둬도 된다.

이 부분은 설정이 필요한데 일반 개인 컴퓨터의 하드웨어를 사용하기 때문에 여러 개의 가상환경을 조성할 경우 메모리 부족으로 컴퓨터가 느려질 수 있다. 또, console로 Linux를 사용할 경우 x-windows(GUI)를 활용하지 않기 때문에 더 적은 메모리로도 가능하다. 그래서 1기가를 추천하지만 만약 설정 후 부팅이 느리다면 메모리를 조금 더 늘리는 것도 가능하다.
※ 3 Tier 구조: 클라이언트계층, 애플리케이션계층, 데이터계층을 나눠 서버를 구성하게 될텐데, 그만큼 3개 이상의 가상환경이 조성되고 개인 컴퓨터에서 메모리를 많이 차지하여 느려질 수 있다. 이 구조에 대해서는 추후에 공부할 예정이다.

이 부분이 나올 때까지 다음을 계속 누르면 되는데 실제 컴퓨터의 디스크 용량을 사용하기 때문에 일반적인 학습용으로 20기가도 충분하지만 필요에 따라, 용량이 된다면 더 늘리는 것도 무방하다.

여기까지오면 모든 설정은 끝났다고 봐도 되며 진행을 누르고 마지막에 Finish를 누르면 된다.
※ 설정한 디렉토리에 가면 'ubntu 64-bit.vmx' 파일이 있는데 이 파일로 설정이나 버전을 다시 수정할 수 있다. 'Ubuntu 64-bit.vmx.lck(Lock 파일)' 만약 가상머신이 비정상종료되면 Lock파일이 남아있을 수 있는데 오류로 부팅이 안되는 경우가 있으니 디렉토리에 들어가서 지우고 다시 키면 된다.

이렇게 만들어진 화면에서 왼쪽 My Computer 부분에 만든 가상머신이 보인다. ubuntu iso파일을 나중에 설치해준다고 설정했기 때문에 마우스 오른쪽 클릭 후 맨 아래 Settings에 들어가서 Use ISO image file에 미리 받아둔 ubuntu iso파일을 첨부하면 된다.

이렇게 만든 가상머신을 부팅하고 Linux를 설치하고 나면 이제 Linux를 사용할 수 있게 된다. 이 설치과정은 한글로 할 수 있어 간편하니 따로 첨부하지 않는다.
위에서 잠깐 언급했듯 x-windows를 사용하게 되면 메모리를 많이 쓰게 되어 불필요해 console로 활용하겠지만, 정확히 terminal로 Linux를 이용할 예정이다. 그래서 부팅 시 Linux가 console모드로 작동하게 바꿔줘야 한다. 우선 x-windows에서 Linux를 실행시키고 다음과 같은 순서로 명령어를 입력한다.
sudo systemctl set-default multi-user.target(부팅 시 기본 모드를 console모드로 하겠다는 뜻)
※ 여기서 sudo는 관리자 권한으로 수행해달라는 요청이고 systemctl은 시스템 설정 명령어이다. set-default는 부팅모드 설정, multi-user 옵션은 부팅 모드와 관련이 있는데, multi-user.target은 console모드라고 생각하면 된다.
2. sudo apt-get update(업데이트 - 리눅스에서 사용할 여러 패키지 목록을 업데이트하는 것이다.)
console과 terminal은 다른 개념인데 console은 물리적인 하드웨어 형태이며, terminal은 텍스트 입력 및 출력을 처리하는 환경이다. console에 비해 terminal은 리눅스 명령어 사용의 편의성이 있어 원격 접속을 도와주는 SSH(프로토콜) 서버를 통해 terminal로 리눅스를 사용할 것이다. 터미널 서버로 폰트나 한글을 보기 쉽기 때문도 있고 기본적으로 utf-8을 지원한다.
3. sudo apt-get install openssh-server -y으로 SSH서버를 설치한다.
웹서비스를 이용하기 위해 클라이언트인 웹브라우저를 설치하는 것처럼 SSH서버를 이용하기 위해 클라이언트가 필요하다. 많이 사용하는 클라이언트 putty이며, 아래 링크에서 다운받을 수 있고 어렵지 않으니 관련 글을 찾아보길 권장한다.
Download PuTTY: latest release (0.79)Download PuTTY: latest release (0.79) Home | FAQ | Feedback | Licence | Updates | Mirrors | Keys | Links | Team Download: Stable · Snapshot | Docs | Changes | Wishlist This page contains download links for the latest released version of PuTTY. Currently this is 0.79, released on 2023-08-26. When new...
www.chiark.greenend.org.uk
※ PuTTY로 원격 접속할 때 게스트OS의 IP주소를 알아야 하기 때문에, ip addr 명령어를 활용하자. 기본적으로 웹브라우저는 80번 포트를 default로 활용하고 있고 PuTTY는 22번 포트를 활용한다. 포트란? 공항의 번호를 떠올리면 이해가 쉬운데, 외부와 연결하는 플러그 같은 역할이다. 즉, 프로그램을 구분해주는 번호로 포트의 번호에 따라 어떤 프로그램을 활용할지 달라진다.
※ Windows의 ping 명령어가 있는데 이는, 네트워크가 현재 살아있는 상태인지 알려주는 프로토콜을 사용할 수 있게 해준다. 'ping + 주소'의 형태로 사용하며, 응답이 없으면 살아있지 않거나 보안상 막아놓은 경우다. ping 명령어로 메시지를 보내면 서버는 응답을 하게 되는데 디도스(서비스 중단을 목적으로 인터넷 트래픽을 대량으로 보내 서버를 다운시키려는 시도를 하는 공격)의 공격에 의해 서버가 다운되는 것을 막기 위한 게 보안상 이유이다.
Ⅳ. 리눅스 명령어
리눅스 명령어는 굉장히 많고 다른 분들이 정리해놓은 표로 된 좋은 자료가 많다. 그 표를 외워서 쓰면 좋지만 실제로 그 많은 양을 한 번에 하기 보단 쓰면서 익히는게 가장 좋다고 생각한다. 그래서 수업 때 사용했던 기초 명령어를 정리하며 공유하고자 한다. 필요한 경우 검색하면 관련 명령어가 금방 나올테니 참고바란다.
sudo init (0~6)
부팅레벨(Run Level)이라고 불리며 부팅 과정을 진행할 때 사용하는 명령어이다. 0번은 시스템 종료를 의미하는데,
$ sudo shutdown -r(옵션)이 명령어와 같은 기능을 수행한다. 위 명령어에서 '-r'은 옵션으로 종료될 시점을 정할 수 있으며, 아무 시간도 안주게 되면 기본적으로 60초 후 종료된다. 그 외에 많이 쓸 번호 중에 6번이 있는데 reboot를 의미하며, 시스템을 재부팅한다.
2. ln
윈도우에서 프로그램을 설치하고 바로가기가 바탕화면에 깔리듯 리눅스에서 특정 실행 파일의 바로가기를 만들 수 있다.
ln target(원본) name(바로가기)3. history
history (옵션 -c, -w)
history > /tmp/abc.log이전에 사용한 명령어 목록을 보여주며 옵션 '-c'의 경우 목록을 지운다. '-w'옵션은 지금까지의 목록을 파일로 저장해준다. 2번째 예시는 명령어 목록을 /tmp(경로)/abc.log(파일명) 이 경로에 파일 이름으로 저장한다는 의미다.
4. cat
cat /경로/파일명파일 내용을 출력하는 명령어이다. 경로와 파일명을 지정해서 특정 파일 내용을 불러올 수 있다.
※ 리눅스에서 설정 정보가 저장되는 디렉토리는 etc이다.
※ PuTTY를 통해 이용하는 터미널은 기본 탐색기로 sh 명령어를 통해 셸(탐색기)을 변경할 수 있지만, 셸의 환경설정에 따라 보여주는 방식이 다를 수 있다. 예를 들어, PuTTY를 통해 실행하자마자 나오는 셸은 현재 위치의 경로를 보여주지만 sh로 변경하면 보여주지 않는다.
5. cd
cd /경로
cd -
cd ~id디렉토리 위치를 옮겨다니는 명령어로 많이 쓰이며, 경로를 입력하지 않을 경우 /home/계정명 디렉토리로 돌아온다. 로그인 시 현재 위치도 같은 위치이다. 두 번째의 예시는 바로 이전 디렉토리로 돌아간다. 세 번째의 예시는 ID를 통해 사용자의 계정 홈디렉토리로 돌아간다. ID를 생략하면 로그인 계정의 홈디렉토리로 돌아간다.
6. ls
ls
ls -al
ls -altr디렉토리의 파일이나 디렉토리 목록을 보여준다. '-al'은 옵션으로 전체(히든 파일과 속성도)를 리스트 형태로 보여준다. '-altr'은 보여주는 목록은 같은데 't'로 인해 시간순으로 'r'로 인해 역순으로 보여준다.
※ ls -al로 전체 목록을 조회했을 때 가장 맨 왼쪽의 시작이 'd'면 디렉토리고 '-'면 파일이다.
7. touch
touch 파일명크기가 0인 새 파일을 생성하고 같은 이름의 파일이 있을 경우 수정 시간을 변경한다. 보안상의 이유로 접근을 막아 파일을 생성할 수 없게 미리 이 명령어로 파일을 생성해놓기도 한다.
※ 옵션에서 'r'이 들어간 경우 디렉토리 관련 반복, 반대의 의미가 있을 수 있고 'a'는 전체를 뜻하며, 'f'는 파일 혹은 강제를 뜻한다. 'n'은 대부분 숫자와 관련이 있다.
※ 리눅스는 윈도우와 달리 확장자 개념이 없다. 그래서 Reverse Tunnerling(리버스 터널링) 공격 기법은 해킹하고자 하는 서버에 프로그램을 관리자를 속인 뒤 업로드(파일명을 정상 파일인 척)해서 실행시켜 외부에서 들어갈 수 있는 백도어를 만든다. 방화벽은 안에서 밖으로 나가는 거에 거의 제한을 두지 않기 때문에, 클라이언트로 서버에 접속해서 밖으로 데이터를 보내며, 리눅스는 확장자 개념이 없어서 속기 좋다.
8. file
file /경로/파일명바로 앞에 언급된 리눅스의 팁 관련해서 파일의 확장자 개념이 없지만 어떤 종류의 파일인지 알 수 있는 방법이 바로 이 명령어이다.
※ 리눅스는 폴더명과 파일명이 같으면 만들 수 없고 대소문자를 구분한다.
9. head, tail
head /경로/파일명
tail /경로/파일명
head, tail -n 15 /경로/파일명cat 명령어로 파일 내용을 읽어올 때 전체를 불러오기 때문에 용량이 큰 파일은 오래걸릴 수밖에 없다. 그래서 일부를 보여주는 명령어가 바로 head와 tail이다. head는 앞에서부터 읽어 오고 tail은 반대로 읽어 온다. '-n' 옵션으로 숫자를 정해놓으면 그 수의 줄만큼 읽어오는데, 기본적으로 10으로 설정되어 있다.
※ 리눅스에서 실행 파일의 경우 foreground와 background가 있는데, foreground(로그를 실시간 감시에 용이)는 우리 눈에 보이는 상태로 실행시키는 것이고 background는 눈에 보이진 않지만, 뒤에서 실행된 상태이다. 각각 '-f'와 '-daemon(-d)'의 옵션으로 지정할 수 있다.
10. cp
cp 어떤 파일/디렉토리로부터 어디에cp 명령어는 파일 및 디렉토리를 복사한다.
11. rm
rm -rf ./경로rm 명령어는 파일 및 디렉토리를 지우며, '-rf' 옵션은 강제로 지운다. 파일을 지정해서 지울 수 있고 하위 디렉토리 전부 지울 수 있다.
12. ifconfig
sudo apt-get install net-tools
ifconfig
ifconfig 인터페이스명 up/down네트워크 관련 명령어로 리눅스 계열마다 패키지 설치안하고 기본 명령어로 사용할 수 있는 경우도 있지만, ubuntu는 패키지 설치 필요하다. ifconifg 명령어는 네트워크 인터페이스 관련 정보를 보여준다. RX, TX packets은 들어오고 나간 패킷을 알려준다. ether 정보는 네트워크 인터페이스의 고유 식별자(MAC)이다. up/down 옵션으로 인터페이스를 실행과 다운을 할 수 있다.
후기
파이썬이 일단락되고😄 수업은 리눅스와 네트워크로 넘어갔는데 바로 가상머신을 이용한 리눅스, ubuntu 설치를 통해 명령어를 체험했습니다. 지금까지 배운 적 없는 부분이기 때문에 평소보다 집중했고 생각보다 많은 부분을 알아야해서 다 머리에 들어오지 않았지만🤑 복습을 위해 수업에 나왔던 개념들을 다시 찾아보며 블로그를 작성했습니다. 아직 개념이 명확치 않아 틀린 부분이 있을 수 있으니 그런 부분은 댓글이라도 알려주시면 감사드리겠습니다.👋
Log in