Hiểu các quyền và loại tệp UNIX


68

Tôi chưa bao giờ thực sự có được làm chmodviệc cho đến ngày hôm nay. Tôi đã làm theo một hướng dẫn giải thích một vấn đề lớn cho tôi.

Ví dụ: tôi đã đọc rằng bạn có ba nhóm quyền khác nhau:

  • chủ sở hữu ( u)
  • nhóm ( g)
  • mọi người ( o)

Dựa trên ba nhóm này, bây giờ tôi biết rằng:

  • Nếu tập tin thuộc sở hữu của người dùng, quyền của người dùng sẽ xác định quyền truy cập.
  • Nếu nhóm của tệp giống với nhóm của người dùng, quyền của nhóm sẽ xác định quyền truy cập.
  • Nếu người dùng không phải là chủ sở hữu tệp và không thuộc nhóm thì quyền khác được sử dụng.

Tôi cũng đã học được rằng bạn đã có các quyền sau:

  • đọc ( r)
  • viết ( w)
  • thực thi ( x)

Tôi đã tạo một thư mục để kiểm tra kiến ​​thức mới thu được của mình:

mkdir test

Sau đó, tôi đã làm một số bài kiểm tra:

chmod u+rwx test/
# drwx------
chmod g+rx test/
# drwxr-x---
chmod u-x test/
# drw-r-x---

Sau khi đánh lừa một thời gian, tôi nghĩ rằng cuối cùng tôi cũng hiểu được chmodvà cách bạn đặt quyền sử dụng lệnh này.


Nhưng...

Tôi vẫn còn một vài câu hỏi:

  • Những gì dlúc bắt đầu đứng cho?
  • Tên và cách sử dụng của vị trí chứa và nó có thể giữ những giá trị nào khác?
  • Làm thế nào tôi có thể thiết lập và bỏ đặt nó?
  • Giá trị cho điều này là dgì? (Vì bạn chỉ có 7 = 4 + 2 + 1 7 = 4 + 2 + 1 7 = 4 + 2 + 1)
  • Tại sao mọi người đôi khi sử dụng 0777thay vì 777để thiết lập quyền của họ?

Nhưng vì tôi không nên hỏi nhiều câu hỏi, tôi sẽ cố gắng hỏi nó trong một câu hỏi.

Trong hệ thống dựa trên UNIX, chẳng hạn như tất cả các bản phân phối Linux, liên quan đến các quyền, phần đầu tiên ( d) đại diện cho điều gì và việc sử dụng cho phần quyền này là gì?


3
Xin vui lòng lần sau hãy thử chỉ hỏi một câu hỏi, nhiều câu hỏi thường không tốt cho việc tham khảo và hầu như không bao giờ giải quyết tất cả cùng một lúc.
Kiwy 10/2/2015

1
@Kiwy Tôi xin lỗi, tôi nghĩ tôi sẽ làm như thế này vì nó liên quan đến cùng một chủ đề. Nếu bạn muốn, bạn có thể đề xuất một tiêu đề tốt hơn cho câu hỏi của tôi để cải thiện tài liệu tham khảo.
Peter

1
Ngẫu nhiên, giá trị cho "d" là 040000 - nó có thể được tìm thấy trong các tệp tiêu đề dưới tên S_IFDIR. Bạn không sử dụng nó khi cài đặt chế độ tập tin, nhưng stat()chức năng thực sự trả về giá trị 040750 cho drwxr-x---.
Random832

2
@jamesqf Thật ra, bây giờ tôi đã hiểu cách lập bản đồ mã bát phân, tôi nghĩ đơn giản hơn về cách đó.
HalosGhost

4
@Peter: không có câu hỏi ngu ngốc nào - chỉ là những kẻ ngu ngốc không học vì họ ngại hỏi.
mgarciaisaia

Câu trả lời:


117

Tôi sẽ trả lời câu hỏi của bạn theo ba phần: loại tệp, quyền và trường hợp sử dụng cho các dạng khác nhau của chmod.

Loại tập tin

Ký tự đầu tiên trong ls -lđầu ra đại diện cho loại tệp; dcó nghĩa là nó là một thư mục. Nó không thể được đặt hoặc bỏ đặt, nó phụ thuộc vào cách tệp được tạo. Bạn có thể tìm thấy danh sách đầy đủ các loại tệp trong tài liệu ls ; những người bạn có khả năng đi qua là

  • -: Tập tin thường xuyên, được tạo với bất kỳ chương trình nào có thể ghi một tập tin
  • b: chặn tệp đặc biệt, thường là đĩa hoặc thiết bị phân vùng, có thể được tạo bằng mknod
  • c: tập tin đặc biệt của ký tự, cũng có thể được tạo bằng mknod(xem /devví dụ)
  • d: thư mục, có thể được tạo bằng mkdir
  • l: liên kết tượng trưng, ​​có thể được tạo bằng ln -s
  • p: tên ống, có thể được tạo bằng mkfifo
  • s: ổ cắm, có thể được tạo bằng nc -U
  • D: cửa , được tạo bởi một số quy trình máy chủ trên Solaris / openindiana.

Quyền

chmod 0777được sử dụng để đặt tất cả các quyền trong một lần chmodthực thi, thay vì kết hợp các thay đổi với u+v.v ... Mỗi bốn chữ số là một giá trị bát phân biểu thị một tập các quyền:

  • suid, sgidVà “dính” (xem dưới đây)
  • Quyền Người dùng
  • quyền nhóm
  • Các quyền khác

Giá trị bát phân được tính bằng tổng số quyền:

  • Đọc sách là số 4
  • Viết văn bản là 2
  • Thực hiện trên mạng là 1

Đối với chữ số đầu tiên:

  • suidlà 4; nhị phân với tập bit này chạy như người dùng chủ sở hữu của họ (thông thường root)
  • sgidlà 2; các tệp nhị phân với tập bit này chạy như nhóm chủ sở hữu của chúng (phần này được sử dụng cho các trò chơi để có thể chia sẻ điểm cao, nhưng nó thường có rủi ro bảo mật khi kết hợp với các lỗ hổng trong trò chơi) và các tệp được tạo trong các thư mục có tập bit này thuộc về nhóm chủ sở hữu thư mục theo mặc định (điều này rất hữu ích để tạo các thư mục dùng chung)
  • Thanh dính dính (hay bị giới hạn xóa xóa) là 1; các tệp trong thư mục có tập bit này chỉ có thể bị xóa bởi chủ sở hữu của chúng, chủ sở hữu của thư mục hoặc root(xem /tmpví dụ phổ biến về điều này).

Xem các chmodmanpage để biết chi tiết. Lưu ý rằng trong tất cả những điều này, tôi sẽ bỏ qua các tính năng bảo mật khác có thể thay đổi quyền của người dùng trên các tệp (SELinux, tệp ACL ...).

Các bit đặc biệt được xử lý khác nhau tùy thuộc vào loại tệp (tệp thông thường hoặc thư mục) và hệ thống cơ bản. (Điều này được đề cập trong chmodtrang chủ.) Trên hệ thống tôi đã sử dụng để kiểm tra điều này (với coreutils8.23 trên ext4hệ thống tệp, chạy Linux kernel 3.16.7-ckt2), hành vi như sau. Đối với một tệp, các bit đặc biệt luôn bị xóa trừ khi được đặt rõ ràng, do đó chmod 0777tương đương với chmod 777và cả hai lệnh đều xóa các bit đặc biệt và cung cấp cho mọi người toàn quyền trên tệp. Đối với một thư mục, các bit đặc biệt không bao giờ được xóa hoàn toàn bằng dạng số có bốn chữ số, do đó, hiệu quả chmod 0777cũng tương đương vớichmod 777nhưng nó gây hiểu nhầm vì một số bit đặc biệt sẽ vẫn như cũ. (Phiên bản trước của câu trả lời này đã sai.) Để xóa các bit đặc biệt trên các thư mục bạn cần sử dụng u-s, g-svà / hoặc o-trõ ràng hoặc chỉ định một giá trị số âm, do đó chmod -7000sẽ xóa tất cả các bit đặc biệt trên một thư mục.

Trong ls -lđầu ra, suid, sgidvà “dính” xuất hiện ở vị trí của xentry: suidshay Sthay vì người dùng của x, sgidshay Sthay cho nhóm x, và “dính” là thay Tthay vì người khác x. Một chữ cái viết thường chỉ ra rằng cả bit đặc biệt và bit thực thi được đặt; một chữ cái viết hoa chỉ ra rằng chỉ có bit đặc biệt được đặt.

Các hình thức khác nhau của chmod

Do các hành vi được mô tả ở trên, sử dụng đầy đủ bốn chữ số trong chmodcó thể gây nhầm lẫn (ít nhất hóa ra tôi đã nhầm lẫn). Nó hữu ích khi bạn muốn đặt các bit đặc biệt cũng như các bit cho phép; mặt khác, các bit sẽ bị xóa nếu bạn đang thao tác với một tệp, được giữ lại nếu bạn đang thao tác một thư mục. Vì vậy, chmod 2750đảm bảo bạn sẽ nhận được ít nhất sgidvà chính xác u=rwx,g=rx,o=; nhưng chmod 0750sẽ không nhất thiết phải xóa các bit đặc biệt.

Sử dụng các chế độ số thay vì các lệnh văn bản ( [ugo][=+-][rwxXst]) có lẽ là một trường hợp theo thói quen và mục đích của lệnh. Khi bạn đã quen sử dụng các chế độ số, việc chỉ định chế độ đầy đủ theo cách đó thường dễ dàng hơn; và thật hữu ích khi có thể nghĩ ra các quyền bằng các chế độ số, vì nhiều lệnh khác có thể sử dụng chúng ( install, mknod...).

Một số biến thể văn bản có thể có ích: nếu bạn chỉ muốn đảm bảo một tệp có thể được thực thi bởi bất kỳ ai, chmod a+xsẽ làm điều đó, bất kể các quyền khác là gì. Tương tự, chỉ +Xthêm quyền thực thi nếu một trong các quyền thực thi đã được đặt hoặc tệp là một thư mục; điều này có thể thuận tiện cho việc khôi phục các quyền trên toàn cầu mà không cần phải có các thư mục trường hợp đặc biệt v. Do đó, chmod -R ug=rX,u+w,o=tương đương với việc áp dụng chmod -R 750cho tất cả các thư mục và các tệp thực thi và chmod -R 640cho tất cả các tệp khác.


Mặc dù, các câu trả lời khác là khá tốt, bạn thực sự đã dành thời gian để trả lời câu hỏi này. Cảm ơn.
Peter

Trên các thư mục * BSD hoạt động như thể sgidbit của chúng luôn được đặt, bất kể giá trị thực của nó. Trên FreeBSD, suidbit có thể được cấu hình để hoạt động tương tự sgid(tức là các tệp và thư mục con được tạo bên trong sẽ có cùng chủ sở hữu với thư mục), miễn là hệ thống tệp bên dưới hỗ trợ điều đó và được gắn với suiddirtùy chọn.
lcd047

"chỉ +Xthêm quyền thực thi nếu một trong các quyền thực thi đã được đặt hoặc tệp là thư mục" cảm ơn bạn @ stephen-kitt thiếu tài liệu "đã được đặt" đã thực sự ném tôi cho một vòng lặp!
Ryan Fisher

39

Vì vậy, quyền trong Linux là rất quan trọng. Tôi sẽ cố gắng để làm một lời giải thích ngắn.

Đối với các phần của chế độ tập tin

Mỗi tệp Unix có một tập các quyền xác định xem bạn có thể đọc, ghi hoặc chạy tệp hay không. Chạy ls -l hiển thị các quyền. Đây là một ví dụ về màn hình như vậy:

-rw-r--r-- 1 user somegroup 7041 Mar 26 19:34 somefile

Tôi đính kèm một hình ảnh của các phần của chế độ tập tin:

nhập mô tả hình ảnh ở đây

Loại có thể là điều khác nhau. Ví dụ:

  • d (thư mục)
  • c (thiết bị nhân vật)
  • l (liên kết tượng trưng)
  • p (tên ống)
  • s (ổ cắm)
  • b (thiết bị khối)
  • D (cửa, không phổ biến trên các hệ thống Linux, nhưng đã được chuyển)

Nếu bạn muốn đặt một số quyền cho tất cả thư mục, bạn có thể sử dụng thuộc tính R, ví dụ:

chmod -R 777 /some/directory/

Dành cho chmod 777 vs 0777

Các chmodlệnh thường mong đợi đầu vào là một số bát phân, hàng đầu không đề cập đến giá trị của nếp / sgid / triplet chút suid. Tuy nhiên, trong C, nó sẽ tạo ra sự khác biệt, vì 777sẽ được dịch thành 01411(bát phân), do đó thiết lập bit dính (xem chmod(2)trang man), đọc quyền cho chủ sở hữu và bit thực thi cho nhóm và những người khác (là một sự kết hợp khá kỳ lạ) .

CHỈNH SỬA 1

Tôi tìm thấy hình ảnh khác về các quyền của Linux và tôi sẽ đính kèm để hiểu dễ dàng hơn: Quyền truy cập tệp UNIX


5
Bạn đã sai về 777 so với 0777. Cả hai đều là số bát phân (số thập phân không có nghĩa gì trong trường hợp này), nhưng ở dạng bốn ký tự, chữ số đầu tiên đặt các bit đặc biệt (dính & setuid).
orion

3
@orion Đôi khi nó thực sự đúng, ví dụ trong mã giống như C chmod(777)thực sự sẽ tương đương với việc chạy chmod 1411(tức là chmodlệnh có đối số 1411).
peterph

2
... mà trong trường hợp của tòa nhà chọc trời (hoặc bao bọc của nó) và nhị phân mang cùng tên có thể hơi khó hiểu.
peterph 10/2/2015

3
Python Master Race đã giải quyết vấn đề ngược này bằng cách cấm tất cả các "số" bắt đầu bằng 0, buộc người dùng phải rõ ràng nếu họ muốn bất cứ điều gì ngoài số thập phân, ví dụ hex : 0x1FF, binary: 0b111111111hoặc octal : 0o777. PYTHON POWER
Nick T

Nguồn hình ảnh?
rugk

10

dcó nghĩa là nó là một thư mục, nếu bạn có một tập tin -và nếu đó là một liên kết bạn sẽ tìm thấy một l. Nó không thể được đặt / bỏ đặt.

Nếu bạn sử dụng 0777 làm quyền thì bạn sẽ trao toàn quyền kiểm soát (đọc + ghi + thực thi) cho mọi người dùng / nhóm của hệ thống. Đó là một cách lười biếng để giải quyết vấn đề khi bạn có người dùng / nhóm không thể truy cập các thư mục / tệp.

Ví dụ: nếu bạn liệt kê nội dung của một thư mục và nhận được điều này:

-rw-r--r-- 1 root root 42596 jun 7 2012 preloadable_libintl.so

preloadable_libintl.so là một tệp thuộc sở hữu của người dùng root và nhóm gốc. Các chủ sở hữu đã đọc và viết truy cập, các nhóm đã chỉ đọc truy cập và bất kỳ người dùng khác đã đọc truy cập. Điều này có thể được dịch là 644.

Nếu tôi đổi nó thành 777 thì nó sẽ như thế này:

-rwxrwxrwx 1 root root 42596 jun 7 2012 preloadable_libintl.so


7

Sau khi nhận được câu hỏi của tôi được trả lời ở đây và thực hiện một số nghiên cứu về kết quả, tôi đã tìm thấy một bài viết giải thích tất cả rất tốt. Tôi muốn chia sẻ một số phần của bài viết này ở đây để tham khảo trong tương lai.

Quyền xem

Để sử dụng chmodđể thay đổi quyền của tệp hoặc thư mục, trước tiên bạn sẽ cần biết chế độ truy cập hiện tại là gì. Bạn có thể xem nội dung của một thư mục trong thiết bị đầu cuối bằng cdthư mục đó và sau đó sử dụng:

$ ls -l

Việc -lchuyển đổi rất quan trọng vì sử dụng lsmà không có nó sẽ chỉ hiển thị tên của các tệp hoặc thư mục trong thư mục.

Dưới đây là một ví dụ về việc sử dụng ls -ltrên thư mục nhà của tôi:

total 128
drwxr-xr-x 2 peter users  4096 Jul  5 21:03 Desktop
drwxr-xr-x 6 peter users  4096 Jul  5 17:37 Documents
drwxr-xr-x 2 peter users  4096 Jul  5 13:45 Downloads
drwxr-xr-x 2 peter users  4096 Jun 24 03:36 Movies
drwxr-xr-x 2 peter users  4096 Jun 24 03:38 Music
drwxr-xr-x 2 peter users  4096 Jun 26 00:09 Pictures
-rw-r--r-- 1 peter users   354 Jul  6 17:15 chmodtest

Các cột có nghĩa là gì

Cột đầu tiên là loại của mỗi tệp:

  • - biểu thị một tập tin bình thường.
  • d biểu thị một thư mục, tức là một thư mục chứa các tệp hoặc thư mục khác.
  • p biểu thị một đường ống có tên (hay còn gọi là FIFO).
  • l biểu thị một liên kết tượng trưng.

Các chữ cái sau đó là các quyền, cột đầu tiên này là thứ chúng ta sẽ quan tâm nhất. Cái thứ hai là có bao nhiêu liên kết trong một tệp, chúng ta có thể bỏ qua nó một cách an toàn. Cột thứ ba có hai giá trị / tên: Cột đầu tiên (trong ví dụ của tôi 'peter') là tên của người dùng sở hữu tệp. Giá trị thứ hai ('người dùng' trong ví dụ) là nhóm mà chủ sở hữu thuộc về (Đọc thêm về các nhóm).

Cột tiếp theo là kích thước của tệp hoặc thư mục theo byte và thông tin sau đó là ngày và thời gian tệp hoặc thư mục được sửa đổi lần cuối, và tất nhiên là tên của tệp hoặc thư mục.

Các quyền có nghĩa là gì

Ba chữ cái đầu tiên, sau chữ cái đầu tiên -hoặc d, là quyền mà chủ sở hữu có. Ba chữ cái tiếp theo là các quyền áp dụng cho nhóm. Ba chữ cái cuối cùng là các quyền áp dụng cho những người khác.

Mỗi bộ ba chữ cái được tạo thành r wx. rluôn ở vị trí thứ nhất, wluôn ở vị trí thứ hai và xluôn ở vị trí thứ ba. rlà quyền đọc, wlà quyền ghi và xlà quyền thực thi. Nếu có một dấu gạch nối ( -) ở vị trí của một trong những chữ cái này, điều đó có nghĩa là sự cho phép không được cấp, và nếu lá thư có mặt thì nó được cấp.

Thư mục

Trong trường hợp các thư mục, các bit chế độ có thể được hiểu như sau:

  • r (đọc) là viết tắt của khả năng đọc mục lục của thư mục đã cho,
  • w(write) là viết tắt của khả năng ghi mục lục của thư mục đã cho (tạo tệp mới, thư mục; đổi tên, xóa tệp hiện có, thư mục) khi và chỉ khi bit thực thi được đặt. Nếu không, sự cho phép này là vô nghĩa.
  • x (thực thi) là viết tắt của khả năng nhập thư mục đã cho bằng lệnh cd và truy cập các tệp, thư mục trong thư mục đó.

Thay đổi quyền bằng lệnh chmod

chmodlà một lệnh trong Linux và các hệ điều hành giống Unix khác. Nó cho phép bạn thay đổi quyền (hoặc chế độ truy cập) của tệp hoặc thư mục.

Bạn có thể thay đổi quyền theo hai cách khác nhau: - Dựa trên văn bản - Dựa trên chmod sốchmod

Phương pháp văn bản

Để thay đổi quyền - hoặc chế độ truy cập của tệp, chúng tôi sử dụng lệnh chmod trong thiết bị đầu cuối. Dưới đây là cấu trúc chung của lệnh:

chmod who=permissions filename

Trường hợp ai là bất kỳ từ một loạt các chữ cái, và mỗi người biểu thị bạn sẽ cho phép ai. Chúng là như sau:

u - The user that owns the file.
g - The group the file belongs to.
o - The other users i.e. everyone else.
a - all of the above - use this instead of having to type ugo.

Có quyền hạn tương tự như đã thảo luận ( r, wx).

Lệnh chmod cho phép chúng ta thêm và trừ các quyền từ một tập hợp hiện có bằng cách sử dụng + hoặc - thay vì =. Điều này khác với các lệnh trên, trong đó chủ yếu viết lại các điều khoản (tức là thay đổi một sự cho phép từ r--đến rw-, bạn vẫn cần phải bao gồm rcũng như wsau khi =vào chmodlệnh. Nếu bạn bỏ lỡ r, nó sẽ lấy đi các rphép như chúng đang được viết lại bằng =. Sử dụng + và - tránh điều này bằng cách thêm hoặc lấy đi từ bộ quyền hiện tại).

Phương pháp số

chmod cũng có thể thiết lập quyền sử dụng số.

Sử dụng số là một phương pháp khác cho phép bạn chỉnh sửa quyền cho cả ba chủ sở hữu, nhóm và những người khác cùng một lúc. Cấu trúc cơ bản của mã này là:

chmod xxx file/directory

Trong đó xxx là số có 3 chữ số trong đó mỗi chữ số có thể là bất cứ thứ gì từ 1 đến 7. Chữ số đầu tiên áp dụng cho quyền đối với chủ sở hữu, chữ số thứ hai áp dụng cho quyền đối với nhóm và chữ số thứ ba áp dụng cho quyền đối với tất cả các chữ số khác.

Trong ký hiệu số này, các giá trị r, w và x có giá trị số riêng:

r=4
w=2
x=1

Để đưa ra một số có ba chữ số, bạn cần xem xét những quyền mà bạn muốn chủ sở hữu, nhóm và người dùng có, sau đó tổng giá trị của chúng lên. Ví dụ: giả sử tôi muốn cấp cho chủ sở hữu quyền đọc và ghi thư mục và tôi muốn nhóm và mọi người khác vừa đọc và thực thi quyền. Tôi sẽ đưa ra các giá trị số như vậy:

Owner: rwx = 4+2+1=7
Group: r-x = 4+0+1=5 (or just 4+1=5)
Other: r-x = 4+0+1=5 (or just 4+1=5)

Final number = 755

$ chmod 755 filename

Điều này tương đương với việc sử dụng như sau:

chmod u=rwx filename
chmod go=rx filename

Hầu hết các thư mục / thư mục được đặt thành 755 để cho phép đọc và viết và thực thi cho chủ sở hữu, nhưng từ chối ghi cho người khác và các tệp thường là 644 để cho phép đọc và viết cho chủ sở hữu nhưng chỉ đọc cho mọi người khác, hãy tham khảo lần cuối lưu ý về việc thiếu quyền x với các tệp không thể thực thi - đó là cùng một thỏa thuận ở đây.


Chỉ cần sao chép văn bản từ một bài viết khác là - ít nhất - thô lỗ. Có lẽ cũng vi phạm bản quyền. Nếu nó không chỉ được sao chép hoặc bạn thực sự sử dụng các phần nhỏ (thân thiện với bản quyền nhờ sử dụng hợp lý) thì ít nhất vui lòng thêm một liên kết đến bài viết bạn đang tham khảo / trích dẫn.
rugk

0

Đối với các câu hỏi d

Điều này cho bạn biết loại tệp Unix. Theo mặc định, Unix chỉ có 3 loại tệp. Họ đang:

  • - - Tập tin thường xuyên
  • d - Tệp thư mục
  • Tệp đặc biệt (có 5 loại phụ):
    • b - Chặn tập tin
    • c - Tập tin thiết bị nhân vật
    • p - Tập tin đường ống được đặt tên hoặc tập tin đường ống
    • l - Tệp liên kết tượng trưng
    • s - Tệp ổ cắm

Đọc thêm tại đây: Các loại tệp trong Linux / Unix được giải thích chi tiết

0777 đấu với 777

Bit dính chỉ định hay không. Khi bit dính của thư mục được đặt, hệ thống tệp xử lý các tệp trong các thư mục đó theo cách đặc biệt để chỉ chủ sở hữu tệp, chủ sở hữu thư mục hoặc người dùng root mới có thể đổi tên hoặc xóa tệp. Nếu không có tập bit dính, bất kỳ người dùng nào có quyền ghi và thực thi cho thư mục đều có thể đổi tên hoặc xóa các tệp có chứa, bất kể chủ sở hữu của tệp.

0777 đặt quyền truy cập tệp 777 và bit dính thành 0 - không có chế độ đặc biệt.

777 đang thiết lập quyền truy cập tệp 777, mà không thay đổi bit dính.

Đọc thêm: dính bitchmod


2
Tốt hơn: nhưng nó vẫn không cung cấp gì mà các câu trả lời khác chưa được đưa ra ...
jasonwryan 11/2/2015

1
(1) Có ba loại tệp cơ bản: tệp đơn giản, thư mục và mọi thứ khác. Gì? Bạn lấy cái này ở đâu? Trong sơ đồ tuyệt vời của mọi thứ, các tệp và thư mục đơn giản là khá giống nhau. Các đường ống được đặt tên và các liên kết tượng trưng giống như các tệp và thư mục đơn giản hơn là các tệp hoặc ổ cắm thiết bị. (2) Bạn nghĩ rằng chmod 777không xóa các bit setuid, setgid và dính? Thử nó.
G-Man

Unix có 7 loại tệp, không phải 3.
wjandrea
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.