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/.
Strony: 1
Napisałem sobie skrypt który ubija jedną aplikację podczas wstrzymania/hibernacji i przywraca przy wybudzaniu.
adam@debian:~/Desktop$ cat /etc/pm/sleep.d/50tvheadend #!/bin/sh if [ "$1" = "suspend" ] then killall tvheadend fi if [ "$1" = "resume" ] then /etc/init.d/tvheadend fi if [ "$2" = "hibernate" ] then killall tvheadend fi if [ "$2" = "resume" ] then /etc/init.d/tvheadend fi
Działa dobrze przy wstrzymaniu natomiast przy hibernacji już nie.
Owszem proces jest ubijany ale już podczas wybudzania nie przywraca go.
Domyślam się ,że błędnym poleceniem przy hibernacji jest
if [ "$2" = "resume" ]
Jakie powinno być właściwe ?
Offline
Spróbuj tak:
#!/bin/bash case $1 in hibernate) echo "Hey guy, we are going to suspend to disk!" ;; suspend) echo "Oh, this time we're doing a suspend to RAM. Cool!" ;; thaw) echo "oh, suspend to disk is over, we are resuming..." ;; resume) echo "hey, the suspend to RAM seems to be over..." ;; *) echo "somebody is calling me totally wrong." ;; esac
Sznurki:
http://en.opensuse.org/SDB:Pm-utils
https://wiki.archlinux.org/index.php/Pm-utils
http://www.gentoo-wiki.info/Pm-utils
Poza tym ten if fi w kółko? jak nie case - choć jest do tego? to ewentualnie if; elif; elif; else;
Nie dawałbym też wiele razy w skrypcie parametru $1, $2 , z jakichś nieznanych mi powodów u mnie często się coś sypało w takich skryptach, jak natomiast zadeklarowałem zmienną, która przyjmowała wartość $1 - działało.
I nie bardzo rozumiem, dlaczego pytasz raz o $1, raz o $2 (ale ja w końcu lama jestem :D )
Ostatnio edytowany przez Jacekalex (2013-02-11 10:16:21)
Offline
W /usr/lib/pm-utils/sleep.d/ jest już sporo skryptów od pm-utils, możesz jako wzór użyć. :)
Offline
[quote=ArnVaker]W /usr/lib/pm-utils/sleep.d/ jest już sporo skryptów od pm-utils, możesz jako wzór użyć. :)[/quote]
Najprostsze rozwiązania są najskuteczniejsze :)
adam@debian$ cat /etc/pm/sleep.d/50tvheadend # /etc/pm/sleep.d/60_wpa_supplicant # Action script to notify wpa_supplicant of pm-action events. #!/bin/bash PATH=/sbin:/usr/sbin:/bin:/usr/bin:/etc/init.d : /usr/local/bin TV=/etc/init.d/tvheadend case "$1" in suspend|hibernate) killall tvheadend ;; resume|thaw) $TV resume ;; esac
Działa tak jak chcę :)
Dzięki.
Offline
Strony: 1
Time (s) | Query |
---|---|
0.00034 | SET CHARSET latin2 |
0.00005 | SET NAMES latin2 |
0.00181 | 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='3.14.145.167' WHERE u.id=1 |
0.00083 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.14.145.167', 1732634795) |
0.00071 | SELECT * FROM punbb_online WHERE logged<1732634495 |
0.00067 | 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=22925 AND t.moved_to IS NULL |
0.00006 | SELECT search_for, replace_with FROM punbb_censoring |
0.00118 | 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=22925 ORDER BY p.id LIMIT 0,25 |
0.00051 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=22925 |
Total query time: 0.00616 s |