[5b1449d] | 1 | #!/usr/bin/env python3 |
---|
| 2 | |
---|
| 3 | import os |
---|
| 4 | import subprocess |
---|
| 5 | |
---|
| 6 | """ |
---|
| 7 | @file otherservices.py |
---|
| 8 | @brief Script de inicio para cargar otros servicios complementarios. |
---|
| 9 | """ |
---|
| 10 | |
---|
| 11 | # Lanzar servicios complementarios del cliente. |
---|
| 12 | print(os.getenv('MSG_OTHERSERVICES', '.')) |
---|
| 13 | |
---|
| 14 | # Iniciar rsyslog, si es necesario. |
---|
| 15 | if not os.path.exists('/dev/log'): |
---|
| 16 | subprocess.run(['service', 'rsyslog', 'start']) |
---|
| 17 | |
---|
| 18 | # Adpatar la clave de "root" para acceso SSH. |
---|
| 19 | with open('/scripts/ogfunctions', 'r') as file: |
---|
| 20 | for line in file: |
---|
| 21 | if 'OPTIONS=' in line: |
---|
| 22 | pass_option = line.split('pass=')[1].split()[0] |
---|
| 23 | break |
---|
| 24 | else: |
---|
| 25 | pass_option = 'og' |
---|
| 26 | |
---|
| 27 | passwd = pass_option or 'og' |
---|
| 28 | subprocess.run(['passwd', 'root'], input=f'{passwd}\n{passwd}\n', text=True) |
---|
| 29 | |
---|
| 30 | # Cargar el entorno OpenGnsys en conexión SSH. |
---|
| 31 | subprocess.run(['cp', '-a', f'{os.getenv("OPENGNSYS")}/etc/preinit/loadenviron.sh', '/etc/profile.d/']) |
---|
| 32 | |
---|
| 33 | # Arrancar SSH. |
---|
| 34 | subprocess.run(['/etc/init.d/ssh', 'start'], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL) |
---|
| 35 | |
---|
| 36 | # Desactivado apagado de monitor. |
---|
| 37 | # subprocess.run(['setterm', '-blank', '0', '-powersave', 'off', '-powerdown', '0'], stdin=subprocess.DEVNULL, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL) |
---|
| 38 | |
---|
| 39 | # Activado WOL en la interfaz usada en arranque PXE. |
---|
| 40 | subprocess.run(['ethtool', '-s', os.getenv('DEVICE'), 'wol', 'g'], stderr=subprocess.DEVNULL) |
---|
| 41 | |
---|
| 42 | # TODO Localizar correctamente el script de arranque. |
---|
| 43 | if os.path.isfile('/opt/opengnsys/scripts/runhttplog.sh'): |
---|
| 44 | subprocess.run(['/opt/opengnsys/scripts/runhttplog.sh'], stderr=subprocess.DEVNULL) |
---|