如何重新启动linux里的X服务器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何重新启动linux里的X服务器相关的知识,希望对你有一定的参考价值。

一般说来,可以使用下面的命令进行关闭或者开启X服务,如下:
service gdm3 stop
service gdm3 start
在Ubuntu系统中,也可以使用别的命令来完成同样的功能,如下:
sudo /etc/init.d/lightdm start
sudo /etc/init.d/lightdm stop
如果X服务是在关闭状态,那么想快速的启动X服务,可以使用命令:
startx 即可。
支持各种界面
:相较于GDM-GTK,KDM-Qt,LightDM实际上是界面无关性的,因为它设计上就是支持本地图形界面以获得最好的兼容性。因此LightDM现在已经具备了GTK、Qt甚至WebKit的界面,也就是用html来做登陆界面。
可配置性:Linux最大的优势就是定制性强了,LightDM也继承了这一优点,除了可以定制上面提到的界面以外,LightDM还可以定制其他丰富的选项,如自动登录、禁止特定用户登录等等 谢谢
参考技术A 1. 一般来说,将/etc/inittab的级别改为5,用命令reboot,就ok
2. sles10版本的可以用/etc/init.d/xdm restart
3.可以先killall x 然后startx,嗯,严格来说不能算重启,像开机之后再关机

Ctrl + Alt + Backspac是XWindows下采用的吧。。
参考技术B linux是个操作系统,里面的服务器是个什么东西。如果是重启服务的话,是service 服务名 restart 这是重启服务。 参考技术C linux下重启X服务器,一般用如下命令:
service X restart
参考技术D 我只知道重启 shutdown -r now 或者shutdown -r +0(数字)

我如何从nodejs重新启动linux

【中文标题】我如何从nodejs重新启动linux【英文标题】:How do i reboot linux from nodejs 【发布时间】:2014-05-26 18:19:28 【问题描述】:

我想从 node.js 脚本重新启动/关闭我的 linux 操作系统。只有我能找到的东西是停止快速服务器或脚本中正在运行的函数的方法,而不是关闭/重启我的洞 linux 的方法。

有什么办法吗?

【问题讨论】:

【参考方案1】:

nodejs命令是:

require('child_process').exec('sudo /sbin/shutdown -r now', function (msg)  console.log(msg) );

为避免以 su 身份运行 nodejs,您必须授予运行此命令的权限。通过在 /etc/sudoers.d/ 目录下创建文件来授予权限,例如

$ sudo /etc/sudoers.d/mysudoersfile

添加以下行并将下面 sn-p 中的pi 更改为用户 nodejs 将运行为:

pi ALL=/sbin/shutdown
pi ALL=NOPASSWD: /sbin/shutdown

这种技术也可以应用于其他命令。例如,如果您想允许用户(反过来 nodejs)重新启动网络,则将以下内容添加到您的 sudoers 文件中。

pi ALL=/etc/init.d/networking
pi ALL=NOPASSWD: /etc/init.d/networking

【讨论】:

如果您想知道如何以特定用户身份运行 nodejs,请查看:***.com/questions/13385029/…【参考方案2】:

感谢到目前为止。我现在有一个解决方案。只是它没有响应该命令已执行。其余的一切正常。

代码:

console.log('loaded.....');
var exec = require('child_process').exec;

function execute(command, callback)
    exec(command, function(error, stdout, stderr) callback(stdout); );




execute('shutdown -r now', function(callback)
    console.log(callback);
);

【讨论】:

很可能,您的 Node.js 服务器是由 root 执行的,不是吗?这是一种安全漏洞 :) (实际上,这不是一个漏洞,而是一个潜在威胁,入侵者会自动以超级用户身份访问您的主机,而您可能永远不会注意到这种入侵)。这就是我提到sudo的原因。 是的,它在 root 中运行,但我不知道如何更改它,因为它是一个 BeagleBoard,其中有一个预安装的操作系统,其中包含所有内容。它有一个自动启动nodejs。我使用cloud9对其进行编程。系统上没有其他东西,所以这不是一个大问题。【参考方案3】:

您应该使用child_processsudo /sbin/reboot 之类的命令。您还需要配置 sudo 以允许 node.js 用户在没有密码提示的情况下运行 /sbin/reboot。见/etc/sudoers

【讨论】:

【参考方案4】:

重新启动包完全符合您的要求,可在此处找到:

https://www.npmjs.com/package/reboot

【讨论】:

以上是关于如何重新启动linux里的X服务器的主要内容,如果未能解决你的问题,请参考以下文章

如何在不重新启动服务器的情况下停止 Jenkins 上不可阻挡的僵尸作业?

linux中如何重新启动httpd服务。

我如何从nodejs重新启动linux

如何配置Linux的服务设置为自动启动或崩溃重新启动后

linux 服务器 需要重新启动吗

Ubuntu 网卡配置命令