Kiến thức Hữu ích 😍

Cài đặt máy chủ Minecraft trên Ubuntu 20.04 dễ dàng


Bạn muốn tạo ra một thế giới Minecraft của riêng mình, nơi bạn toàn quyền quyết định luật chơi và mời bạn bè tham gia? Việc sở hữu một máy chủ Minecraft riêng chính là câu trả lời, mang đến trải nghiệm đa người chơi riêng tư và tùy biến không giới hạn. Tuy nhiên, quá trình thiết lập một server trên hệ điều hành Ubuntu 20.04 có thể là một thử thách, đặc biệt với những người mới làm quen với Linux. Đừng lo lắng! Bài viết này của AZWEB sẽ là kim chỉ nam, hướng dẫn bạn từng bước chi tiết, từ chuẩn bị môi trường, cài đặt Java, cho đến cấu hình và tối ưu hóa máy chủ Minecraft. Hãy cùng nhau khám phá cách biến chiếc máy chủ Ubuntu của bạn thành một sân chơi Minecraft độc đáo và ổn định nhé!

Giới thiệu về máy chủ Minecraft và Ubuntu 20.04

Để bắt đầu hành trình xây dựng thế giới riêng, việc hiểu rõ các công cụ mình sẽ sử dụng là vô cùng quan trọng. Chúng ta sẽ tìm hiểu về máy chủ Minecraft và lý do tại sao Ubuntu 20.04 là nền tảng lý tưởng để vận hành nó.

Máy chủ Minecraft là gì và lợi ích khi tự xây dựng server riêng

Về cơ bản, máy chủ Minecraft là một phần mềm cho phép bạn tạo ra một thế giới Minecraft độc lập, hoạt động 24/7 mà không cần máy tính cá nhân của bạn phải luôn bật. Thay vì tham gia vào các server công cộng đông đúc, việc tự xây dựng server riêng mang lại vô số lợi ích vượt trội.

Hình minh họa

Bạn có toàn quyền kiểm soát môi trường game, từ việc chọn chế độ chơi (Survival, Creative), điều chỉnh độ khó, đến cài đặt các mods và plugins độc đáo để làm phong phú thêm trải nghiệm. Hơn nữa, bạn có thể tạo ra một cộng đồng riêng tư, chỉ mời những người bạn thân thiết tham gia, đảm bảo một sân chơi an toàn, văn minh và không bị phá hoại. Đây chính là cơ hội để bạn và bạn bè cùng nhau xây dựng những công trình vĩ đại và phiêu lưu trong một thế giới được tạo ra theo ý muốn của chính mình.

Ubuntu 20.04 và ưu điểm khi chọn làm nền tảng server

Khi lựa chọn hệ điều hành cho máy chủ, sự ổn định và bảo mật luôn là ưu tiên hàng đầu. Ubuntu 20.04, với tên mã “Focal Fossa”, là một phiên bản Hỗ trợ Dài hạn (LTS – Long-Term Support), nghĩa là nó nhận được các bản cập nhật bảo mật và bảo trì trong suốt 5 năm kể từ ngày phát hành. Điều này đảm bảo máy chủ Minecraft của bạn hoạt động trên một nền tảng vững chắc, ít gặp lỗi và được bảo vệ khỏi các lỗ hổng bảo mật.

Hình minh họa

Ubuntu nổi tiếng với hiệu suất cao, khả năng quản lý tài nguyên hệ thống hiệu quả, giúp máy chủ game của bạn chạy mượt mà hơn. Cộng đồng người dùng Ubuntu vô cùng rộng lớn, đồng nghĩa với việc bạn có thể dễ dàng tìm thấy tài liệu hướng dẫn và sự hỗ trợ khi gặp bất kỳ vấn đề nào. Giao diện dòng lệnh mạnh mẽ của Ubuntu cũng giúp việc quản lý và tự động hóa các tác vụ trên server trở nên đơn giản và chuyên nghiệp. Tham khảo thêm Bash là gì để nắm chắc hơn cách sử dụng dòng lệnh trên Ubuntu.

Yêu cầu hệ thống và chuẩn bị môi trường cài đặt

Trước khi bước vào cài đặt, việc chuẩn bị một nền tảng vững chắc là yếu tố quyết định sự thành công. Hãy đảm bảo máy chủ của bạn đáp ứng các yêu cầu cần thiết và được cấu hình sẵn sàng.

Yêu cầu phần cứng tối thiểu cho máy chủ Minecraft

Hiệu suất của máy chủ Minecraft phụ thuộc trực tiếp vào cấu hình phần cứng. Mặc dù bạn có thể chạy server trên một cấu hình khiêm tốn, việc đầu tư hợp lý sẽ mang lại trải nghiệm tốt hơn cho người chơi.
Dưới đây là một vài gợi ý:

  • CPU: Tối thiểu 1 nhân, nhưng khuyến nghị 2 nhân trở lên để xử lý tốt hơn các tác vụ và số lượng người chơi tăng lên.
  • RAM: 1GB RAM là mức tối thiểu cho một server vanilla (không mods) với 1-2 người chơi. Tuy nhiên, để có trải nghiệm mượt mà cho nhóm nhỏ (3-5 người), bạn nên có ít nhất 2GB RAM. Nếu bạn dự định cài thêm mods hoặc plugins, 4GB RAM trở lên là lựa chọn lý tưởng. Tìm hiểu thêm RAM là gì và các loại RAM để có lựa chọn phù hợp.
  • Dung lượng ổ cứng: Ít nhất 10GB dung lượng trống. Ổ cứng SSD sẽ giúp tăng tốc độ tải thế giới và giảm giật lag đáng kể so với HDD truyền thống.
  • Băng thông mạng: Một kết nối mạng ổn định với tốc độ upload tối thiểu 10 Mbps là cần thiết để đảm bảo người chơi không gặp phải tình trạng trễ (lag).

Lựa chọn một gói dịch vụ VPS từ AZWEB có thể là giải pháp tối ưu, giúp bạn dễ dàng nâng cấp cấu hình khi cần thiết.

Hình minh họa

Chuẩn bị hệ điều hành và các bước cập nhật

Để bắt đầu, bạn cần có một máy chủ đã được cài đặt sẵn hệ điều hành Ubuntu 20.04. Sau khi đã có quyền truy cập vào máy chủ qua SSH, bước đầu tiên và quan trọng nhất là cập nhật hệ thống để đảm bảo mọi gói phần mềm đều là phiên bản mới nhất và an toàn nhất.
Mở terminal và chạy các lệnh sau:

sudo apt update
sudo apt upgrade -y

Lệnh apt update sẽ làm mới danh sách các gói phần mềm từ kho lưu trữ, trong khi apt upgrade sẽ tiến hành nâng cấp tất cả các gói đã cài đặt lên phiên bản mới nhất.
Tiếp theo, chúng ta cần cài đặt một số công cụ cần thiết sẽ được sử dụng trong quá trình cài đặt server, chẳng hạn như wget để tải file và screen để chạy server trong nền.

sudo apt install wget screen -y

Sau khi hoàn thành các bước này, hệ thống của bạn đã sẵn sàng cho việc cài đặt máy chủ Minecraft.

Cài đặt Java làm nền tảng cho máy chủ Minecraft

Minecraft Server được xây dựng trên nền tảng Java, do đó, việc cài đặt Java là yêu cầu bắt buộc. Hãy cùng tìm hiểu phiên bản Java nào là phù hợp và cách cài đặt nó trên Ubuntu 20.04.

Lý do cần Java và phiên bản phù hợp

Máy chủ Minecraft là một ứng dụng Java (có định dạng file .jar), vì vậy nó cần Môi trường thực thi Java (JRE – Java Runtime Environment) để có thể hoạt động.

Hình minh họa

Việc lựa chọn đúng phiên bản Java là rất quan trọng, vì các phiên bản Minecraft khác nhau sẽ yêu cầu các phiên bản Java tương ứng. Kể từ phiên bản Minecraft 1.17, máy chủ yêu cầu Java 16 trở lên. Đối với các phiên bản mới nhất hiện nay, Java 17 là lựa chọn được khuyến nghị và phổ biến nhất, đảm bảo tính tương thích và hiệu suất tối ưu. Chúng ta sẽ tiến hành cài đặt OpenJDK, một phiên bản mã nguồn mở và hoàn toàn miễn phí của Java.

Các bước cài đặt OpenJDK trên Ubuntu 20.04

Việc cài đặt OpenJDK 17 trên Ubuntu 20.04 rất đơn giản nhờ vào trình quản lý gói APT. Bạn chỉ cần thực hiện một lệnh duy nhất trong terminal:

sudo apt install openjdk-17-jdk -y

Lệnh này sẽ tự động tải về và cài đặt phiên bản 17 của Gói phát triển Java (JDK – Java Development Kit), bao gồm cả Môi trường thực thi Java (JRE) cần thiết.
Sau khi quá trình cài đặt hoàn tất, bạn nên kiểm tra lại để chắc chắn rằng Java đã được cài đặt thành công và đúng phiên bản. Sử dụng lệnh sau:

java -version

Nếu cài đặt thành công, bạn sẽ thấy thông tin hiển thị tương tự như sau:

openjdk version "17.0.X" 202X-XX-XX
OpenJDK Runtime Environment (build 17.0.X+X-Ubuntu-XubuntuXX.XX.X)
OpenJDK 64-Bit Server VM (build 17.0.X+X-Ubuntu-XubuntuXX.XX.X, mixed mode, sharing)

Vậy là máy chủ của bạn đã có nền tảng Java vững chắc, sẵn sàng để chạy Minecraft.

Tải và cấu hình server Minecraft trên Ubuntu

Khi môi trường đã sẵn sàng, đã đến lúc chúng ta tải xuống file server chính thức của Minecraft và thực hiện các cấu hình ban đầu để chuẩn bị khởi chạy thế giới của riêng mình.

Download file server Minecraft chính thức

Nguồn tải uy tín và an toàn nhất chính là trang web chính thức của Minecraft. Bạn nên tránh tải file từ các nguồn không rõ ràng để phòng tránh rủi ro về bảo mật.

Hình minh họa

Đầu tiên, hãy tạo một thư mục riêng để chứa tất cả các file liên quan đến máy chủ Minecraft. Điều này giúp việc quản lý trở nên gọn gàng hơn.

mkdir minecraft_server
cd minecraft_server

Tiếp theo, truy cập trang tải xuống máy chủ Minecraft chính thức để lấy liên kết tải file server.jar mới nhất. Sau đó, sử dụng lệnh wget trong terminal để tải file trực tiếp về máy chủ của bạn.
Ví dụ (lưu ý rằng bạn nên thay thế URL bằng liên kết mới nhất từ trang chủ Minecraft):

wget https://piston-data.mojang.com/v1/objects/84194a2f286ef7c14ed7ce0090dba59902951553/server.jar

Tại đây, bạn cũng có thể lựa chọn các phiên bản server khác như Spigot hoặc PaperMC, đây là các phiên bản đã được tối ưu hóa hiệu suất và hỗ trợ plugins, tuy nhiên trong khuôn khổ bài viết này, chúng ta sẽ bắt đầu với phiên bản “vanilla” (nguyên bản) chính thức.

Cấu hình file server.properties và thiết lập ban đầu

Trước khi có thể khởi chạy server hoàn chỉnh, bạn cần đồng ý với các điều khoản sử dụng của Mojang (EULA). Hãy chạy server lần đầu tiên để nó tự động tạo ra các file cấu hình cần thiết.

java -Xmx1024M -Xms1024M -jar server.jar nogui

Lần chạy đầu tiên này sẽ thất bại và tạo ra một file tên là eula.txt. Bạn cần mở file này và thay đổi giá trị eula=false thành eula=true.

nano eula.txt

Lưu file và thoát. Bây giờ, khi chạy lại lệnh trên, server sẽ khởi động thành công và tạo ra file server.properties cùng các thư mục khác. Đây là file cấu hình quan trọng nhất, nơi bạn có thể tùy chỉnh mọi thứ về thế giới của mình.
Hãy mở file server.properties bằng trình soạn thảo nano:

nano server.properties

Một số thiết lập quan trọng bạn có thể muốn thay đổi:

  • motd: Tin nhắn chào mừng hiển thị khi người chơi thêm server vào danh sách.
  • gamemode: Chế độ chơi (survival, creative, adventure, spectator).
  • difficulty: Độ khó của game (peaceful, easy, normal, hard).
  • max-players: Số lượng người chơi tối đa có thể kết nối cùng lúc.

Sau khi chỉnh sửa, hãy lưu lại file. Máy chủ của bạn đã được cấu hình cơ bản và sẵn sàng hoạt động.

Hình minh họa

Hướng dẫn chạy và quản lý máy chủ Minecraft

Sau khi hoàn tất cấu hình, bước tiếp theo là khởi động máy chủ và học cách quản lý nó một cách hiệu quả để đảm bảo server hoạt động liên tục và ổn định.

Cách khởi động server Minecraft bằng terminal

Để khởi động máy chủ, chúng ta sẽ sử dụng lại lệnh java nhưng với các tham số đã được tối ưu hóa.

java -Xmx2048M -Xms1024M -jar server.jar nogui

Hãy cùng phân tích các tham số trong lệnh này:

  • -Xmx2048M: Thiết lập dung lượng RAM tối đa mà server có thể sử dụng. Ở đây là 2048MB (2GB). Bạn nên điều chỉnh con số này phù hợp với cấu hình máy chủ và số lượng người chơi dự kiến.
  • -Xms1024M: Thiết lập dung lượng RAM ban đầu mà server sẽ khởi động. Đặt giá trị này thấp hơn -Xmx một chút có thể giúp server khởi động nhanh hơn.
  • -jar server.jar: Chỉ định file server cần chạy.
  • nogui: Yêu cầu server chạy ở chế độ dòng lệnh, không cần giao diện đồ họa. Đây là chế độ bắt buộc và tiết kiệm tài nguyên nhất khi chạy trên server.

Khi bạn chạy lệnh này, cửa sổ terminal sẽ hiển thị các thông tin log của server. Tuy nhiên, nếu bạn đóng cửa sổ terminal này, server cũng sẽ tắt theo. Để giải quyết vấn đề này, chúng ta cần một công cụ quản lý phiên làm việc.

Hình minh họa

Quản lý server, quản lý người chơi, backup và restart tự động

Công cụ screen mà chúng ta đã cài đặt ở bước chuẩn bị sẽ giúp server chạy trong nền ngay cả khi bạn đã ngắt kết nối SSH.
Bắt đầu một phiên screen mới với tên minecraft:

screen -S minecraft

Bây giờ, bạn đang ở trong một phiên làm việc ảo. Hãy chạy lại lệnh khởi động server bên trong phiên này. Sau khi server đã chạy, bạn có thể “tách” ra khỏi phiên screen bằng cách nhấn tổ hợp phím Ctrl+A rồi đến D. Server của bạn vẫn đang chạy ngầm. Để quay lại cửa sổ quản lý server, chỉ cần gõ:

screen -r minecraft

Để quản lý người chơi, bạn có thể gõ các lệnh trực tiếp vào cửa sổ console của server, ví dụ:

  • op <tên_người_chơi>: Cấp quyền quản trị viên.
  • kick <tên_người_chơi>: Đuổi một người chơi ra khỏi server.
  • ban <tên_người_chơi>: Cấm một người chơi truy cập vĩnh viễn.

Việc sao lưu (backup) thế giới là vô cùng quan trọng. Bạn nên định kỳ tạo một bản sao của thư mục world. Bạn có thể tự động hóa việc này bằng cách sử dụng cron job để lên lịch chạy một kịch bản sao lưu vào thời điểm nhất định mỗi ngày.

Tối ưu và bảo trì máy chủ Minecraft trên nền tảng Linux

Việc cài đặt thành công chỉ là bước khởi đầu. Để duy trì một sân chơi mượt mà và an toàn, bạn cần thường xuyên tối ưu và bảo trì máy chủ của mình.

Tối ưu hiệu suất server Minecraft

Lag và giảm hiệu suất là những vấn đề thường gặp khi quản lý server Minecraft. Dưới đây là một số cách để tối ưu hóa máy chủ của bạn:

  • Tinh chỉnh RAM: Cấp phát đúng lượng RAM là rất quan trọng. Cấp quá ít sẽ gây lag, nhưng cấp quá nhiều cũng có thể làm lãng phí tài nguyên và ảnh hưởng đến hiệu suất của các tiến trình khác trên hệ thống. Một quy tắc chung là không cấp phát nhiều hơn 70-80% tổng RAM của máy chủ. Xem thêm DDR4 là gì để hiểu về các chuẩn RAM hỗ trợ hiệu quả.
  • Sử dụng cờ Java (Garbage Collection): Đối với các server lớn hơn, việc sử dụng các cờ JVM tối ưu hóa (ví dụ như Aikar’s Flags) có thể cải thiện đáng kể việc quản lý bộ nhớ và giảm các khoảng dừng do “dọn rác” (Garbage Collection), từ đó giảm thiểu lag.
  • Sử dụng phần mềm server tối ưu: Thay vì server vanilla, hãy cân nhắc sử dụng các phiên bản như PaperMC hoặc Spigot. Chúng được thiết kế để cải thiện hiệu suất, sửa nhiều lỗi và hỗ trợ một hệ sinh thái plugin phong phú mà không làm thay đổi trải nghiệm game gốc quá nhiều.
  • Giám sát tài nguyên: Sử dụng các công cụ như htop hoặc glances để theo dõi việc sử dụng CPU, RAM và mạng của máy chủ. Điều này giúp bạn xác định các “nút thắt cổ chai” và đưa ra quyết định nâng cấp hoặc tối ưu kịp thời.

Hình minh họa

Các bước bảo trì định kỳ và bảo mật server

Bảo trì định kỳ giúp máy chủ của bạn luôn ở trạng thái tốt nhất và an toàn.

  • Cập nhật Java và server Minecraft: Luôn theo dõi và cập nhật phiên bản Java cũng như file server.jar lên phiên bản mới nhất. Các bản cập nhật thường bao gồm các bản vá bảo mật quan trọng và cải tiến về hiệu suất.
  • Sao lưu dữ liệu thường xuyên: Đây là bước không thể bỏ qua. Hãy thiết lập một lịch trình sao lưu tự động cho thư mục thế giới (world) của bạn hàng ngày. Lưu các bản sao lưu ở một nơi an toàn, có thể là một thư mục khác hoặc trên một bộ nhớ đám mây.
  • Bảo mật cơ bản: Không bao giờ chạy máy chủ Minecraft bằng tài khoản root. Hãy tạo một người dùng riêng cho server để hạn chế quyền truy cập và giảm thiểu rủi ro nếu có sự cố bảo mật. Sử dụng tường lửa của Ubuntu (UFW là gì) để chỉ mở những cổng cần thiết (như port 25565) và chặn tất cả các kết nối khác.

Các lỗi thường gặp và cách khắc phục

Trong quá trình cài đặt và vận hành, bạn có thể gặp phải một số lỗi phổ biến. Đừng lo, hầu hết chúng đều có cách giải quyết khá đơn giản.

Lỗi không khởi động được server do thiếu Java hoặc lỗi phiên bản

Đây là lỗi phổ biến nhất đối với người mới bắt đầu. Khi bạn chạy lệnh khởi động server và nhận được thông báo lỗi như “command not found” hoặc các lỗi liên quan đến “UnsupportedClassVersionError”, nguyên nhân gần như chắc chắn là do Java.
Cách khắc phục:

  1. Kiểm tra Java: Đầu tiên, hãy chạy lệnh java -version để xác nhận xem Java đã được cài đặt hay chưa và phiên bản hiện tại là gì.
  2. Xác minh phiên bản: Đảm bảo phiên bản Java của bạn đáp ứng yêu cầu của phiên bản Minecraft server bạn đang dùng. Ví dụ, Minecraft 1.18 trở lên yêu cầu Java 17. Nếu phiên bản Java của bạn quá cũ, server sẽ không thể khởi động.
  3. Cài đặt lại Java: Nếu chưa cài hoặc cài sai phiên bản, hãy làm theo hướng dẫn ở phần trên để cài đặt phiên bản OpenJDK phù hợp. Ví dụ: sudo apt install openjdk-17-jdk -y. Sau khi cài đặt, hãy kiểm tra lại phiên bản một lần nữa trước khi thử khởi động lại server.

Lỗi port server bị chặn hoặc xung đột mạng

Nếu bạn và bạn bè không thể kết nối vào server dù đã nhập đúng địa chỉ IP, rất có thể cổng (port) mặc định của Minecraft (25565) đang bị chặn bởi tường lửa.

Hình minh họa

Cách khắc phục:

  1. Kiểm tra tường lửa UFW: Ubuntu thường sử dụng UFW (Uncomplicated Firewall) làm tường lửa mặc định. Hãy kiểm tra trạng thái của nó bằng lệnh sudo ufw status.
  2. Mở port 25565: Nếu tường lửa đang hoạt động (status: active), bạn cần tạo một quy tắc để cho phép lưu lượng truy cập qua cổng 25565. Sử dụng lệnh sau:
sudo ufw allow 25565/tcp

Lệnh này sẽ mở cổng 25565 cho giao thức TCP, cho phép người chơi kết nối vào máy chủ Minecraft của bạn.

  1. Kiểm tra xung đột: Trong một số trường hợp hiếm, có thể có một ứng dụng khác đang sử dụng cổng 25565. Bạn có thể thay đổi cổng mặc định trong file server.properties bằng cách chỉnh sửa dòng server-port=25565 thành một cổng khác (ví dụ: server-port=25570). Nếu thay đổi, người chơi sẽ cần nhập địa chỉ IP kèm theo cổng mới để kết nối (ví dụ: 123.45.67.89:25570).

Best Practices

Để đảm bảo máy chủ Minecraft của bạn hoạt động hiệu quả, ổn định và an toàn trong dài hạn, hãy tuân thủ những nguyên tắc vàng sau đây:

  • Luôn sao lưu dữ liệu định kỳ: Đây là quy tắc quan trọng nhất. Hãy tạo thói quen sao lưu toàn bộ thư mục server, đặc biệt là thư mục world, trước khi thực hiện bất kỳ thay đổi lớn nào như cập nhật phiên bản hay cài đặt plugin mới.
  • Cập nhật thường xuyên: Giữ cho cả phiên bản server Minecraft và Java luôn là phiên bản ổn định mới nhất. Các bản cập nhật không chỉ mang lại tính năng mới mà còn vá các lỗ hổng bảo mật quan trọng.
  • Tránh chạy server trên máy chủ có cấu hình quá yếu: Việc cố gắng chạy server trên một VPS có cấu hình không đủ đáp ứng sẽ dẫn đến trải nghiệm tồi tệ cho người chơi với tình trạng lag, giật liên tục. Hãy đầu tư một cấu hình phù hợp với số lượng người chơi và mức độ sử dụng mod/plugin của bạn.
  • Sử dụng screen/tmux để quản lý server nền: Luôn chạy server Minecraft bên trong một phiên làm việc của screen hoặc tmux. Điều này đảm bảo server không bị tắt đột ngột khi bạn đóng cửa sổ terminal hoặc mất kết nối mạng, giúp duy trì hoạt động 24/7.
  • Không dùng tài khoản root để chạy server: Vì lý do bảo mật, hãy tạo một tài khoản người dùng riêng (non-root user) chỉ để chạy server Minecraft. Điều này giúp hạn chế thiệt hại nếu server của bạn bị tấn công.

Kết luận

Qua bài viết này, AZWEB đã cùng bạn đi qua toàn bộ quy trình chi tiết để cài đặt và vận hành một máy chủ Minecraft trên nền tảng Ubuntu 20.04. Chúng ta đã bắt đầu từ việc chuẩn bị môi trường, kiểm tra yêu cầu hệ thống, cài đặt nền tảng Java cần thiết, cho đến việc tải xuống, cấu hình và khởi chạy server. Hơn thế nữa, bạn cũng đã được trang bị những kiến thức quan trọng về quản lý, tối ưu hóa hiệu suất và các biện pháp bảo trì, bảo mật để đảm bảo server hoạt động ổn định và an toàn.
Việc tự mình xây dựng một thế giới Minecraft không chỉ mang lại những giờ phút giải trí tuyệt vời cùng bạn bè mà còn là cơ hội để bạn học hỏi thêm nhiều kiến thức về quản trị hệ thống Linux. Đừng ngần ngại thực hành theo đúng các bước đã hướng dẫn. Chúc bạn sẽ tạo ra một máy chủ Minecraft thật mượt mà và độc đáo, nơi những cuộc phiêu lưu sáng tạo không bao giờ kết thúc. Hãy bắt đầu khám phá thêm về thế giới plugin và mod để làm cho server của bạn trở nên phong phú và hấp dẫn hơn nữa.

Đánh giá