Computer >> Hướng Dẫn Máy Tính >  >> Phần Mềm >> Phần Mềm

Thành Thạo Quyền File Linux: Hiểu Chmod 777 Và Cách Sử Dụng An Toàn

Nếu bạn là người dùng Linux mới, bạn có thể đã gặp lệnh Chmod ở một số thời điểm sớm. Có lẽ ai đó nói với bạn "chmod 777" để di chuyển file đến thư mục nào đó, và nó hoạt động! Vậy lệnh chmod làm gì và các con số có ý nghĩa gì?

Bài viết này sẽ thảo luận mọi thứ bạn cần biết về quyền file Linux. Việc biết điều này quan trọng để hiểu lệnh chmod và các con số tương ứng với mức truy cập nhất định. Dù bạn dùng Ubuntu, Fedora, hay distro Linux lạ hơn, bạn nên hiểu khi nào nên đặt quyền 777 dùng lệnh CHMOD và khi nào nên dùng cài đặt khác.

Trong Linux, hệ điều hành xác định ai có thể truy cập file nhất định dựa trên quyền file, sở hữu và thuộc tính. Hệ thống cho phép bạn, người sở hữu hoặc admin, kích hoạt hạn chế truy cập đến các file và thư mục khác nhau. Bạn có thể cải thiện bảo mật hệ thống bằng cách chỉ cấp truy cập cho người dùng và chương trình bạn tin tưởng.

Hiểu Các Lớp Người Dùng (User Classes)

Một người dùng cụ thể và một nhóm sở hữu mọi file và thư mục đơn lẻ. Điều này có nghĩa là có ba loại người dùng bạn có thể gán mức truy cập nhất định. Những người dùng này được phân loại như sau:

  • Người sở hữu (Owner)
  • Nhóm (Group)
  • Người khác (Others)

Bạn có thể thấy các nhóm này trực quan trong Ubuntu bằng cách nhấp chuột phải vào bất kỳ thư mục nào, chọn Thuộc tính (Properties), và đi đến tab Quyền (Permissions).

Thành Thạo Quyền File Linux: Hiểu Chmod 777 Và Cách Sử Dụng An Toàn

Người sở hữu là người có toàn quyền. Thường họ có toàn quyền truy cập mọi file và thư mục và có thể thay đổi quyền file của người dùng khác cũng.

Nhóm bao gồm một số người dùng có mức truy cập nhất định đến file hoặc thư mục do Người sở hữu cấp. Ví dụ, một nhóm người dùng có thể bị loại khỏi việc sửa file nhưng được cấp quyền xem file đó.

Lớp Người khác đơn giản đại diện cho người dùng khách không rơi vào hai loại trên. Theo mặc định, mức truy cập của họ thường bị hạn chế. Tùy thuộc vào Người sở hữu để quyết định người dùng khách có thể làm gì hoặc không.

Hiểu Các Mức Quyền File (File Permission Levels)

Là Người sở hữu, bạn có thể gán ba mức truy cập cho file và thư mục của mình:

  1. Đọc (Read): Cho truy cập hạn chế đến file hoặc thư mục. Tất cả bạn có thể làm là đọc file hoặc xem nội dung thư mục. Bạn không thể sửa file, và không thể xóa hoặc thêm file mới vào thư mục.
  2. Ghi (Write): Cho phép đọc và sửa file. Nếu gán mức này cho thư mục, bạn cũng có thể xóa hoặc thêm file.
  3. Thực thi (Execute): Chỉ quan trọng khi chạy hoặc thực thi file. Ví dụ, bạn không thể chạy script hoặc chương trình nếu không có quyền Thực thi.

Bằng cách kết hợp Các lớp và Quyền, bạn có thể kiểm soát mức truy cập một người dùng cụ thể có đối với file hoặc thư mục.

Ký Hiệu Và Số Quyền Giải Thích

Quyền file được biểu diễn bằng số hoặc ký hiệu. Bạn có thể dùng cả ký hiệu và số để thay đổi quyền file và thư mục. Phương pháp dễ nhất là dùng số, nhưng bạn cũng nên hiểu ký hiệu. Vậy hãy xem ký hiệu đằng sau quyền file trước.

Ký Hiệu Quyền File

Bạn có thể xem quyền của mình cho tất cả nội dung trong thư mục nhất định nếu bạn gõ lệnh sau trong terminal:

ls -l

Thành Thạo Quyền File Linux: Hiểu Chmod 777 Và Cách Sử Dụng An Toàn

Bạn có thể điều hướng đến bất kỳ thư mục nào bằng lệnh cd. Nếu bạn là người mới hoàn toàn, hãy xem bài viết của chúng tôi về lệnh Linux cơ bản.

Trong ví dụ của chúng tôi, thư mục chứa hai thư mục khác và một file. Quyền được viết bằng (1+) 9 ký hiệu có thể chia thành ba bộ ba để dễ hiểu hơn. Hãy xem tập quyền đầu tiên cho thư mục Books:

drwxrwxr-x

Hãy tách nó để dễ đọc:

d rwx rwx r-x

Ký hiệu đầu tiên là d, và nó đại diện cho thư mục (directory). Nó cũng có thể là dấu gạch ngang nếu là file, như bạn thấy trong tập quyền thứ ba cho file Outline.docx.

Tiếp theo, chúng ta có ba nhóm ký hiệu. Nhóm đầu tiên đại diện cho mức quyền của Người sở hữu, nhóm thứ hai cho lớp Nhóm, và nhóm thứ ba cho Người khác.

Mỗi bộ 3 ký hiệu nghĩa là đọc, ghi, thực thi – theo thứ tự đó. Vì vậy Người sở hữu có quyền đọc, ghi, và thực thi tất cả file và thư mục tìm thấy bên trong thư mục Test. Đây là biểu diễn trực quan:

Thành Thạo Quyền File Linux: Hiểu Chmod 777 Và Cách Sử Dụng An Toàn

Khi bạn thấy dấu gạch ngang thay vì r, w, hoặc x, nghĩa là quyền đó không tồn tại.

Số Quyền File

Định dạng số cho quyền file đơn giản. Về cơ bản, mã quyền file có ba chữ số:

  • Chữ số đầu tiên cho người sở hữu file.
  • Chữ số thứ hai đại diện cho nhóm file.
  • Chữ số cuối cho tất cả người khác.

Các chữ số từ 0 đến 7 nơi:

  • 4 = đọc (read).
  • 2 = ghi (write).
  • 1 = thực thi (execute).
  • 0 = không có quyền.

Chữ số quyền của mỗi lớp được xác định bằng cách cộng giá trị của các quyền. Nói cách khác, mỗi chữ số cho mỗi lớp có thể là tổng của 4, 2, 1, và 0. Đây là danh sách đầy đủ quyền:

  • 0 (0 + 0 + 0) = Lớp người dùng không có quyền nào.
  • 1 (0 + 0 + 1) = Chỉ quyền thực thi.
  • 2 (0 + 2 + 0) = Chỉ quyền ghi.
  • 3 (0 + 2 + 1) = Quyền ghi và thực thi.
  • 4 (4 + 0 + 0) = Chỉ quyền đọc.
  • 5 (4 + 0 + 1) = Quyền đọc và thực thi.
  • 6 (4 + 2 + 0) = Quyền đọc và ghi.
  • 7 (4 + 2 + 1) = Tất cả quyền.

Ví dụ, quyền 644 nghĩa là người sở hữu file có quyền đọc và ghi, trong khi hai lớp khác chỉ có quyền đọc. Đặt quyền bằng định dạng số chỉ cần toán học cơ bản.

Thành Thạo Quyền File Linux: Hiểu Chmod 777 Và Cách Sử Dụng An Toàn

Quyền 777

Như bạn có thể đã đoán, quyền 777 cho quyền đọc, ghi, và thực thi cho cả ba lớp người dùng. Nói cách khác, bất kỳ ai có quyền truy cập hệ thống của bạn có thể đọc, sửa đổi, và thực thi file. Chỉ dùng nó khi bạn tin tưởng tất cả người dùng và không cần lo ngại vi phạm bảo mật.

Quyền 777 thường được dùng vì nó tiện lợi, nhưng bạn nên dùng nó thận trọng. Thực tế, chúng tôi khuyên không bao giờ dùng nó vì rủi ro bảo mật quá lớn. Một người dùng trái phép có thể xâm phạm hệ thống hoặc, ví dụ, thay đổi trang web của bạn để phân phối phần mềm độc hại.

Bạn nên cấp quyền 755 thay vào đó. Cách đó, bạn như người sở hữu file có toàn quyền truy cập file hoặc thư mục nhất định, trong khi mọi người khác có thể đọc và thực thi, nhưng không thể sửa đổi nếu không có sự chấp thuận của bạn.

Thay Đổi Quyền File Với Chmod

Bạn có thể thay đổi quyền file với sự giúp đỡ của lệnh chmod. Cách cơ bản nhất dùng lệnh này không có biến khác là như sau:

chmod 777 tên_file

Thay "tên_file" bằng tên file và đường dẫn của nó.

Hãy nhớ rằng chỉ những người dùng có quyền truy cập root, người sở hữu file, và bất kỳ ai có quyền sudo mới có quyền thay đổi quyền file.