[Solved] Automatyczne uruchamianie i uśpienie laptopa

Jesteś nowy na forum? Przeczytaj ...

Home Fora Forum wsparcia Oprogramowanie [Solved] Automatyczne uruchamianie i uśpienie laptopa

Oglądasz 15 posty - 1 do 15 (z 21 ogółem)
  • Autor
    Posty
  • #6136
    wiini
    Forumowicz

    Witam
    znalazłem w internecie fajny skrypt do usypiania laptopa i automatycznego wybudzenia o zadanej godzinie i oraz włączania np strony z internetowym radiem. Niestety to nie do końca to czego bym potrzebował. Czy jest jakaś możliwość aby tak zmodyfikować ten skrypt aby laptop usypiał się i włączał zawsze o tej samej godzinie ( chciałbym z niego zrobić budzik )?
    Za wszelką pomoc będę bardzo wdzięczny.

    #!/bin/bash
    
    # Auto suspend and wake-up script
    #
    # Puts the computer on standby and automatically wakes it up at specified time
    #
    # Written by Romke van der Meulen
    # Minor mods fossfreedom for AskUbuntu
    # Minor mods mario_7 - using -s instad of -t
    #
    # Takes a 24hour time HH:MM as its argument
    # Example:
    # suspend_until 9:30
    # suspend_until 18:45
    
    # ------------------------------------------------------
    # Argument check
    if [ $# -lt 1 ]; then
    echo "Usage: suspend_until HH:MM"
    exit
    fi
    
    # Check whether specified time today or tomorrow
    DESIRED=$((<code>date +%s -d &quot;$1&quot;</code> - <code>date +%s</code>))
    if [ $DESIRED -lt 0 ]; then
    DESIRED=$((DESIRED + 24*60*60))
    fi
    
    # Kill rtcwake if already running
    sudo killall rtcwake
    
    # Set RTC wakeup time
    # N.B. change "mem" for the suspend option
    # find this by "man rtcwake"
    sudo rtcwake -l -m mem -s $DESIRED &
    
    # feedback
    echo "Suspending..."
    
    # give rtcwake some time to make its stuff
    sleep 2
    
    # then suspend
    # N.B. dont usually require this bit
    #sudo pm-suspend
    
    # Any commands you want to launch after wakeup can be placed here
    # Remember: sudo may have expired by now
    
    # Wake up with monitor enabled N.B. change "on" for "off" if
    # you want the monitor to be disabled on wake
    xset dpms force on
    
    # and a fresh console
    clear
    echo "Dzien Dobry !"
    
    # and a fresh console
    shutdown 47 &
    
    palemoon http://fm.tuba.pl/play/9/2/radio-zlote-przeboje
    
    #6137
    Avatar photonapcok
    Administrator

    Jak możesz to daj linka do skryptu, albo wklej na pastebin czy coś takiego.
    Bo tu przy wklejaniu powstały śmieci z tego co widzę…

    #6138
    pavbaranov
    Forumowicz

    Zerknij sobie na:
    man rtcwake
    Samo rtcwake prawdopodobnie masz w systemie (jeśli nie, to jest w repozytorium). Stwórz np. prosty skrypt w bashu (jeśli to Twoja powłoka) i daj do autostartu. Wówczas komputer będziesz mógł uśpić o dowolnej porze, a „obudzi się” o zadanej w poleceniu rtcwake. Dlaczego do autostartu? Żeby po całkowitym wyłączeniu również podniosło się to polecenie. Usypianie o z góry zadanej porze, automatycznie, uważam za dość głupi pomysł.

    #6139
    wiini
    Forumowicz

    skrypt

    pavbaranov – przeglądnę, chociaż wiem, że to zbyt wysokie progi.

    pozdrawiam

    #6140
    Avatar photonapcok
    Administrator

    W sumie to nic nie trzeba przerabiać. Wystarczy dodać odpowiednie wywołanie tego skryptu do crontaba.
    Podaj proszę:
    – godzinę uśpienia
    – godzinę wybudzenia
    – scieżkę do skryptu

    To napiszę ci odpowiedni wpis do crontaba oraz opiszę jak go dodać.

    #6141
    wiini
    Forumowicz

    uśpienie 7:35
    wybudzenie 6:50
    /home/wiini/Skrypty/start_komputera

    #6142
    pavbaranov
    Forumowicz

    Hmmm… nie wiem, czy to tak działa jak sądzę, ale:

    #!/bin/bash
    rtcwake -m no -u -t $(date +%s -d 'tomorrow 06:30')

    Zapisać to w jakimkolwiek pliku (w przykładzie to „podbudka.sh”), oczywiście dostosowując godzinę do swoich wymogów (ostatnie 4 cyfry), nadać mu upranienia wykonywalne i umieścić gdzieś w $PATH. Następnie utworzyć plik np. /etc/xdg/autostart/pobudka.desktop o treści

    [Desktop Entry]
    Name=Pobudka
    Exec=/ścieżka/do/pliku/pobudka.sh
    Type=Service
    NoDisplay=true

    I chyba winno robić to co zamierzone, czyli przy pierwszym restarcie komputera (lub po wydaniu polecenia) powinno się dokonać automatycznego wybudzenia komputera następnego dnia, tu w przykładzie o 6:30. Kolejnego dnia winno zrobić… to samo :) itd. Głowy nie daję. Nie bić ;)
    Dlaczego nie ma tu automatycznego uśpienia? Cóż – jestem ostatnią osobą, która by to doradzała. Kiedyś ustawiłem sobie jakiś programik typu KShutdown, czy inny KGet, by mi wyłączył (czy uśpił) komputer o określonej porze. Zrobił to doskonale. Niestety… podczas mojej pracy. Zanim zdążyłem odwołać polecenie było już po zawodach. Niestety dodatkowo coś się podziało i po ponownym uruchomieniu odzyskałem już jedynie część pracy. Jeśli zatem nic innego nie stoi na przeszkodzie – wolę to robić ręcznie.
    Nadto jeszcze łap linki: pierwszy, drugi i trzeci.

    #6143
    wiini
    Forumowicz

    W tym skrypcie, który mam wszystko jest tak jak powinno być, podaję ./start_komputera 6:50 i po wpisaniu hasła komputer się usypia i budzi o 6:50 włączając stronę z radiem internetowym ( wpisałem nawet żeby wyłączał się po 47 minutach co również działa akurat jak wychodzę z domu) tylko, że musiał bym codziennie włączać wieczorem komputer i wpisywać regułkę, a to bym właśnie chciał „zautomatyzować” czyli włączam raz laptopa wydaję polecenie i wybudza się o 6:50 gra radyjko po czym usypia się o 7:35 ( akurat jak wychodzę z domu) i tak codziennie. Laptop to stary EEE PC i służyłby tylko jako budzik wiec problemy z utrata czegokolwiek nie grożą.

    #6144
    pavbaranov
    Forumowicz

    Łap jeszcze to: automatyzacja uśpienia i wybudzania z systemd. Osobiście jestem za systemowymi rozwiązaniami :) Można się też pokusić o automatyczne odtwarzanie jakiegoś radia internetowego :)
    Skrypt jednak – dobry i spełni Twoje oczekiwania.

    #6145
    Avatar photonapcok
    Administrator

    Łap wpis do crontaba:

    35 7 * * * /home/wiini/Skrypty/start_komputera 6:50 >/dev/null 2>&1
    

    Nie wiem jakiego edytora używasz ale jeśli kwrite to odpal następującą komendą:
    VISUAL=kwrite crontab -e

    następnie wklej tą linię co podałem.

    To zadziała codziennie w każdym dniu tygodnia, jeśli chcesz pobudkę tylko od poniedziałku do piątku to trzeba będzie jeszcze pokombinować :)

    #6148
    Avatar photoazja
    Moderator

    (…)
    Usypianie o z góry zadanej porze, automatycznie, uważam za dość głupi pomysł.

    … niekoniecznie. Wyobraź sobie, że używasz komp’a jako urządzenia multimedialnego i masz, godny potępienia, nawyk zasypiania przy telewizorze lub radiu. O trzeciej jeszcze oglądasz emocjonujący horror lub słuchasz Bacha, ale o czwartej spisz już snem sprawiedliwego, aż do wczesnoporannej pobudki o dziewiątej. Wszystko zależy od indywidualnych potrzeb.

    Nie zadawaj pytania, jeżeli nie jesteś gotów usłyszeć odpowiedzi

    #6150
    wiini
    Forumowicz

    Chyba coś robię nie tak, używam zwykle gedit więc zrobiłem
    VISUAL=gedit crontab -e
    otworzyło się okienko więc wkleiłem to ze ścieżką dostępu zmieniając z godziny 6:50 na godzinę 19:00 i zapisałem, a następnie uśpiłem komputer, ale nic się nie wydarzyło.
    Tak na chłopski rozum bo do wiedzy informatycznej pasuję jak wół do karety, ale czy uruchamianie skryptu o danej godzinie jest słuszne skoro sam skrypt najpierw usypia komputer, a potem go wybudza o ustalonej godzinie.

    #6151
    Avatar photonapcok
    Administrator

    35 7 * * * /home/wiini/Skrypty/start_komputera 6:50 >/dev/null 2>&1

    Ta linia i skrypt wykonuje się o godzinie 7:35 i znaczy tyle:

    o 7:35 uśpij system i ustaw jego wybudzenie na 6:50 (czyli następnego dnia).

    Jeśli chcesz sobie potestować to zmień godziny wykonawania skryptu oraz godzinę na którą ustawiasz wybudzanie.

    „Chłopski rozum” tu w zupełności wystarczy.

    Polecam również lekturę stron manuala cron oraz crontab.
    Używając Linuksa warto poznać choćby jego podstawowe polecenia i funkcjonalności.

    man crontab
    man cron
    #6202
    wiini
    Forumowicz

    Coś jest nie tak lub coś źle robię. Długo testowałem i szukałem rozwiązania, ale jakoś mi się nie udało. Komputer się usypia i włącza o ustalonych godzinach, ale nie włącza konsoli, a co za tym idzie polecenie do uruchomienia palemoona z linkiem do radia nie działa. Jakby ktoś miał jakiś pomysł to będę wdzięczny.

    #6203
    Avatar photonapcok
    Administrator

    A wcześniej jak robiłeś to ręcznie to uruchamiało Palemoona? :)

    Łap komendę do odpalania Radia Złote Przeboje za pomocą mpv
    mpv http://poznan5-6.radio.pionier.net.pl:8000/tuba9-1.mp3

    w mplayerze też oczywiście działa.

Oglądasz 15 posty - 1 do 15 (z 21 ogółem)
  • Musisz być zalogowany aby odpowiedzieć w tym wątku.