Computer >> Máy Tính >  >> Lập trình >> Lập trình BASH

Chmod 777 là gì và nó có tác dụng gì trong Linux?

Bài viết này khám phá chmod 777, một lệnh Linux được sử dụng để cấp TẤT CẢ CÁC QUYỀN cho người dùng, nhóm và những người khác.

Là một người dùng Linux mới, nhà phát triển web hoặc quản trị viên hệ thống, bạn có thể đã được hướng dẫn nhập:

chmod 777 /path/to/file/or/folder

… Vào trình bao Linux của bạn tại một số điểm.

Bất cứ khi nào bạn đang chạy các lệnh trên hệ thống của mình (đặc biệt là khi root!), Bạn LUÔN phải biết chúng đang làm gì. Vậy chmod 777 là gì thực sự về?

Quyền trong Linux

Chmod 777 là gì và nó có tác dụng gì trong Linux?

Lệnh ls - l

Trên đây là một ví dụ về việc chạy:

ls -l

lệnh này sẽ liệt kê nội dung thư mục hiện tại ở định dạng danh sách dài, hiển thị các quyền và ngày sửa đổi cho các tệp đang được liệt kê.

  • Cột đầu tiên được hiển thị là các quyền được chỉ định cho tệp hoặc thư mục
  • Cột thứ hai là số tệp hoặc thư mục chứa
  • Các cột thứ ba và thứ tư hiển thị người dùng nhóm những người có quyền đối với các tệp đó, tương ứng
  • Phần thứ năm và thứ sáu hiển thị kích thước và ngày sửa đổi
  • Cột cuối cùng hiển thị tên của tệp

Cột đầu tiên, cột thứ ba và thứ tư chứa thông tin liên quan đến quyền, sẽ được tham chiếu trong bài viết này

Các thư mục được liệt kê trong ảnh chụp màn hình nằm trong linuxscrew thư mục chính của người dùng và tất cả đều có quyền

drwxr-xr-x 

Với cả chủ sở hữu nhóm của người dùng linuxscrew sở hữu chúng.

drwxr-xr-x chứa 4 phần thông tin, 3 phần trong số đó liên quan đến quyền:

d rwx r-x r-x
Đó là một thư mục Chủ sở hữu có thể Đọc, Viết, eXecute Nhóm có thể Đọc, eXecute Những người khác có thể Đọc, eXecute
  • Chữ cái đầu tiên hiển thị loại tệp - nếu đó là d đó là một thư mục, nếu nó là - đó là một tệp thông thường
  • Các ký tự thứ 2 đến thứ 4 chứa các quyền đối với người dùng
  • Các ký tự thứ 5 đến thứ 7 chứa các quyền đối với nhóm
  • Các ký tự thứ 8 đến thứ 10 chứa các quyền dành cho những người khác

Các chữ cái trong mỗi khối có ý nghĩa sau:

  • ‘-‘ quyền bị từ chối
  • ‘r’ quyền đọc
  • ‘w’ quyền viết
  • ‘x’ thực thi quyền

Ngoài ra còn có một số giá trị đặc biệt mà ký tự eXecute có thể nhận:

  • ‘s’ setuid bit, được tìm thấy trong người dùng hoặc nhóm quyền, người dùng có thể thực thi tệp sẽ thực thi với các đặc quyền của chủ sở hữu tệp và / hoặc nhóm của tệp. Có nghĩa là x được thiết lập, làm cho tệp có thể thực thi được
  • ‘S’ Giống như ‘s’ nhưng tệp không thể thực thi được
  • ‘t’ Bit dính, được tìm thấy trong những người khác quyền, làm cho tệp dính - chỉ chủ sở hữu mới có thể đổi tên hoặc xóa tệp hoặc các tệp bên trong. Nhóm và những người khác không thể! Nó cũng có nghĩa là x được thiết lập, làm cho tệp có thể thực thi được
  • ‘T’ Giống như ‘t’ nhưng tệp không thực thi được

Để hoàn chỉnh, các loại tệp khác nhau có thể chiếm không gian ký tự đầu tiên:

  • ‘-‘ tệp thông thường
  • ‘b’ chặn tệp đặc biệt
  • ‘c’ tệp đặc biệt của ký tự
  • ‘C’ tệp hiệu suất cao (“dữ liệu liền kề”)
  • ‘d’ thư mục
  • ‘D’ cửa (Solaris 2.5 trở lên)
  • ‘l’ liên kết tượng trưng
  • ‘M’ tệp ngoại tuyến (“đã di chuyển”) (Cray DMF)
  • ‘n’ tệp đặc biệt của mạng (HP-UX)
  • ‘p’ FIFO (đường ống được đặt tên)
  • ‘P’ port (Solaris 10 trở lên)
  • ‘s’ ổ cắm
  • ‘?’ một số loại tệp khác

Cái gì mà 777 Phương tiện

Để nhập mọi thứ nhanh hơn khi chỉ định quyền, các số có thể được sử dụng để biểu thị sự kết hợp của các chữ cái được hiển thị ở trên:

  • 7 Tất cả các quyền
  • 6 Đọc và viết
  • 5 Đọc và thực thi
  • 4 Chỉ đọc
  • 3 Thực thi và viết
  • 2 Chỉ viết
  • 1 Chỉ thực thi
  • 0 Không có quyền

Vì vậy, để cung cấp cho TẤT CẢ CÁC QUYỀN cho cả người dùng , nhóm, những người khác, chúng tôi muốn chỉ định quyền 777

chmod Lệnh

chmod Lệnh (Change Mode) cho phép bạn áp dụng các quyền cho tệp.

chmod 777

Vì vậy, đang chạy:

chmod 777 /path/to/file/or/folder

… Sẽ cung cấp cho chủ sở hữu tệp hoặc thư mục (người dùng), nhóm (người dùng trong nhóm) và những người khác (mọi người khác trên hệ thống) toàn quyền đọc, ghi và thực thi.

chmod -R 777 /path/to/file/or/folder

Thao tác này sẽ làm điều tương tự, một cách đệ quy và cấp cho mọi người toàn quyền đối với các tệp chứa trong một thư mục.

Giờ thì bạn đã biết!