Możliwe jest logiczne odłączenie urządzenia pamięci USB: urządzenie jest nadal podłączone, ale jest niewidoczne dla systemu operacyjnego (np. Nie ma go na liście poniżej /proc/bus/usb
). Może się to zdarzyć również w przypadku innych rodzajów urządzeń USB lub innych urządzeń wymiennych. Może się to zdarzyć na przykład:
- po odmontowaniu przez Nautilus urządzenia pamięci USB ;
- po tym, jak VirtualBox przejął urządzenie pamięci USB (urządzenie znika z hosta Linuxa, gdy jest podłączone do gościa i nie pojawia się automatycznie, jeśli zostanie odłączone od gościa).
Co się dzieje w sterowniku lub sprzęcie, a co najważniejsze (w jaki sposób) można logicznie ponownie podłączyć urządzenie (bez fizycznego podłączania i ponownego podłączania)?
Zauważ, że to pytanie nie dotyczy montażu. W stanie „logicznie rozłączonym” jądro uważa, że na magistrali USB nie ma nic (i oczywiście nie ma wpisu poniżej /dev
).
Odpowiedzi:
Czasami można wykonać cykl zasilania na gałęzi magistrali USB, do której podłączone jest urządzenie:
1-1
Powinny być dostosowane do danej konfiguracji. Możesz sprawdzić, do której części drzewa USB podłączone jest twoje urządzenie, uruchamiając jelsusb -t
przed wysunięciem.Szczegółowe informacje można znaleźć na liście mailingowej linux-usb, na przykład w tym wątku .
źródło
dmesg
zgłasza poprawny identyfikator urządzenia („USB 9-4: USB odłącz [...]”), nie działa to w najnowszym Arch Linux./sys/bus/usb/devices/9-4
Potem nie ma ścieżki .suspend
jest już także obsługiwany w najnowszych wersjach jądra ....Zresetuj urządzenie lub koncentrator, do którego jest podłączone, a urządzenie powinno się ponownie wyświetlić. Oto mały program, aby to zrobić:
http://marc.info/?l=linux-usb-users&m=116827193506484
Działa z większością napędów USB, które wypróbowałem, ale są wyjątki, takie jak mój Kingston DT 101 II 4GB, który nie wykonuje poleceń ZAPYTAJ i ODCZYTAJ POJEMNOŚĆ po zresetowaniu i pozostaje bezużyteczny do momentu wyłączenia zasilania.
Możesz włączyć i wyłączyć urządzenie bez odłączania wtyczki, jeśli pobiera energię z portu, a koncentrator USB obsługuje kontrolę zasilania na port. Oto mały program do sterowania mocą:
http://marc.info/?l=linux-usb-devel&m=113724451205634
Niestety, prawie żadne koncentratory USB nie obsługują tej funkcji i bardzo trudno jest znaleźć taki, który ją obsługuje. Producenci nie reklamują tego. Wiele koncentruje się również na tym, na przykład jeśli wykonasz „lsusb -v”, zobaczysz „Przełączanie zasilania na port” reklamowane w „wHubCharacteristic”, ale w rzeczywistości to nie działa. Chipset może go obsługiwać, ale producentowi łatwiej / taniej było podłączyć piny zasilające portu bezpośrednio do zasilacza zamiast przechodzić przez chipset.
źródło
Uważam, że ta odpowiedź działa świetnie na moim systemie Gentoo. Pamiętaj także, aby ponownie włączyć urządzenie, jeśli jest to ważny element systemu (np. Mysz lub klawiatura).
Aby zobaczyć, co wyłączasz / włączasz ponownie:
źródło
Teraz sprawdź jądro. Np. Jeśli jest podłączony do portu 2 przedniego UIP, wówczas będzie miał 1-1.2, a jeśli jest podłączony do portu 1 przedniego UIP, wówczas będzie to 1-1.1.
Dla portu 2: Aby odłączyć USB:
Aby podłączyć USB:
źródło
Wypróbowałem większość powyższych sugestii, ale one nie zadziałały dla mnie. Znalazłem sposób resetowania urządzenia USB z wiersza polecenia: https://askubuntu.com/a/290519
skąd
$i
można użyć odpowiedniego identyfikatora urządzenia/sys/bus/pci/drivers/ehci_hcd
.źródło
Poniższe spowoduje odłączenie urządzenia USB.
Poniższe spowoduje ponowne podłączenie urządzenia USB.
Powyższe działa na mojej Linux Mint.
Odniesienie: http://www.upubuntu.com/2011/09/how-to-remount-usb-stick-without.html
źródło
Nie jestem pewien, czy właściwie rozumiem twoje pytanie, ale w moim systemie, jeśli urządzenie USB jest podłączone, ale nie zamontowane, mogę je „zobaczyć”
To mówi mi, z jakim urządzeniem jest powiązane (tj. / Dev / sdd1 lub coś takiego), a następnie ręcznie go montuję.
źródło
/dev
).