Thứ Bảy, 29 tháng 7, 2023

Hiểu rõ hơn về chmod 777 trong Linux

Trong bài chúng ta sẽ thảo luận về chmod 777 trong Linux, đây là một con số dùng để nhận biết cách mà bạn phân quyền cho một file / thư mục nào đó trên Linux.

Bạn đang xây dựng một website và sử dụng tính năng upload file một cách bình thường. Nhưng khi đưa lên hosting thì bị lỗi không thể upload hình ảnh lên host được. Search nguyên nhân trên mạng thì người ta hướng dẫn bạn phải thiết lập quyền chmod 777 cho thư mục upload đó.

Vậy chmod 777 là gì thì chúng ta cùng tìm hiểu qua bài viết này nhé.

Mục lục

  • 1. Hiểu rõ về phân quyền trên Linux
  • 2. Hiểu về cách biểu diễn quyền trong file Linux
  • 3. Chmod 777 là gì?

1. Hiểu rõ về phân quyền trên Linux

Trước khi bắt đầu thì bạn phải tìm hiểu về các quyền truy cập file trên Linux đã nhé. Sau khi đọc xong thì mình đưa ra một số kết luận như sau:

Bài viết này được đăng tại tranvanbinh.vn

Trên Linux, mỗi một file dữ liệu sẽ được ba đối tượng sử dụng, đó là:

  • Chủ sở hữu (owner): Là người sở hữu file dữ liệu đó.
  • Group sở hữu (group): Là những người thuộc vào nhóm có đặc quyền với file dữ liệu đó.
  • Nhóm người dùng khác: Là những người không thuộc hai nhóm trên.

Nếu một người dùng nằm trong một group mà group đó có quyền sử dụng file A thì đương nhiên người dùng đó cũng được phép sử dụng file A.

Chúng ta có bốn lại quyền chính như sau:

  • r (read) = 4
  • w (write) = 2
  • x (execute) = 1
  • - no permissions = 0

Ở phía bên trái là mình đang sử dụng ký tự chữ cái để biểu diễn cho quyền. Phía bên tai phải là sử dụng các con số để biểu diễn.

2. Hiểu về cách biểu diễn quyền trong file Linux

Ví dụ: Mình có file filename.txt và dưới đây là cấu trúc phân quyền cho nó.

1
2
3
4
5
6
7
8
9
10
-rw-r--r-- 12 linuxize users 12.0K Apr  8 20:51 filename.txt
|[-][-][-]-   [------] [---]
| |  |  | |      |       |
| |  |  | |      |       +-----------> 7. Group
| |  |  | |      +-------------------> 6. Owner
| |  |  | +--------------------------> 5. Alternate Access Method
| |  |  +----------------------------> 4. Others Permissions
| |  +-------------------------------> 3. Group Permissions
| +----------------------------------> 2. Owner Permissions
+------------------------------------> 1. File Type

Trong đó dòng đầu tiên là kiểu file (File Type):

Chúng ta sẽ quan tâm đến vị trí 2, 3 và 4. Đây là ba vị trí phân quyền dành cho ba loại đối tượng ownergroup và other mà mình đã nói ở trên.

Mỗi loại đối tượng sẽ có bốn loại quyền gồm: Đọcviếtthực thi và không có quyền gì cả.

Như ví dụ trên:

  • Nhóm Owner có quyền rw-, tức là có quyền đọc, viết, còn quyền thực thi thì không có.
  • Nhóm group có quyền r--, tức là có quyền đọc.
  • Nhóm other có quyền r--:, tức là có quyền đọc

Nếu đổi sang sử dụng số để biểu diễn sẽ là:

  • rw- = 420, cộng các số lại là bằng (6)
  • r-- = 400, cộng các số lại là bằng (4)
  • r-- = 400, cộng các số lại là bằng (4)

Và ghi tắt cho quyền này là 644.

3. Chmod 777 là gì?

Tới đây thì cắc hẳn bạn đã biết chmod 777 là gì rồi phải không nào? Đây là ký hiệu phân quyền bằng lệnh chmod của các nhóm đối tượng người dùng có quyền trên file đó.

  • 7 là quyền của owner, có full quyền 4+ 2 + 1
  • 7 là quyền của group, có full quyền 4 + 2 + 1
  • 7 là quyền của other, có full quyền 4 + 2 + 1

Khi bạn thiết lập full quyền thế này thì file này bất kì ai cũng có thể sử dụng, chỉnh sửa, xóa được. ĐIều này cực kì nguy hiểm nếu file đó quan trọng đối với bạn.

Vì vậy trước khi thiết lập chmod 777 thì bạn phải cân nhắc thật kỹ càng nhé.

=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master