Chromebook Linux 환경 비망록

크롬북에 리눅스 환경을 넣어 보았다. 설치 자체는 원 버튼으로 되어 버린다.
인스톨하면 아래와 같은 터미널이 표시되어 쉘이 취급할 수 있게 된다.

애초에 Chrome OS 자체가 리눅스 기반으로 움직이고 있을 것입니다. 게다가 리눅스를 설치한다는 것은 무엇인가? 궁금해서 조사하고 정리해 보았다.

아무래도 이런 느낌의 중첩 구조로되어있는 것 같습니다.



이번에 설치한 Linux는 하늘색의 Penguin Container의 부분.

Chrome OS



하단의 Chrome OS 사용자 랜드에는 crosh로 액세스할 수 있다. crosh는 Chrome 브라우저에서 Ctrl-Alt-T를 누르면 시작됩니다.
uname을 보면 4.19계의 커널이 동작하고 있는 것을 알 수 있다.



Termina VM



crosvm에서 vmc 명령을 실행하여 실행 중인 VM 목록을 확인합니다.
termina라는 VM이 ​​동작하고 있는 것을 알 수 있다.
crosh> vmc list
termina (10737426432 bytes, min shrinkable size 2723151872 bytes, raw)
Total Size (bytes): 10737426432

crosvm에서 vsh 명령을 실행하여 VM에 들어갑니다.
uname에서 5.4계의 커널이 동작하고 있는 것을 알 수 있다./etc/os-release에서 배포판이 Chromium OS임을 알 수 있다.
위의 페이지에 쓰여진 내용과 일치한다. Termina는 Chrome OS의 Linux 커널과 유저 랜드로부터 컨테이너 실행에 필요한 요소 이외를 깎아 떨어뜨린 것.

Termina is a VM image with a stripped-down Chrome OS linux kernel and userland tools. Its only goal is to boot up as quickly as possible and start running containers.
crosh> vsh termina
(termina) chronos@localhost ~ $ uname -a
Linux localhost 5.4.119-14945-gafc97d54f809 #1 SMP PREEMPT Tue Aug 10 21:44:33 PDT 2021 aarch64 GNU/Linux
(termina) chronos@localhost ~ $ cat /etc/os-release 
NAME=Chromium OS
ID=chromiumos
HOME_URL=https://www.chromium.org/chromium-os
BUG_REPORT_URL=https://crbug.com/new
VERSION=92
VERSION_ID=92
BUILD_ID=13982.81.0

Penguin Container



termina VM에서 LXD 환경에서 실행되는 컨테이너 목록을 표시합니다.
penguin이라는 컨테이너가 동작하고 있는 것을 알 수 있다.
crosh> vsh termina
(termina) chronos@localhost ~ $ lxc list
+---------+---------+-----------------------+-----------------------------------------------+------------+-----------+
|  NAME   |  STATE  |         IPV4          |                     IPV6                      |    TYPE    | SNAPSHOTS |
+---------+---------+-----------------------+-----------------------------------------------+------------+-----------+
| penguin | RUNNING | 100.115.92.203 (eth0) | 2402:6b00:752c:a700:216:3eff:fed9:6470 (eth0) | PERSISTENT | 0         |
+---------+---------+-----------------------+-----------------------------------------------+------------+-----------+

lxc exec 명령으로 안으로 들어가 쉘을 실행한다. Chromebook에 Linux를 설치하면 시작하는 터미널 앱에서도 같은 쉘이 시작되고 있다고 생각된다.
(termina) chronos@localhost ~ $ lxc exec penguin -- /bin/bash
root@penguin:~# uname -a
Linux penguin 5.4.119-14945-gafc97d54f809 #1 SMP PREEMPT Tue Aug 10 21:44:33 PDT 2021 aarch64 GNU/Linux
root@penguin:~# cat /etc/os-release 
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

penguin은 시스템 컨테이너이므로 커널은 TerminaVM과 동일해야합니다. uname에서 확인하면 확실히 5.4.119가 되어 있어 같은 것을 알 수 있다.
유저랜드는 Debian.

좋은 웹페이지 즐겨찾기