Cách chạy Ubuntu Container trong Chrome OS

Kể từ Chrome OS 69, người dùng Chrome OS (trên Chromebook đã chọn) có thể cài đặt và sử dụng những ứng dụng Linux. Được gọi là dự án Crostini, những gì Chrome OS làm là chạy hệ điều hành Linux trong một container LXD (tương tự như máy ảo) để bạn có thể cài đặt và chạy các ứng dụng Linux trong môi trường sandbox.

Bản phân phối Linux mặc định được sử dụng trong Crostini là Debian, đây là bản phân phối ổn định mà bạn có thể dựa vào. Tuy nhiên, nếu không phải là fan hâm mộ của Debian vì danh sách phần mềm hơi cũ của nó, bạn có thể chuyển sang Ubuntu thay thế.

Quy trình chuyển đổi này sẽ yêu cầu bạn truy cập Terminal và gõ hàng đống lệnh. Nếu bạn không thoải mái với terminal, thì đây không phải là lựa chọn dành cho bạn. Sau đây là cách bạn có thể chạy Ubuntu container trong Chrome OS.

Chạy Ubuntu container trong Chrome OS

1. Khởi động Chromebook. Không mở bất kỳ ứng dụng Linux nào. Mở trình duyệt Chrome và nhấn Ctrl+Alt+T để khởi chạy trình Crosh shell.

Mở trình duyệt Chrome và nhấn Ctrl+Alt+T để khởi chạy trình Crosh shell

Bắt đầu terminal với lệnh này:

vmc start termina

Bắt đầu terminal với lệnh này

2. Debian container mặc định được gắn nhãn là “penguin”, được sử dụng để tích hợp với hệ thống file Chrome OS. Để thay thế Debian, trước tiên bạn sẽ cần loại bỏ Debian container của nhãn “penguin”:

lxc stop penguin --force
 
 lxc rename penguin debian

3. Tiếp theo, tạo một Ubuntu container mới có tên là penguin:

lxc launch ubuntu:18.04 penguin

Quá trình này sẽ mất khá nhiều thời gian vì nó phải kéo image từ Internet.

Tiếp theo, tạo một Ubuntu container mới có tên là penguin

4. Sau khi hoàn thành, khởi động vào container mới:

lxc exec penguin -- bash

5. Cập nhật và nâng cấp hệ thống:

apt update
 
 apt upgrade

6. Cài đặt các gói Crostini để nó có thể tích hợp với hệ thống file gốc. Nhập các lệnh sau để thêm gói cros của repo:

cros-packages’ repo:
 
 echo "deb https://storage.googleapis.com/cros-packages stretch main" > /etc/apt/sources.list.d/cros.list
 
 if [ -f /dev/.cros_milestone ]; then sudo sed -i "s?packages?packages/$(cat /dev/.cros_milestone)?" /etc/apt/sources.list.d/cros.list; fi
 
 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1397BC53640DB551
 
 apt update

Cài đặt các dependency:

apt install binutils

7. Mặc dù đã thêm repo, nhưng bạn không thể cài đặt các gói Crostini trực tiếp. Đây là cách giải quyết.

Tải xuống gói Crostini bằng lệnh:

apt download cros-ui-config

Bạn sẽ nhận được một tin nhắn cảnh báo. Cứ bỏ qua nó.

Bỏ qua tin nhắn cảnh báo

Bây giờ giải nén các gói đã tải xuống:

ar x cros-ui-config_0.12_all.deb data.tar.gz
 
 gunzip data.tar.gz
 
 tar f data.tar --delete ./etc/gtk-3.0/settings.ini
 
 gzip data.tar
 
 ar r cros-ui-config_0.12_all.deb data.tar.gz
 
 rm -rf data.tar.gz

Cài đặt gói Crostini từ file deb:

apt install cros-guest-tools ./cros-ui-config_0.12_all.deb

8. Cuối cùng, xóa gói đã tải xuống:

rm cros-ui-config_0.12_all.deb

9. Cài đặt gói adwaita-icon-theme-full. Nếu không có gói này, các ứng dụng GUI Linux sẽ có một con trỏ rất nhỏ.

apt install adwaita-icon-theme-full

10. User mặc định trong container là “ubuntu”. Bạn cần xóa nó và thay thế bằng tên người dùng Gmail của bạn. Sử dụng tên người dùng Gmail (tài khoản Gmail bạn sử dụng để đăng nhập vào Chromebook) là điều cần thiết nếu bạn muốn tích hợp Ubuntu container này với hệ thống file gốc. Nếu không có điều này, bạn sẽ không thể truy cập các file Linux của mình từ trình quản lý file.

killall -u ubuntu
 
 groupmod -n gmail-username ubuntu
 
 usermod -md /home/gmail-username -l gmail-username ubuntu
 
 usermod -aG users gmail-username
 
 loginctl enable-linger gmail-username
 
 sed -i 's/ubuntu/gmail-username/' /etc/sudoers.d/90-cloud-init-users

Lưu ý: Thay thế “gmail-username” bằng tên người dùng Gmail của riêng bạn.

11. Một khi điều này được hoàn thành, hãy tắt container:

shutdown -h now

Và khởi động lại Chromebook. Sau khi khởi động lại, khởi động ứng dụng Terminal từ launcher. Nếu thất bại, hãy thử lại.

12. Thử cập nhật lại hệ thống.

sudo apt update

Nếu bạn thấy thông báo lỗi:

The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY 7638D0442B90D010 NO_PUBKEY 04EE7237B7D453EC

Đó là bởi vì private key của gói Crostini không được tìm thấy trong hệ thống. Thêm private key bằng lệnh bên dưới:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7638D0442B90D010 8B48AD6246925553

Và bạn sẽ có thể chạy apt update mà không gặp vấn đề gì.

Bây giờ, bạn có thể bắt đầu cài đặt các ứng dụng Linux bằng lệnh apt install. Ví dụ, để cài đặt phiên bản Firefox mới nhất, hãy sử dụng lệnh:

sudo apt install firefox

Xóa container Debian

Nếu không còn sử dụng Debian container, bạn có thể xóa nó để giải phóng không gian lưu trữ.

1. Trong trình duyệt Chrome, nhấn Ctrl+Alt+T để khởi chạy trình Crosh shell.

2. Bắt đầu terminal:

vmc start termina

3. Xóa Debian container:

lxc delete debian

Nếu bạn thích sự ổn định và bảo mật, thì gắn bó với Debian container mặc định là lựa chọn tốt nhất. Nếu không, bạn có thể chuyển sang Ubuntu, vì nó cung cấp nhiều tùy chọn phần mềm và linh hoạt hơn. Có rất nhiều image LXD bạn có thể sử dụng, vì vậy bạn không bị hạn chế đối với Ubuntu.

Chúc bạn thực hiện thành công!

Thứ Bảy, 28/09/2019 11:57
51 👨 123