Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Zastanawialiście się, co by się stało, gdyby pewnego pięknego dnia ktoś pociągnął z kopa waszą klawiaturę, doprowadzając ją do stanu w którym *nie da* się jej już w żaden sposób używać? Co z tego, że facet by zginął, komputer jest nieużywalny. Czy każdy z nas trzyma kilka zapasowych klawiatur w szufladzie z bielizną? Raczej nie. Ale taki "dzień bez klawiatury" może się zdarzyć. I może to być akurat jakieś święto, w które wszystkie sklepy komputerowe są pozamykane. Może to być jutro. To może się zdarzyć za chwilę.
Bez klawiatury nie zalogujesz się w [xgk]dm. Nie zrobisz nic w konsoli, a jeśli masz ułomnego display managera to nawet się do niej nie przełączysz.
Przezorny zawsze ubezpieczony ;] wymyśliłem prostego hacka, który umożliwi przeżycie bez klawiatury - wymaga jednak myszki oraz wcześniejszego przygotowania.
Najpierw oczywiście instalujemy i konfigurujemy gpm. Gdy działa, upewniamy się, że możemy kopiować i wklejać bez większych trudności. Przełączamy się na nieużywany terminal i próbujemy się zalogować *bez dotykania klawiatury*.
Nie da się? ;] Oto więc nadszedł czas, aby lekko zmodyfikować /etc/issue. W jakimś dogodnym miejscu wrzucamy coś w stylu:
`1234567890-= ~!@#$%^&*()_+| qwertyuiop[] QWERTYUIOP{} asdfghjkl;' ASDFGHJKL:" zxcvbnm,./ ZXCVBNM<>?
Czyli w skrócie wszystkie "białe" znaki na klawiaturze. Zapisać, wylogować się z vt, teraz próbować zalogować. Uważnie patrzeć czy ktoś nie podgląda jak wklikujemy hasło.
Gdy udało nam się zalogować, nadchodzi czas na drugą część hacka. Gdy zaczniemy wpisywać polecenia, ekran przewinie się do góry i "klawiatura" zniknie. Dobra nasza jeśli uda nam się ze znaków dostępnych na ekranie wpisać 'cat /etc/issue', ale w przeciwnym wypadku - przegrywamy. Dlatego trzeba utworzyć skrypt, polecenie lub inny alias, który będzie się składał wyłącznie z liter, które na ekranie pojawią się *zawsze* - mam na myśli znaki prompta. I tak oto na moim kompie powstał kolejny plik, /bin/satan (satan to moja nazwa hosta):
#!/bin/sh
cat /etc/issue
Możliwe też, że lepszym rozwiązaniem byłoby umieścić go jako /satan (jeśli oprócz klawiatury coś stanie się z $PATH...), ale wtedy do $PS1 trzeba by wstawić jakoś slasha, i to jeszcze tak, aby ładnie wyglądał ;]
Alias może byłby prostszy, ale właśnie - co jeśli nie uda mi się zalogować na *moje* konto? Na przykład umieszczę przypadkiem w haśle literkę (ąłóżźćńę), której zapomniałem dodać do "klawiatury" w /etc/issue? Chiba klapa ;]
Na tym etapie warto zrobić test: czy uda mi się dojć do chwili gdy będę mógł wpisywać polecenia w X terminalu, nie posiadając podpiętej do komputera żadnej klawiatury.
Włączam pałer, bios mruga dyskami, pokazuje się grub, czekam 5 sekund, ładuje się jądro, wykrywa sprzęt, startuje init, uruchamiają się usługi (uwaga, ustawić jakiś domyślny runlevel z gpm! kiedyś nie miałem żadnego domyślnego) i ukazuje nam się klawiatura. Wklikujemy swoją nazwę usera i hasło. Wklikujemy nazwę hosta by dostać kolejną kopię klawiatury i dajemy startx.
Jeżeli jeszcze jesteśmy w stanie kliknąć na jakąś ikonkę terminala, to prawie wygraliśmy. Ponadto, pracę w takich warunkach można sobie ułatwić przy pomocy jakiejś klawiatury ekranowej - polecam matchbox-keyboard (jest w repo). Zajmuje pół ekranu, ale jest lajtowa i spełnia zadanie.
Następny artykuł w serii "urwało mi kabelek": praca bez monitora! :D
Offline
majac laptopa nie ma sie "tego typu" problemow
Offline
tak, gdy ktoś kopnie cię w klawiaturę to zamiast ją wymienić musisz biec do serwisu ;] faktycznie, zupełnie inna klasa kłopotów.
nigdy nie możesz założyć że nie dojdzie do sytuacji w której stracisz możliwość używania klawiatury. ja na przykład kiedyś nigdy bym nie rozważył utraty komórki, a utraciłem (spadłem z roweru i pękł wyświetlacz...). biorąc pod uwagę, jak łatwo możesz się zabezpieczyć na tą akurat ewentualność - imho warto poświęcić 2 minuty.
Offline
a wiesz, tak zauważyłem, że większość ludzi którzy używają windows bardzo rzadko używa klawiatury. nawet takie operacje jak 'kopiuj' i 'wklej' robią z myszy, co mi osobiście wydaje się dość dziwne. ba, znam ludzi, którzy klawiatury po macoszemu odkładają z boku biurka albo za monitor, a w bardziej skomplikowanych grach używają pada. przyparci do muru (np. żeby zalogować sie na jakiejś stronie) używaja tzw. 'klawiatury ekranowej'
ale to tylko mała dygresja... tak naprawdę nie wierze w dzień bez klawiatury - w ostateczności mogę ją pożyczyć od sąsiada ;)
Offline
Ale rozwiązanie jest na tyle sprytne abyś [b]harry666t[/b] wklepał ten opis do FAQ.
Choć sam mam zapasową mini klawkę na usb do mojego lapciaka. Z drugiej strony jak sam zauważyłeś że posadzenie dupy na klawce laptopa to inna klasa problemów ;)
Offline
Niech ktoś najpierw doda do FAQ pytanko "Jak dodawać do FAQ", bo już się zgubiłem w tym formularzu...
tak naprawdę nie wierze w dzień bez klawiatury - w ostateczności mogę ją pożyczyć od sąsiada ;)[/quote]
Nie jesteś wyizolowanym od wszechświata aspołecznym-do-granic-możliwości geekiem mieszkającym w najciemniejszym zakamarku najmniejszej wioski w województwie!? Jakim cudem udało ci się zainstalować Linuksa!? o,O
większość ludzi którzy używają windows bardzo rzadko używa klawiatury[/quote]
ale odłóżmy już na bok przypadki kliniczne ;]
[ /\/\/\ o_0 ----->>> Ascii Art Userbar User ]
"steal and steal and steal some more and give it to all your friends and keep on stealin'"
- ReznorOffline
[url=http://dug.net.pl/faq/index.php]klikasz na to[/url]
login i hasło jak na forum
Offline
Time (s) | Query |
---|---|
0.00012 | SET CHARSET latin2 |
0.00005 | SET NAMES latin2 |
0.00100 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.191.192.109' WHERE u.id=1 |
0.00127 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.191.192.109', 1732829953) |
0.00068 | SELECT * FROM punbb_online WHERE logged<1732829653 |
0.00273 | DELETE FROM punbb_online WHERE ident='13.59.111.183' |
0.00157 | DELETE FROM punbb_online WHERE ident='3.17.154.144' |
0.00074 | SELECT topic_id FROM punbb_posts WHERE id=58705 |
0.00011 | SELECT id FROM punbb_posts WHERE topic_id=7739 ORDER BY posted |
0.00088 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=7739 AND t.moved_to IS NULL |
0.00005 | SELECT search_for, replace_with FROM punbb_censoring |
0.00174 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=7739 ORDER BY p.id LIMIT 0,25 |
0.00102 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=7739 |
Total query time: 0.01196 s |