Uwaga: odpowiedź została zaktualizowana do funkcji pod 19.04
Mam 14.04 i przypadkowo otwieram dysk CD / DVD / bluray około 20 razy dziennie. Przejrzałem tutaj kilka pytań, które nie zapewniły żadnego działającego rozwiązania.
Zarówno to pytanie, jak i to pytanie wydają się nieaktualne - oferowane rozwiązanie nie działa.
Kiedy to robię, eject -i on
spotykam się zeject: unable to find or open device for: 'cdrom'
Kiedy to robię, eject -i on /dev/sr0
otrzymuję bardziej przychylną odpowiedź: CD-Drive may NOT be ejected with device button
jednak przycisk jest niestety nadal włączony.
Informacje z /proc/sys/dev/cdrom/info
sugerują, że blokowanie jest możliwe:
CD-ROM information, Id: cdrom.c 3.20 2003/12/17
drive name: sr0
drive speed: 24
drive # of slots: 1
Can close tray: 1
Can open tray: 1
Can lock tray: 1
Can change speed: 1
Can select disk: 0
Can read multisession: 1
Can read MCN: 1
Reports media changed: 1
Can play audio: 1
Can write CD-R: 1
Can write CD-RW: 1
Ta odpowiedź zawiera działające rozwiązanie, które naprawia regułę UDEV, aby umożliwić blokowanie dysku. Dodałem kilka praktycznych informacji do rozwiązania, umożliwiając:
- Wyłącz przycisk wysuwania sprzętu napędu optycznego podczas uruchamiania
- Dodaj skrót klawiaturowy, aby wysunąć napęd optyczny
- Upewnij się, że napęd pozostaje zablokowany po wybudzeniu z trybu wstrzymania
Odpowiedzi:
Włącz blokowanie dysku
(uwaga: jeśli
eject -i on
już działa, możesz przejść do „Zablokuj dysk przy uruchamianiu”)Po pierwsze, należy skopiować
/lib/udev/rules.d/60-cdrom_id.rules
do/etc/udev/rules.d/
tak:Następnie edytuj /etc/udev/rules.d/60-cdrom_id.rules i skomentuj problematyczną linię:
Znajdź tę linię:
Teraz dodaj
#
(to „komentuje”) linię, skutecznie ją niwelując bez usuwania) z przodu, aby wyglądała tak:Teraz zapisz i zamknij, naciskając Ctrl+ X, a następnie, Yaby potwierdzić, a następnie, Enteraby zaakceptować bieżącą nazwę pliku. Nie martw się, że pojawia się jako dziwna nazwa pliku tymczasowego, tak właśnie działa sudoedit.
Teraz powinieneś być w stanie wyłączyć przycisk sprzętowy napędu optycznego (zasadniczo blokujemy napęd) w następujący sposób:
eject -i on /dev/sr0
~ lub ~eject -i 1 /dev/sr0
Robią to samo.Zablokuj dysk przy uruchamianiu
Aby uczynić to bardziej użytecznym, chciałem, aby to polecenie zadziałało podczas uruchamiania. W tym celu użyłem programu GUI „Startup Applications” (preinstalowanego w Ubuntu, znajdź go z Dash).
Otwórz program, a następnie kliknij przycisk „Dodaj”, otworzy się nowe okno dialogowe.
Wpisz nazwę (poszedłem z opisowym „Zablokuj napęd optyczny”) i w polu „Command:” wpisz
bash -c 'eject -i on /dev/sr0'
Kliknij „Dodaj”, aby zakończyć, a następnie zamknij program.
Dodaj skrót klawiaturowy
Teraz napęd optyczny jest zablokowany podczas uruchamiania. Ale jak mogę otworzyć dysk, kiedy muszę go użyć ?! Aby to uprościć, wstawiam polecenia do skrótu klawiaturowego „wysuwania”, który odblokowuje dysk, wysuwa dysk, a następnie blokuje dysk. W ten sposób nadal mogę łatwo uzyskać dostęp do dysku, ale przycisk sprzętowy nigdy nie stanowi problemu.
Oto jak wykonać ten skrót klawiaturowy:
Wpisz to w pole „Polecenie:”:
Kliknij „Zastosuj”
Kliknij po prawej stronie nazwy skrótu, gdzie jest napisane „Wyłączone”. Po kliknięciu „Wyłączone” zmienia się w „Nowy akcelerator”:
Naciśnij kombinację klawiszy, której chcesz użyć. Użyłem Ctrl+ Alt+E
Następnie możesz natychmiast przetestować skrót. Jeśli wszystko jest już blisko i gotowe!
Zablokuj napęd po wybudzeniu z zawieszenia (metoda wstępnie zaprogramowana)
Zauważyłem, że mój dysk ponownie odblokowuje się po wznowieniu zawieszenia, więc utworzyłem skrypt, aby upewnić się, że dysk pozostanie zablokowany w tym przypadku.
Utwórz plik skryptu:
Wklej następujące elementy do nowego pliku:
Lock Drive Upon Wake From Suspend (metoda systemowa)
Używam teraz 19.04 i zauważyłem, że mój dysk odblokowuje się po wznowieniu z zawieszenia. Ta metoda działa tak, aby pozostała zablokowana:
Utwórz plik skryptu:
Wklej następujące elementy do nowego pliku:
Zapisz i zamknij, a wszystko gotowe!
źródło
Dla mnie informacje tutaj pomagają: https://bugs.launchpad.net/ubuntu/+source/eject/+bug/885051/comments/6
Edytowałem plik w katalogu / lib / , a nie w / etc / Now w mojej komendzie Ubuntu 14.04 działa: eject -i 1 / dev / sr0
źródło
Jeśli wszystko inne zawiedzie:
Weź szpilkę (a nie igłę, bo sam się zranisz), wciśnij ją mocno za przycisk napędu DVD i użyj jej jako dźwigni, aby wyciągnąć przycisk. Następnie weź mały kawałek plastiku o szerokości 1 mm szerszy i większy niż powstały otwór, nałóż na niego trochę super kleju i przyklej go do otworu, uważając, aby nie nałożyć go na niewielki otwór obok niego .
Od teraz użyj następujących 2 metod, aby otworzyć napęd DVD:
źródło
Spróbuj, aby przycisk nie wysunął się:
Otwórz: Ustawienia systemu > Klawiatura > Skróty > Dźwięk i multimedia
Wybierz „Wysuń” i usuń skrót (naciskając „Backspace”).
Możesz użyć ustawień skrótu, aby zrobić coś bardziej przydatnego, na przykład otworzyć często używaną aplikację, zablokować ekran lub zresetować Wi-Fi.
Źródło:
Mam MacBooka Pro z 14.04, a przycisk wysuwania znajduje się tuż nad klawiszem Delete / Backspace, co sprawia, że łatwo go przypadkowo nacisnąć (gorzej w przypadku MacBooków bez napędów dyskowych, w których ten przycisk jest zamiast zasilania). Użyłem ustawień skrótu, aby zamiast tego przycisk wysuwania zablokował mojego laptopa. Korzystam z tego rozwiązania od 12.04 i wszystkiego pomiędzy.
źródło
Na tej stronie znalazłem tę sugestię, jeśli
eject -i 1
nie działa:sudo echo 1 > /proc/sys/dev/cdrom/lock
zablokować (0 zamiast 1, aby odblokować)Istnieją również inne opcje omówione.
Oto krótki kod źródłowy c z inną opcją: link (zauważ poprawkę dla nowszych wersji w wyższych komentarzach!)
Ale czytałem na innych forach, że wszystkie te polecenia wysuwania zmieniają stan blokowania napędu tylko po włożeniu i zamontowaniu dysku. Jedynym rozwiązaniem wydaje się być narzędzie o nazwie
cdctl
, ale nie jest zbyt kompatybilne z wieloma systemami, jak studiowałem komentarze.źródło