first cut at a serial console role for rhel7/fedora
This commit is contained in:
parent
557285c6e4
commit
1d967b6b45
3 changed files with 67 additions and 0 deletions
|
@ -36,6 +36,7 @@
|
||||||
- base
|
- base
|
||||||
- rkhunter
|
- rkhunter
|
||||||
- sigul/server
|
- sigul/server
|
||||||
|
- serial-console
|
||||||
|
|
||||||
tasks:
|
tasks:
|
||||||
- include: "{{ tasks }}/motd.yml"
|
- include: "{{ tasks }}/motd.yml"
|
||||||
|
|
35
roles/serial-console/files/serial-getty@.service
Normal file
35
roles/serial-console/files/serial-getty@.service
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
# This file is part of systemd.
|
||||||
|
#
|
||||||
|
# systemd is free software; you can redistribute it and/or modify it
|
||||||
|
# under the terms of the GNU Lesser General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2.1 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
|
||||||
|
[Unit]
|
||||||
|
Description=Serial Getty on %I
|
||||||
|
Documentation=man:agetty(8) man:systemd-getty-generator(8)
|
||||||
|
Documentation=http://0pointer.de/blog/projects/serial-console.html
|
||||||
|
BindsTo=dev-%i.device
|
||||||
|
After=dev-%i.device systemd-user-sessions.service plymouth-quit-wait.service
|
||||||
|
After=rc-local.service
|
||||||
|
|
||||||
|
# If additional gettys are spawned during boot then we should make
|
||||||
|
# sure that this is synchronized before getty.target, even though
|
||||||
|
# getty.target didn't actually pull it in.
|
||||||
|
Before=getty.target
|
||||||
|
IgnoreOnIsolate=yes
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
ExecStart=-/sbin/agetty --keep-baud 115200,38400,9600 %I $TERM
|
||||||
|
Type=idle
|
||||||
|
Restart=always
|
||||||
|
UtmpIdentifier=%I
|
||||||
|
TTYPath=/dev/%I
|
||||||
|
TTYReset=yes
|
||||||
|
TTYVHangup=yes
|
||||||
|
KillMode=process
|
||||||
|
IgnoreSIGPIPE=no
|
||||||
|
SendSIGHUP=yes
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=getty.target
|
31
roles/serial-console/tasks/main.yml
Normal file
31
roles/serial-console/tasks/main.yml
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
#
|
||||||
|
# This role sets up serial console on ttyS0
|
||||||
|
#
|
||||||
|
- name: check for grub serial setup
|
||||||
|
command: cat /etc/grub2.cfg
|
||||||
|
register: serial
|
||||||
|
always_run: yes
|
||||||
|
changed_when: '1 != 1'
|
||||||
|
tags:
|
||||||
|
- serial-console
|
||||||
|
|
||||||
|
- name: set grub to use serial console
|
||||||
|
command: /sbin/grubby --update-kernel=ALL --args="console=tty0 console=ttyS0,115200"
|
||||||
|
when: serial is defined and serial.stdout.find("console=tty0 console=ttyS0,115200") == -1
|
||||||
|
tags:
|
||||||
|
- serial-console
|
||||||
|
|
||||||
|
- name: setup systemd links for getty (S0)
|
||||||
|
copy: src=serial-getty@.service dest=/etc/systemd/system/serial-getty@ttyS0.service
|
||||||
|
tags:
|
||||||
|
- serial-console
|
||||||
|
|
||||||
|
- name: link template in
|
||||||
|
file: src=/etc/systemd/system/getty.target.wants/serial-getty@ttyS0 dest=/etc/systemd/system/serial-getty@ttyS1.service state=link
|
||||||
|
tags:
|
||||||
|
- serial-console
|
||||||
|
|
||||||
|
- name: start and enable
|
||||||
|
service: name=serial-getty@ttyS0 enabled=yes state=started
|
||||||
|
tags:
|
||||||
|
- serial-console
|
Loading…
Add table
Add a link
Reference in a new issue