Mode tidur Raspberry Pi, cara menghindari

32

Saya menggunakan rilis terbaru "wheezy". Perangkat ini menyediakan beberapa fitur layanan web dan seandainya aktif 24/7. Namun jika server tidak diminta untuk jangka waktu tertentu (sulit untuk menentukan waktu yang tepat), perangkat tampaknya akan tidur (semoga tidak crash). Perangkat terhubung ke internet menggunakan wi-fi dongle. Saya menemukan beberapa jawaban di sini bahwa alasan pembekuan perangkat bisa karena kartu wi-fi sedang dalam mode ekonomis, jadi saya mengikuti instruksi dan dapat mengkonfirmasi bahwa dongle tidak tertidur tetapi mulai berkedip seperti tidak dihadiri dari komputer. itu berarti perangkat itu masih tidur meskipun wi-fi terjaga. Solusinya seperti membeli pi raspberry lain dan membuatnya sepanjang waktu ping tidur tidak berfungsi karena hanya menjadi server mendapatkan permintaan mencegah perangkat tidur. Mencoba menyurvei sesuatu dari perangkat tidak mencegah masuk dalam mode tidur. Saya tidak bisa memastikan bahwa perangkat akan tidur. Saya tidak memiliki monitor atau keyboard yang terpasang, dan mencoba untuk melampirkan sesuatu masalah me-reboot perangkat. Jadi saya saat ini tidak tahu apa yang bisa mengeluarkan perilaku. Dan ya, saya menerapkan semua solusi mencegah crash OS karena tidak ada turbo dan meningkatkan ukuran memori VM minimal.

Don Cesar D'Bazar
sumber
apakah ada sesuatu di file / var / log yang menunjukkan sesuatu sedang terjadi, akan tidur, perangkat mati?
kolin
2
Untuk anak cucu, harap dicatat bahwa perangkat keras pi tidak memiliki potensi mode tidur, menangguhkan, dll . Itu berjalan, atau tidak. Jika dicolokkan, LED daya akan menyala.
goldilocks
Bukan hanya dongle wi-fi Anda. Saya telah terhubung melalui port Ethernet untuk melayani permintaan web dan "tertidur" (atau sesuatu yang dekat dengan kondisi ini) setelah beberapa waktu dan tidak akan melayani permintaan lagi. Jika saya menekan beberapa tombol untuk membangunkannya mulai bekerja lagi. Tetapi itu menyebalkan karena satu-satunya waktu saya membutuhkannya untuk melayani permintaan adalah ketika saya tidak ada di sana untuk membangunkannya.
Saya memiliki masalah dengan Pi yang tampaknya akan tertidur. Saya dapat terjadi setiap beberapa menit dan dapat bertahan selama sekitar 20 detik. Ini terbukti ketika saya mencoba mengakses file melalui share Samba atau ketika saya SSHing ke Pi - semuanya berhenti begitu saja. Saya berpikir bahwa itu mungkin Pi yang sedang dimuat jadi saya berlari 'atas'. Tidak ada bukti pembebanan berat. Namun, saya menemukan bahwa ketika menjalankan 'top', Pi bekerja dengan sempurna. Akses ke file sangat cepat dan koneksi SSH tidak mengalami gangguan. Jadi, saya tidak bisa mengatakan apa yang menyebabkan masalah ini tetapi itu bukan tuntutan berat pada CPU, sebaliknya, Pi
Brian

Jawaban:

9

Saya menggunakan langkah-langkah sederhana dan itu bekerja dengan baik untuk saya:

  1. Buka terminal root di raspberry Pi. Sekarang Anda perlu mengedit skrip Anda yang dimulai X. Pada build default dengan lightdm.

  2. Buka file "lightdm.conf" yang terletak di,

    /etc/lightdm/lightdm.conf

  3. Tambahkan baris di bawah ini ke bagian SeatDefault(atau Seat:*dalam versi LightDM yang lebih baru).

    [SeatDefaults]

    xserver-command = X -s 0 -dpms

  4. Mulai ulang Raspberry Pi Anda.

Sekarang masalah harus diselesaikan.

Tautan sumber: http://chamaras.blogspot.com/2013/03/how-to-deactivate-monitor-sleep-in.html

Chamara Silva
sumber
1
Selamat datang di Stack Exchange. Di sini kami mengharapkan jawaban berdiri sendiri, alih-alih hanya menjadi tautan ke sumber eksternal. Jika Anda dapat menambahkan informasi yang relevan ke dalam jawaban Anda maka itu akan jauh lebih baik.
Jivings
Harap tambahkan informasi yang ada di situs itu: tautan bukanlah jawaban yang dapat diterima.
xxmbabanexx
1
terima kasih atas jawaban terbaiknya, bekerja dengan sangat baik bahkan di tahun 2017
Sverre
8

Sesuatu yang salah. Pi tidak memiliki "mode tidur".

Saya hanya memiliki pi saya beberapa minggu dan tidak meninggalkannya sepanjang waktu, tetapi saya berniat untuk akhirnya dan saya meninggalkannya selama beberapa peregangan panjang. Saya menjalankan raspbian, dan saya memiliki ketidaksukaan pribadi untuk NetworkManager, lol, sehingga dinonaktifkan. Untuk mempertahankan wifi, saya menjalankan script yang ping router setiap lima detik. Jika ping gagal, ini membunuh dhcpcd saat ini dan mencoba mengatur wifi lagi setiap 5 detik sampai berhasil. Log upaya, dan sebenarnya sudah selama lebih dari 24 jam sekarang tanpa perlu menyambung kembali sekali, dan ketika saya pergi ke ssh, tidak ada masalah.

Anda sudah mengatakan, "Mencoba melakukan polling dari perangkat tidak mencegah mode tidur," jadi maksud saya di sini adalah milik saya jelas tidak memiliki masalah ini, jadi ada yang salah.

Anda mengatakan itu akan "tertidur" tetapi sepertinya Anda benar-benar harus reboot. Mengapa Anda percaya itu sedang tidur? AFAICT, pi tidak bisa tidur, tidak memiliki kemampuan seperti itu. Googling sekitar, tampaknya ada beberapa kebingungan tentang ini dari orang-orang yang mengalami masalah seperti Anda.

Perlu diingat bahwa ada LED merah yang tetap menyala setiap kali daya tersambung, apakah pi berjalan atau tidak. Tetapi pi dapat di-boot dan dijalankan atau dihentikan, ia tidak memiliki mode sleep, standby, hibernated, dll .

Jadi pi Anda jatuh, terhenti, atau dalam kondisi beku yang salah. Rasakan untuk melihat apakah itu lebih dari sedikit hangat, yang akan menunjukkan prosesor dalam lingkaran sibuk terus-menerus (salah satu alasan itu mungkin aktif tetapi tidak responsif).

Saya menduga bahwa salah satu alasan Anda meyakini bahwa ia sedang tidur adalah karena "upaya untuk melampirkan sesuatu mengeluarkan masalah pada perangkat". Itu bisa terjadi ketika perangkat benar-benar dihentikan (coba); itu karena beberapa perangkat akan menyebabkan penurunan tegangan singkat (tetapi lihat CATATAN) saat pertama kali dicolokkan, yang berarti mencabut pi kemudian memasangnya kembali - yang seperti yang Anda tahu, menghubungkannya menyebabkannya untuk boot. Dongle wifi ukuran nano saya akan melakukan ini.

CATATAN: Sebenarnya pi kami mungkin dibuat sejak Agustus terakhir, ketika polyfus diganti dengan "celana pendek" - Saya tahu sedikit tentang komponen elektronik atau listrik, tetapi ternyata masalah WRT untuk me-reboot dari perangkat usb tetap sama .

goldilocks
sumber
6

Saya tahu ini adalah pertanyaan lama, tapi itu adalah hasil pertama yang muncul dalam pencarian saya ketika saya memiliki masalah yang sama pada Pi Zero saya yang baru diinstal.

Saya menemukan kunci untuk jawaban saya pada pertanyaan lain ini , di antara sumber-sumber lain.

Jadi pada dasarnya, meskipun Pi sendiri tampaknya tidak memiliki mode tidur, perangkat individual di Linux (termasuk adapter jaringan) dapat. Ketika saya mencoba menjalankan perintah iw wlan0 get power_saveseperti yang disebutkan di atas, saya terus mendapatkan kesalahan, pada awalnya. Itu diperbaiki dengan memperbarui OS:

sudo apt-get update && apt-get upgrade

Lalu saya reboot: sudo reboot now

Setelah itu, iwperintah memverifikasi bahwa mode power_save memang dihidupkan. Jadi, saya mematikannya:

sudo iw wlan0 set power_save off

Sejak itu, semuanya baik-baik saja. Layar saya akan tertidur, tetapi koneksi jaringan tetap aktif, dan saya dapat ssh ke Pi saya bahkan setelah itu diam untuk sementara waktu.

Dougal Campbell
sumber
1
Kepala, saya perlu menggunakan sudo iw dev wlan0 set power_save off(dev harus di sana)
n0nag0n
Yang ini tidak bekerja untuk saya. Meskipun perangkat wlan saya bernama wlan0I getcommand failed: No such device (-19)
gromit190
@ n0nag0n Saya dapat mengonfirmasi bahwa iwmengharapkan salah satu devatau physebagai argumen kedua, tergantung pada bagaimana Anda merujuk ke perangkat nirkabel. Saya juga menambahkan bahwa perintah itu mungkin harus dijalankan setelah setiap reboot.
Dmitry Grigoryev
5

Kedengarannya seperti dongle wifi Anda mulai berdenyut seperti laptop dalam mode siaga, tetapi Anda belum mengonfirmasi bahwa Pi itu sendiri sedang dimatikan. Saya mengalami masalah yang sama.

Saya sudah mencoba ini, tetapi belum menerapkannya cukup lama untuk mengetahui apakah itu menyelesaikan masalah spesifik saya: https://raspberrypi.stackexchange.com/a/4518/4271

Stefan Mohr
sumber
1

Saya akan memeriksa masalah daya. Memasang perangkat yang menyebabkan RPI untuk reboot tidak terlihat terkait dengan mode tidur apa pun.

Sebagai tes cepat, saya akan melakukan ini - menulis skrip kecil (python / akan, apa pun yang lebih handier) dan membuatnya mengirim email "Saya baik" sederhana dan memasukkannya ke crontab Anda untuk mengeksekusi setiap 30 menit atau lebih dan lihat bagaimana kelanjutannya.

abolotnov
sumber
0

Saya ingin tahu apakah saya mengalami hal yang serupa. Saya akan tertarik dengan chip yang ditetapkan dongle Anda dan driver yang Anda gunakan?

Saya punya satu berbasis pada chip RT3072 menggunakan driver rt2800usb / cfg80211. Jika saya menjalankan ini di salah satu Mode Master yaitu Access Point, atau sebagai klien normal ke Access Point / router, sepertinya seolah-olah tidur dan butuh waktu untuk merespons. Saya mengatur laptop saya untuk melakukan ping pi melalui adaptor wifi pada interval kira-kira 1 detik. Saya mengkonfirmasi bahwa dalam mode master dan client, kadang-kadang ping akan time out ~ 5-10 detik dalam mode klien dan 5 - 25 detik dalam mode Master. Dalam mode master, batas waktu menjadi jauh lebih buruk jika saya menjalankan AP dalam 'n mode' dengan HT dan WMM diaktifkan di hostapd.conf. Itu tidak sedekat buruk dalam 'mode g'.

Saya bereksperimen dengan dongle wifi lain menggunakan chip RTL8188SU dengan driver staging r8712u. Sayangnya, saya tidak bisa menjalankan ini dalam mode Master tetapi sebagai klien, itu jauh lebih stabil daripada yang RT3072.

Dengan 3072 dalam mode klien tidak ada penundaan ping khas - mereka acak dari 2ms - 320ms dengan batas waktu sesekali. Dengan 8188SU, delay ping tipikal adalah 2-3ms dengan delay sesekali 166-200ms - tidak ada timeout yang dapat diamati. Apa yang sangat aneh adalah bahwa jika saya membuka sesi ssh ke pi dan mengatur agar berjalan pada 0,01 detik - jadi ada cukup banyak beban CPU dan banyak lalu lintas wifi, kinerja 3072 sangat meningkat dengan waktu ping biasanya 2-3ms. Pemuatan memiliki efek yang serupa pada 3072 yang bekerja dalam mode Master.

Saya tidak tahu apa yang sedang terjadi tetapi saya akan sangat tertarik jika pengguna lain dapat meluangkan waktu untuk melakukan tes ping yang sama pada pi mereka dan melaporkan temuan mereka bersama dengan konfigurasi dan driver mereka. Akan menarik jika orang lain menemukan waktu respon yang buruk dan acak ditingkatkan dengan memuat lalu lintas prosesor / wifi menggunakan atas seperti yang saya lakukan, atau mengatakan menemukan apa pun yang menciptakan beberapa lalu lintas kerja dan tcp / ip melalui wifi.

Ivo
sumber
Ini sebenarnya bukan jawaban, namun memiliki konten yang cukup terperinci yang mungkin tidak akan cocok di bagian komentar dari pertanyaan awal
kolin
Terima kasih atas petunjuk kolin - Saya baru di forum ini dan belum mengetahui semuanya!
Ivo
Saya mencoba menerapkan jawaban Stefans - mematikan manajemen daya (untuk driver cfg80211 / mac80211 Anda dapat menggunakan iw wlan0 set power_save off), dan itu membuat perbedaan yang sangat besar dalam mode klien - penundaan ping acak sekarang cukup stabil pada 2-3ms dan belum ada batas waktu. Ini tidak membantu dengan mode AP (matikan power_save bukan pilihan dengan perangkat saya), tapi saya tidak berpikir itu adalah sumber masalah dalam mode AP karena waktu ping umumnya stabil pula. Sesuatu yang lain menyebabkan batas waktu. Tidak jelas apakah konfigurasi dalam pertanyaan awal adalah untuk mode klien atau AP.
Ivo
0

Sekedar informasi, saya mempunyai masalah ini jadi mencari solusi di sini dan menemukan pertanyaan ini.

Namun kemudian saya mengetahui bahwa itu hanya Pi saya yang kepanasan karena penampilan. Suatu kali saya mengeluarkannya dari kasingnya. Masalahnya tampaknya telah menghilang

ablueman
sumber
0

Bagi saya ini bekerja dengan mengedit /etc/X11/xinit/xserverrcdan mengubah

exec /usr/bin/X -nolisten tcp "$@"

oleh

exec /usr/bin/X -s 0 dpms -nolisten tcp "$@"

Saya menggunakan Raspbian "wheezy" dan saya memulai sesi X dengan startx.

Sumber: http://www.raspberrypi.org/forums/viewtopic.php?f=66&t=18200

zengr
sumber
-1

Sementara saya setuju dengan @goldilocks tentang perangkat pi tidak memiliki fungsi tidur, kernel masih dapat mematikan I / O spesifik saat perangkat sedang berjalan. Melalui alasan inilah Anda mungkin ingin mencoba pengeditan berikut dalam file KBD dan reboot perangkat:

Buat edit berikut di / etc / kbd / config: POWERDOWN_TIME = 0

Hulkmeister
sumber
-1

Saya berasumsi Anda mendefinisikan tidur sebagai layar mati. Ini yang saya temukan bekerja:

sudo setterm -powersave off
Allan Cao
sumber
Pertanyaannya secara spesifik menyatakan "Saya tidak memiliki monitor atau keyboard yang terpasang".
Dmitry Grigoryev
Jika terhubung ke jaringan, poster hanya bisa ssh in. Mengapa suara turun?
Allan Cao