1. Kiểm Tra Bản Tin Trước Mỗi Lần Nâng Cấp

Trước khi chạy nâng cấp, hãy mở archlinux.org/news trong trình duyệt.

Arch Linux là bản phân phối rolling release không có "phiên bản" cố định để kiểm tra thay đổi trước.

Hầu hết thời gian pacman -Syu hoạt động bình thường. Thỉnh thoảng, một thay đổi yêu cầu can thiệp thủ công (thay đổi bố cục phân vùng, di chuyển cấu hình, tách gói) và những thay đổi đó luôn được thông báo trên bản tin trước khi gói được đưa vào kho.

Bỏ qua bước kiểm tra này là nguyên nhân thường gặp khiến các bản cập nhật cảm giác như "làm hỏng" thứ gì đó.

2. Cập Nhật Hệ Thống và Gói AUR

2.1. Nâng cấp toàn bộ hệ thống


--now

sudo pacman -Syu

Luôn chạy -Syu cùng nhau. Không bao giờ đồng bộ (-Sy) mà không nâng cấp (-u) trong cùng một lệnh. Arch không hỗ trợ nâng cấp một phần, và đồng bộ mà không nâng cấp là một trong những cách phổ biến nhất để phá vỡ phụ thuộc gói.

2.2. Cập nhật gói AUR

Các trình trợ giúp AUR (paru hoặc yay) xử lý cả gói chính thức và AUR trong một lệnh:


--failed

paru -Syu

Gói AUR không được xây dựng sẵn. Cập nhật một gói có nghĩa là xây dựng lại từ mã nguồn trên máy của bạn, vì vậy cập nhật hệ thống có nhiều gói AUR có thể mất nhiều thời gian hơn đáng kể so với cập nhật kho chính thức thuần túy.

3. Xóa Gói Mồ Côi

Gói mồ côi là gói ban đầu được cài đặt như một phụ thuộc của thứ khác, nhưng thứ đó đã bị xóa hoặc thay thế, để lại phụ thuộc không còn được sử dụng.

3.1. Tìm gói mồ côi


20260526.0-2-x86_64.pkg.tar.zst

pacman -Qdt

3.2. Xóa chúng


20260526.0-2-x86_64.pkg.tar.zst.sig

sudo pacman -Rns $(pacman -Qdtq)

Cờ -Rns xóa các gói, các phụ thuộc không còn cần thiết của chúng và mọi tệp cấu hình liên quan.

Nếu không có gói mồ côi, lệnh này sẽ in error: argument '-' specified with empty stdin thay vì không làm gì trong im lặng. Điều đó là bình thường và vô hại. Nó chỉ có nghĩa là không có gì để chuyển cho lệnh xóa, không phải là có thứ gì bị hỏng.

Cũng nên kiểm tra định kỳ:

pacman -Qm liệt kê các gói "ngoại lai" - tức bất cứ thứ gì được cài đặt từ AUR hoặc bằng tay thay vì từ kho chính thức. Thỉnh thoảng một gói AUR bị xóa hoàn toàn khỏi thượng nguồn, nghĩa là trình trợ giúp AUR của bạn không thể cập nhật nó và bạn sẽ không bao giờ biết. Danh sách này đáng để xem qua vài tháng một lần.

4. Dọn Bộ Nhớ Đệm Gói pacman

Mỗi lần bạn cài đặt hoặc cập nhật một gói, pacman giữ một bản sao của tệp đã tải xuống trong /var/cache/pacman/pkg/.

$ ls /var/cache/pacman/pkg/

-Scc

abseil-cpp-20260526.0-2-x86_64.pkg.tar.zst
abseil-cpp-20260526.0-2-x86_64.pkg.tar.zst.sig
accountsservice-26.13.3-1-x86_64.pkg.tar.zst
accountsservice-26.13.3-1-x86_64.pkg.tar.zst.sig
[...]

26.13.3

Điều này có chủ đích. Nó cho phép bạn hạ cấp một gói nếu bản cập nhật làm hỏng thứ gì đó. Nếu không được quản lý, nó sẽ phát triển vô hạn.

4.1. Cắt tỉa với paccache

sudo pacman -S pacman-contrib
sudo paccache -rk2

-Qdt

Cờ -rk2 giữ lại 2 phiên bản gần đây nhất của mỗi gói và xóa phần còn lại. Điều này bảo toàn lưới an toàn hạ cấp mà không để bộ nhớ đệm phát triển mãi mãi.

4.2. Tự động hóa

sudo systemctl enable --now paccache.timer

x86_64

Để biết thêm chi tiết, hãy đọc hướng dẫn Pacache của chúng tôi tại liên kết bên dưới:

5. Xem Xét và Hợp Nhất Các Tệp .pacnew (và .pacsave)

Khi một bản cập nhật thay đổi tệp cấu hình bạn đã tùy chỉnh, pacman không ghi đè lên phiên bản của bạn. Nó cài đặt phiên bản mặc định mới bên cạnh phiên bản của bạn dưới dạng filename.pacnew, để bạn quyết định làm gì với nó.

Loại tệp đồng hành, .pacsave, xuất hiện khi bạn xóa một gói sở hữu cấu hình bạn đã sửa đổi. Đó là phiên bản cũ của bạn, được giữ lại trong trường hợp bạn cài đặt lại sau.

5.1. Tìm và hợp nhất chúng

sudo pacman -S pacman-contrib
pacdiff

-Qdtq

pacdiff quét hệ thống của bạn cho cả tệp .pacnew và .pacsave và hướng dẫn bạn hợp nhất từng tệp với cấu hình hiện tại, hiển thị diff để bạn thấy chính xác những gì đã thay đổi.

Tại sao điều này quan trọng:

Bỏ qua các tệp này vô thời hạn có nghĩa là cấu hình của bạn dần dần lệch khỏi những gì gói thực sự mong đợi. Nó thường vô hại trong nhiều tháng, cho đến khi một bản cập nhật cụ thể giả định một mặc định mà cấu hình cũ của bạn không có, và thứ gì đó bị hỏng theo cách khó truy ngược lại một tệp cấu hình bạn quên mất.

Để biết thêm chi tiết về hai tệp này, hãy đọc các hướng dẫn sau:

6. Kiểm Tra Dịch Vụ Lỗi và Lỗi

6.1. Dịch vụ systemd bị lỗi


-Qm

systemctl --failed

Kết quả trống là tốt. Nó có nghĩa là mọi dịch vụ được kích hoạt đã khởi động thành công ở lần khởi động cuối. Bất cứ thứ gì được liệt kê ở đây đều đáng để điều tra với journalctl -u service-name.

6.2. Xem xét nhật ký pacman


-S

less /var/log/pacman.log

Đáng để xem qua định kỳ, đặc biệt là sau một bản cập nhật có vấn đề. Đó là bản ghi đầy đủ của mọi gói đã cài đặt, xóa hoặc nâng cấp, với dấu thời gian.

6.3. Đừng quên các tiến trình đang chạy

Một bản cập nhật cho thư viện không có hiệu lực trong các chương trình đang chạy. Ví dụ, một trình duyệt bạn đã mở trong nhiều ngày vẫn đang sử dụng phiên bản cũ trong bộ nhớ cho đến khi nó được khởi động lại.

Khởi động lại định kỳ, không chỉ sau khi cập nhật kernel, là cách đơn giản nhất để đảm bảo mọi tiến trình đang chạy thực sự ở phiên bản bạn vừa cài đặt.

7. Tần Suất Đề Xuất

Một hệ thống không được cập nhật trong sáu tháng hoặc hơn thường kết thúc với hàng tá tệp .pacnew tích lũy và bộ nhớ đệm nhiều gigabyte cùng một lúc. Làm cho bản cập nhật bắt kịp cuối cùng đó rủi ro hơn nhiều so với bất kỳ bản cập nhật hàng tuần đơn lẻ nào. Ít và thường xuyên tốt hơn hiếm và lớn.

Câu Hỏi Thường Gặp (FAQ)

H: Có an toàn để xóa tất cả các gói mồ côi không?

A: Nhìn chung, Có. Lệnh pacman -Qdt chỉ liệt kê các gói không có gì phụ thuộc hiện tại. Ngoại lệ hiếm gặp là một gói bạn đã cài đặt thủ công vì một lý do pacman không thể thấy (ví dụ: một mô-đun kernel bạn xây dựng dựa trên nó) nhưng không bao giờ đánh dấu là "đã cài đặt rõ ràng".

Nếu bạn không chắc chắn về một gói cụ thể, hãy kiểm tra nó là gì trước khi xóa thay vì mù quáng chuyển toàn bộ danh sách.

H: Điều gì xảy ra nếu tôi bỏ qua các tệp .pacnew?

A: Không có gì ngay lập tức. Cấu hình cũ của bạn tiếp tục hoạt động như trước. Rủi ro là tích lũy: mỗi tệp .pacnew bị bỏ qua là một nơi nữa mà cấu hình thực tế của hệ thống bạn đã âm thầm lệch khỏi những gì các phiên bản gói hiện tại mong đợi, và khoảng cách đó cuối cùng gây ra lỗi khó hiểu trong một số bản cập nhật tương lai không liên quan.

H: Bộ nhớ đệm pacman đầy đĩa của tôi, làm sao bây giờ?

A: Chạy sudo paccache -rk2 ngay lập tức để thu hồi dung lượng, sau đó thiết lập paccache.timer từ Bước 4 để nó không xảy ra nữa. Nếu bạn cần dung lượng ngay bây giờ và không quan tâm đến an toàn hạ cấp, sudo pacman -Scc xóa toàn bộ bộ nhớ đệm, nhưng bạn mất khả năng khôi phục bất kỳ gói nào đã cài đặt.

H: Tôi nên cập nhật Arch thường xuyên như thế nào?

A: Hàng tuần là tần suất thường được khuyến nghị. Đủ thường xuyên để bất kỳ bản cập nhật đơn lẻ nào cũng nhỏ và dễ khắc phục nếu có sự cố, đủ không thường xuyên để không phải là việc vặt hàng ngày.

Việc không cập nhật trong nhiều tháng là điều thường dẫn đến trải nghiệm cập nhật "mọi thứ hỏng cùng lúc" ấn tượng, vì hàng tá thay đổi đến cùng một lúc thay vì từng cái một.

Kết Luận

Trong hướng dẫn này, chúng tôi đã đề cập đến sáu công việc bảo trì Arch Linux quan trọng mà mọi người dùng nên thực hiện thường xuyên. Thực hiện theo các phương pháp hay nhất này sẽ giúp giữ cho Arch Linux của bạn sạch sẽ, ổn định và hoạt động trơn tru trong thời gian dài.

Tài nguyên: