Jak skopiować pliki lub katalogi od jednego użytkownika do innego użytkownika na tym samym komputerze za pośrednictwem terminala ?
Załóżmy, że w katalogu domowym użytkownika USER1 znajduje się jeden plik test.txt . Muszę skopiować ten plik do katalogu domowego USER2 na moim komputerze. Jak mogę to zrobić przez terminal?
jeśli nie masz uprawnień sudo, ale możesz zalogować się z dwoma użytkownikami, możesz użyć scp z localhost:
źródło
Jako USER1:
Jako USER2:
Jako USER1:
źródło
Załóżmy, że albo nie masz zainstalowanego ssh, albo nie chcesz nie udostępniać kluczy / sekretów.
Załóżmy, że użytkownik 1 należy do grupy 1, a użytkownik 2 - do grupy 2, a zarówno użytkownik 1! = Użytkownik 2, jak i grupa 1! = Grupa 2.
Utwórz wspólną grupę, group3s.
Dodaj zarówno user1, jak i user2 do group3s.
Utwórz katalog we wzajemnie dostępnym miejscu, w którym jeden użytkownik jest właścicielem, ale ma grupową własność group3s.
Ale załóżmy, że nie możesz utworzyć nowej, udostępnionej grupy i umieścić obu użytkowników w tej grupie?
Utwórz katalog i nadaj mu 770 uprawnień,
Następnie jako root / admin zmień własność grupy na grupę innego użytkownika,
Polecenie chmod g + s ustawia bit setgid tak, aby pliki umieszczone w katalogu miały własność grupy ustawioną na group2.
źródło
Każda inna odpowiedź tutaj wymaga dostępu do konta root, pozwala na dowolną do konta użytkownikowi na tym samym komputerze na skopiowanie pliku lub wymaga udostępniania hasła. Oto metoda, która nie:
Poproś
USER2
(nazwijmy go Bob) uruchomienie następujących poleceń (możesz zastąpić/tmp
dowolnym katalogiem, do którego obaj użytkownicy mają uprawnienia do zapisu, ale/tmp
jest idealny, ponieważ domyślnie jest lepki, co uniemożliwia złośliwemu użytkownikowi zniszczenie tego procesu. autorstwa Boba, który jest czytelny na całym świecie, działa również):Spowoduje to utworzenie pliku, który można zapisywać na całym świecie, ale nie można go odczytać.
Następnie
USER1
uruchom (nazwijmy ją Alice) (jeśli jesteś paranoikiem, Alice może najpierw sprawdzić uprawnienia, aby upewnić się, że plik jest własnością Boba):To nadpisuje zawartość
/tmp/test.txt
. Jeśli chcesz sprawdzić integralność pliku, Alice powinna również wygenerować skrót pliku. Na przykład:Możesz zamiast tego podpisać cyfrowo plik lub dowolną inną metodą gwarantującą jego integralność.
I w końcu Bob przenosi plik i przejmuje na niego własność:
A Bob może sprawdzić uczciwość, jeśli chce. Jeśli tak, powinien sprawdzić, czy tylko Alice może pisać
/tmp/test.txt
.Jeśli plik został skopiowany poprawnie, nie powinien on wyświetlać danych wyjściowych.
źródło
Przed skopiowaniem jednego użytkownika do drugiego musisz zalogować się jako użytkownik su, a następnie użyć polecenia cp
źródło
USER2
ale pozostawi to tak,root
jakby. -1