The path for the serial 3270 console looks like (dev/)3270/tty1 which causes trouble in the systemd-getty-generator as the add_symlink() tries to make directories for each slash even for the slash after the @ symbol in the final link name. --- getty-generator.c | 9 +++++++++ 1 file changed, 9 insertions(+) --- systemd-210/src/getty-generator/getty-generator.c +++ systemd-210/src/getty-generator/getty-generator.c 2014-03-14 14:13:09.296463091 +0000 @@ -67,6 +67,7 @@ static int add_symlink(const char *fserv static int add_serial_getty(const char *tty) { _cleanup_free_ char *n = NULL; + char *at; assert(tty); @@ -76,6 +77,14 @@ static int add_serial_getty(const char * if (!n) return log_oom(); + if ((at = strchr(n, '@'))) { + char *sl; + while (*(++at) && (sl = strchr(at, '/'))) { + *sl = '-'; + at = sl; + } + } + return add_symlink("serial-getty@.service", n); }