리눅스와 디렉토리가 사라지고 다시 나타나는 신비한 사례

리눅스와 디렉토리가 사라지고 다시 나타나는 신비한 사례

저는 첫 번째 Ubuntu 서버를 설정하고 즉시 로그인(으 myuser)로 사용자 정의를 시작했습니다. 나는 가서 /opt달린다 mkdir sandbox.

mkdir: 'sandbox' 디렉터리를 생성할 수 없습니다: 권한이 거부되었습니다.

허가가 거부되었습니다?!? 좋아요. 그래서 실행해서 님의 비밀번호를 sudo -i입력합니다 . 명령 myuser을 다시 실행 mkdir하면 짜잔! 디렉터리가 생성됩니다. 로그아웃합니다.

다음으로 다시 로그인 myuser하고 다음으로 이동하여 /opt실행합니다 ls. 아무것도 없습니다! 내부에 보이는 디렉토리가 없습니다 /opt! 무엇!?!?

그래서 다시 sudo를 실행 sudo -i하고 다시 실행합니다 ls.지금그것은 본다 sandbox/.

나는 사용자와 루트에 관한 기본적인 Linux 지식이 부족한 것 같습니다. 서버 구성/설치 중에 사용자를 생성하라는 메시지가 표시되어 사용자를 생성했습니다( myuser). 나추정이 사용자는 설치 중에 생성한 사용자일 뿐만 아니라 시스템의 첫 번째 사용자이기 때문에 루트 사용자(전체 관리자 권한 포함)이기도 합니다!

그렇다면 왜 그렇게 myuser할 수 없습니까?

  • /home/myusersudo-ing 없이 외부에 디렉토리를 생성하시겠습니까 ?
  • "Sudo 모드"에서 생성된 디렉터리 보기

sudo나는 또한 , su와 사용자 의 차이점에 대해 모호합니다 root.

/opt/sandbox/궁극적으로 이러한 기본 사항을 완전히 이해하는 것 외에도 24시간 내내 실행되고 로컬 파일 시스템과 상호 작용할 수 있는 여러 서버 소프트웨어를 설치하고 싶습니다 . 이제 단순히 myuser, sudoed as myuser또는 다른 이름 으로 로그인한 상태에서 이러한 애플리케이션을 설치해야 하는지 잘 모르겠습니다 .

이 서버는 안전한 개인 홈 LAN 내부에 있으므로 "실제 관리자"와 미친 보안 제어가 필요하지 않습니다. 저는 제가 작성하고 있는 작은 소프트웨어 도구를 위한 간단한 개발 환경을 설정하고 있습니다. 위의 질문에 대해 도움을 주셔서 미리 감사드립니다.

답변1

root/opt는 기본적으로 user 및 group 이 소유합니다 root.

시도해 보면 /opt 폴더가 각각 사용자와 그룹인 l /" "이 소유하고 있음을 알 수 있습니다 .root root

루트가 아닌 사용자로 /opt 내부에서 파일을 생성하고 수정하려면 루트가 아닌 사용자가 자유롭게 액세스할 수 있도록 해당 폴더에 폴더를 생성하고 권한을 수정해야 합니다.

예:

sudo mkdir /opt/sandbox
sudo chown myuser:users /opt/sandbox

첫 번째 명령은 폴더를 생성하지만 해당 폴더의 소유는 root그룹 입니다 root
. 두 번째 명령은 소유권( chown)을 사용자 이름으로 변경하고 이를 myuser그룹의 일부로 만듭니다 .usersmyuser

답변2

그런데 myuser가 다음을 수행할 수 없는 이유는 무엇입니까? ...

노력하다

ls -l sandbox
getfacl sandbox

해당 출력이 명확하지 않거나 현재 보고 있는 내용을 설명하지 못하는 경우 출력을 잘라서 질문 편집본에 붙여넣으세요.

나는 또한 sudo, su 및 루트 사용자의 차이점에 대해 모호합니다.

sudo하나의 명령에 대해서만 높은 루트(예: 관리자) 권한을 제공합니다. 어떤 사용자가 무엇을 할 수 있는지 제어할 수 있는 sudo용 구성 파일이 있습니다.

su루트라는 유효 사용자 ID를 사용하는 새 셸 세션을 제공하여 여러 명령에 대한 높은 권한을 제공합니다.

루트 사용자는 /etc/passwd에서 볼 수 있는 root라는 특수 사용자입니다. Unix나 Linux 시스템에는 항상 12명 정도의 다른 사용자가 있습니다. 사람들은 일반적으로 일반 계정을 가지고 있으며 루트 권한이 절대적으로 필요한 작업(예: 시스템의 모든 사용자가 사용할 소프트웨어 설치)을 제외한 모든 작업에 해당 계정을 사용합니다. 이로 인해 맬웨어가 나쁜 작업을 수행하기가 더 어려워지고 복구할 수 없는 실수를 저지르기도 더 어려워집니다.

여러 가지 서버 소프트웨어를 설치하고 싶습니다.

패키지를 설치하려면 시스템의 패키지 관리자를 사용하는 것이 가장 좋습니다. 나는 수동으로 /opt에 폴더를 생성하지 않는 것을 선호합니다. 그것이 나의 마지막 선택이 될 것입니다.

관련 정보