Các bước chuẩn bị và thực hiện nâng cấp lên Ubuntu 16.04 LTS không mất dữ liệu

cach nang cap len ubuntu 1604 lts

Cảnh báo: Như hầu hết các lần nâng cấp giữa các phiên bản chính của hệ điều hành, quá trình này luôn tiềm ẩn nguy cơ thất bại, mất dữ liệu hoặc cấu hình phần mềm bị hỏng. Do đó, việc sao lưu toàn bộ dữ liệu và thử nghiệm kỹ lưỡng là vô cùng cần thiết.

Để tránh các rủi ro trên, khi có thể, chúng tôi khuyến nghị bạn nên di chuyển (migrate) sang một máy chủ Ubuntu 16.04 mới thay vì nâng cấp tại chỗ. Mặc dù bạn vẫn có thể so sánh sự khác biệt trong cấu hình phần mềm khi nâng cấp, nhưng hệ thống cốt lõi sẽ có độ ổn định cao hơn. Bạn có thể theo dõi chuỗi bài viết Cách Di Chuyển Sang Máy Chủ Linux Mới để biết thêm chi tiết về cách di chuyển giữa các máy chủ.

Phiên bản hỗ trợ dài hạn (Long Term Support – LTS) tiếp theo của hệ điều hành Ubuntu, phiên bản 16.04 (Xenial Xerus), dự kiến được phát hành vào ngày 21/04/2016.

Mặc dù vào thời điểm viết bài này Ubuntu 16.04 chưa chính thức phát hành, nhưng đã có thể nâng cấp hệ thống Ubuntu 15.10 lên phiên bản phát triển của 16.04. Điều này có thể hữu ích để thử nghiệm cả quá trình nâng cấp lẫn các tính năng của 16.04 trước ngày phát hành chính thức.

Yêu Cầu

Hướng dẫn này áp dụng cho các hệ thống đang chạy Ubuntu 15.10, trong đó đã được thiết lập một tài khoản người dùng không phải root với quyền sudo, cho phép thực hiện các tác vụ quản trị một cách an toàn và hiệu quả.

Những rủi ro có thể xảy ra

Mặc dù nhiều hệ thống có thể được nâng cấp trực tiếp mà không gặp sự cố, nhưng phương pháp cài đặt lại từ đầu, bao gồm cài đặt phiên bản Ubuntu mới nhất, cấu hình lại dịch vụ, kiểm tra kỹ lưỡng và di chuyển dữ liệu ứng dụng cũng như dữ liệu người dùng, vẫn là cách an toàn và đáng tin cậy hơn. Điều này giúp giảm thiểu rủi ro và đảm bảo hệ thống hoạt động ổn định sau khi nâng cấp. Trước khi thực hiện nâng cấp trên môi trường sản xuất, bạn tuyệt đối không nên tiến hành mà chưa thử nghiệm trên môi trường staging, vì các phiên bản mới có thể thay đổi đáng kể về thư viện, ngôn ngữ lập trình và dịch vụ hệ thống, gây ra các vấn đề tương thích. Chẳng hạn, trong Ubuntu 16.04, một số thay đổi quan trọng so với phiên bản LTS trước đó bao gồm chuyển từ Upstart sang systemd để quản lý tiến trình khởi động, tăng cường hỗ trợ Python 3 nhằm thay thế Python 2, và nâng cấp từ PHP 5 lên PHP 7, giúp cải thiện hiệu suất và bảo mật. Trước khi tiến hành nâng cấp, hãy đảm bảo rằng bạn đã đọc kỹ Release Notes của Ubuntu 16.04 (Xenial Xerus) để nắm rõ các thay đổi quan trọng và chuẩn bị hệ thống một cách tối ưu.

Bước 1 – Sao lưu hệ thống

Trước khi thực hiện bất kỳ nâng cấp lớn nào, bạn cần đảm bảo rằng sẽ không mất dữ liệu nếu quá trình nâng cấp gặp sự cố. Cách tốt nhất là sao lưu toàn bộ hệ thống tập tin của bạn. Nếu không thể sao lưu toàn bộ, hãy đảm bảo rằng bạn đã có bản sao của thư mục người dùng, các tệp cấu hình tùy chỉnh và dữ liệu do các dịch vụ (ví dụ như cơ sở dữ liệu quan hệ) lưu trữ.

Bước 2 – Nâng cấp các góI phần mềm hiện tại

Trước khi bắt đầu nâng cấp phiên bản, tốt nhất là cài đặt các phiên bản mới nhất của tất cả các gói phần mềm trên phiên bản hiện tại.

Cập nhật danh sách gói:

sudo apt-get update

Nâng cấp các gói đã cài đặt lên phiên bản mới nhất:

sudo apt-get upgrade

Bạn sẽ thấy danh sách các gói cần nâng cấp và được yêu cầu xác nhận tiếp tục. Nhấn y (yes) và nhấn Enter.

Quá trình này có thể mất một khoảng thời gian. Khi hoàn thành, sử dụng lệnh dist-upgrade, lệnh này sẽ xử lý các nâng cấp liên quan đến thay đổi phụ thuộc, thêm hoặc loại bỏ các gói mới nếu cần. Lệnh này sẽ xử lý một số nâng cấp đã bị giữ lại bởi apt-get upgrade:

sudo apt-get dist-upgrade

Trả lời y khi được yêu cầu và chờ quá trình nâng cấp hoàn tất.

Giờ đây, khi hệ thống Ubuntu 15.10 của bạn đã được cập nhật đầy đủ, bạn có thể sử dụng công cụ do-release-upgrade để nâng cấp lên phiên bản 16.04.

Bước 3 – Sử dụng công cụ do-release-upgrade của ubuntu để thực hiện nâng cấp

Trước tiên, hãy đảm bảo rằng gói update-manager-core đã được cài đặt:

sudo apt-get install update-manager-core

Truyền thống, các phiên bản của Debian có thể được nâng cấp bằng cách thay đổi tệp /etc/apt/sources.list (nơi chỉ định các repository gói) và sử dụng lệnh apt-get dist-upgrade để thực hiện nâng cấp. Ubuntu, vốn là một bản phân phối dựa trên Debian, có thể áp dụng quy trình này, nhưng thay vào đó, chúng ta sẽ sử dụng do-release-upgrade, một công cụ được cung cấp bởi dự án Ubuntu. Công cụ này sẽ kiểm tra phiên bản mới, cập nhật tệp sources.list và thực hiện các tác vụ cần thiết khác. Đây là con đường nâng cấp chính thức cho các hệ thống cần nâng cấp qua kết nối từ xa.

Chạy lệnh do-release-upgrade mà không cần tham số:

sudo do-release-upgrade

Nếu Ubuntu 16.04 chưa được phát hành chính thức, bạn sẽ nhận được thông báo:

Sample Output
Checking for a new Ubuntu release
No new release found

Để nâng cấp lên 16.04 trước khi phát hành chính thức, hãy sử dụng tham số -d để chỉ định phiên bản phát triển:

sudo do-release-upgrade -d

Nếu bạn đang kết nối qua SSH, bạn sẽ được hỏi có muốn tiếp tục hay không.

Trên một Droplet, nâng cấp qua SSH là an toàn. Mặc dù do-release-upgrade không thông báo rõ ràng, nhưng một phiên bản ssh daemon bổ sung sẽ được khởi động ở cổng 1022 để giúp việc khôi phục dễ dàng hơn trong trường hợp gặp sự cố. Nếu bạn đang sử dụng tường lửa, có thể cần mở tạm thời cổng này.

Khi được yêu cầu, nhập y để tiếp tục. Ví dụ, bạn sẽ thấy:

Reading cache

Checking package manager

Continue running under SSH?

This session appears to be running under ssh. It is not recommended
to perform a upgrade over ssh currently because in case of failure it
is harder to recover.

If you continue, an additional ssh daemon will be started at port
'1022'.
Do you want to continue?

Continue [yN] y

Sau đó, bạn sẽ được thông báo rằng do-release-upgrade đang khởi động một phiên bản ssh daemon mới trên cổng 1022. Nếu có tường lửa, hãy mở cổng này bằng lệnh, ví dụ:

Starting additional sshd 

To make recovery in case of failure easier, an additional sshd will 
be started on port '1022'. If anything goes wrong with the running 
ssh you can still connect to the additional one. 
If you run a firewall, you may need to temporarily open this port. As 
this is potentially dangerous it's not done automatically. You can 
open the port with e.g.: 
'iptables -I INPUT -p tcp --dport 1022 -j ACCEPT' 

To continue please press [ENTER]

Nhấn Enter khi được yêu cầu tiếp tục.

Tiếp theo, có thể bạn sẽ nhận được cảnh báo rằng không tìm thấy mirror phù hợp cho việc nâng cấp. Trên hệ thống của DataOnline, có thể bỏ qua cảnh báo này và nhập y để cho phép cập nhật tệp sources.list (chuyển tất cả các mục “trusty” thành “xenial”):

Updating repository information

No valid mirror found 

While scanning your repository information no mirror entry for the 
upgrade was found. This can happen if you run an internal mirror or 
if the mirror information is out of date. 

Do you want to rewrite your 'sources.list' file anyway? If you choose 
'Yes' here it will update all 'trusty' to 'xenial' entries. 
If you select 'No' the upgrade will cancel. 

Continue [yN] y

Sau khi danh sách gói mới được tải về và các thay đổi đã được tính toán, bạn sẽ được hỏi có muốn bắt đầu nâng cấp hay không. Nhấn y để tiếp tục:

Do you want to start the upgrade?


6 installed packages are no longer supported by Canonical. You can
still get support from the community.

9 packages are going to be removed. 104 new packages are going to be
installed. 399 packages are going to be upgraded.

You have to download a total of 232 M. This download will take about
46 seconds with your connection.

Installing the upgrade can take several hours. Once the download has
finished, the process cannot be canceled.

 Continue [yN]  Details [d]y

Các gói mới sẽ được tải về, sau đó được giải nén và cài đặt. Ngay cả khi hệ thống của bạn có kết nối nhanh, quá trình này cũng sẽ mất một thời gian.

Trong quá trình cài đặt, bạn có thể sẽ được hiển thị các hộp thoại tương tác với các câu hỏi khác nhau. Ví dụ, bạn có thể được hỏi có muốn tự động khởi động lại các dịch vụ khi cần thiết hay không:

Thiet ke chua co ten 47

Trong quá trình cài đặt, bạn có thể sẽ gặp các hộp thoại tương tác cho các câu hỏi khác nhau, chẳng hạn như có muốn tự động khởi động lại dịch vụ khi cần hay không. Trong trường hợp này, hãy trả lời “Yes”. Ngoài ra, bạn có thể được hỏi có muốn thay thế tệp cấu hình mà bạn đã chỉnh sửa bằng phiên bản mặc định từ gói hay không. Đây là quyết định cần cân nhắc tùy theo kiến thức về phần mềm đó.

Sau khi các gói mới được cài đặt xong, bạn sẽ được hỏi liệu có muốn loại bỏ các gói cũ không cần thiết hay không. Trên một hệ thống nguyên bản (không có cấu hình tùy chỉnh), bạn có thể trả lời y; nếu hệ thống của bạn đã được tùy chỉnh nhiều, bạn có thể trả lời d để xem danh sách và kiểm tra cẩn thận.

Remove obsolete packages? 


53 packages are going to be removed. 

 Continue [yN]  Details [d]y

Sau cùng, nếu mọi thứ suôn sẻ, bạn sẽ nhận được thông báo rằng nâng cấp hoàn tất và cần khởi động lại hệ thống:

System upgrade is complete.

Restart required 

To finish the upgrade, a restart is required. 
If you select 'y' the system will be restarted. 

Continue [yN] y

Nếu bạn chọn y, hệ thống sẽ khởi động lại. Trong phiên SSH, bạn có thể thấy thông báo như sau:

=== Command detached from window (Thu Apr  7 13:13:33 2016) ===
=== Command terminated normally (Thu Apr  7 13:13:43 2016) ===

Bạn có thể cần nhấn phím để thoát về prompt cục bộ, vì phiên SSH trên server sẽ bị ngắt. Chờ một lúc cho hệ thống khởi động lại, sau đó kết nối lại. Khi đăng nhập, bạn sẽ thấy thông báo chào mừng xác nhận rằng bạn đang chạy Xenial Xerus (phiên bản phát triển của Ubuntu 16.04):

Welcome to Ubuntu Xenial Xerus (development branch) (GNU/Linux 4.4.0-17-generic x86_64)

Kết Luận

Sau khi hoàn tất quá trình nâng cấp, hệ thống của bạn giờ đây đã có một cài đặt Ubuntu 16.04 hoạt động ổn định. Tuy nhiên, để đảm bảo mọi thứ hoạt động mượt mà, bạn có thể cần phải điều chỉnh lại các cấu hình của các dịch vụ và ứng dụng đã triển khai trên hệ thống. Các thay đổi trong phiên bản mới có thể ảnh hưởng đến cách thức hoạt động của một số dịch vụ, vì vậy việc kiểm tra và cập nhật các cài đặt là rất quan trọng để tránh các sự cố không mong muốn. Trong vài tuần tới, DataOnline sẽ phát hành các hướng dẫn chi tiết dành riêng cho Ubuntu 16.04, giúp bạn hiểu rõ hơn về các tính năng và thay đổi của hệ thống, từ đó có thể tối ưu hóa và triển khai các ứng dụng một cách hiệu quả. Các chủ đề hướng dẫn sẽ bao gồm các bước cấu hình cho các dịch vụ phổ biến, tối ưu hóa hiệu suất hệ thống, bảo mật và nhiều vấn đề khác. Hãy theo dõi và áp dụng những kiến thức này để đảm bảo rằng hệ thống của bạn luôn hoạt động ổn định, bảo mật và hiệu quả nhất.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *