Steam Deck, thoạt nhìn, là một thiết bị chơi game cầm tay mạnh mẽ, nhưng tiềm năng của nó vượt xa khỏi việc giải trí đơn thuần. Với SteamOS dựa trên Arch Linux, người dùng có thể dễ dàng chuyển đổi sang “Desktop mode” (Chế độ Máy tính để bàn), biến chiếc máy cầm tay này thành một máy tính đầy đủ chức năng. Khả năng tùy biến hệ thống gần như không giới hạn đã mở ra vô vàn cơ hội, từ việc sử dụng Steam Deck như một máy trạm chính khi kết nối với dock, cho đến các dự án phức tạp hơn. Với vai trò là một chuyên gia tại 123thuthuat.com, tôi đã khám phá và quyết định biến chiếc Steam Deck của mình thành một máy chủ gia đình (home server) cá nhân, và bạn hoàn toàn có thể làm điều tương tự.
Có nhiều phương pháp để biến Steam Deck thành một home server, nhưng tôi đã lựa chọn kết hợp Podman và Cockpit. Mặc dù Docker có thể hoạt động trên Steam Deck, nhưng nguy cơ bị mất cấu hình và công sức cài đặt sau mỗi bản cập nhật SteamOS là khá cao. Nhiều người dùng sử dụng Distrobox để tạo máy ảo và chạy Docker bên trong (vì nó sẽ không bị ghi đè bởi cập nhật hệ thống), nhưng bạn có thể cần cập nhật Distrobox đã cài sẵn. Với tôi, nếu đã chấp nhận “vọc vạch” với terminal, thì việc cấu hình theo cách mình thực sự muốn sử dụng là điều tất yếu.
Do đó, dù SteamOS hiện đã đi kèm với Podman, tôi vẫn chọn cài đặt nó thông qua Homebrew. Đây là một trình quản lý gói mạnh mẽ với kho ứng dụng phong phú, đảm bảo tôi sẽ có phiên bản mới nhất. Hơn nữa, Homebrew có thể “sống sót” qua các bản cập nhật SteamOS vì nó cài đặt vào thư mục Home của người dùng chứ không phải thư mục hệ thống. Sau đó, tôi cài đặt Cockpit và Cockpit-Podman để quản lý các container của mình thông qua giao diện web. Bất ngờ thay, chiếc Steam Deck của tôi đã trở thành một home server mà tôi có thể quản lý từ bất cứ đâu.
Cách Biến Chiếc Steam Deck Của Bạn Thành Một Home Server
Lưu Ý Quan Trọng: Cẩn Trọng Với Các Lệnh!
Giao diện Nextcloud đang chạy trên Steam Deck thông qua Podman, hiển thị hệ thống tệp và cài đặt.
Trong phần này, tôi sẽ hướng dẫn bạn các bước chính xác mà tôi đã thực hiện để thiết lập và chạy Nextcloud. Tuy nhiên, điều này không có nghĩa đây là cách tối ưu nhất. Thật ngạc nhiên, không có nhiều hướng dẫn chi tiết về việc biến Steam Deck thành một home server. Phương pháp này đã thành công với tôi, và tôi khuyên bạn chỉ nên thực hiện nếu bạn cảm thấy thoải mái với việc khôi phục cài đặt gốc của Steam Deck nếu có bất kỳ điều gì không mong muốn xảy ra.
Đầu tiên và quan trọng nhất, bạn sẽ cần chuyển sang chế độ desktop. Hầu hết các thao tác tiếp theo đều yêu cầu chế độ này, vì vậy, ít nhất bạn nên kết nối một bàn phím vật lý vào Steam Deck. Nếu không, bạn sẽ phải gõ bằng bàn phím ảo trên màn hình, điều này khá khó chịu và có thể dẫn đến những lỗi gõ phím nghiêm trọng. Tiếp theo, bạn cần vô hiệu hóa chức năng bảo vệ ghi của hệ thống Steam Deck trong terminal. Hãy mở Konsole và nhập lệnh sau:
sudo steamos-readonly disable
Nếu hệ thống yêu cầu mật khẩu mà bạn không biết, có khả năng bạn chưa từng đặt mật khẩu sudo cho Steam Deck của mình. Hãy nhập “passwd” vào terminal và thiết lập một mật khẩu, sau đó chạy lại lệnh trên.
Tiếp theo, bạn sẽ cần cài đặt Homebrew. Tôi khuyên bạn nên tham khảo hướng dẫn chi tiết này để cài đặt Homebrew một cách an toàn, không ảnh hưởng đến các chức năng thông thường của Steam Deck. Một sai sót ở bước này có thể khiến Steam không hoạt động. Hãy hết sức cẩn thận khi cấu hình Homebrew. Quá trình cài đặt có thể mất một chút thời gian trên thiết bị của tôi, vì vậy đừng lo lắng nếu thiết bị của bạn cũng mất nhiều thời gian tương tự. Miễn là không có lỗi, quá trình vẫn đang diễn ra. Sau khi đã làm theo hướng dẫn đầy đủ, hãy chạy lệnh sau:
brew install podman
Lệnh này sẽ cài đặt Podman thông qua Homebrew và sẽ mất vài phút. Sau khi hoàn tất, bạn sẽ cần sử dụng Pacman, trình quản lý gói của Arch Linux, để cài đặt Cockpit và Cockpit-Podman. Lưu ý rằng các gói này có thể bị thay thế hoặc ghi đè sau mỗi bản cập nhật SteamOS. Nếu điều đó xảy ra, bạn sẽ cần quay lại chế độ desktop và cài đặt lại chúng. Tuy nhiên, tôi không cần cấu hình thêm bất cứ điều gì trong Cockpit để nó hoạt động, vì vậy quá trình cài đặt lại chỉ mất khoảng năm phút nếu nó bị ghi đè.
Để cài đặt Cockpit, hãy chạy lệnh sau trong terminal của bạn:
pacman -S cockpit cockpit-podman
Nếu lệnh này không hoạt động, bạn sẽ cần chạy các lệnh sau để cấu hình GPG keyring được sử dụng bởi Pacman. Hãy thực hiện chúng từng dòng một:
sudo pacman-key --init
sudo pacman-key --populate archlinux
sudo pacman-key --populate holo
Sau khi Cockpit được cài đặt, cuối cùng, hãy chạy lệnh cuối cùng để đưa tất cả các dịch vụ vào hoạt động:
sudo systemctl start cockpit.service
sudo systemctl enable cockpit.service
Màn hình đăng nhập Cockpit trên Steam Deck, yêu cầu tên người dùng và mật khẩu để truy cập bảng điều khiển quản lý.
Giờ đây, bạn có thể truy cập bảng điều khiển Cockpit từ Steam Deck hoặc một máy tính khác trên cùng mạng. Để truy cập từ Steam Deck, hãy vào “localhost:9090” trong trình duyệt của bạn. Để truy cập từ máy tính khác, hãy xác định địa chỉ IP cục bộ của Steam Deck và điều hướng đến “:9090”. Trong trường hợp của tôi, tôi truy cập “192.168.1.34:9090” trong trình duyệt web trên PC của mình để truy cập bảng điều khiển Cockpit.
Bạn có thể đặt Steam Deck sang một bên. Nếu nó được cắm điện, theo mặc định nó sẽ không chuyển sang chế độ ngủ. Mọi thứ từ giờ trở đi đều có thể được quản lý thông qua một trình duyệt web khác.
Khởi Chạy Các Container Đầu Tiên Trên Steam Deck
Thiết Lập Nextcloud và Minecraft Server
Giao diện người dùng Cockpit trên Steam Deck hiển thị phần quản lý container Podman, với các tùy chọn để tải và tạo container mới.
Khi bạn đã truy cập bảng điều khiển Cockpit trên một máy tính khác, nó sẽ yêu cầu bạn nhập tên người dùng và mật khẩu. Tên người dùng là “deck” và mật khẩu là mật khẩu sudo bạn đã đặt. Sau đó, bạn sẽ thấy bảng điều khiển chính, hiển thị các số liệu thống kê giám sát từ Steam Deck. Trong trường hợp của chúng ta, chúng ta muốn điều hướng đến tùy chọn Podman containers (Container Podman) ở thanh bên trái. Chúng ta sẽ cài đặt container đầu tiên, Nextcloud.
- Nhấp vào biểu tượng ba chấm ở góc trên cùng bên phải.
- Nhấp vào Download new image (Tải hình ảnh mới).
- Tìm kiếm “Nextcloud”.
- Tải xuống hình ảnh docker.io/library/nextcloud:latest.
Sau khi tải xong, chúng ta sẽ tạo container cho Nextcloud.
- Nhấp vào Create container (Tạo container) bên cạnh hình ảnh Nextcloud.
- Nhấp vào tab Integration (Tích hợp).
- Nhấp vào Add port mapping (Thêm ánh xạ cổng).
- Đặt Host port (Cổng máy chủ) thành bất kỳ giá trị nào bạn muốn truy cập container trong trình duyệt web. Tôi đã sử dụng “34293”, nhưng bạn có thể sử dụng bất cứ thứ gì miễn là nó không trùng với một cổng khác.
- Đặt Container port (Cổng container) thành 80.
- Nhấp vào Create and run (Tạo và chạy).
Có thể mất một hoặc hai phút để khởi động, nhưng container của bạn sau đó sẽ được cấu hình và triển khai bằng Podman. Nếu bạn điều hướng đến địa chỉ IP của Steam Deck trong một trình duyệt khác, sử dụng cổng cho Nextcloud (ví dụ: trong trường hợp của tôi, 192.168.1.34:34293), nó sẽ báo lỗi cho biết địa chỉ IP của bạn không đáng tin cậy. Chúng ta sẽ khắc phục điều đó ngay!
Trong phần Podman containers của Cockpit, nhấp vào Nextcloud và nhấp vào Console. Nhập “ls” để liệt kê các tệp trong thư mục và sử dụng “cd config” để vào thư mục cấu hình. Tiếp theo, nhập “nano config.php” và cuộn xuống phần trusted_domains
. Thêm một dòng nữa, theo định dạng của dòng hiện có, trông như sau:
1 => '192.168.*.*',
Cấu hình này có thể cần được thay đổi dựa trên cấu hình mạng của bạn, nhưng nó sẽ cho phép truy cập trên hầu hết các mạng cục bộ từ các thiết bị khác của bạn.
Sau khi bạn đã thực hiện điều đó và lưu tệp (nhấn Ctrl+X, sau đó nhấn Y để lưu), không cần khởi động lại container vì các thay đổi sẽ có hiệu lực ngay lập tức. Chỉ cần làm mới trang Nextcloud trong trình duyệt của bạn và bạn sẽ có thể tiếp tục!
Với phiên bản Nextcloud của bạn đã được cấu hình, chúng ta sẽ tiếp tục cấu hình một máy chủ Minecraft. Việc này sẽ sử dụng một phương pháp khác để cài đặt image để bạn có thể làm quen với cả hai phương pháp.
Trong Cockpit, nhấp vào Terminal ở thanh bên trái, dưới Tools (Công cụ). Thao tác này sẽ đưa bạn vào một terminal đang chạy trên Steam Deck của bạn.
Cửa sổ chỉnh sửa tệp registries.conf trong terminal Podman, cho phép thêm nguồn registry để kéo các image container.
Nhập lệnh sau:
nano /etc/containers/registries.conf
Sau đó, thêm dòng sau (chỉ cần đảm bảo không có dấu thăng ‘#’ ở phía trước trong tệp):
unqualified-search-registries = ["docker.io"]
Một lần nữa, nhấn Ctrl+X, sau đó nhấn Y để lưu. Điều này thêm registry Docker Hub chính thức vào Podman khi chúng ta tải image thông qua terminal. Cuối cùng, chạy các lệnh sau:
podman pull itzg/minecraft-server
podman run -d -p 25565 -e EULA=TRUE --name mc -v mc-data:/data itzg/minecraft-server
Lệnh này sẽ tạo một máy chủ Minecraft Java chạy trên Steam Deck của bạn trong Podman. Nó chạy container ở chế độ detached (chạy ngầm) trên cổng 25565, chấp nhận EULA, tạo tên “mc” cho container và tạo một volume có tên mc-data, được gắn vào /data. Bạn có thể kết nối với máy chủ từ một máy tính khác bằng cách điều hướng đến địa chỉ IP cục bộ của Steam Deck của bạn. Sau đó, bạn có thể quản lý container này từ Cockpit.
Tiềm Năng Không Giới Hạn: Valve Trao Quyền Cho Người Dùng Cuối
Giao diện ứng dụng Spotify đang chạy trên Steam Deck ở chế độ Desktop, minh họa khả năng đa nhiệm của thiết bị.
Steam Deck ban đầu không được thiết kế để trở thành một home server, và đây thực sự là một minh chứng cho việc bạn có thể làm điều gì đó chỉ vì bạn có khả năng, chứ không phải vì bạn phải làm. Có những hạn chế khi giữ Steam Deck hoạt động liên tục trong trạng thái này, nhưng không thể phủ nhận đây là một cách sử dụng thú vị, chứng minh được một máy chơi game cầm tay có thể được sử dụng cho những mục đích nào khi nhà sản xuất trao quá nhiều quyền năng cho người dùng cuối để làm những gì họ muốn với công nghệ của mình. Bên cạnh những tinh chỉnh phần mềm cơ bản như Decky Loader hay cài đặt Spotify ở chế độ desktop, thực sự có rất ít giới hạn về những gì bạn có thể làm với Steam Deck nếu bạn dồn tâm trí vào nó.
Như tôi đã đề cập, đây có lẽ không phải là giải pháp tối ưu nhất, và tôi chắc chắn có những cách tốt hơn ngoài kia. Tôi đã tò mò và thiết lập theo cách này vì tôi biết cách sử dụng Podman và Cockpit, đồng thời có hiểu biết khá tốt về cách làm việc với Arch Linux. Có khả năng bạn sẽ mất cài đặt Cockpit sau một bản cập nhật SteamOS, nhưng bạn chỉ cần chạy lại các lệnh để cài đặt và kích hoạt lại nó, còn các container Podman của bạn sẽ vẫn còn nguyên.
Với một chiếc Steam Deck được thiết lập theo cách này, bạn về cơ bản có thể chạy bất cứ thứ gì mà bạn thường chạy trên một home server thông thường. Thật tuyệt vời phải không nào? Hãy thử nghiệm và chia sẻ những khám phá độc đáo của bạn với cộng đồng 123thuthuat.com trong phần bình luận bên dưới nhé!