Hướng dẫn chmod php files - tệp chmod php

  • Định Nghĩa.
  • Cú pháp.
    • Cú pháp:
    • Trong đó.
    • Giá trị trả về.
  • Chú ý.
  • Hàm liên quan
  • Thông tin thêm.

Nội dung chính

  • Định Nghĩa.
  • Trong đó.
  • Giá trị trả về.
  • Hàm liên quan
  • Thông tin thêm.
  • Định Nghĩa.
  • Trong đó.
  • Giá trị trả về.
  • Hàm liên quan
  • Thông tin thêm.
  • Nội dung chính
  • Kết quả trả về
  • 1. Các quyền của file trong Linux
  • Các đối tượng truy cập file
  • Các loại quyền trên file
  • 2. Cú pháp lệnh chmod trong Linux
  • 3. Phân quyền bằng symbolic trong Linux
  • 4. Phân quyền bằng Numeric Method trong Linux
  • 5. Phân quyền bằng Reference File trong Linux
  • 6. Lệnh chmod gán quyền đệ quy cho các file bên trong
  • 7. Lệnh chmod trên Symbolic Links

Định Nghĩa.

8. Thay đổi quyền hàng loạt các file
Hàm tương thích trên PHP4, PHP5, PHP7.

Cú pháp.

Cú pháp:

chmod ( string $filename , int $mode ) : bool

Trong đó.

  • Giá trị trả về.
  • Chú ý.
    – Lưu ý rằng mode không tự động được coi là một octal value, vì vậy để đảm bảo hoạt động dự kiến, bạn cần phải có chế độ tiền tố với số không (0). Các chuỗi như “g + w” sẽ không hoạt động đúng.

    Hàm liên quanoctal chỉ định các hạn chế truy cập cho chủ sở hữu, nhóm người dùng mà chủ sở hữu đang ở và cho mọi người khác theo thứ tự này. Một thành phần có thể được tính bằng cách thêm các quyền cần thiết cho cơ sở người dùng file đó. Số 1 có nghĩa là bạn cấp quyền thực thi, số 2 có nghĩa là bạn tạo tệp có thể ghi, số 4 có nghĩa là bạn làm cho tệp có thể đọc được. Thêm các số này để xác định các quyền cần thiết. Bạn cũng có thể đọc thêm về các chế độ trên các hệ thống Unix với ‘man 1 chmod’ và ‘man 2 chmod’.

Giá trị trả về.

  • Chú ý.TRUE khi thành công hoặc FALSE khi thất bại.

Chú ý.

  • Hàm liên quan
  • Thông tin thêm.
  • Nội dung chính

Hàm liên quan

  • Thông tin thêm.
  • Nội dung chính
  • Kết quả trả về
  • 1. Các quyền của file trong Linux

Thông tin thêm.

  • Nội dung chính
    PHP sẽ không quan tâm tới điều đó nhưng sẽ thực hiện chuyển đổi ngầm thành int trước khi chạy chmod. Thật không may, chuyển đổi ngầm định không tính đến chuỗi bát phân để bạn kết thúc với phiên bản số nguyên 644, là 1204 octal.
  • Kết quả trả về

1. Các quyền của file trong Linux

Các đối tượng truy cập filechmod() trong PHP. Nếu bạn thấy bài viết hay và có ý nghĩa hãy like và chia sẻ bài viết này để mọi người cùng nhau học tập nhé.
Cảm ơn các bạn đã ghé thăm codetutam.com

  • Định Nghĩa.
  • Cú pháp.
    • Cú pháp:
    • Trong đó.
    • Giá trị trả về.
  • Chú ý.
  • Hàm liên quan
  • Thông tin thêm.

Nội dung chính

  • Định Nghĩa.
  • Trong đó.
  • Giá trị trả về.
  • Hàm liên quan
  • Thông tin thêm.
  • Nội dung chính
  • Kết quả trả về
  • 1. Các quyền của file trong Linux
  • Các đối tượng truy cập file
  • Các loại quyền trên file
  • 2. Cú pháp lệnh chmod trong Linux
  • 3. Phân quyền bằng symbolic trong Linux
  • 4. Phân quyền bằng Numeric Method trong Linux
  • 5. Phân quyền bằng Reference File trong Linux
  • 6. Lệnh chmod gán quyền đệ quy cho các file bên trong
  • 7. Lệnh chmod trên Symbolic Links

Định Nghĩa.

8. Thay đổi quyền hàng loạt các file
Hàm tương thích trên PHP4, PHP5, PHP7.

Cú pháp.

Cú pháp:

chmod ( string $filename , int $mode ) : bool

Trong đó.

  • Giá trị trả về.
  • Chú ý.
    – Lưu ý rằng mode không tự động được coi là một octal value, vì vậy để đảm bảo hoạt động dự kiến, bạn cần phải có chế độ tiền tố với số không (0). Các chuỗi như “g + w” sẽ không hoạt động đúng.

    Hàm liên quanoctal chỉ định các hạn chế truy cập cho chủ sở hữu, nhóm người dùng mà chủ sở hữu đang ở và cho mọi người khác theo thứ tự này. Một thành phần có thể được tính bằng cách thêm các quyền cần thiết cho cơ sở người dùng file đó. Số 1 có nghĩa là bạn cấp quyền thực thi, số 2 có nghĩa là bạn tạo tệp có thể ghi, số 4 có nghĩa là bạn làm cho tệp có thể đọc được. Thêm các số này để xác định các quyền cần thiết. Bạn cũng có thể đọc thêm về các chế độ trên các hệ thống Unix với ‘man 1 chmod’ và ‘man 2 chmod’.

Giá trị trả về.

  • Trả về TRUE khi thành công hoặc FALSE khi thất bại.TRUE khi thành công hoặc FALSE khi thất bại.

Chú ý.

  • Người dùng hiện tại là người dùng mà PHP chạy. Nó có thể không giống với người dùng bạn sử dụng để truy cập shell hoặc FTP thông thường. Chế độ chỉ có thể được thay đổi bởi người dùng sở hữu tệp trên hầu hết các hệ thống.
  • Chức năng này sẽ không hoạt động trên các tệp từ xa vì tệp cần kiểm tra phải được truy cập thông qua hệ thống tệp của máy chủ.
  • Khi chế độ an toàn được bật, PHP sẽ kiểm tra xem các tệp hoặc thư mục bạn sắp vận hành có cùng UID (chủ sở hữu) như tập lệnh đang được thực thi hay không. Ngoài ra, bạn không thể đặt SUID, SGID và bit dính.

Hàm liên quan

  • chown() – Thay đổi chủ sở hữu tập tin
  • chgrp() – Thay đổi nhóm người dùng với tập tin
  • fileperms() – Nhận quyền truy cập của tệp.
  • stat() – Cung cấp thông tin về một tập tin

Thông tin thêm.

  • Khi sử dụng dấu ngoặc kép xung quanh tham số thứ hai vd chmod (tập tin, “0644”); PHP sẽ không quan tâm tới điều đó nhưng sẽ thực hiện chuyển đổi ngầm thành int trước khi chạy chmod. Thật không may, chuyển đổi ngầm định không tính đến chuỗi bát phân để bạn kết thúc với phiên bản số nguyên 644, là 1204 octal.
    PHP sẽ không quan tâm tới điều đó nhưng sẽ thực hiện chuyển đổi ngầm thành int trước khi chạy chmod. Thật không may, chuyển đổi ngầm định không tính đến chuỗi bát phân để bạn kết thúc với phiên bản số nguyên 644, là 1204 octal.
  • Một cách để thay đổi mode recursive  trong $ pathname thành $ filemode.

Các bạn có thể xem chi tiết hơn trên php.net.

Hi vọng với bài viết này, bạn đã hiểu rõ ứng dụng của hàm chmod() trong PHP. Nếu bạn thấy bài viết hay và có ý nghĩa hãy like và chia sẻ bài viết này để mọi người cùng nhau học tập nhé. Cảm ơn các bạn đã ghé thăm codetutam.comchmod() trong PHP. Nếu bạn thấy bài viết hay và có ý nghĩa hãy like và chia sẻ bài viết này để mọi người cùng nhau học tập nhé.
Cảm ơn các bạn đã ghé thăm codetutam.com

Hàm 

8 sẽ thay đổi quyền đối với các đối tượng người dùng của file được truyền vào.

Nội dung chính

  • Kết quả trả về
  • 1. Các quyền của file trong Linux
  • Các đối tượng truy cập file
  • Các loại quyền trên file
  • 2. Cú pháp lệnh chmod trong Linux
  • 3. Phân quyền bằng symbolic trong Linux
  • 4. Phân quyền bằng Numeric Method trong Linux
  • 5. Phân quyền bằng Reference File trong Linux
  • 6. Lệnh chmod gán quyền đệ quy cho các file bên trong
  • 7. Lệnh chmod trên Symbolic Links
  • 8. Thay đổi quyền hàng loạt các file

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.freetuts.net, không được copy dưới mọi hình thức.

Cú pháp

Cú pháp: 

5
5

Trong đó::

  • 9 là đường dẫn đến file.
  • 0 là quyền mới đối với các đối tượng người dùng.

Kết quả trả về

1. Các quyền của file trong Linux

Các đối tượng truy cập file

Các loại quyền trên file

2. Cú pháp lệnh chmod trong Linux

3. Phân quyền bằng symbolic trong Linux

// chủ file được quyền đọc và viết, mọi người khác không có quyền.
chmod("/somedir/somefile", 0600);

// chủ file được quyền đọc và viết, mọi người khác có quyền đọc.
chmod("/somedir/somefile", 0644);

// chủ file có mọi quyền, mọi người có quyền đọc và thực thi.
chmod("/somedir/somefile", 0755);

// chủ file có mọi quyền, mọi người cùng nhóm với chủ file có quyền đọc
và thực thi, người khác không có quyền
chmod("/somedir/somefile", 0750);

4. Phân quyền bằng Numeric Method trong Linux

5. Phân quyền bằng Reference File trong Linux

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.freetuts.net, không được copy dưới mọi hình thức.

Cú pháp

1. Các quyền của file trong Linux

Các đối tượng truy cập file

Các đối tượng truy cập file

Các loại quyền trên file

Các đối tượng truy cập file

  • Các loại quyền trên file
  • 2. Cú pháp lệnh chmod trong Linux
  • 3. Phân quyền bằng symbolic trong Linux

4. Phân quyền bằng Numeric Method trong Linux

Các loại quyền trên file

2. Cú pháp lệnh chmod trong Linux

  • 3. Phân quyền bằng symbolic trong Linux
  • 4. Phân quyền bằng Numeric Method trong Linux
  • 5. Phân quyền bằng Reference File trong Linux

6. Lệnh chmod gán quyền đệ quy cho các file bên trong

7. Lệnh chmod trên Symbolic Links

8. Thay đổi quyền hàng loạt các file

-rw-r--r-- 12 freetuts users 12.0K Apr  8 20:51 filename.txt
|[-][-][-]-   [------] [---]
| |  |  | |      |       |
| |  |  | |      |       +-----------> 7. Group - nhóm sở hữu
| |  |  | |      +-------------------> 6. Owner - chủ sở hữu
| |  |  | +--------------------------> 5. Alternate Access Method
| |  |  +----------------------------> 4. Other users Permissions
| |  +-------------------------------> 3. Group Permissions
| +----------------------------------> 2. Owner Permissions
+------------------------------------> 1. File Type

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Cú pháp

Cú pháp: 

5

Trong đó:

9 là đường dẫn đến file.

Bảng quyền trên file Linux:

PermissionCharacterMeaning on File
Read - Không có quyền đọc
r Có thể được đọc.
Write - Không có quyền đọc
r Có thể được đọc.
Write - Không có quyền đọc
r Có thể được đọc.

Write

Read - Không có quyền đọc
r Có thể được đọc.
Write - Không có quyền đọc
r Có thể được đọc.
Write - Không có quyền đọc
r Có thể được đọc.

Write

Không được chỉnh sửa

0

w symbolic, numeric hoặc reference file. Chúng ta sẽ lần lượt tìm hiểu ba loại này ở phần tiếp theo nhé.

Có thể chỉnh sửa sudo mới có thể thay đổi quyền của file. Hãy hết sức cẩn thận khi sử dụng

9, đặc biệt là khi gán quyền cho các file trong thư mục nhiều cấp sử dụng đệ quy -R..

Execute

Không thể thực thi.

1

x ugoa là nhóm đối tượng nào sẽ được xử lý quyền:

  • Có thể thực thi
  • Bảng quyền trên thư mục Linux:
  • Không thể hiển thị nội dung của thư mục.
  • Có thể hiện thị nội dung của thư mục

Không thể thay đổi nội dung của thư mục. a.

Có thể thay đổi nội dung của thư mục

  • Không thể thay đổi thư mục hiện tại bằng lệnh cd
  • Có thể thay đổi thư mục bằng cd
  • 2. Cú pháp lệnh chmod trong Linux

Cú pháp lệnh chmod trong Linux như sau:: Cấp cho các thành viên nhóm sở hữu có quyền đọc file nhưng không được ghi và thực thi.

Lệnh chmod cho phép bạn thay đổi quyền bằng cách sử dụng chế độ symbolic, numeric hoặc reference file. Chúng ta sẽ lần lượt tìm hiểu ba loại này ở phần tiếp theo nhé.: Cấp quyền thực thi cho tất cả users

Chỉ có tài khoản root, chủ sở hữu file (owner) hoặc người dùng có đặc quyền sudo mới có thể thay đổi quyền của file. Hãy hết sức cẩn thận khi sử dụng

9, đặc biệt là khi gán quyền cho các file trong thư mục nhiều cấp sử dụng đệ quy -R..: Loại bỏ quyền ghi vào nhóm người dùng khác.

3. Phân quyền bằng symbolic trong Linux: Loại bỏ tất cả quyền đọc / ghi / thực thi cho tất cả người dùng.

Cú pháp của lệnh chmod khi sử dụng chế độ symbolic như sau:

Tham số ugoa là nhóm đối tượng nào sẽ được xử lý quyền:: Cấp quyền đọc, ghi và thực thi cho chủ sở hữu (owner), cấp quyền đọc cho nhóm sở hữu (group), và các đối tượng user khác không có quyền gì cả.

2

u = Chủ sở hữu (owner): Thêm các quyền của chủ sở hữu vào danh sách quyền của các thành viên trong nhóm sở hữu.

g = Nhóm người dùng (group)

o = Người dùng khác (other)

3

a = Tất cả user (all)

Nếu bạn không truyền tham số này vào lệnh thì nó sẽ lấy giá trị mặc định là a.

Tham số thứ hai là

chmod ( string $filename , int $mode ) : bool
0, dùng để xác định quyền sẽ được xóa, thêm hoặc thiết lập mới.

  • Dấu
    2 là xóa bớt quyền
  • Dấu
    chmod ( string $filename , int $mode ) : bool
    2 là thêm quyền
  • Dấu
    chmod ( string $filename , int $mode ) : bool
    3 là gán lại quyền
  • Ví dụ 1: Cấp cho các thành viên nhóm sở hữu có quyền đọc file nhưng không được ghi và thực thi.

Ví dụ 2: Cấp quyền thực thi cho tất cả users

Ví dụ 3: Loại bỏ quyền ghi vào nhóm người dùng khác.: Để cấp quyền đọc, ghi và thực thi cho chủ sở hữu file, đọc và thực thi đối với nhóm của file và chỉ quyền đọc cho tất cả người dùng khác, bạn sẽ làm như sau:

  • Ví dụ 4: Loại bỏ tất cả quyền đọc / ghi / thực thi cho tất cả người dùng.
  • Hoặc
  • Ví dụ 5: Cấp quyền đọc, ghi và thực thi cho chủ sở hữu (owner), cấp quyền đọc cho nhóm sở hữu (group), và các đối tượng user khác không có quyền gì cả.

Ví dụ 6: Thêm các quyền của chủ sở hữu vào danh sách quyền của các thành viên trong nhóm sở hữu.

4. Phân quyền bằng Numeric Method trong Linux: Cấp quyền cho owner là đọc và viết (4 + 2), quyền của group là chỉ đọc (4), các user còn lại cũng có quyền đọc (4).

Cú pháp của lệnh chmod trong Linux khi sử dụng phương thức Numeric có định dạng sau:

Khi sử dụng Numeric bạn có thể đặt quyền cho cả ba lớp người dùng (chủ sở hữu, nhóm và tất cả những người khác) cùng một lúc. Các con số có thể là 3 hoặc 4 chữ số cùng.

Khi sử dụng số có 3 chữ số thì chữ số đầu tiên thể hiện quyền của chủ sở hữu file, chữ số thứ hai là nhóm của file và chữ số cuối cùng cho tất cả những người dùng khác.

4

Mỗi quyền ghi, đọc và thực thi có giá trị số sau:: lệnh sau sẽ gán quyền của file1 cho file2.

5

r (read) = 4

w (write) = 2

x (execute) = 1: Để thay đổi quyền của tất cả các file và thư mục con trong thư mục

chmod ( string $filename , int $mode ) : bool
5 thành 755 thì ta chạy lệnh sau:

no permissions = 0

Số quyền của một lớp người dùng được thể hiện bằng tổng giá trị của các quyền cho nhóm đó. Vậy để tìm hiểu các quyền của file ở chế độ Numeric ta chỉ cần tính tổng số cho tất cả các lớp người dùng.

Ví dụ 1: Để cấp quyền đọc, ghi và thực thi cho chủ sở hữu file, đọc và thực thi đối với nhóm của file và chỉ quyền đọc cho tất cả người dùng khác, bạn sẽ làm như sau:

Owner: rwx=4+2+1=7

Group: r-x=4+0+1=5

Others: r-x=4+0+0=4

Sử dụng phương pháp cộng chuỗi như trên chúng ta tính được quyền của file đó là 754.

Ví dụ 2: Cấp quyền cho owner là đọc và viết (4 + 2), quyền của group là chỉ đọc (4), các user còn lại cũng có quyền đọc (4).

6

Vậy tổng quyền của file này là 644.

7

5. Phân quyền bằng Reference File trong Linux