Pagina 1 di 1

Screen e criu

Inviato: mercoledì 5 aprile 2017, 22:14
da ant1988
Salve a tutti ho un problema un pò ostico sulla mia macchina ed é il seguente:
ho messo in screen un programma e poi ovviamente ho fatto il detach con ctrl+a e ctrl+d
niente di male fin qui se nonché volevo "congelare" il processo che sta su screen.
Ora: ho congelato solamente il processo genitore ovvero screen ma al riavvio ho perso tutto (dicendomi che il restore non é andato a buon fine) :cry: :cry:
Quindi mi domando come faccio a "congelare" sia screen sia il processo che sta dentro screen(ovviamente tramite criu)??
Ps lo so sono scarso perdonatemi

Codice: Seleziona tutto

root@antonio-All-Series:/home/antonio/Scaricati/cmix-master# criu restore -d -D checkpoint
    
 21959: Warn  (criu/autofs.c:77): Failed to find pipe_ino option (old kernel?)
Warn  (criu/cr-restore.c:1399): blocked for more than 120 seconds
 21959: Warn  (criu/cr-restore.c:1353): blocked for more than 120 seconds
 21959: Error (criu/fifo.c:87): Can't open fake fifo 0x11 [run/screen/S-antonio/21959.pts-1.antonio-All-Series]: No such file or directory
 21959: Error (criu/files-reg.c:1463): Can't open file run/screen/S-antonio/21959.pts-1.antonio-All-Series: No such file or directory
Error (criu/cr-restore.c:1890): Restoring FAILED.
root@antonio-All-Series:/home/antonio/Scaricati/cmix-master# 

Re: Screen e criu

Inviato: giovedì 6 aprile 2017, 16:02
da ant1988
nessuno sa rispondermi?

Re: Screen e criu

Inviato: giovedì 6 aprile 2017, 17:01
da DoctorStrange
Screen tipicamente si usa sui server o, comunque sulle macchine alle quali ci si connette in remoto.

Se tu avvii screen in locale e poi riavvi la macchina sulla quale screen stesso è ospitato, mi pare normale che anche screen venga arrestato.

Nessun processo sopravvive ad un reboot.

Se hai un server e vuoi che un processo continui ad essere eseguito, anche se tu fai il logout, allora screen è il programma ideale per te, altrimenti spiega meglio cosa vorresti ottenere, grazie.

Re: Screen e criu

Inviato: giovedì 6 aprile 2017, 18:15
da ant1988
Allora visto il programma che vorrei far girare sulla macchina lo mantiene occupato per giorni e giorni ho deciso di dare il comando:

Codice: Seleziona tutto

 screen cmix
e ovviamente poi tutte le sue opzioni
In modo tale da riprendere la sessione in qualsiasi momento.
Il problema é che per eseguire screen mi tocca mettere in sospensione (in ram) la macchina ; altrimenti se riavvio (anche per un semplice cambio di kernel) la sessione screen che avevo mi viene terminata ora capite bene che riavviare tutte le volte il programma che contiene screen e che dura giorni e giorni da un pò noia....
comunque non é vero
Nessun processo sopravvive ad un reboot.
perché se guardi questo sito dice che i processi possono venire congelati:
Using this tool, you can freeze a running application (or part of it) and checkpoint it as a collection of files on disk. You can then use the files to restore the application and run it exactly as it was during the time of freeze. With this feature, application live migration, snapshots, remote debugging, and many other things are possible.
Ps se qualcuno se lo sta chiedendo: sì ho il kernel con il checkpoint/restore vedi allegato

Re: Screen e criu

Inviato: venerdì 7 aprile 2017, 15:02
da ant1988
UP

Re: Screen e criu

Inviato: venerdì 7 aprile 2017, 15:45
da DoctorStrange
Non mi pare che, anche nel sito che hai postato faccia riferimento al fatto che quell'applicazione possa "sopravvivere" al reboot.

Una volta riavviata la macchina, l'applicazione andrebbe riavviata e, se appositamente realizzata in modo da andare a cercare su disco l'eventuale esistenza di uno stato di persistenza precedente al reboot allora si, potrebbe funzionare, ma non credo che questo possa verificarsi per ogni applicazione.

Ma scusa la domanda sorge spontanea: se hai queste applicazioni che devono lavorare in background, non puoi semplicemente avviarle, e poi dimenticartene?

Magari realzzi uno script che ti notifica quando l'applicazione ha terminato.

Re: Screen e criu

Inviato: venerdì 7 aprile 2017, 19:17
da ant1988
Ma scusa la domanda sorge spontanea: se hai queste applicazioni che devono lavorare in background, non puoi semplicemente avviarle, e poi dimenticartene?
Evidentemente se sono qui a scrivere la risposta é un sonoro NO.
Per il programma cmix (che serve a comprimere a un rate spettacolare 10 volte tanto la forma originaria del file per capirsi) per fare questo mi serve una macchina con 32GiB di memoria RAM e una cpu i7 che tengo vicino al mio letto e sinceramente parlando farla lavorare/metterla in sospensione in ram visto che il led blu dell'accensione del pc é sempre acceso , se permetti, rompe un pò.
Altrimenti non avrei cercato aiuto qui.
Potrei farlo con il mio raspberry ma ho già provato e mi da errore di memoria.