Distributions
› Ubuntu
› Fedora
› CentOS
中文资源站
› 网易开源镜像站
mornone
V2EX  ›  Linux

如图所示这种定制过的 Linux 系统,如何做到一开机就进入这种自定义的页面的?

  •  
  •   mornone · Dec 2, 2024 · 5269 views
    This topic created in 706 days ago, the information mentioned may be changed or developed.

    各位 V2EX 上的大佬,请问这是用的什么技术?

    拿到行业内的一个产品测试,对方要求提供一个服务器,将服务器 SSH 交给对方后,对方技术在服务器上一通操作部署后,服务器已经无法正常通过 SSH 来登录,通过服务器控制台再次进入就是图中这个样子,会显示一个产品的浏览器 URL 访问地址。

    请忽略图中打码部分,这部分为产品的名称,公司电话等,还有产品的访问 URL 地址等信息。请问这种 Linux 定制 UI 界面是什么的什么技术呢?

    3378d6311fc5eccc2be3ff76b125099e.png

    acbcc6444a7d6d01ec50e0f009d1352f.png

    22 replies  •  2024-12-03 15:24:35 +08:00
    defunct9
    defunct9
    Dec 2, 2024
    1
    图看不到
    CapNemo
    CapNemo
    Dec 2, 2024
    2
    设置用户的登陆 shell 即可
    sivacohan
    sivacohan
    Dec 2, 2024
    3
    这东西叫 TUI ,Text-based user interface
    找个喜欢的工具就可以做。
    InDom
    InDom
    Dec 2, 2024❤️1
    4
    不懂,但猜可以通过 useradd -s /sbin/nologin 相似的手法,指向自己开发的程序代替 bash 是可行的。
    narakus
    narakus
    Dec 2, 2024
    5
    @InDom 之前整个自己写的跳板机,就是这种方法设置的,确实可行
    virusdefender
    virusdefender
    Dec 2, 2024
    6
    修改 login shell 为其他的程序就可以
    mornone
    mornone
    OP
    Dec 2, 2024
    7
    @narakus 大佬,不太懂,能大概说一下思路吗?
    mornone
    mornone
    OP
    Dec 2, 2024
    8
    @virusdefender 大佬,不太懂,能大概说一下吗?
    debuggerx
    debuggerx
    Dec 2, 2024❤️1
    9
    简单做用 dialog 命令写点脚本就行了: https://linuxcommand.org/lc3_adv_dialog.php
    开机就显示的话,设置 autologin 或者 systemd 都行
    mornone
    mornone
    OP
    Dec 2, 2024
    10
    @defunct9 大佬,不好意思,我找的图床可能有问题,需要挂代理
    mornone
    mornone
    OP
    Dec 2, 2024
    11
    @debuggerx 大佬牛逼,貌似和我截图的差不多,谢谢大佬
    mornone
    mornone
    OP
    Dec 2, 2024
    12
    @debuggerx 大佬,请问这种设置了开机就显示的,有办法通过什么方式方法进入到系统吗?
    virusdefender
    virusdefender
    Dec 2, 2024
    13
    @mornone 正常 ssh 进去启动的是 /bin/bash ,你写一个新的程序,设置为 login shell 为这个程序就可以了
    rqYzyAced2NbD8fw
    rqYzyAced2NbD8fw
    Dec 2, 2024
    14
    关键词 ncurses, 这个库提供 ghost 那样的蓝白黑文字窗口。。
    ETiV
    ETiV
    Dec 2, 2024 via iPhone❤️1
    15
    你云服务器的话,把这台机器关机,系统盘摘下来挂到别的机器下面当数据盘,把什么登录 shell 、ssh 都打开,应该就行了
    mylovesaber
    mylovesaber
    Dec 2, 2024
    16
    linux 下有一个命令叫 whiptail ,这个命令就可以构造出一楼的图,贴个简单教程:

    https://en.wikibooks.org/wiki/Bash_Shell_Scripting/Whiptail
    liaohongxing
    liaohongxing
    Dec 2, 2024
    17
    按 ALT + F1 , ALT + F2 , ALT + F3, ALT + F4 ,切换其他 shell 应该可以解决
    Tink
    Tink
    Dec 2, 2024
    18
    这难道不就是登录之后的页面吗?你直接搜 MOTD
    Fatinora
    Fatinora
    Dec 2, 2024
    19
    这是 TUI 程序,运行在终端里,自动启动的命令一般都在 shell 的配置文件(~/.bashrc 或.zshrc)中设置。
    你按 Ctrl+Z 将当前程序切换到后台,正常情况下现在可以输入命令了,然后看~/.bashrc 或~/.zshrc 中都启动了什么程序。
    424778940
    424778940
    Dec 2, 2024 via Android
    20
    这不就 passed 指定了用户的 shell 到自己写的程序
    界面是 tui 写的
    billgong
    billgong
    Dec 2, 2024
    21
    楼上各位说的,再加上一层 jailed shell 就可以基本杜绝运行其他非授权的命令了。
    mingtdlb
    mingtdlb
    Dec 3, 2024
    22
    > 通过服务器控制台再次进入就是图中这个样子,会显示一个产品的浏览器 URL 访问地址

    是连上显示器就显示这个了吧?见过有些虚拟化厂家有这个搞,比如 esxi 。连上显示器有显示一个画面,按键盘某个键,输入密码后,可以切换到 shell
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4263 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 69ms · UTC 02:16 · PVG 10:16 · LAX 18:16 · JFK 21:16
    ♥ Do have faith in what you're doing.