我想做一台小型计算机,仅用于上网。我不想加载桌面环境,以尽可能降低 RAM、CPU 和 GPU 的使用率。这台计算机将在 ARM CPU 上运行。我不在乎我使用的发行版,我考虑过老式的普通 Debian。
答案1
我知道这个已经过时了,但是根据我的理解,我看不到该请求的正确答案,因此这里是:
我有一个项目,用于在一台配备 Atom 处理器和触摸屏的简单计算机上创建一个运行特定图形 Java 应用程序的嵌入式系统。我的决定是避免使用这样的窗口管理器,以保持 a) 简单、b) 轻便和 c) 避免各种系统消息突然出现在屏幕上。
该系统如下所示:
安装基本 Ubuntu 系统,12.04 的最轻量版本(仍然接近 1GB,但对我来说,即使在 2GB 闪存盘上也可以)。您可以稍微折磨一下,以进行较小的安装,当然,有几种方法可以做到这一点。此外,您不必使用 Ubuntu,但应该查看下面的说明 - 发行版之间存在差异,尤其是在配置文件及其位置方面。
安装 xorg 和其他一些有用的软件,例如用于电阻式触摸屏的 xinput-calibrator、用于实时以太网连接检测的 ifplugd、用于电源按钮操作检测的 acpid 等等。
打开 /etc/init/tty1.conf 并将
exec /sbin/getty -8 -i 38400 tty1
行更改为类似的内容exec /sbin/getty -8 -i 38400 tty1 -a username
,其中“username”是您希望自动登录的用户的名称。要自动启动 X 会话,请打开用户的 .bashrc 文件
~/.bashrc
并在文件末尾添加如下内容:if [ $(tty) == "/dev/tty1" ]; then while true; do startx -- -nocursor -depth 16; echo "Again [$?]..."; done fi
(-nocursor 适用于触摸屏,将其删除后,普通屏幕才能看到鼠标指针)这将重新启动 X 服务器,因此如果您的应用程序因任何原因退出,它将自动重新启动 X 服务器。
现在在您的用户的 .xsession 文件中,
~/.xsession
写入类似这样的内容(请记住,这里的每个命令都是按顺序执行的,因此如果您想启动服务器,请在行末尾使用 & 符号):xrandr --output VGA1 --mode 800x600 #For setting a video mode xrandr --fb 800x600 #Not always required, sets the framebuffer size xsetbg -center background.png & #To set the background, comes from the xloadimage package xset -dpms s off #To avoid screen going blank after a while ~username/start.sh #Start your application #You can put some other application calls here that will be run when your application exits
对于这样的系统,还有很多其他事情需要考虑,这只是基本设置。希望它能帮助到别人。祝你好运。
答案2
创建
/usr/share/xsessions/
一个“.desktop”格式的文件来创建您的自定义最小会话。若要在登录后将 Google Chrome 作为唯一应用程序运行,请执行以下操作:[Desktop Entry] Type=Application Exec=google-chrome Name=Google Chrome Comment=Testing
重新启动显示管理器,例如
sudo restart lightdm # or kdm, gdm, etc.
或者直接退出。
“Google Chrome” 应该出现在会话列表中以供选择(在常规 Unity 或您已安装的其他 DE 旁边)。
登录并享受。
选修的
XDM 是一个非常小的显示管理器 - LightDM、GDM 和 KDM 相当“大”。使用包安装它西迪姆并使用以下方式重新配置系统启动时的默认设置
sudo dpkg-reconfigure lightdm
配置显示管理器以自动登录特定用户。请参阅显示管理器的文档。
答案3
在过去,您只需运行X
,X 就会启动并显示空白屏幕。然后您可以DISPLAY=:0
在那里设置并运行某些内容。也许这仍然有效?从 shell 中,您需要X&
将其置于后台。
查看-geometry
标准 X 命令行参数来调整窗口的位置,因为您没有窗口管理器来帮助您完成此操作。
要以非 root 身份运行某些程序,您需要研究xauth
为非 root 用户设置 X 授权。
答案4
(我的声誉太低,无法评论。--> 我使用了@gertvdijk 发布的解决方案,遇到了与@tumbudu 相同的问题)
如果您无法访问 Google Chrome(Alpine Linux),Firefox 软件包可让您传递应用程序应以参数形式打开的屏幕分辨率:
firefox -height 1920 -width 1080