Cách nâng cấp lên Ubuntu 16.04 LTS
Cảnh báo: Như với hầu hết mọi bản nâng cấp giữa các bản phát hành chính của hệ điều hành, quá trình này có rủi ro cố hữu về lỗi, mất dữ liệu hoặc cấu hình phần mềm bị hỏng. Nên backup toàn diện và thử nghiệm rộng rãi. Để tránh những vấn đề này, khi có thể, ta khuyên bạn nên chuyển sang server Ubuntu 16.04 mới hơn là nâng cấp tại chỗ. Bạn có thể vẫn cần xem xét sự khác biệt về cấu hình phần mềm khi nâng cấp, nhưng hệ thống lõi có thể sẽ có độ ổn định cao hơn. Bạn có thể theo dõi loạt bài của ta về cách di chuyển sang server Linux mới để tìm hiểu cách di chuyển giữa các server .
Bản phát hành Hỗ trợ Dài hạn tiếp theo của hệ điều hành Ubuntu, version 16.04 (Xenial Xerus), sẽ được phát hành vào ngày 21 tháng 4 năm 2016.
Mặc dù nó vẫn chưa được phát hành tại thời điểm viết bài này, nhưng bạn đã có thể nâng cấp hệ thống 15.10 lên version phát triển 16.04. Điều này có thể hữu ích để kiểm tra cả quá trình nâng cấp và các tính năng của bản thân 16.04 trước ngày phát hành chính thức.
Hướng dẫn này sẽ giải thích quy trình cho các hệ thống bao gồm (nhưng không giới hạn ở) server DigitalOcean chạy Ubuntu 15.10.
Yêu cầu
Hướng dẫn này giả định bạn có một hệ thống chạy Ubuntu 15.10, được cấu hình với user không phải root có quyền sudo
cho các việc quản trị.
Cạm bẫy tiềm ẩn
Mặc dù nhiều hệ thống có thể được nâng cấp tại chỗ mà không xảy ra sự cố, việc chuyển sang một bản phát hành mới chính sẽ an toàn hơn và dễ dự đoán hơn bằng cách cài đặt bản phân phối từ đầu, cấu hình dịch vụ với thử nghiệm cẩn thận trong suốt quá trình và di chuyển ứng dụng hoặc dữ liệu user thành một phần riêng biệt bươc.
Bạn không bao giờ được nâng cấp hệ thống production mà không thử nghiệm trước tất cả phần mềm và dịch vụ đã triển khai của bạn so với nâng cấp trong môi trường dàn dựng. Lưu ý thư viện, ngôn ngữ và dịch vụ hệ thống có thể đã thay đổi đáng kể. Trong Ubuntu 16.04, những thay đổi quan trọng kể từ bản phát hành LTS trước đó bao gồm chuyển đổi sang hệ thống systemd init thay cho Upstart, nhấn mạnh vào hỗ trợ Python 3 và PHP 7 thay cho PHP 5.
Trước khi nâng cấp, hãy xem xét việc đọc Ghi chú phát hành Xenial Xerus .
Bước 1 - Backup hệ thống của bạn
Trước khi cố gắng nâng cấp lớn trên bất kỳ hệ thống nào, bạn nên đảm bảo mình 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 để thực hiện điều này là backup toàn bộ hệ thống file của bạn. Nếu không, hãy đảm bảo bạn có các bản sao của folder chủ của user , các file cấu hình tùy chỉnh nào và dữ liệu được lưu trữ bởi các dịch vụ như database quan hệ.
Trên DigitalOcean Server, cách tiếp cận dễ nhất là tắt nguồn hệ thống và chụp ảnh nhanh (tắt nguồn đảm bảo hệ thống file sẽ nhất quán hơn). Xem Cách sử dụng Ảnh chụp nhanh DigitalOcean để Tự động backup các server của bạn để biết thêm chi tiết về quy trình chụp nhanh. Khi bạn đã xác minh cập nhật thành công, bạn có thể xóa ảnh chụp nhanh để không bị tính phí nữa.
Để biết các phương pháp backup sẽ hoạt động trên hầu hết các hệ thống Ubuntu, hãy xem Cách chọn Chiến lược backup hiệu quả cho VPS của bạn .
Bước 2 - Nâng cấp các gói hiện đã cài đặt
Trước khi bắt đầu nâng cấp bản phát hành, an toàn nhất là cài đặt các version mới nhất của tất cả các gói cho bản phát hành hiện tại . Bắt đầu bằng cách cập nhật danh sách gói:
- sudo apt-get update
Tiếp theo, nâng cấp các gói đã cài đặt lên version có sẵn mới nhất của chúng:
- sudo apt-get upgrade
Bạn sẽ được hiển thị một danh sách các nâng cấp và được yêu cầu tiếp tục. Trả lời y cho có và nhấn Enter .
Quá trình này có thể mất một thời gian. Sau khi hoàn tất, hãy sử dụng lệnh dist-upgrade
, lệnh này sẽ thực hiện nâng cấp liên quan đến việc thay đổi các phần phụ thuộc, thêm hoặc bớt các gói mới nếu cần. Điều này sẽ xử lý một loạt các nâng cấp có thể đã bị giữ lại bởi apt-get upgrade
:
- sudo apt-get dist-upgrade
, hãy trả lời y khi được yêu cầu tiếp tục và đợi quá trình nâng cấp hoàn tất.
Đến đây bạn đã có bản cài đặt cập nhật Ubuntu 15.10, bạn có thể sử dụng do-release-upgrade
để nâng cấp lên bản phát hành 16.04.
Bước 3 - Sử dụng Công cụ nâng cấp do-phát hành của Ubuntu để thực hiện nâng cấp
Trước tiên, hãy đảm bảo bạn đã cài đặt gói update-manager-core
:
- sudo apt-get install update-manager-core
Theo truyền thống, các bản phát hành Debian có thể được nâng cấp bằng cách thay đổi /etc/apt/sources.list
của Apt, chỉ định repository và sử dụng apt-get dist-upgrade
để tự thực hiện nâng cấp. Ubuntu vẫn là một bản phân phối có nguồn root từ Debian, vì vậy quá trình này có thể vẫn hoạt động. Tuy nhiên, thay vào đó, ta sẽ sử dụng do-release-upgrade
, một công cụ được cung cấp bởi dự án Ubuntu, xử lý việc kiểm tra một bản phát hành mới, cập nhật sources.list
và một loạt các việc khác. Đây là đường dẫn nâng cấp được khuyến khích chính thức cho các nâng cấp server phải được thực hiện qua kết nối từ xa.
Bắt đầu bằng cách chạy do-release-upgrade
không có tùy chọn:
- sudo do-release-upgrade
Nếu Ubuntu 16.04 chưa được phát hành, bạn sẽ thấy như sau:
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 chỉ định tùy chọn -d
để sử dụng bản phát triển :
- sudo do-release-upgrade -d
Nếu bạn được kết nối với hệ thống của bạn qua SSH, cũng như với server DigitalOcean, bạn sẽ được hỏi liệu bạn có muốn tiếp tục hay không.
Trên Server, thật an toàn khi nâng cấp qua SSH. Mặc dù do-upgrade-release
chưa thông báo cho ta về điều này, nhưng bạn có thể sử dụng console có sẵn từ DigitalOcean Control Panel để kết nối với Server mà không cần chạy SSH.
Đối với các máy ảo hoặc server được quản lý do các nhà cung cấp khác lưu trữ, bạn nên nhớ rằng việc mất kết nối SSH là một rủi ro, đặc biệt nếu bạn không có phương tiện kết nối từ xa khác với console của hệ thống. Đối với các hệ thống khác do bạn kiểm soát, hãy nhớ rằng an toàn nhất là chỉ thực hiện các nâng cấp hệ điều hành lớn khi bạn có quyền truy cập vật lý trực tiếp vào máy.
Tại dấu nhắc , hãy nhập y và nhấn Enter để tiếp tục:
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
Tiếp theo, bạn sẽ được thông báo rằng do-release-upgrade
đang bắt đầu một version mới của sshd
trên cổng 1022:
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 . Tiếp theo, bạn có thể được cảnh báo rằng không tìm thấy mục nhập nhân bản. Trên các hệ thống DigitalOcean, có thể yên tâm bỏ qua cảnh báo này và tiếp tục nâng cấp, vì trên thực tế đã có bản sao local cho 16.04. Nhập y :
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
Khi danh sách gói mới đã được download 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ập 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 bây giờ sẽ được truy xuất, sau đó được extract 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 sẽ mất một lúc.
Trong quá trình cài đặt, bạn có thể thấy các hộp thoại tương tác cho nhiều 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 dịch vụ khi được yêu cầu hay không:
Trong trường hợp này, có thể yên tâm trả lời “Có”. Trong các trường hợp khác, bạn có thể được hỏi có muốn thay thế file cấu hình mà bạn đã sửa đổi bằng version mặc định từ gói đang được cài đặt hay không. Đây thường là lựa chọn cần cân nhắc và có thể yêu cầu kiến thức về phần mềm cụ thể nằm ngoài phạm vi của hướng dẫn này.
Sau khi cài đặt xong các gói mới, bạn sẽ được hỏi xem bạn đã sẵn sàng xóa các gói lỗi thời chưa. Trên hệ thống chứng khoán không có cấu hình tùy chỉnh, bạn nên nhập y vào đây một cách an toàn. Trên hệ thống mà bạn đã sửa đổi nhiều, bạn có thể cần nhập d và kiểm tra danh sách các gói cần gỡ bỏ, trong trường hợp nó bao gồm bất kỳ thứ gì bạn cần cài đặt lại sau này.
Remove obsolete packages? 53 packages are going to be removed. Continue [yN] Details [d]y
Cuối cùng, giả sử tất cả đều suôn sẻ, bạn sẽ được thông báo rằng quá trình nâng cấp đã hoàn tất và cần phải khởi động lại. Nhập y để tiếp tục:
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
Trong một phiên SSH, bạn có thể sẽ thấy những thứ 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 phải nhấn một phím ở đây để thoát đến dấu nhắc local , vì phiên SSH của bạn sẽ kết thúc ở phần cuối của server . Chờ một chút để hệ thống của bạn khởi động lại và kết nối lại. Khi đăng nhập, bạn sẽ được chào đón bằng một thông báo xác nhận bạn hiện đang sử dụng Xenial Xerus:
Welcome to Ubuntu Xenial Xerus (development branch) (GNU/Linux 4.4.0-17-generic x86_64)
Kết luận
Đến đây bạn sẽ có một bản cài đặt Ubuntu 16.04 đang hoạt động. Từ đây, bạn có thể cần điều tra các thay đổi cấu hình cần thiết đối với các dịch vụ và ứng dụng đã triển khai. Trong những tuần tới, ta sẽ bắt đầu đăng hướng dẫn DigitalOcean cụ thể cho Ubuntu 16.04 về nhiều chủ đề.
Các tin liên quan
Cách thiết lập múi giờ và đồng bộ hóa NTP trên Ubuntu 14.04 [Quickstart]2016-03-28
Cách cài đặt LAMP trên Ubuntu 14.04 [Quickstart]
2016-03-28
Cách tạo người dùng Sudo trên Ubuntu [Quickstart]
2016-03-28
Cách truy vấn Prometheus trên Ubuntu 14.04 Phần 1
2016-03-15
Cách truy vấn Prometheus trên Ubuntu 14.04 Phần 2
2016-03-15
Cách tạo và sử dụng bản backup MongoDB trên Ubuntu 14.04
2016-03-08
Cách cài đặt puppet 4 trong thiết lập tác nhân chính trên Ubuntu 14.04
2016-03-08
Cách cài đặt, cấu hình và triển khai Rocket.Chat trên Ubuntu 14.04
2016-03-07
Cách cài đặt ứng dụng khách Dropbox làm dịch vụ trên Ubuntu 14.04
2016-02-24
Cách thiết lập cụm sản xuất Elasticsearch trên Ubuntu 14.04
2016-02-22