팁 : Linux에서 여러 사용자간에 디렉토리를 공유하십시오.

단말기

오늘 저는 개인적으로 많이 사용하는 또 다른 팁으로 돌아 왔습니다. Linux에서 여러 사용자간에 디렉토리를 공유 할 수 있습니다.. 집에있는 아내와 함께 동일한 PC를 사용하는 상황에 처했습니다. 아치 리눅스 하지만 각각 고유 한 사용자가 있습니다. 그래서 우리는 음악이나 사진과 같이 공유하는 폴더에 문제가 있다는 것을 발견했습니다. 각각의 폴더에는 고유 한 파일이 있고 사물이 복제 되었기 때문입니다.

그때 우리는 공유 폴더를 만들지 만 그게 권한 문제입니다.. 폴더가 내 것이면 그녀는 그것을 볼 수없고, 내가 만든 파일이면 그녀는 그것을 삭제하지 않습니다. 처음에 패치는 우리가 해결책을 찾을 때까지 다른 사람이 액세스 할 수 있도록 무언가를 편집 할 때마다 해당 파일에 777 권한을 부여했습니다. 그룹 권한!

그룹 권한이란 무엇입니까?

그게 최고야 해당 공유 디렉토리와 모든 내용을 읽기 및 쓰기 권한이있는 특수 그룹에 할당합니다., 그룹의 모든 구성원이 해당 디렉토리에 액세스 할 수 있습니다. 그러면 해당 그룹에 사용자를 추가하는 것만으로도 해당 디렉토리에서 이미 상호 작용할 수 있습니다.

그리고 어떻게 구성합니까?

이것이 가장 좋은 부분이며 아내와 어떻게했는지 계속해서 이야기합니다. 첫 번째는 해당 디렉토리를 만드는 것입니다. 예를 들어«공유".

sudo mkdir /home/compartido

나는 상위 디렉토리가 자체 권한으로 귀찮게하지 않도록 계정 내부 / 집 및 외부에서 생성합니다. 이제 그룹을 만들어야합니다. 여기에«공유 된»

sudo groupadd compartidos

그리고이 그룹을 이전에 만든 디렉터리에 할당하고 권한도 변경하여 디렉터리이든 파일이든 내부에서 만드는 모든 것이이 그룹에 속하도록합니다.

sudo chgrp -R compartidos /home/compartido
sudo chmod g+s dirname

또한 사용자를 추가해야합니다. 그런 다음 각각에 대해이 명령을 반복해야합니다.

sudo usermod -G compartido sebastian
sudo usermod -G compartido mimujer

지금까지«/ 집 / 공유»그룹에 속한 그룹«공유 된«, 같은 회원의 모든 사용자가 액세스 할 수있는 항목과 디렉토리에 생성 된 모든 항목은 그룹에 속하며 우리 중 누구라도 볼 수있는 항목이 있습니다.

이제 마지막 단계 만 필요합니다. 이는 선택 사항 일 수 있지만 사용자의 umask를 변경하여 우리가 생성하는 각 새 파일이 그룹의 다른 구성원이 수정할 수 있도록하는 것입니다. 이것은 디렉토리뿐만 아니라 전체 사용자에게 영향을 미치므로 그들이 작동하는지 확인해야합니다. 제 경우에는 아내와 제가 시스템을 사용하기 때문에 우리를 괴롭히지 않고 우리 자신에게 002의 umask를 할당합니다. 즉, 생성 된 모든 파일은 775 권한으로 시작됩니다.

umask 편집

umask를 편집하려면 각 사용자에서 사용자의 홈에있는 .profile 또는 .bashrc 파일을 편집하고 원하는 숫자로 umask 값을 수정해야합니다. 옵션이 없으면 추가해야합니다.

변경 사항이 모든 사용자에게 영향을 미치도록 / etc / 프로필 파일을 편집 할 수도 있습니다.

따라서 콘솔에 다음을 입력합니다.

sebastian@multivacs ~> vim .profile

그리고 우리는 다음과 같은 것을 보게 될 것입니다.

vi 프로필2

그래서 우리는 umask라는 줄로 가서 문자를 누릅니다. i 주석을 제거하려면 #을 편집하고 제거하십시오. 번호를 002로 변경합니다. 행이 나타나지 않으면 추가해야합니다.

완료되면 키를 누릅니다. 야후! 편집 모드를 종료 한 다음 :+q+w. 변경 사항을 저장하고 Vi를 종료하는 이유.

다음 이미지와 같습니다.

vi 프로파일

사용자 세션을 닫았다가 다시 열면 변경 사항이 적용되고 공유 디렉터리가 이미 작동하고 있습니다.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   엘라 브

    좋은 팁.

  2.   KZKG ^ 가아라

    대단해

    몇 년 전에 나는 이것을 직접해야 할 필요성을 보았습니다. 내가 몰랐던 것은 umask였습니다 ... 대신 crontab에 작업을 넣었습니다 🙂

    팁 고마워

    1.    탈스 카스

      예, crontab도 좋습니다. 콘텐츠에 775 권한을 할당하기 위해 무엇을 넣었습니까?

  3.   원시 기본

    좋은 팁 .. .. 필요한 경우 저장 됨;) ..

  4.   루이스

    좋아, / home / shared 폴더를 만들고 "shared"그룹을 할당하지만

    이 폴더는 어떤 사용자에게 속해 있습니까? 즉, 소유자는 누구입니까? 나, 다른 사람 또는 내가 sudo를 사용하기 때문에 계정이 비활성화 된 루트 사용자?

    반면에 다음과 같은 문제가 있습니다. 내가 만든 파일은 다른 사람이 삭제할 수없고 다른 사람이 만든 파일은 내가 삭제할 수 없습니다.

    내가 뭘 잘못 했어?

    1.    탈스 카스

      sudo로 폴더를 만들 때 루트 사용자가 소유자로 남아 있어야합니다. chown 명령으로이를 수정하여 다른 사용자를 할당 할 수도 있습니다.

      다른 한편으로, 생성 한 파일이 775 권한 (umask 002 제공)으로 그렇게하는지 확인하십시오. 해당 권한이없는 경우 일부 잘못된 설정이있을 수 있습니다.

      마찬가지로, umask가 디렉토리 내에서 생성 된 모든 새 파일에 영향을 준다는 점을 명확히 할 가치가 있지만, 다른 위치에서 콘텐츠를 이동하거나 복사하면 원래 권한이 유지되고 디렉토리에 설정된 권한이 유지되지 않습니다.

      1.    루이스

        야 네가 옳아.

        내가 찾고 있었고 문제는 마지막으로 말한 것 때문에 발생합니다. 파일을 다른 위치에서 공유 폴더로 이동할 때 원래 권한이 유지됩니다.

        이것에 대한 해결책이 있습니까?

        진주를 사용할 수 있습니다.

      2.    탈스 카스

        이 경우 가장 좋은 방법은 KZKG ^ Gaara가 말한 것과 같은 crontab을 넣는 것입니다. 여기서 X마다 그룹 및 권한을 폴더 내용에 할당하는 명령을 넣을 수 있습니다.
        즉, crontab에서 다음과 같이 말합니다.
        sudo chgrp -R compartidos /home/compartido/*
        chmod -R 775 /home/compartido/*

        모든 새로운 항목을 보려면 권한 775가있는 공유 그룹으로 이동하십시오.

      3.    탈스 카스

        각 줄 끝의 *를 무시하고, 그것을 넣을 때 다른 것을 생각하고있었습니다 😛

      4.    루이스

        당신에게 친구를 주셔서 감사합니다.

  5.   에르네스토

    매우 좋은 게시물이지만 공유하고 싶은 모든 것을 넣을 수있는 별도의 파티션을 선호합니다. 나는 넉넉한 500GB 디스크를 가지고 있는데,이 디스크는 Linux에서 100GB를 사용하고 모든 음악, 사진 등을 포함하는 400GB 파티션 (ntfs)을 사용합니다. ntfs를 사용하고 우리가 원할 때 원하는 것을 넣고 제거합니다. 공유하고 싶지 않은 경우 사용자 이름에 몇 가지 정보가 있습니다. 🙂

    1.    루이스

      이제는 다른 방법이지만 파일을 저장할 위치가 아니라 권한을 구성하고 다른 사용자의 액세스를 제어하는 ​​것이 문제입니다.

      NTFS 파티션에 가질 수 있지만 정확하지만 EXT4보다 느리고 보안이 약한 조각화도 있습니다.

  6.   라이너흐

    괜찮아! 좋은 팁이지만 세션이 시작될 때마다 775 개의 새 파일로 권한을 변경하는 작업을 추가하고 다른 폴더에서 이동 한 파일 문제를 해결할 것입니다.
    또한 공유 해주셔서 감사합니다!

  7.   호아킨

    흥미 롭군요, 감사합니다!

  8.   anonimo

    일부 gnu / linux 배포판의 기본 공유 그룹에 대해 제기하고 있습니다. 일부 배포판은 사용자 이름과 동일한 기본 그룹을 사용하지 않고 기본 그룹 사용자로 사용자를 만듭니다.
    차이점은 기본 그룹 사용자를 사용하면 기본적으로 모든 것이 해당 배포판에서 생성 된 모든 사용자가 속한 그룹 사용자와 공유된다는 것입니다. 대신 사용자 이름과 동일한 그룹으로 생성 된 경우 기본적으로 아무것도 아님 공유됩니다.

    예 :
    $ ls -l /home/user/*.txt
    -rw-r – r– 1 carlos carlos 126 년 25 월 2012 일 XNUMX notes.txt

    $ ls -l /home/user/*.txt
    -rw-r – r– 1 carlos 사용자 126 년 25 월 2012 일 XNUMX notes.txt

    기본 그룹 사용자를 사용하지 않는 것이 좋습니다. 사용자를 만들 때 자신의 기본 그룹을 만드는 것이 좋습니다.

    #groupadd 카를로스
    # useradd -g carlos -G lp, wheel, uucp, audio, cdrom, cdrw, usb, lpadmin, plugdev -m -s / bin / bash carlos

    -g carlos는 상위 그룹 carlos를 사용함을 나타냅니다.
    # usermod -g를 사용하여 사용자의 기본 그룹을 변경할 수 있지만 이미 / home / carlos에있는 모든 파일 및 폴더의 기본 그룹을 변경하지 않으므로 모두 변경해야합니다.

    예 : 기본 그룹 사용자를 사용자 carlos에서 기본 그룹 carlos로 변경 한 다음 변경
    사용자 carlos의 모든 파일 및 폴더 권한이 carlos carlos에서 유지되도록합니다.

    #groupadd 카를로스
    # usermod -g carlos 사용자
    # cd / 홈
    # chown -R carlos : 카를로스 카를로스

    공유와 관련하여 공유 기본 그룹과 공유라는 사용자를 만들 수 있으며 복사 할 때 권한 문제가 없도록 먼저 사용자를 변경합니다.
    "$ su-shared"를 사용하면 원하는 항목이 / home / shared에 복사되고 복사 된 항목의 권한이 공유 사용자가됩니다.
    다른 사용자 및 기본 그룹에 속하는 복사 파일이 이미있는 경우 모두 변경해야합니다.

    # cd / 홈
    # chown -R 공유 : 공유 공유

    림보에 남은 것은 공유 사용자로서 그래픽으로 복사하는 방법, 즉 $ su-shared를 수행 할 필요가 없습니다.

  9.   anonimo

    그래픽으로 복사하는 것은 매우 어리석은 일이었습니다. hehe, 여기 openbox에서 pcmanfm을 사용합니다.하지만 갖고 있거나 원하는 파일 관리자를 사용할 수 있습니다. 루트 사용자가 아닌 공유 사용자로만 실행됩니다.

    $ su-공유 됨
    $pcmanfm
    $ 돌고래
    $MC
    등 등

    1.    탈스 카스

      나는 그것에 대해 막 대답하려고했습니다. 그렇지 않은 경우 다른 하나는 파일 소유자를 매번 변경하는 crontab입니다.
      chown -R compartido:compartido compartido

  10.   휴고

    "usermod -G the new group the user"명령은 기본적으로 사용자의 그룹을 "새 그룹"으로 변경하는 것 같습니다. 기존 사용자를 새 그룹에 추가하려면 "usermod -aG elnuevogrupo elusuario"가 올바른 방법이라고 생각합니다.

    또 다른 점은 여러 사람들이 "chmod -R 775"를 권장하지만 디렉토리뿐만 아니라 모든 파일 (실행 가능하게 만드는)에도 영향을 미치므로 불필요한 위험을 초래한다는 것을 여기에서 볼 수 있습니다. «찾기 / 홈 / 공유 유형 d -print0 | xargs -0 chmod 755 "필요한 경우 파일에 대해 유사한 작업을 수행 할 수 있지만"-type f "를 사용하고 권한 664를 부여합니다.

    마지막으로, 소유자 또는 그룹이 누구인지에 관계없이 여러 계정이 파일 또는 폴더에 액세스 할 수 있도록하는 한 가지 방법은 acl 패키지에있는 "setfacl"명령을 사용하는 것입니다 (올바르게 기억하는 경우). 사용법은 매뉴얼 페이지에 잘 설명되어 있습니다.

  11.   우 나이 마틴

    다음과 같은 문제가 있습니다. 4 명의 사용자 (web1, web2, web3, web4)를 생성했으며 웹 그룹의 사용자에 대한 액세스 그룹 폴더를 생성하고 싶습니다. .htaccess 파일을 만들 때 require valid-user를 넣어야한다는 것을 알고 있지만, require valid-user web1 web2 web3 web4를 입력하면 암호로 폴더에 액세스 할 수 있습니다. 폴더에 액세스하려고하면 사용자를 묻는 메시지가 표시됩니다. 입력하고자하는 사람의 사용자 이름과 비밀번호 만 물어 보면 어떻게하나요? 한 사람이 다른 사람의 암호를 모른다고 가정하기 때문입니다.

  12.   구스타보 F. 파레 데스

    안녕하세요.

    네 번째 터미널에는 "shared"복수형이 있어야합니다.

    sudo usermod -G 공유 sebastian

    sudo usermod -G 공유 mywoman

    인사말.

    구스타보

  13.   이반

    건배 :

    우리는 Windows Server에서 CentOs 6으로 마이그레이션하고 있으며 아직 적응 과정에 있습니다. 내 질문 : CentOs에 폴더를 공유하고 사용자에게 파일을 수정, 편집 및 / 또는 삭제할 수있는 액세스 권한을 부여하는 그래픽 인터페이스가 있습니까? 아니면 위의 모든 절차를 수행해야합니다.

    도움을 주셔서 감사합니다.

    1.    라파엘

      또한 centos 6을 설치 중이며 Linux 및 Windows에서 파일을 공유 할 수있는 Samba와 함께 사용하고 싶습니다. 조금 알고 있습니다. Linux를 많이 사용하지 않지만 직장에서 폴더를 공유하려면 어떻게해야합니까? 그러나 그래픽 모드에서는 ??.

  14.   리카르도

    안녕. 제발 도와주세요! ... 내 리눅스 마인드 사용자에서 이것을 수행하면 이제 권한을 잃었습니다. 나는 sudo와 같은 것을 실행할 수 없습니다. "실례합니다. 사용자"사용자 이름 "실행 권한이 없습니다."command_to_run "as root in"username ""메시지가 나타납니다.

    내 사용자를 공유 그룹으로 변경했을 때 권한을 빼앗긴 것 같습니다. 이제 어떻게 복원합니까?

  15.   길레

    안녕 친구는 똑같이 할 수있는 방법이 있지만 인터넷 LAN에서 다른 사람들과 파일을 공유합니다.

  16.   파비안

    이를 위해서는 SAMBA를 파일 서버로 사용해야합니다. 건배

  17.   데이비드

    안녕. sudo chmod g + s dirname 명령을 받으면 파일이나 디렉토리가 존재하지 않는다고 알려줍니다. 문제가 무엇인지 아십니까?

  18.   하비에르 키로가 알메이다

    다른 그룹에 그룹을 만들려면 어떻게합니까?

  19.   로드리고 에르난 라모스

    라인 :
    sudo usermod -G 공유 sebastian

    해야한다:
    sudo usermod -a -G 공유 sebastian

    첫 번째 방법은 나머지 사용자 그룹을 제거합니다.
    땀을 흘리면 특권을 잃게됩니다