def _start_mgetty(self): inittab = InittabManager() port = self._get_port_name() gname = 'MPX_MGETTY_%s' % port.upper() if self.enable: loglevel = 0 if self.debug: loglevel = 9 else: # Remove stale mgetty log if not debugging. No sense using # TARGET_ROOT here since mgetty doesn't know anything about it. logfile = "/var/log/mgetty.log.%s" % port if os.path.isfile(logfile): os.remove(logfile) tag = port[-2:] if not inittab.findgroup(gname): inittab.addgroup( InittabGroup( gname, '%s:2345:respawn:/sbin/mgetty -x %d -n 1 %s' % (tag, loglevel, port))) else: inittab.remgroup(gname) inittab.commit()
def _start_mgetty( self ): inittab = InittabManager() port = self._get_port_name() gname = 'MPX_MGETTY_%s' % port.upper() if self.enable: loglevel = 0 if self.debug: loglevel = 9 else: # Remove stale mgetty log if not debugging. No sense using # TARGET_ROOT here since mgetty doesn't know anything about it. logfile = "/var/log/mgetty.log.%s" % port if os.path.isfile( logfile ): os.remove( logfile ) tag = port[-2:] if not inittab.findgroup( gname ): inittab.addgroup( InittabGroup(gname, '%s:2345:respawn:/sbin/mgetty -x %d -n 1 %s' % (tag, loglevel, port)) ) else: inittab.remgroup( gname ) inittab.commit()
def _start_ppp_program( self ): inittab = InittabManager() port_name = self._getPortName() tag = port_name[-2:] gname = 'MPX_MGETTY_%s' % port_name.upper() if self.enable: if not inittab.findgroup( gname ): inittab.addgroup( InittabGroup( gname, '%s:2345:respawn:/sbin/mgetty -x 0 -n 1 %s' % (tag, port_name) ) ) else: inittab.remgroup( gname ) inittab.commit()
def _start_ppp_program(self): inittab = InittabManager() port_name = self._getPortName() tag = port_name[-2:] gname = 'MPX_MGETTY_%s' % port_name.upper() if self.enable: if not inittab.findgroup(gname): inittab.addgroup( InittabGroup( gname, '%s:2345:respawn:/sbin/mgetty -x 0 -n 1 %s' % (tag, port_name))) else: inittab.remgroup(gname) inittab.commit()
def _update_inittab(self): # @todo Support xinit.d enabling/disabling as well. wdt = os.path.join(BIN_DIR, 'wdt') wdt_key = 'HW_WATCHDOG' blinky_bill = os.path.join(BIN_DIR, 'blinky_bill') blinky_key = 'MPX_STATUS_LED' proftpd = '/usr/sbin/proftpd' proftpd_key = 'MPX_FTPD' service_map = { wdt_key: { 'delete_all': '^([^:]*):([^:]*):([^:]*):(.*\\bwdt\\b.*)', 'add': ('wdt:2345:once:%s' % wdt) }, blinky_key: { 'delete_all': '^([^:]*):([^:]*):([^:]*):(.*\\bblinky_bill\\b.*)', 'add': ('led:2345:respawn:%s' % blinky_bill) }, proftpd_key: { 'delete_all': '^([^:]*):([^:]*):([^:]*):(.*\\b\\Sproftpd\\b.*)', 'add': ('%s%sftpd:2345:respawn:%s -n' % (InittabGroup.ENTRY_DISABLED_TAG, InittabGroup.TAG_SEP, proftpd)) }, 'MPX_APP': { 'delete_all': ('^([^:]*):([^:]*):([^:]*):(.*\\b%s\\b.*)' % os.path.basename(RC_MFW_SCRIPT)), 'add': ('mfw:345:respawn:%s >/dev/null' % RC_MFW_SCRIPT) }, } for f, k in ((wdt, wdt_key), (blinky_bill, blinky_key), (proftpd, proftpd_key)): if not os.path.exists(f): service_map[k].pop('add', None) inittab = InittabManager() for gname in service_map.keys(): inittab.remgroup(gname) inittab.delete_matching_lines(service_map[gname]['delete_all']) if service_map[gname].has_key('add'): inittab.addgroup(InittabGroup(gname, service_map[gname]['add'])) inittab.commit() return
def _update_inittab(self): # @todo Support xinit.d enabling/disabling as well. wdt = os.path.join(BIN_DIR, "wdt") wdt_key = "HW_WATCHDOG" blinky_bill = os.path.join(BIN_DIR, "blinky_bill") blinky_key = "MPX_STATUS_LED" proftpd = "/usr/sbin/proftpd" proftpd_key = "MPX_FTPD" service_map = { wdt_key: {"delete_all": "^([^:]*):([^:]*):([^:]*):(.*\\bwdt\\b.*)", "add": ("wdt:2345:once:%s" % wdt)}, blinky_key: { "delete_all": "^([^:]*):([^:]*):([^:]*):(.*\\bblinky_bill\\b.*)", "add": ("led:2345:respawn:%s" % blinky_bill), }, proftpd_key: { "delete_all": "^([^:]*):([^:]*):([^:]*):(.*\\b\\Sproftpd\\b.*)", "add": ( "%s%sftpd:2345:respawn:%s -n" % (InittabGroup.ENTRY_DISABLED_TAG, InittabGroup.TAG_SEP, proftpd) ), }, "MPX_APP": { "delete_all": ("^([^:]*):([^:]*):([^:]*):(.*\\b%s\\b.*)" % os.path.basename(RC_MFW_SCRIPT)), "add": ("mfw:345:respawn:%s >/dev/null" % RC_MFW_SCRIPT), }, } for f, k in ((wdt, wdt_key), (blinky_bill, blinky_key), (proftpd, proftpd_key)): if not os.path.exists(f): service_map[k].pop("add", None) inittab = InittabManager() for gname in service_map.keys(): inittab.remgroup(gname) inittab.delete_matching_lines(service_map[gname]["delete_all"]) if service_map[gname].has_key("add"): inittab.addgroup(InittabGroup(gname, service_map[gname]["add"])) inittab.commit() return