Hello,
Jag anpassade en gång ett tillängligt skript till att skapa en procedur för autobackup vid utloggning. Det är ett pythonskript som lägges i uppstartprogram för att känn av när kontot loggar ut för att då ropa på ett loggautbackup.sh som kör en inkrementell roterande rsync.
Nu när jag skulle återinföra denna procedur visade det sig att det inte fungerar längre.
Tydligen är det så att när pythonskriptet skrevs var det gnome som var skrivbordsmiljön och därför händer inget nu i Unity. Körning i terminal svarar att vissa delar av gnome saknas.
Kan man enkelt skriva om pythonskriptet att passa för Unity alternativt installera något som behövs, eller är det bara att skapa manuell backup med programstartare som ropar på loggautbackup.sh?
Behövs fler detaljer? Let me know!
Tack på förhand!
EDIT 160307: Förtydligade att det inte är jag själv som skrivit skriptet
Hur få pythonskript för gnome att funka i unity
-
- Inlägg: 394
- Blev medlem: 22 nov 2009, 16:41
- OS: Ubuntu
- Utgåva: 20.04 Focal Fossa LTS
- Ort: Torslanda
Hur få pythonskript för gnome att funka i unity
Senast redigerad av 1 viper, redigerad totalt 7 gånger.
Oortodox generalist
1 x 20.04 Desktop, 2 x 18.04 Desktop, 2 x 18.04 Server
1 x 20.04 Desktop, 2 x 18.04 Desktop, 2 x 18.04 Server
- Pink Panther
- Inlägg: 3050
- Blev medlem: 08 feb 2009, 02:13
- OS: Linux Mint
- Utgåva: Vet inte/ingen utgåva passar
- Ort: Luna
Re: Hur få pythonskript för gnome att funka i unity
Det bör vara möjligt att utföra följande "Kan man enkelt skriva om pythonskriptet att passa för Unity alternativt" Men då får du presentera ditt pythonskript så medlemmar i forumet som är duktiga på "Unity alternativt" kan bistå med hjälp om någon sådan är tillgänglig.
- Osprey
- Inlägg: 6310
- Blev medlem: 06 apr 2008, 00:09
- OS: Ubuntu
- Ort: Göteborg/Mölndal/Falkenberg
- Kontakt:
Re: Hur få pythonskript för gnome att funka i unity
Förmodligen räcker det att installera de "vissa delar av gnome som saknas", det vill säga någon form av länkbibliotek. De flesta program som är utvecklade för Gnome eller KDE går ju som sådana bra att köra i Unity...
Vad skriver den mer exakt i felutskriften du får...?
Vad skriver den mer exakt i felutskriften du får...?
Agera genom att ta och behålla initiativet, ta de risker detta kräver...
http://www.enargo.com/it/
OpenVMS Shark - i Linux finns inte SYS$CMKRNL...
http://www.enargo.com/it/
OpenVMS Shark - i Linux finns inte SYS$CMKRNL...
-
- Inlägg: 394
- Blev medlem: 22 nov 2009, 16:41
- OS: Ubuntu
- Utgåva: 20.04 Focal Fossa LTS
- Ort: Torslanda
Re: Hur få pythonskript för gnome att funka i unity
Hej igen!
Se nedan de efterfrågade exemplen:
Själva kodsnutten:
Felmeddelandet jag får när jag försöker starta det i terminalen:
"line 30" om man räknar första raden som #1 är "import datetime"
Tack på förhand!
Per
Se nedan de efterfrågade exemplen:
Själva kodsnutten:
Kod: Markera allt
#!/usr/bin/env python
#
#Original Author: Seamus Phelan
#
#This program runs a custom command/script just before gnome shuts
#down. This is done the same way that gedit does it (listening for
#the 'save-yourself' event). This is different to placing scipts
#in /etc/rc#.d/ as the script will be run before gnome exits.
#If the custom script/command fails with a non-zero return code, a
#popup dialog box will appear offering the chance to cancel logout
#
#Usage: 1 - change the command in the 'subprocess.call' in
# function 'session_save_yourself' below to be what ever
# you want to run at logout.
# 2 - Run this program at every gnome login (add via menu System
# -> Preferences -> Session)
#
#VERSION: pythonloggaut
#
#Code:
import sys
import subprocess
import datetime
import gnome
import gnome.ui
import gtk
import os
#import os.system(usr/lib/kontobackup)
class Namespace: pass
ns = Namespace()
ns.dialog = None
def main():
prog = gnome.init ("gnome_save_yourself", "1.0", gnome.libgnome_module_info_get(), sys.argv, [])
client = gnome.ui.master_client()
#set up call back for when 'logout'/'Shutdown' button pressed
client.connect("save-yourself", session_save_yourself)
client.connect("shutdown-cancelled", shutdown_cancelled)
def session_save_yourself( *args):
#Lets try to unmount all truecrypt volumes
# retcode = subprocess.call("usr/lib/kontobackup.sh", shell=True)
# retcode = os.system(/usr/lib/kontobackup.sh)
retcode = os.system("/usr/lib/kontobackup.sh")
if retcode != 0:
#command failed
show_error_dialog()
return True
# if retcode !<> 0:
# #command lyckades
# backup_in_progress()
# return True
def shutdown_cancelled( *args):
if ns.dialog != None:
ns.dialog.destroy()
return True
def show_error_dialog():
ns.dialog = gtk.Dialog("There was a problem running your pre-shutdown script",
None,
gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT,
("There was a problem running your pre-shutdown script - continue logout", gtk.RESPONSE_ACCEPT))
if ns.test_mode == True:
response = ns.dialog.run()
ns.dialog.destroy()
else:
#when in shutdown mode gnome will only allow you to open a window using master_client().save_any_dialog()
#It also adds the 'Cancel logout' button
gnome.ui.master_client().save_any_dialog(ns.dialog)
#Find out if we are in test mode???
if len(sys.argv) >=2 and sys.argv[1] == "test":
ns.test_mode = True
else:
ns.test_mode = False
if ns.test_mode == True:
main()
session_save_yourself()
else:
main()
gtk.main()
Felmeddelandet jag får när jag försöker starta det i terminalen:
Kod: Markera allt
Traceback (most recent call last):
File "/home/administrator/Ubuntu/autobackup/pythonloggaut.py", line 30, in <module>
import gnome
ImportError: No module named gnome
Tack på förhand!
Per
Oortodox generalist
1 x 20.04 Desktop, 2 x 18.04 Desktop, 2 x 18.04 Server
1 x 20.04 Desktop, 2 x 18.04 Desktop, 2 x 18.04 Server