허가는 어떻게 받나요?

허가는 어떻게 받나요?

디렉토리에 파일을 생성하려고 하는데 다음과 같은 결과가 나타납니다.

`touch`: cannot touch ‘test’: Permission denied

이것은 내 명령입니다:

[user@xxx api]$ ls -l
total 184
...
drwxrwxr-x  2 root root   4096 2016-04-12 14:38 public 
..
[user@xxx api]$ cd ./public
[user@xxx public]$ touch test
touch: cannot touch ‘test’: Permission denied

답변1

이 콘텐츠는 편집할 수 없습니다.사람들디렉토리(없는 경우)쓰다그리고구현하다사용권.

  • 새 파일을 만들려고 한다는 것을 나타냅니다. test파일이 아직 존재하지 않으면 public새 파일 touch을 생성하려고 시도합니다. 만약 없다면쓰다그리고구현하다상위 디렉터리에 대한 권한입니다. 디렉터리를 탐색하려면 실행이 필요하고 새 파일에 대한 inode 항목을 추가하려면 쓰기가 필요합니다. 분명히 이러한 권한 중 하나 또는 둘 다 가지고 있지 않습니다.

  • test파일이 이미 존재하는 public경우 기본적 touch으로 파일 수정 시간이 업데이트됩니다. 오직쓰다입장문서이는 수정 날짜/시간이 파일의 inode에 저장되기 때문에 필요합니다. 파일이 이미 존재하는 경우 명령을 사용하여 ls -l public/test쓰기 권한이 있는지 확인하는 등 파일 권한을 확인해야 합니다 .


다음을 나타내는 디렉토리 권한 비트 마스크 rwxrwxr-x:

  • root디렉토리의 소유자인 사용자는 디렉토리에 대한 쓰기 액세스 권한을 가지고 있습니다.목차첫 번째 블록에 표시된 대로 rwx. 이 사용자는 또한 디렉터리( r비트)를 읽고 이를 탐색하여 해당 내용( x비트)에 액세스할 수 있습니다.
  • 이 그룹 root(즉, 디렉터리의 그룹)의 구성원은 사용자 자신이 아니며 root디렉터리를 읽고, 쓰고, 탐색할 수 있는 유사한 권한을 갖습니다.목차rwx두 번째 블록에 표시된 대로

다른 모든 사용자는 r-x마지막 블록에 표시된 대로 읽기 및 실행 권한만 갖습니다. 앞에서 언급했듯이 디렉터리의 경우 실행 권한을 사용하면 디렉터리를 탐색하고 해당 내용에 액세스할 수 있습니다. 바라보다이 문제이것을 더 명확하게 이해하려면.

허가는 어떻게 받나요?

다음 중 하나를 수행하려면 시스템 관리자(아마도 본인!)에게 문의해야 합니다.

  • 당신을 그렇게 놔두세요public/디렉토리 소유자유사한 명령을 사용하십시오 chown user public/. 이는 편집 권한이 필요한 유일한 사용자인 경우에 적합합니다.
  • 만들다적절한 이름을 가진 새 그룹, 어쩌면 비슷한 명령을 사용하여 publiceditors디렉터리에 그룹으로 설정합니다. 귀하와 디렉터리를 수정해야 하는 다른 사용자가 이 그룹의 구성원으로 나열되어 있는지 확인하십시오. 이 방법은 여러 사용자가 편집 기능이 필요한 상황에 적합합니다.public/chgrp publiceditors public/
  • 귀하의 사용자 계정을root그룹 멤버(제가 추천하고 싶은 것은 아닙니다).
  • 귀하에게 접근 권한을 제공합니다로그인하거나 다른 사람인 척root, 비밀번호 사용 sudo또는 su사용 등root
  • 변화디렉토리 권한도착하다모든 사용자에게 쓰기 권한 부여, 유사한 명령을 사용하십시오 chmod o+w public. 이것이 제공한다는 점에 유의하십시오.모든 사람상자에서 공용 디렉토리의 파일을 편집하고 삭제할 수 있습니다. *아마도 이것을 원하지 않을 것입니다!

* 커널의 필수 액세스 제어와 같은 다른 액세스 제어 시행이 없는 경우.

무엇을 합니까읽다,쓰다그리고구현하다디렉토리의 맥락에서 권한은 무엇을 의미합니까?

Linux 시스템의 디렉터리에 있다고 가정하면 읽기 권한 비트를 사용하면 디렉터리 목록을 읽을 수 있습니다. 쓰기 권한 비트를 사용하면 나열된 디렉터리를 업데이트할 수 있습니다.만들다문서 1개*,이름 수정파일의풀리다(파일 삭제. 실행 비트를 사용하면 디렉터리를 탐색하고 해당 파일에 액세스하는 등의 작업을 수행할 수 있습니다. 추가 정보Linux 디렉터리 권한.

* 효과적으로 파일을 디렉토리에 연결합니다. 대부분의 경우 파일을 생성할 때 이 작업을 수행하지만 더 복잡한 예도 있습니다. 예를 들어, 원래 파일 시스템의 다른 곳에 존재했던 파일에 대한 하드 링크를 생성하려면 새 파일을 생성하지 않더라도 링크의 대상 디렉터리에 대한 쓰기 액세스 권한이 필요합니다.


쓰다입장목차?

추가하려는 파일의 관련 inode에 대한 참조를 추가하려면 디렉토리에 쓸 수 있어야 합니다.

답변2

~에 대한사람들디렉터리 권한은 루트 사용자나 루트 그룹의 구성원만 쓸 수 있습니다.

구성된(drwxrwxr-x)은 다음을 의미합니다.

  • 루트 사용자에게는 읽기, 쓰기 및 실행 권한이 있습니다.
  • 루트 그룹에는 읽기, 쓰기 및 실행 권한이 있습니다.
  • 다른 사람에게는 읽기 및 실행 권한이 있습니다.

사용자가 루트 그룹에 있는지 확인하거나 다음 명령을 사용하여 "기타"에 쓰기 권한을 부여하십시오.

chmod o+w public

답변3

저도 비슷한 문제가 발생했는데 파일 생성 권한이 없는 일반 사용자인 것을 발견했습니다. 그래서 사용자를 루트로 전환했습니다

command:
 su <root user>

비밀번호를 묻는 메시지가 나타나면 루트 비밀번호를 입력하세요(kali Linux 비밀번호가 너무 높은 경우).

이것은 내 문제를 해결했습니다.

답변4

귀하의 사용자에게 "쓰기" 권한이 없습니다. 권한을 변경하려면 다음 명령을 사용하십시오.

chmod o+w public**

그렇지 않은 경우 다음 명령을 사용하여 모든 사람(소유자/그룹/기타)에 대한 읽기-쓰기 실행 권한을 설정할 수 있습니다. (이 옵션은 권장되지 않습니다. 더 알고 싶다면 다음을 따르세요.)

chmod 777 public**

관련 정보