first cut at a serial console role for rhel7/fedora

This commit is contained in:
Kevin Fenzi 2016-09-13 16:21:36 +00:00
parent 557285c6e4
commit 1d967b6b45
3 changed files with 67 additions and 0 deletions

View file

@ -36,6 +36,7 @@
- base
- rkhunter
- sigul/server
- serial-console
tasks:
- include: "{{ tasks }}/motd.yml"

View 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

View 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