리눅스의 권한에 대한 의문사항.

jee1의 이미지

UserA와 UserB가 있습니다.

둘다 같은 디렉토리에서 작업합니다. 편의상 DirA 라고 하겠습니다.

UserA와 UserB는 둘다 Users 라는 그룹에 속해 있습니다.

DirA 에 UserA가 FA 라는 파일을 작성했습니다.

이 파일을 보면 권한이 RWXR-X--- 이렇게 되어 있습니다.

UserB가 접속하여 UserA 가 작성한 FA 파일을 삭제 했습니다.

여기서 제가 궁금한것은 UserB가 어떻게 UserA가 작성한 FA라는 파일을 삭제할 수 있는지 입니다.

FA의 권한은 OWNER 일경우 모두 가지고 있지만, GROUP은 RX 만 가지고 있습니다.

UserA와 UserB가 같은 그룹에 속해있어도 W 권한이 없기때문에 UserB가 UserA가 작성한 파일을 삭제 못해야 정상 아닌가요?

제가 잘못이해 하고 있는건지... 이 리눅스머신의 상태가 이상한건지 모르겠습니다.

리눅스 머신이 한대밖에 없어서... 이게 정상적인건지... 잘못된 건지 알수가 없네요... :oops:

xesles의 이미지

디렉토리의 권한 때문에 그런 건 아닌지요?

sangwoo의 이미지

삭제는, 파일의 권한과 관련이 있는게 아니라, 그 파일이 있는 디렉토리의
권한과 관련이 있습니다.

디렉토리 역시 파일로 생각하시면, 디렉토리의 내용을 지우는 것이 파일 엔트리를
지우는 것에 해당하겠지요. (물론 그것만이 아니지만..)
따라서, 디렉토리의 쓰기 권한을 B가 가지고 있었다면, 파일을 지울 수 있게 됩니다.

----
Let's shut up and code.

jee1의 이미지

sangwoo wrote:
삭제는, 파일의 권한과 관련이 있는게 아니라, 그 파일이 있는 디렉토리의
권한과 관련이 있습니다.

디렉토리 역시 파일로 생각하시면, 디렉토리의 내용을 지우는 것이 파일 엔트리를
지우는 것에 해당하겠지요. (물론 그것만이 아니지만..)
따라서, 디렉토리의 쓰기 권한을 B가 가지고 있었다면, 파일을 지울 수 있게 됩니다.

삭제는 파일의 권한이 아니라... 디렉토리의 권한이었군요... 흠... 그렇다면... 파일의 수정도 파일의 권한에 관련된 것이 아니라... 디렉토리의 권한에 관련된 것인가요?

sangwoo의 이미지

jee1 wrote:
sangwoo wrote:
삭제는, 파일의 권한과 관련이 있는게 아니라, 그 파일이 있는 디렉토리의
권한과 관련이 있습니다.

디렉토리 역시 파일로 생각하시면, 디렉토리의 내용을 지우는 것이 파일 엔트리를
지우는 것에 해당하겠지요. (물론 그것만이 아니지만..)
따라서, 디렉토리의 쓰기 권한을 B가 가지고 있었다면, 파일을 지울 수 있게 됩니다.

삭제는 파일의 권한이 아니라... 디렉토리의 권한이었군요... 흠... 그렇다면... 파일의 수정도 파일의 권한에 관련된 것이 아니라... 디렉토리의 권한에 관련된 것인가요?

파일 내용의 수정은 파일의 권한과 관계가 있습니다.
디렉토리의 권한은 파일 생성, 파일 삭제, 파일명 변경 (이것 역시 생성, 삭제이니..)
등과 같은, 디렉토리 엔트리를 다루는 것과 관련이 있죠.

----
Let's shut up and code.

pynoos의 이미지

sangwoo wrote:
jee1 wrote:
sangwoo wrote:
삭제는, 파일의 권한과 관련이 있는게 아니라, 그 파일이 있는 디렉토리의
권한과 관련이 있습니다.

디렉토리 역시 파일로 생각하시면, 디렉토리의 내용을 지우는 것이 파일 엔트리를
지우는 것에 해당하겠지요. (물론 그것만이 아니지만..)
따라서, 디렉토리의 쓰기 권한을 B가 가지고 있었다면, 파일을 지울 수 있게 됩니다.

삭제는 파일의 권한이 아니라... 디렉토리의 권한이었군요... 흠... 그렇다면... 파일의 수정도 파일의 권한에 관련된 것이 아니라... 디렉토리의 권한에 관련된 것인가요?

파일 내용의 수정은 파일의 권한과 관계가 있습니다.
디렉토리의 권한은 파일 생성, 파일 삭제, 파일명 변경 (이것 역시 생성, 삭제이니..)
등과 같은, 디렉토리 엔트리를 다루는 것과 관련이 있죠.

그럴지라도... directory에 sticky bit가 붙어 있으면, 파일 삭제는 파일 소유자만 가능하죠

적절한 예로 /tmp 디렉토리가 있습니다.

대개 1777 모드로 만들어 씁니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.