mirror of
https://github.com/RasppleII/a2cloud.git
synced 2026-04-19 23:16:25 +00:00
USB shell login and ADTPro server daemon support for Jessie
This commit is contained in:
+17
-1
@@ -35,11 +35,27 @@ elif [[ $1 == "add" ]]; then
|
||||
touch /tmp/udev-ttyUSBlower-added
|
||||
pkill -f "[A]DTPro"
|
||||
pkill -f "[u]sbgetty"
|
||||
exec /usr/local/adtpro/adtpro.sh headless serial
|
||||
exec echo "/usr/local/adtpro/adtpro.sh headless serial" | at -M now
|
||||
else # ttyUSBupper
|
||||
rm /tmp/udev-ttyUSBupper-added &> /dev/null
|
||||
touch /tmp/udev-ttyUSBupper-added
|
||||
pkill -f "[g]etty.*ttyUSB"
|
||||
if [[ -f /bin/systemctl ]]; then # if systemd
|
||||
# if USB-to-serial adapter is directly attached to upper port
|
||||
if [[ -c /dev/ttyUSBupper ]]; then
|
||||
ttyUSB=ttyUSBupper
|
||||
# if hub in upper port, use highest numbered port on hub
|
||||
elif [[ $(ls -1 /dev/ttyUSBupper_hub* 2> /dev/null | wc -l) -gt 0 ]]; then
|
||||
ttyUSB=$(ls -1 /dev/ttyUSBupper_hub* 2> /dev/null | tail -1 | cut -c 6-)
|
||||
# if hub in lower port with multiple adapters, use highest numbered port on hub
|
||||
elif [[ $(ls -1 /dev/ttyUSBlower_hub* 2> /dev/null | wc -l) -gt 1 ]]; then
|
||||
ttyUSB=$(ls -1 /dev/ttyUSBlower_hub* 2> /dev/null | tail -1 | cut -c 6-)
|
||||
else
|
||||
# by definition, this shouldn't happen
|
||||
ttyUSB=
|
||||
fi
|
||||
exec systemctl restart usbgetty@$ttyUSB
|
||||
fi
|
||||
fi
|
||||
else
|
||||
exit 2
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
# 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.
|
||||
|
||||
# This file is adapted for A2CLOUD. It to be called usbgetty@.service
|
||||
# and needs to be placed in /etc/systemd/system/getty.target.wants/
|
||||
# Symlinks pointing to it need to be in place for every serial port
|
||||
# defined in /etc/udev/rules.d/50-usb.rules, e.g.
|
||||
# usbgetty@ttyUSBupper.service -> usbgetty@.service
|
||||
|
||||
[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 %I 4800 $TERM
|
||||
ExecStart=-/usr/local/sbin/usbgetty -h -L -scanttyUSB 4800 vt100
|
||||
Type=idle
|
||||
Restart=always
|
||||
UtmpIdentifier=%I
|
||||
TTYPath=/dev/%I
|
||||
TTYReset=yes
|
||||
TTYVHangup=yes
|
||||
KillMode=process
|
||||
IgnoreSIGPIPE=no
|
||||
SendSIGHUP=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=getty.target
|
||||
Reference in New Issue
Block a user