标签: tty

Socat 和富终端(使用 Ctrl+C/Ctrl+Z/Ctrl+D 传播)

socat - exec:'bash -li',pty,stderr,ctty -> bash: no job control in this shell

在使用 ssh/sshd 时,我应该使用哪些选项来获得完全成熟的 shell?

我希望能够将 shell 连接到 socat 可以处理的所有内容(SOCKS 5、UDP、OpenSSL),而且还有一个漂亮的 shell 可以正确解释所有键、各种Ctrl+ C/ Ctrl+ Z、制表符完成、向上/向下键(带有远程历史)。

  • 更新 1:找到“setsid” socat 选项。它修复了“无工作控制”。现在试图修复Ctrl+ D

  • 更新 2:

    socat 文件:`tty`,raw,echo=0 exec:'bash -li',pty,stderr,setsid,sigint,sane
    . 不是它处理Ctrl+ D/ Ctrl+ Z/ Ctrl+C好,我可以在里面启动 Vim,远程历史记录是可以的。

linux bash tty job-control

6
推荐指数
1
解决办法
4384
查看次数

我可以在 Linux 上安全地使用同一用户登录多个终端吗?

通过终端我的意思是,你可以切换到使用的手机Ctrl+ Alt+ F1-F6

我知道我可以多次登录,但这有任何副作用吗?

linux terminal tty

6
推荐指数
1
解决办法
4163
查看次数

将物理键盘输入重定向到 SSH

我有一个运行 debian linux 的 raspberry pi,我有一个 RFID 阅读器连接到它。RFID 阅读器的作用类似于键盘。每次我扫描一个标签时,它都会输入标签编号,然后回车。

我的问题是我想将 RFID 阅读器的输出重定向到我的 SSH 会话。这意味着在 pi 的物理键盘上输入的任何内容都应该显示在我的 SSH 窗口中。

我试过:cat /dev/tty0但它不会工作,因为用户没有登录。

有没有办法在 pi 启动后禁用登录屏幕,然后通过 SSH 重定向所有输入?

linux ssh tty raspberry-pi debian-wheezy

6
推荐指数
1
解决办法
2862
查看次数

cygwin 中没有 /dev/tty

我安装了菊石并得到了

(Scala 2.11.7 Java 1.8.0_45)
bash: /dev/tty: No such device or address
bash: /dev/tty: No such device or address
Exception in thread "main" java.lang.RuntimeException: Nonzero exit value: 1
        at scala.sys.package$.error(package.scala:27)
        at scala.sys.process.ProcessBuilderImpl$AbstractBuilder.slurp(ProcessBuilderImpl.scala:132)
        at scala.sys.process.ProcessBuilderImpl$AbstractBuilder.$bang$bang(ProcessBuilderImpl.scala:102)
        at ammonite.terminal.TTY$.stty(Utils.scala:85)
        at ammonite.terminal.TTY$.init(Utils.scala:64)
        at ammonite.terminal.TermCore$.x$6$lzycompute$1(TermCore.scala:244)
        at ammonite.terminal.TermCore$.x$6$1(TermCore.scala:244)
        at ammonite.terminal.TermCore$.initialConfig$lzycompute$1(TermCore.scala:244)
        at ammonite.terminal.TermCore$.initialConfig$1(TermCore.scala:244)
        at ammonite.terminal.TermCore$.readLine(TermCore.scala:254)
        at ammonite.repl.frontend.AmmoniteFrontEnd.readLine(AmmoniteFrontEnd.scala:110)
        at ammonite.repl.frontend.AmmoniteFrontEnd.action(AmmoniteFrontEnd.scala:25)
        at ammonite.repl.Repl.action(Repl.scala:46)
        at ammonite.repl.Repl.loop$1(Repl.scala:79)
        at ammonite.repl.Repl.run(Repl.scala:97)
        at ammonite.repl.Main$.run(Main.scala:135)
        at ammonite.repl.Main$$anonfun$main$2.apply(Main.scala:82)
        at ammonite.repl.Main$$anonfun$main$2.apply(Main.scala:81)
        at scala.Option.foreach(Option.scala:257)
        at ammonite.repl.Main$.main(Main.scala:81)
        at ammonite.repl.Main.main(Main.scala)
Run Code Online (Sandbox Code Playgroud)

尽管/dev/tty/dev/ttyS0我的cygwin的存在。我该如何解决?

cygwin tty

6
推荐指数
1
解决办法
1536
查看次数

如何向 Ubuntu 16.04 添加更多 TTY?

问题基本上是标题。我试图Ctr+ Alt+ F7,但没有任何反应。我使用了所有当前可用的六个虚拟终端,并且需要更多。如何添加更多 TTY?

terminal tty ubuntu

6
推荐指数
1
解决办法
2798
查看次数

如何在没有 X 的情况下为双显示器方案获取不同的终端

我在没有 X.org 的情况下安装了带有两个显示器(单卡:vga 和 dvi)的 Ubuntu,两个显示器都克隆了登录 shell。我有什么办法可以为这些显示器设置不同的外壳(tty)?

linux terminal multiple-monitors tty

5
推荐指数
1
解决办法
4237
查看次数

如何在 ubuntu 启动时启动交互式脚本?

基于 Ubuntu core 12.04,我准备了一张可启动的 DVD。启动后(仅限控制台),我可以以用户身份登录并启动用于安装嵌入式设备的脚本:

sudo install_script
Run Code Online (Sandbox Code Playgroud)

为了在启动时执行这个脚本,我/etc/rc.local在 DVD 上的根文件系统的映像中添加了以下内容:

/bin/bash -ic install_script
Run Code Online (Sandbox Code Playgroud)

由于这个脚本是无条件执行的,我想给用户一些机会绕过安装并进入登录提示。为此,我想read在 install_script 中使用。不幸的是,从/etc/rc.local. (登录后从 shell 启动的相同脚本没有问题)。

如何在启动时获得一些用户输入?

(一些想法:

  • 也许,我可以以某种方式检测并将 tty 连接到read或连接到脚本?我试过/bin/bash -ic install_script </dev/console无济于事。
  • 也许,有更合适的选项 to/bin/bash或 to read
  • 也许,我可以root通过.bashrc调用sudo install_script(避免检查 sudo 的密码?)启动到某个用户的单个 shell(也许,无需登录?)?
  • 也许,存在一个更好的地方来调用脚本?
  • 我不想将交互(更早发生)和 install_script(例如,通过 isolinux 提供不同的引导选项并/proc/cmdline在脚本中检查)分开,原因如下:在询问用户之前,我想检查系统并概述安装过程中究竟会发生什么。在引导过程的早期阶段,可能还不容易获得用于检查系统的必要信息。

)

boot script tty interactive ubuntu

5
推荐指数
1
解决办法
1万
查看次数

如何在Linux主机的virtual-box中输入tty1-6

我在我的 Ubuntu 主机上安装了一个虚拟机,然后在我的虚拟机上安装了另一个 Ubuntu。一切正常,除了当我尝试在虚拟机中输入 tty1-6 时,我只是在主机中输入 tty1-6,无论虚拟 Ubuntu 是否已被我的鼠标聚焦。如何在我的虚拟 Ubuntu 中输入 tty1-6?

linux virtualbox tty ubuntu

5
推荐指数
1
解决办法
1403
查看次数

虚拟控制台 (tty1) 中的输出慢得离谱;可能的图形加速问题

前段时间在运行 Ubuntu 的旧计算机上,我注意到虚拟控制台(例如tty1)上的输出很慢。这在那里不是问题,甚至几乎没有引起注意。

但是现在在我的新笔记本电脑上使用 Manjaro Linux(源自 Arch)有时速度慢得离谱。我认为这与这里描述和解释的情况不同,因此我的问题不是重复的。我怀疑图形加速问题。

我发现该问题受到处理器时钟速度的严重影响。该视频显示了它在 800 MHz 下的样子。

可能来自dmesg以下方面的相关信息:

[    0.474770] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
[    0.478826] vesafb: mode is 1920x1080x32, linelength=7680, pages=0
[    0.478827] vesafb: scrolling: redraw
[    0.478828] vesafb: Truecolor: size=8:8:8:8, shift=24:16:8:0
[    0.478843] vesafb: framebuffer at 0xa0000000, mapped to 0xffffc90001000000, using 8128k, total 8128k
[    0.661095] Console: switching to colour frame buffer device 240x67
[    0.842325] fb0: VESA VGA frame buffer device …
Run Code Online (Sandbox Code Playgroud)

linux tty virtual-console

5
推荐指数
1
解决办法
2556
查看次数

如何在 Ubuntu 18.04 上加速我的文本控制台?

我刚刚在戴尔 T310 服务器上安装了 18.04,我注意到滚动文本时文本控制台的速度非常慢。

要为此添加一些数字,dmesg在通过 ssh 连接启动后立即调用需要大约半秒才能显示所有输出,但是在控制台上执行它需要大约 36 秒才能获得相同数量的输出。(减速 72 倍)

控制台在 GRUB 之后立即停止,然后似乎将图形模式切换到更高的分辨率。

过去有用的东西是vesafb在 GRUB ( GRUB_CMDLINE_LINUX="video=vesafb:ywrap,mtrr:3"in /etc/default/grub) 中强制执行,但在这里没有任何作用。

这必须与帧缓冲区相关。在 中dmesg,我看到以下内容:

[    0.000000] Kernel command line: BOOT_IMAGE=/vmlinuz-4.15.0-72-generic root=/dev/mapper/ubuntu--vg-ubuntu--lv ro video=vesafb:ywrap,mtrr:3
[    0.212182] pci 0000:01:03.0: BAR 0: assigned to efifb
[    1.115763] efifb: probing for efifb
[    1.115776] efifb: framebuffer at 0xd9800000, using 1216k, total 1216k
[    1.115779] efifb: mode is 640x480x32, linelength=2560, pages=1
[    1.115782] efifb: scrolling: redraw
[    1.115784] efifb: …
Run Code Online (Sandbox Code Playgroud)

console grub tty framebuffer ubuntu

5
推荐指数
1
解决办法
503
查看次数