Hướng dẫn chowner cho folder bao gom folder con trong linux - chown cho thư mục bao gom thư mục con trong linux
Giới thiệuLinux là một hệ điều hành mã nguồn mở được rất nhiều người sử dụng. Nhiều người đã chuyển từ Windows sang Linux hay ngược lại, tuy nhiên khi chuyển sang một hệ điều hành mới thì gặp khó khăn trong việc làm quen với hệ điều hành mới cũng là điều dễ hiểu. Khi chuyển từ Windows sang Linux thì cấu trúc thư mục file trong Linux khác hoàn toàn so với Win, hay bạn phải làm quen với việc dùng lệnh để tối ưu hóa công việc và đặc biệt là phần phân quyền trong Linux. Bài này mình chia sẻ về phần phân quyền trong Linux, hi vọng nó sẽ giúp các bạn hiểu hơn về Linux và yêu thích nó hơn. là một hệ điều hành mã nguồn mở được rất nhiều người sử dụng. Nhiều người đã chuyển từ Windows sang Linux hay ngược lại, tuy nhiên khi chuyển sang một hệ điều hành mới thì gặp khó khăn trong việc làm quen với hệ điều hành mới cũng là điều dễ hiểu. Khi chuyển từ Windows sang Linux thì cấu trúc thư mục file trong Linux khác hoàn toàn so với Win, hay bạn phải làm quen với việc dùng lệnh để tối ưu hóa công việc và đặc biệt là phần phân quyền trong Linux. Bài này mình chia sẻ về phần phân quyền trong Linux, hi vọng nó sẽ giúp các bạn hiểu hơn về Linux và yêu thích nó hơn. Show Các khái niệmCó 2 khái niệm rất quan trọng cần phải nhớ trong Linux đó là permissions và ownership.permissions và ownership. OwnershipMỗi file hay thư mục trên Linux đều được gán bởi 3 loại chủ sở hữu là user, group, otheruser, group, other UserTheo như mặc định trên Linux thì người tạo ra file hay thư mục nào đó thì sẽ trở thành chủ sở hữu của chính nó, giống như việc một người A tạo ra một vậy B thì mặc định người A sẽ là chủ sở hữu của vật B đó. GroupMột nhóm có thể chứa nhiều người dùng cùng một lúc. Tất cả người dùng trong một nhóm sẽ có cùng quyền truy cập vào file hay thư mục đó. Giả sử có một tài liệu học tập cho một lớp học mà bạn không muốn cho lớp khác biết, chỉ muốn chia sẻ trong lớp. Thay vì bạn cấp quyền cho từng người trong lớp thì bạn có thể gom tất những người trong lớp thành một nhóm người dùng và bạn gán quyền cho một nhóm người dùng đó để chỉ có những người trong nhóm đó mới có quyền truy cập vào tài liệu. OtherOther là bất kỳ người dùng nào không thuộc vào 2 đối tượng phía trên. Xét lại ví dụ trên, bạn không phải là thuộc nhóm lớp được truy cập vào tài liệu và bạn cũng không phải là người sở hữu tài liệu đó thì bạn được xét là other. Bài toán đặt ra là làm sao để Linux phân biệt giữa ba loại người dùng này để người dùng A không ảnh hưởng đến một số file hay thư mục chứa thông tin hay dữ liệu của một người dùng B. Và đây chính là lúc permissions(quyền) được sử dụng để kiểm soát hình vi của người dùng.permissions(quyền) được sử dụng để kiểm soát hình vi của người dùng. PermissionsMỗi một file hay thư mục trong Linux đều có 3 quyền đọc, ghi, thực thi được xác định cho 3 chủ sở hữu ở trên.đọc, ghi, thực thi được xác định cho 3 chủ sở hữu ở trên.
Thực hànhXem quyềnĐể liệt kê, xem quyền và chủ sở hữu các file hay thư mục:
Hình ảnh tổng quát nhất về quyền trong Linux: Có thể nhìn nó rất rối hay khó hiểu đối với những người chưa quen về Linux, nhưng không sao mình sẽ giúp các bạn hiểu hơn về từng phần. Trên máy Linux mình có tạo một file có tên là file1 và một thư mục có tên là dir1, mặc định thì thì người tạo sẽ là chủ sở hữu vì vật mình dùng account hoavt để tạo mặc định nó có user sở hữu là hoavt , vậy nhóm ở đâu ra? Theo như Linux đã thiết kế thì sẽ thêm người dùng vào một nhóm có cùng tên với người dùng đó vì vật user và group sở hữu chính là hoavt. Cùng xem quyền của nó trông sẽ như thế nàofile1 và một thư mục có tên là dir1, mặc định thì thì người tạo sẽ là chủ sở hữu vì vật mình dùng account hoavt để tạo mặc định nó có user sở hữu là hoavt , vậy nhóm ở đâu ra? Theo như Linux đã thiết kế thì sẽ thêm người dùng vào một nhóm có cùng tên với người dùng đó vì vật user và group sở hữu chính là hoavt. Cùng xem quyền của nó trông sẽ như thế nào Với phần đầu tiên mình khoanh đỏ chính là phần permissions mình đã nói ở phía trên. Trông rất lằng nhằng phải không? Đừng lo cấu trúc của phần permissions sẽ được chia ra thành từng phần như sau: đầu tiên là file type, sau đó sẽ đến đến quyền của từng owner trong hệ thống.
Nhìn vào bảng mình đã chia ra thành từng cột khác nhau. Đầu tiền trong phần permissions sẽ cho bạn biết nó là ở dạng file hay thư mục. Trong đó:
r-- user,group, other. Ý nghĩa của r,w,x:
r-- user nó được sở hữu bởi hoavt và có quyền rwx với thư mục dir1 nghĩa là mình có quyền Tương tự đối với group và other quyền cũng được sắp xếp như user.group và other quyền cũng được sắp xếp như user. Thay đổi quyền với chmodchmod là viết tắt của Phần quyền bằng số
Permissions -number về cơ bản sẽ có 3 chữ số một số với ý nghĩa số thứ nhất là quyền của user, số thứ 2 là quyền của group, số thứ 3 là quyền của other. Ý nghĩa của từng chữ số ở đây:
Giả sử bạn cần phân quyền cho một file có tên là file1 quyền rwxrw-r--. Nó có nghĩa là user có tất cả quyền đọc, ghi, thực thi. Group có quyền đọc và ghi và other thì chỉ có quyền đọc. Để làm điều này ta cần tính quyền cho từng chủ sở hữu.file1 quyền rwxrw-r--. Nó có nghĩa là user có tất cả quyền đọc, ghi, thực thi. Group có quyền đọc và ghi và other thì chỉ có quyền đọc. Để làm điều này ta cần tính quyền cho từng chủ sở hữu. user: r + w +x = 4 + 2 + 1 = 7: r + w +x = 4 + 2 + 1 = 7 group: r + w = 4 + 2 = 6: r + w = 4 + 2 = 6 other: r = 4 = 4: r = 4 = 4 Vậy quyền của cả file sẽ là 764, sau đó sử dụng lệnh sau để phân quyền:764, sau đó sử dụng lệnh sau để phân quyền:
Ngoài ra bạn cũng có thể tham khảo thêm câu lệnh
r--Đọc sudo. r-x
Đọc + Thực thi
rw-
Đọc + Ghirwx
group: r + w = 4 + 2 = 6https://medium.com/@sajithnmadeesha/basics-of-linux-file-permission-5db00bd9749f other: r = 4 = 4 https://www.guru99.com/file-permissions.html |