그림으로 배우는 리눅스를 읽으며 따라 실습해보기 위해
우분투 상에서 실습을 준비한다.

1. docker pull ubuntu → Ubuntu 이미지 다운로드

실습을 위해서 docker hub에서 ubuntu 이미지를 직접 다운 받거나 명령어를 통해서 다운받는다.
우분투 이미티 다운

docek pull ubuntu

2. docker run → 컨테이너 생성 및 실행

다운로드한 Ubuntu 이미지를 기반으로 새로운 컨테이너를 만들고 실행한다.

docker run -it --name '컨테이너명' ubuntu /bin/bash

옵션 설명

  • docker run : 새로운 컨테이너를 생성하고 실행
  • -it : 인터랙티브 모드로 터미널에서 컨테이너와 상호작용 가능 (stdin 연결, bash 실행)
  • --name '컨테이너명' 컨테이너 이름을 '컨테이너명'으로 지정
  • ubuntu : 사용할 Docker 이미지 (다운로드한 Ubuntu 이미지)
  • /bin/bash : 컨테이너가 실행될 때 사용할 명령어 (Bash 셸)

명령어를 통해 실행하게 되면
root@컨테이너ID:/#
와 같은 상태로 실행이 되는 것을 확인할 수 있다.

실제로 작동 중인지 확인하고 싶다면 다른 터미널 창에서 docker ps명령어를 통해서 STATUS가 Up 상태인 것을 확인하면 된다.

3. 실습 프로그램을 실행하기 위해 필요한 패키지 설치

sudo apt install binutils build-essential golang sysstat python3-matplotlib python3-pil 'fonts-nanum*' fio qemu-kvm virt-manager libvirt-clients virtinst jq docker.io containerd libvirt-daemon-system

패키지를 설치하기 위해서 위의 명령어를 수행한다.
하지만 bash: sudo: command not found라는 오류 메시지가 나타난다.
sudo: command not found 오류가 발생한 이유는 기본 Ubuntu Docker 컨테이너에는 sudo가 설치되어 있지 않기 때문이다.

Ubuntu Docker 컨테이너는 root 사용자로 실행되므로 sudo 없이 직접 명령어를 실행하면 된다고한다.

하지만 책에서 나오는 명령어를 그대로 수행해보기 위해서 명령어를 통해서 sudo를 설치했다.

Docker Ubuntu 컨테이너에서 sudo 사용 설정 및 ubuntu 사용자 추가

  1. sudo 패키지 설치
apt update && apt install -y sudo
  1. 새 ubuntu 사용자 추가
useradd -m -s /bin/bash ubuntu
  • useradd : 새 사용자 추가
  • -m : 홈 디렉토리 생성 (/home/ubuntu)
  • -s /bin/bash : 기본 셸을 bash로 설정
  1. 비밀번호 설정
passwd ubuntu
  1. ubuntu 사용자에게 sudo 권한 부여
usermod -aG sudo ubuntu
  • usermod : 사용자 속성 변경
  • -aG sudo : ubuntu 사용자를 sudo 그룹에 추가 (-aG 옵션: 기존 그룹 유지하면서 추가)
  1. 사용자 전환 및 sudo 테스트
su - ubuntu
sudo apt update

위의 과정을 모두 마치고 root로 돌아가서 다시 필요한 패키지를 설치하는 작업을 진행한다.
(ctrl + D누르면 admin 계정에서 나가진다.)

실습에 필요한 패키지 추가 설치

실습을 진행하기 위해서는 파일을 작성하고, strace 명령어를 통해서 확인하는 작업이 있다.

1장. 리눅스 개요 - 시스템 콜 호출 확인해 보기 부터 수행하기 위해서는

  • strace 명령어
  • vim 편집기
    2가지를 추가로 설치해 주었다.
  1. strace 설치
sudo apt update && sudo apt install -y strace
  1. vim 편집기 설치
sudo apt update && sudo apt install -y vim
profile
개발하는 다람쥐

0개의 댓글