Quản trị viên Linux - Quản lý tệp / thư mục

Để giới thiệu các quyền khi chúng áp dụng cho cả thư mục và tệp trong CentOS Linux, chúng ta hãy xem đầu ra lệnh sau.

[centos@centosLocal etc]$ ls -ld /etc/yum* 
drwxr-xr-x. 6 root root 100 Dec  5 06:59 /etc/yum 
-rw-r--r--. 1 root root 970 Nov 15 08:30 /etc/yum.conf 
drwxr-xr-x. 2 root root 187 Nov 15 08:30 /etc/yum.repos.d

Note - Ba loại đối tượng chính bạn sẽ thấy là

  • "-" - một dấu gạch ngang cho tệp đơn giản

  • "d" - cho một thư mục

  • "l" - cho một liên kết tượng trưng

Chúng tôi sẽ tập trung vào ba khối đầu ra cho mỗi thư mục và tệp -

  • drwxr-xr-x: root: root
  • -rw-r - r--: root: root
  • drwxr-xr-x: root: root

Bây giờ chúng ta hãy chia nhỏ điều này để hiểu rõ hơn về những dòng này -

d Có nghĩa là loại đối tượng là một thư mục
rwx Cho biết các quyền thư mục được áp dụng cho chủ sở hữu
rx Cho biết các quyền thư mục được áp dụng cho nhóm
rx Cho biết các quyền thư mục được áp dụng cho thế giới
nguồn gốc Ví dụ đầu tiên, chỉ ra chủ sở hữu của thư mục
nguồn gốc Ví dụ thứ hai, cho biết nhóm mà các quyền nhóm được áp dụng

Hiểu được sự khác biệt giữa chủ sở hữu , nhómthế giới là quan trọng. Việc không hiểu điều này có thể gây ra những hậu quả lớn đối với các máy chủ lưu trữ các dịch vụ trên Internet.

Trước khi chúng tôi đưa ra một ví dụ trong thế giới thực, trước tiên chúng ta hãy hiểu các quyền khi chúng áp dụng cho các thư mụctệp .

Vui lòng xem bảng sau, sau đó tiếp tục với hướng dẫn.

Bát phân Tượng trưng Uốn. Danh mục
1 x Hành hình Nhập thư mục và truy cập tệp
2 w Viết Xóa hoặc sửa đổi các tệp trong một thư mục
4 r Đọc Liệt kê các tệp trong thư mục

Note- Khi các tệp có thể truy cập để đọc trong một thư mục, thông thường sẽ áp dụng quyền đọcthực thi . Nếu không, người dùng sẽ gặp khó khăn khi làm việc với các tệp. Bỏ ghi tắt sẽ đảm bảo các tệp không thể bị: đổi tên, xóa, sao chép hoặc sửa đổi quyền.

Áp dụng quyền cho thư mục và tệp

Khi áp dụng quyền, có hai khái niệm cần hiểu:

  • Quyền tượng trưng
  • Quyền hệ bát phân

Về bản chất, mỗi cái đều giống nhau nhưng có một cách khác nhau để tham chiếu và gán quyền đối với tệp. Để được hướng dẫn nhanh, vui lòng nghiên cứu và tham khảo bảng sau:

Đọc Viết Hành hình
Octal 4 2 1
Symbolic r w x

Khi chỉ định quyền sử dụng octalphương pháp, sử dụng một số 3 byte như: 760. Số 760 dịch thành: Chủ sở hữu: rwx; Nhóm: rw; Khác (hoặc thế giới) không có quyền.

Một kịch bản khác: 733 sẽ dịch thành: Chủ sở hữu: rwx; Nhóm: wx; Khác: wx.

Có một nhược điểm đối với quyền sử dụng phương thức Octal. Không thể sửa đổi các bộ quyền hiện có. Chỉ có thể gán lại toàn bộ tập quyền của một đối tượng.

Bây giờ bạn có thể tự hỏi, có gì sai khi luôn gán lại quyền? Hãy tưởng tượng một cấu trúc thư mục lớn, ví dụ / var / www / trên máy chủ web sản xuất. Chúng tôi muốn loại bỏ đệ quy bit w hoặc ghi trên tất cả các thư mục cho Other. Do đó, buộc nó phải được chủ động thêm vào chỉ khi cần thiết cho các biện pháp an ninh. Nếu chúng tôi chỉ định lại toàn bộ tập hợp quyền, chúng tôi sẽ lấy đi tất cả các quyền tùy chỉnh khác được chỉ định cho mọi thư mục con.

Do đó, nó sẽ gây ra sự cố cho cả quản trị viên và người sử dụng hệ thống. Tại một số thời điểm, một người (hoặc nhiều người) sẽ cần chỉ định lại tất cả các quyền tùy chỉnh đã bị xóa bằng cách gán lại toàn bộ bộ quyền cho mọi thư mục và đối tượng.

Trong trường hợp này, chúng tôi muốn sử dụng phương thức Symbolic để sửa đổi quyền -

chmod -R o-w /var/www/

Lệnh trên sẽ không "ghi đè quyền" nhưng sửa đổi các bộ quyền hiện tại. Vì vậy, hãy quen với việc sử dụng phương pháp hay nhất

  • Hệ bát phân chỉ để gán quyền
  • Tượng trưng để sửa đổi các bộ quyền

Điều quan trọng là Quản trị viên CentOS phải thành thạo với cả quyền OctalSymbolic vì các quyền này rất quan trọng đối với tính toàn vẹn của dữ liệu và toàn bộ hệ điều hành. Nếu quyền không chính xác, kết quả cuối cùng sẽ là cả dữ liệu nhạy cảm và toàn bộ hệ điều hành sẽ bị xâm phạm.

Với điều đó được đề cập, chúng ta hãy xem xét một số lệnh để sửa đổi quyền và chủ sở hữu / thành viên đối tượng -

  • chmod
  • chown
  • chgrp
  • umask

chmod: Thay đổi bit quyền của chế độ tệp

Chỉ huy Hoạt động
-c Giống như dài dòng, nhưng sẽ chỉ báo cáo những thay đổi được thực hiện
-v Chi tiết, đầu ra chẩn đoán cho mọi yêu cầu được thực hiện
-R Áp dụng đệ quy thao tác trên tệp và thư mục

chmod sẽ cho phép chúng ta thay đổi quyền truy cập thư mục và các tập tin sử dụng bát phân hoặc biểu tượng bộ được phép. Chúng tôi sẽ sử dụng điều này để sửa đổi nhiệm vụ của chúng tôi và tải lên các thư mục.

chown: Thay đổi chủ sở hữu tệp và nhóm

Chỉ huy Hoạt động
-c Giống như dài dòng, nhưng sẽ chỉ báo cáo những thay đổi được thực hiện
-v Chi tiết, đầu ra chẩn đoán cho mọi yêu cầu được thực hiện
-R Áp dụng đệ quy thao tác trên tệp và thư mục

chown có thể sửa đổi cả việc sở hữu người dùng và nhóm đối tượng. Tuy nhiên, trừ khi cần sửa đổi cả hai cùng một lúc, việc sử dụng chgrp thường được sử dụng cho các nhóm.

chgrp: Thay đổi quyền sở hữu nhóm đối với tệp hoặc thư mục

Chỉ huy Hoạt động
-c Giống như dài dòng, nhưng sẽ chỉ báo cáo những thay đổi
-v Chi tiết, xuất ra chẩn đoán cho mọi yêu cầu được thực hiện
-R Đệ quy, áp dụng các thao tác trên tệp và thư mục

chgrp sẽ thay đổi chủ sở hữu nhóm thành được cung cấp.

Thực hành trong thế giới thực

Hãy thay đổi tất cả các bài tập thư mục con trong / var / www / students / để nhóm sở hữu là nhóm sinh viên . Sau đó, chỉ định gốc của sinh viên cho nhóm giáo sư. Sau đó, chọn Tiến sĩ Terry Thomas làm chủ sở hữu của danh bạ sinh viên , vì ông được giao nhiệm vụ phụ trách tất cả các học viện Khoa học Máy tính tại trường.

Như chúng ta có thể thấy, khi được tạo, thư mục còn lại khá thô.

[root@centosLocal ~]# ls -ld /var/www/students/ 
drwxr-xr-x. 4 root root 40 Jan  9 22:03 /var/www/students/

[root@centosLocal ~]# ls -l /var/www/students/ 
total 0 
drwxr-xr-x. 2 root root 6 Jan  9 22:03 assignments 
drwxr-xr-x. 2 root root 6 Jan  9 22:03 uploads 

[root@centosLocal ~]#

Với tư cách là Quản trị viên, chúng tôi không bao giờ muốn cung cấp thông tin đăng nhập gốc của mình cho bất kỳ ai. Nhưng đồng thời, chúng tôi cần cho phép người dùng khả năng thực hiện công việc của họ. Vì vậy, hãy cho phép Tiến sĩ Terry Thomas kiểm soát nhiều hơn cấu trúc tệp và giới hạn những gì sinh viên có thể làm.

[root@centosLocal ~]# chown -R drterryt:professors /var/www/students/ 
[root@centosLocal ~]# ls -ld /var/www/students/ 
drwxr-xr-x. 4 drterryt professors 40 Jan  9 22:03 /var/www/students/

[root@centosLocal ~]# ls -ls /var/www/students/ 
total 0 
0 drwxr-xr-x. 2 drterryt professors 6 Jan  9 22:03 assignments 
0 drwxr-xr-x. 2 drterryt professors 6 Jan  9 22:03 uploads

[root@centosLocal ~]#

Bây giờ, mỗi thư mục và thư mục con có một chủ sở hữu là drterryt và nhóm sở hữu là các giáo sư . Vì thư mục bài tập dành cho sinh viên để chuyển công việc được giao vào, chúng ta hãy loại bỏ khả năng liệt kê và sửa đổi tệp từ nhóm sinh viên .

[root@centosLocal ~]# chgrp students /var/www/students/assignments/ && chmod 
736 /var/www/students/assignments/

[root@centosLocal assignments]# ls -ld /var/www/students/assignments/ 
drwx-wxrw-. 2 drterryt students 44 Jan  9 23:14 /var/www/students/assignments/

[root@centosLocal assignments]#

Học sinh có thể sao chép bài tập vào thư mục bài tập . Nhưng chúng không thể liệt kê nội dung của thư mục, sao chép qua các tệp hiện tại hoặc sửa đổi các tệp trong thư mục bài tập . Như vậy, nó chỉ cho phép học sinh nộp các bài tập đã hoàn thành. Hệ thống tệp CentOS sẽ cung cấp dấu ngày tháng khi nộp bài tập.

Với tư cách là chủ sở hữu thư mục bài tập -

[drterryt@centosLocal assignments]$ whoami 
drterryt

[drterryt@centosLocal assignments]$ ls -ld /var/www/students/assignment 
drwx-wxrw-. 2 drterryt students 44 Jan  9 23:14 /var/www/students/assignments/

[drterryt@centosLocal assignments]$ ls -l /var/www/students/assignments/ 
total 4 
-rw-r--r--. 1 adama  students  0 Jan  9 23:14 myassign.txt 
-rw-r--r--. 1 tammyr students 16 Jan  9 23:18 terryt.txt

[drterryt@centosLocal assignments]$

Chúng ta có thể thấy, chủ sở hữu thư mục có thể liệt kê các tệp cũng như sửa đổi và loại bỏ tệp.

umask Command: Cung cấp các chế độ mặc định cho các quyền đối với tệp và thư mục khi chúng được tạo

umask là một lệnh quan trọng cung cấp các chế độ mặc định cho Quyền đối với tệp và thư mục khi chúng được tạo.

quyền umask sử dụng logic đơn phân, phủ định.

Sự cho phép Hoạt động
0 Đọc, viết, thực thi
1 Đọc và viết
2 Đọc và thực thi
3 Chỉ đọc
4 Đọc và thực thi
5 Chỉ viết
6 Chỉ thực thi
7 không có quyền
[adama@centosLocal umask_tests]$ ls -l ./ 
-rw-r--r--. 1 adama students 0 Jan 10 00:27 myDir 
-rw-r--r--. 1 adama students 0 Jan 10 00:27 myFile.txt

[adama@centosLocal umask_tests]$ whoami 
adama

[adama@centosLocal umask_tests]$ umask 
0022

[adama@centosLocal umask_tests]$

Bây giờ, hãy thay đổi umask cho người dùng hiện tại của chúng ta và tạo một tệp và thư mục mới.

[adama@centosLocal umask_tests]$ umask 077

[adama@centosLocal umask_tests]$ touch mynewfile.txt

[adama@centosLocal umask_tests]$ mkdir myNewDir

[adama@centosLocal umask_tests]$ ls -l 
total 0 
-rw-r--r--. 1 adama students 0 Jan 10 00:27 myDir 
-rw-r--r--. 1 adama students 0 Jan 10 00:27 myFile.txt 
drwx------. 2 adama students 6 Jan 10 00:35 myNewDir 
-rw-------. 1 adama students 0 Jan 10 00:35 mynewfile.txt

Như chúng ta có thể thấy, các tệp mới được tạo hạn chế hơn một chút so với trước đây.

umask cho người dùng phải được thay đổi trong -

  • /etc/profile
  • ~/bashrc
[root@centosLocal centos]# su adama 
[adama@centosLocal centos]$ umask 
0022 
[adama@centosLocal centos]$

Nói chung, umask mặc định trong CentOS sẽ ổn. Khi chúng tôi gặp rắc rối với mặc định là 0022 , thường là khi các bộ phận khác nhau thuộc các nhóm khác nhau cần cộng tác trong các dự án.

Đây là lúc vai trò của người quản trị hệ thống, để cân bằng các hoạt động và thiết kế của hệ điều hành CentOS.