답변:
sudo
권한이 있다고 가정하면 다음 명령이 수행합니다.
sudo cp /home/USER1/FNAME /home/USER2/FNAME && sudo chown USER2:USER2 /home/USER2/FNAME
파일을 USER1에서 USER2로 복사 한 다음 / home / USER2의 사본 소유자를 USER2로 변경합니다.
sudo
권한 이없는 경우 두 사용자는 USER1 디렉토리에 대한 읽기 권한과 USER2 디렉토리에 대한 쓰기 권한이 있는지 확인해야합니다. 이러한 액세스 권한이 있으면 다음 명령을 입력 할 수 있습니다.
cp /home/USER1/FNAME /home/USER2/FNAME
그러면 해당 파일이 복사되지만 USER2는 적절한 권한이있을 때까지 파일을 조작하지 못할 수도 있습니다.
sudo 권한이 없지만 두 사용자로 로그인 할 수 있으면 localhost와 함께 scp를 사용할 수 있습니다.
scp file1 user2@localhost:/home/user2/
USER1로서 :
cp [filename] /tmp
chmod 777 /tmp/[filename]
USER2로서 :
cp /tmp/[filename] .
USER1로서 :
rm /tmp/[filename]
ssh가 설치되어 있지 않거나 키 / 비밀을 공유하고 싶지 않다고 가정하십시오.
user1이 group1에 있고 user2가 group2에 있고 user1! = user2 및 group1! = group2라고 가정하십시오.
공유 그룹 group3s를 작성하십시오.
addgrp group3
user1과 user2를 그룹 3에 추가하십시오.
한 사용자가 소유하지만 group3의 그룹 소유권이있는 상호 액세스 가능한 장소에 디렉토리를 작성하십시오.
#as user1,
mkdir $place/shared && chown user1.group3s $place/shared && chmod 770 $place/shared;
#as user1 or user2,
cp $file $place/shared && chgrp $place/shared/$file && chmod 660 $place/shared/$file
그러나 새로운 공유 그룹을 작성하고 두 사용자를 해당 그룹에 배치 할 수 없다고 가정하십시오.
디렉토리를 작성하고 770 권한을 부여하십시오.
mkdir $place/shared && chown user1.group1 $place/shared && chmod 770 $place/shared;
그런 다음 root / admin으로 그룹 소유권을 다른 사용자의 그룹으로 변경하십시오.
sudo bash
chgrp group2 $place/shared && chmod g+s $place/shared
chmod g + s 명령은 디렉토리에 배치 된 파일의 그룹 소유권이 group2로 설정되도록 setgid 비트를 설정합니다.
여기에있는 다른 모든 대답에는 루트 액세스 권한이 필요 하거나 같은 컴퓨터의 모든 사용자가 파일을 복사하거나 암호 공유가 필요합니다. 그렇지 않은 방법은 다음과 같습니다.
한 USER2
다음 명령을 실행 (의 그 밥을 부르 자) (당신은 대체 할 수있는 /tmp
두 사용자가 쓰기 권한을 가지고 임의의 디렉토리에 있지만, /tmp
기본적으로이 과정을 전복 악의적 인 사용자를 방지하기 끈적하기 때문에 이상적이다. 디렉토리 소유 세계적으로 읽을 수있는 Bob의 작품) :
[bob@computer ~]$ touch /tmp/test.txt
[bob@computer ~]$ chmod 622 /tmp/test.txt
이것은 쓰기 가능하지만 읽을 수없는 파일을 만듭니다.
그런 다음 USER1
(그녀의 앨리스에게 전화합시다) 실행하십시오.
[alice@computer ~]$ dd if="$HOME/test.txt" of=/tmp/test.txt
이의 내용을 덮어 씁니다 /tmp/test.txt
. 파일의 무결성을 확인하려면 Alice도 파일의 해시를 생성해야합니다. 예를 들어 :
[alice@computer ~]$ openssl sha1 < "$HOME/test.txt" > /tmp/test.txt.sha1
대신 파일에 디지털 서명을하거나 파일의 무결성을 보장하는 다른 방법을 사용할 수 있습니다.
마지막으로 Bob은 파일을 이동하고 소유권을 가져옵니다.
[bob@computer ~]$ mv /tmp/test.txt "$HOME"
[bob@computer ~]$ chmod 600 "$HOME/test.txt"
Bob은 원하는 경우 무결성을 확인할 수 있습니다. 그렇다면, Alice 만 쓸 수 있는지 확인해야합니다 /tmp/test.txt
.
[bob@computer ~]$ diff /tmp/test/txt.sha1 <(openssl sha1 < "$HOME/test.txt")
파일이 올바르게 복사되면 출력이 표시되지 않습니다.
한 사용자를 다른 사용자에게 복사하기 전에 su user로 로그인 한 다음 cp 명령을 사용해야합니다.
sudo cp /home/shyam/Desktop/sparkhadoop_2.11-1.0.jar /home/hadoop/Desktop
USER2
하지는 않지만 그대로 둡니다 root
. -1