Hmm, widziałem gdzieś wyrzucanie dysku twardego jak w / dev / sda. Myślę, że wtedy odniesienie było błędne.
Joe Barr
Możesz to zrobić, ale zazwyczaj nie robi to wiele, jeśli w ogóle coś.
Ignacio Vazquez-Abrams
1
Zakłada się, że urządzenie jest zamontowane w pierwszej kolejności i że realizuje ono kolejny duży zestaw założeń (na przykład system plików, który można odczytać). Wyobraź sobie, że wymazujesz kilka zewnętrznych dysków - prawdopodobnie nigdy nie zostaną zamontowane. wysuwanie jest właściwym rozwiązaniem.
James Moore,
1
Jeśli kiedykolwiek jestem niepewny, syncprzed
wyrwaniem
Duży, gruby OSTRZEŻENIE: To NIE jest do końca prawda. Jeśli tego nie zrobisz eject, sterownik urządzenia USB może nadal (próbować) pisać PO umountzwróceniu. Można to wyraźnie zobaczyć, jeśli dysk ma diodę LED stanu. Szarpnięcie pendrive'a zaraz po jego umountzakończeniu jest PRZEPISEM NA AWARIĘ.
ZioByte,
77
Tak. Na przykład:
sudo eject /dev/sda
Inne odpowiedzi, które wskazują, że potrzebujesz sprzętu do wyrzucania mechanicznego, są niepoprawne.
Odmontowanie to nie to samo, co wysuwanie.
Jeśli odmontujesz wolumin, możesz go natychmiast zamontować z powrotem, ponieważ podstawowe urządzenie jest nadal dostępne. W niektórych sytuacjach może to stanowić zagrożenie bezpieczeństwa. Po wysunięciu urządzenia tylko reset podsystemu USB (np. Ponowne uruchomienie) spowoduje ponowne załadowanie urządzenia.
Wyrzucając urządzenie, skutecznie wyłączasz jakikolwiek dalszy dostęp do urządzenia. Tylko reset podsystemu USB (np. Restart) przeładuje urządzenie. W przeciwnym razie należy fizycznie odłączyć urządzenie USB i podłączyć je ponownie, aby uzyskać do niego dostęp ponownie.
Przed wysunięciem to polecenie odmontuje wszystkie woluminy na podłączonym urządzeniu.
Jeśli woluminy są używane, to polecenie zakończy się niepowodzeniem, jak w przypadku odmontowania, z tym wyjątkiem, że niektóre woluminy mogą zostać odmontowane, a niektóre woluminy mogą pozostać zamontowane.
Musiałem też użyć sudotej komendy do zakończenia (wystarczyło odmontować dysk, zanim powiedział, że nie można otworzyć pliku). Poza tym pomocna odpowiedź.
GDP2
Niedoceniana odpowiedź w tym wątku. Wystarczy spojrzeć na zamontowany napęd FAT32 i zauważyć, jak odmontowanie i wysunięcie ma świat różnicy tylko w samym eksploratorze plików (tj. Nautilus). Prosty klip Sansa również by to wykazał.
Chmura
Urządzenie jest nadal obecne podczas wykonywania lsusb. Nie musisz więc resetować całego podsystemu USB. Wystarczy samo urządzenie. Możesz to zrobić za pomocą usbreset github.com/jkulesza/usbreset github.com/CWempe/usbreset Pliki usbreset.c są identyczne w obu projektach,
Hannes
Skąd mam wiedzieć, że „sda” jest właściwe? Czy mogę zmapować sda, sdb itp na rzeczywiste nazwy urządzeń?
Jürgen K.
38
ejectbędzie działać, ale tak naprawdę nie „dokończy zadania” w odniesieniu do napędów obrotowych USB.
Najlepszym sposobem na odłączenie zewnętrznego dysku twardego USB po prawidłowym odmontowaniu jest:
Spowoduje to całkowite wyłączenie urządzenia i odłączenie go od systemu. Nie zostanie wykryty ponownie, dopóki nie zostanie odłączony i ponownie podłączony.
FWIW to jedyna rzecz, która działa dla mnie w Xen dom0 z zewnętrzną bazą USB - polecenia wysuwania i udisks dawały błędy.
GS - Przeproś Monikę
1
Szukałem tego, jestem w trybie awaryjnym Dracut i nie mam dostępu do żadnej z innych funkcji. Dzięki!
Nassiel,
hdparm -Yjest również przydatny w przypadku napędów SATA / IDE.
Walf
6
Jeśli dokładnie przeczytasz stronę podręcznika eject (1) , zobaczysz, że istnieją 4 metody wysuwania:
-r This option specifies that the drive should be ejected using a CDROM
eject command.
-s This option specifies that the drive should be ejected using SCSI
commands.
-f This option specifies that the drive should be ejected using a remov‐
able floppy disk eject command.
-q This option specifies that the drive should be ejected using a tape
drive offline command.
Po wywołaniu eject na HDD / SCSI wydaje ioctl(fd, SG_IO, (void *)&io_hdr);polecenie (kopiowanie ze eject.cźródeł).
Jest to równoważne, gdy bezpiecznie usuwasz urządzenie w MS Windows lub MaxOSX.
W przypadku niektórych urządzeń ma to szczególne znaczenie. Na przykład Kindle 3 po przeniesieniu polecenia wysuwania do trybu ładowania i umożliwia przeglądanie na urządzeniu, zanim ekran był zablokowany.
„Wyrzucanie” nie ma znaczenia dla sprzętu bez tacy lub innego mechanizmu ładowania (zakładam, że działa również z napędami taśmowymi).
Jednak testy z zewnętrznym dyskiem flash USB wskazują, że ejectdziała podobnie umount- z efektem ubocznym powodującym zniknięcie węzłów urządzenia, np.
% ls /dev/sdc*
/dev/sdc /dev/sdc1
% sudo eject /dev/sdc
% ls /dev/sdc*
/dev/sdc
Nigdy nie próbował go wstążkami ( mt rewoffljest to bardziej wygodne, ponieważ również przewija), ale to nie działa z napędem dyskietek, takich jak te znajdujące się na starych komputerach Mac i Sun stacjach roboczych.
Alexios
@Alexios ciekawe.
Renan,
3
W wierszu polecenia systemu osx należy użyć diskutil, gdzie LABEL jest etykietą dysku USB.
Twoja odpowiedź jest w porządku, chociaż może jest trochę krótka. Sugerowałbym rozwinąć więcej: co robi to polecenie, jak, dlaczego to sugerujesz itp.
user259412
0
OK postaram się wyjaśnić to lepiej:
Polecenie udisks całkowicie usuwa i wyłącza każde urządzenie USB zamontowane lub podłączone w systemie. polecenie odmontowania wystarczy odmontować partycję, tj .: dev / sdb1 lub cokolwiek innego niż usb jest nadal obecny w systemie.
Więc nie jest to samo odmontowanie, wysunięcie i odłączenie
udisks = wyłącz USB
umount = po prostu odmontuj partycję, a nie cały pendrive
eject = to samo lub bardzo blisko polecenia umount
eject /dev/sdX
jestsg_start -s /dev/sdX
(zsg3_utils
pakietu), oba używają poleceń SCSI, aby wysłać do urządzenia.Odpowiedzi:
Nie. Nie muszą być;
eject
służy do otwierania napędów optycznych, w których nie można bezpośrednio wyciągnąć nośnika.Odinstalowanie jest wystarczające dla USB / eSATA / itp. urządzenia pamięci masowej.
źródło
sync
przedeject
, sterownik urządzenia USB może nadal (próbować) pisać POumount
zwróceniu. Można to wyraźnie zobaczyć, jeśli dysk ma diodę LED stanu. Szarpnięcie pendrive'a zaraz po jegoumount
zakończeniu jest PRZEPISEM NA AWARIĘ.Tak. Na przykład:
Inne odpowiedzi, które wskazują, że potrzebujesz sprzętu do wyrzucania mechanicznego, są niepoprawne.
Odmontowanie to nie to samo, co wysuwanie.
źródło
sudo
tej komendy do zakończenia (wystarczyło odmontować dysk, zanim powiedział, że nie można otworzyć pliku). Poza tym pomocna odpowiedź.eject
będzie działać, ale tak naprawdę nie „dokończy zadania” w odniesieniu do napędów obrotowych USB.Najlepszym sposobem na odłączenie zewnętrznego dysku twardego USB po prawidłowym odmontowaniu jest:
Zwykle powoduje to, że dysk obraca się płynnie.
Właśnie obecne wdrożenie :
Ten proces jest zbliżony do procedury ręcznej, która jest tutaj sugerowana . Początkowa odpowiedź była na askubuntu .
EDYCJA: Ponadto, jak wskazuje g.rocket , to polecenie może być równoważne:
źródło
udisksctl
który nie ma jeszcze okazji,--detach
jest dostępny. Co robić w tym przypadku? Dziękuję Ci.udisks
.udisks
? Nie ma go w moim systemie. Znalazłem paczkęudisks2
, ale ta nie została udostępnionaudisks
aniudisks2
udostępniona.udisksctl power-off -b /dev/sdwhatever
wydaje się robić to samo.Kroki ręczne odmontowywania dysku / dev / sdb (wymaga sudo):
Spowoduje to całkowite wyłączenie urządzenia i odłączenie go od systemu. Nie zostanie wykryty ponownie, dopóki nie zostanie odłączony i ponownie podłączony.
źródło
hdparm -Y
jest również przydatny w przypadku napędów SATA / IDE.Jeśli dokładnie przeczytasz stronę podręcznika eject (1) , zobaczysz, że istnieją 4 metody wysuwania:
Po wywołaniu eject na HDD / SCSI wydaje
ioctl(fd, SG_IO, (void *)&io_hdr);
polecenie (kopiowanie zeeject.c
źródeł).Jest to równoważne, gdy bezpiecznie usuwasz urządzenie w MS Windows lub MaxOSX.
W przypadku niektórych urządzeń ma to szczególne znaczenie. Na przykład Kindle 3 po przeniesieniu polecenia wysuwania do trybu ładowania i umożliwia przeglądanie na urządzeniu, zanim ekran był zablokowany.
Inne narzędzia robią to samo, jak to
źródło
„Wyrzucanie” nie ma znaczenia dla sprzętu bez tacy lub innego mechanizmu ładowania (zakładam, że działa również z napędami taśmowymi).
Jednak testy z zewnętrznym dyskiem flash USB wskazują, że
eject
działa podobnieumount
- z efektem ubocznym powodującym zniknięcie węzłów urządzenia, np.Zauważ, że
/dev/sdc1
zniknął.źródło
mt rewoffl
jest to bardziej wygodne, ponieważ również przewija), ale to nie działa z napędem dyskietek, takich jak te znajdujące się na starych komputerach Mac i Sun stacjach roboczych.W wierszu polecenia systemu osx należy użyć diskutil, gdzie LABEL jest etykietą dysku USB.
źródło
udisks --detach /dev/sdX
gdzie (X) to ostatnia litera urządzenia USB. Działa dobrze na każdym systemie Linux.źródło
OK postaram się wyjaśnić to lepiej:
Polecenie udisks całkowicie usuwa i wyłącza każde urządzenie USB zamontowane lub podłączone w systemie. polecenie odmontowania wystarczy odmontować partycję, tj .: dev / sdb1 lub cokolwiek innego niż usb jest nadal obecny w systemie.
Więc nie jest to samo odmontowanie, wysunięcie i odłączenie
udisks = wyłącz USB
umount = po prostu odmontuj partycję, a nie cały pendrive
eject = to samo lub bardzo blisko polecenia umount
źródło