What are Ubuntu Repositories? How to enable or disable them?

Nguồn: https://itsfoss.com/ubuntu-repositories

Tác giả: Abhishek Prakash

Người dịch: Nguyễn Xuân Quỳnh

Bài viết chi tiết này giải thích cho bạn về nhiều loại repositories như universe, multiverse trong Ubuntu và cách để kích hoạt hay hủy bỏ chúng.

Giả sửa, bạn đang cố gắng làm theo một hướng dẫn trên web và cài đặt một phần mềm thông qua câu lệnh apt-get thì gặp thông báo lỗi như sau:

Unable to locate package xyz

Bạn cảm thấy bất ngờ vì phần mềm đáng nhẽ phải được tìm thấy. Bạn tìm kiếm trên Internet và chọn một giải pháp mà phải kích hoạt repository universe hoặc multiverse để cài đặt phần mềm đó.

Bạn có thể kích hoạt repositor universe và multiverse trong Ubuntu bằng những câu lệnh dưới đây:

sudo add-apt-repository universe multiverse
sudo apt update

Bạn đã cài đặt repository universe và multiverse nhưng bạn có biết chúng là gì? Chúng có vai trò gì trong việc cài đặt phần mềm? Tại sao lại có nhiều loại repositories?

Tôi sẽ giải thích chi tiết những câu hỏi này.

Ý tưởng của repositories trong Ubuntu

OK, bạn biết rằng để cài đặt phần mềm trong Ubuntu, bạn có thể sử dụng câu lệnh apt. Cách này tương tự như APT package manager mà Ubuntu Software Center sử dụng ngầm phía dưới. Tất cả những phần mềm (ngoại trừ những gói Snap) mà bạn có thể nhìn thấy trên Software Center đến từ APT.

Có bao giờ bạn tự hỏi rằng apt cài đặt chương trình từ đâu? Tại sao nó biết được phần mềm nào tồn tại hay không?

APT làm việc dựa trên repository. Một repository không là gì khác ngoài một máy chủ chứa nhiều phần mềm. Ubuntu cung cấp nhiều phần mềm mà bạn sẽ không phải tìm kiếm file cài đặt trên Internet. Cách cung cấp phần mềm tập trung là một trong những điểm mạnh chính của việc sử dụng Linux.

APT package manager lấy thông tin repository từ file /etc/apt/sources.list và những files khác trong thư mục /etc/apt/sources.list.d. Thông tin repository thông thường có dạng sau:

deb http://us.archive.ubuntu.com/ubuntu/ bionic main

Thực tế, bạn có thể truy cập vào địa chỉ server và xem repository được tổ chức như thế nào.

Khi bạn cập nhật Ubuntu bằng apt update command, apt package manager lấy thông tin về những phần mền khả dụng (và thông tin phiên bản của chúng) từ repositories và lưu vào local cache. Bạn có thể xem thư mục /var/lib/apt/lists.

Việc lưu trữ những thông tin này trên local cache tăng tốc quá trình tìm kiếm vì bạn không phải thông qua mạng và tìm kiếm CSDL của những phần mềm khả dụng. Chỉ cần kiểm tra một phần mềm nhất định có khả dụng hay không.

Bây giờ, bạn biết repositories nắm giữ vai trò quan trọng như thế nào. Hãy tìm hiểu tại sao có nhiều repositories được cung cấp bởi Ubuntu.

Ubuntu Repositories: Main, Universe, Multiverse, Restricted and Partner

Phần mềm trong Ubuntu repository được chia làm 5 loại chính: main, universe, multiverse, restricted và partner.

Tại sao Ubuntu làm điều này? Tại sao không gom tất cả chúng vào một repository đơn lẻ? Để trả lời câu hỏi này, hãy xem những loại repositories này là gì:

Main

Khi bạn cài đặt Ubuntu, repository này được kích hoạt mặc định. Repository main chỉ bao gồm FOSS (free and open source software) có thể được phân phối mà không có hạn chế nào.

Phần mềm trong repository này được hỗ trợ đầy đủ bởi Ubuntu developers. Đó là những gì Ubuntu cung cấp với những bản cập nhật bảo mật cho đến khi hệ thống của bạn hết hạn.

Universe

Repository này cũng bao gồm phần mềm mã nguồn mở miễn phí nhưng Ubuntu không cung cấp những bản cập bảo mật thường xuyên.

Phần mềm được đóng bói và bảo trì bởi cộng đồng. Repository universe chứa rất nhiều phần mềm mã nguồn mở và do đó, nó cho phép bạn truy cập một lượng lớn phần mềm thông qua apt package manager.

Multiverse

Multiverse bao gồm những phần mềm không phải FOSS. Vì những vấn đề giấy phép và pháp luật, Ubuntu không thể mặc địch kích hoạt repository này và cung cấp bản vá lỗi hay cập nhật.

Nó phụ thuộc vào quyết định của bạn và kiểm tra xem bạn có quyền sử dụng hay không.

Restricted

Ubuntu cố gắng cung cấp FOSS nhưng không phải lúc nào cũng khả thi đặc biệt là khi nó liên quan đến việc hỗ trợ phần cứng.

Repository restricted chứa nhiều drivers độc quyền.

Partner

Repository này chứa phần mềm độc quyền của Ubuntu dành cho đối tác của họ. Trước đó, Ubuntu đã từng cung cấp Skype qua repository này.

Third party repositories and PPA (Not provided by Ubuntu)

Năm loại repositories trên được cung cấp bởi Ubuntu. Bạn cũng có thể thêm những repositories của bên thứ ba (nó phụ thuộc vào những gì bạn muốn) để truy cập phiên bản phần mềm mới hơn (vì Ubuntu có thể đang cung cấp bản cũ hơn của cùng phần mềm đó).

Ví dụ, nếu bạn thêm repository cung cấp bởi VirtualBox, bạn có thể lấy phiên bản gần nhất của VirtualBox. Nó sẽ thêm một đầu vào mới trong sources.list.

Bạn cũng có thể cài đặt những ứng dụng khác sử dụng PPA (Personal Package Archive). Tôi viết về What is PPA and how it works, vì vậy hãy đọc nó.

Tip
Đừng thêm bất cứ gì khác ngoài Ubuntu repositories trong file sources.list của bạn. Bạn nên giữ file này trong điều kiện “nguyên sơ” vì nếu bạn làm nó lộn xộn, bạn sẽ không thể cập nhật hệ thống và thậm chí không thể cài phần mềm mới.

Kích hoạt universe, multiverse và những repositories khác

Như tôi đã nói ở trước, chỉ có repository main được kích hoạt mặc định khi bạn cài đặt Ubuntu. Để truy cập nhiều phần mềm hơn, bạn có thể thêm nhiều repositories khác.

Đầu tiên, để tôi chỉ cho bạn làm nó như thế nào với command line và sau đó, tôi sẽ sử dụng GUI.

Kích hoạt repository universe:

sudo add-apt-repository universe

Kích hoạt repository restricted:

sudo add-apt-repository restricted

Kích hoạt repository multiverse:

sudo add-apt-repository multiverse

Bạn phải sử dụng “sudo apt update” sau khi thêm repository để máy tính của bạn tạo local cache với thông tin các gói phần mềm.

Nếu bạn muốn gỡ bỏ một repository, đơn giản là thêm -r vào những câu lệnh trên. Ví dụ như sudo add-apt-repository -r universe.

Với GUI, mở Software & Updates và bạn có thể kích hoạt những repositories ở đây.

Thêm repository universe, restricted và multiverse

Bạn có thể tìm thấy tùy chọn để kích hoạt repository của đối tác trong tab Other Software.

Thêm repository partner

Để hủy bỏ, đơn giản là bỏ chọn chúng.

Bonus Tip: Làm sao để biết được một phần mềm thuộc về repository nào?

Ubuntu có một website cung cấp cho bạn thông tin về tất cả những gói phần mềm khả dụng. Hãy truy cập Ubuntu Packages website.

Bạn có thể tìm kiếm tên gói trong trường keyword. Bạn cũng có thể lựa chọn phiên bản Ubuntu và loại repository cụ thể. Tôi thích sử dụng tùy chọn “any” cho 2 trường này.

Nó sẽ chỉ ra cho bạn tất cả các gói có thể, phiên bản Ubuntu và thông tin repository.

Như bạn thấy, gói tor có trong repository universe phù hợp cho nhiều phiên bản Ubuntu.

Kết luận

Tôi hy vọng bài viết này đã giúp bạn hiểu được ý tưởng về repositories trong Ubuntu.

Nếu bạn có bất kỳ câu hỏi hay gợi ý nào, hãy thoải mái để lại bình luận bên dưới. Nếu bạn thích bài viết, hãy chia sẻ nó trên những mạng xã hội như Reddit và Hacker News.