ubuntu进入桌面自动启动脚本_在 Ubuntu 下开机自启动自己的 QT 程序而不启动 Ubuntu 的桌面...

1. /etc/profile 方式

实现这个功能,要完成两步:

1、系统设置-> 用户账户-> 点击我的账户-> 点击右上角的解锁-> 打开自动登录-> 点击右上角的锁定-> 退出系统设置

2、在 /etc/profile 文件的开头添加执行 qt 程序的命令。如:

cd /usr/local/src/QT_dir(这里是可执行文件的绝对路径)

./hello

或者直接写:

/usr/local/src/QT_dir/hello

这样在启动的时候,Ubuntu 就不会启动自己的桌面了,另外要是想自己 QT 应用程序结束时,主机也自动关机的话,就直接在执行 qt 程序的指令后面添加:init 0

注意:上述方法当 QT 程序崩溃的时候,会自动跳转到登录页面,输入密码过后会进入 Ubuntu 桌面,若想不加载 Ubuntu 桌面,保证数据安全,可以看下面的方式

2.xessions 方式

若想将 QT 程序直接当成 Ubuntu 的桌面的话,则必须替换掉 /usr/share/xsessions 下的所有文件,该文件夹下默认存放加载 Ubuntu 桌面的所有配置文件

xsessions/

├── ubuntu-communitheme-snap.desktop

└── ubuntu.desktop

2.1 备份 Ubuntu 配置文件

cd /usr/share/

mv xsessions xsessions_ubuntu

2.2 新建新的 xsessions 文件夹

mkdir xsessions

2.3 新建 QT 桌面配置文件和执行脚本(文件名随意)

touch QT.desktop

toch QT.sh

文件内容:

QT.desktop

[Desktop Entry]

Type=Application

Exec=sudo -u root /bin/bash /usr/share/xsessions/QT.sh

QT.sh

xset s 0 #关闭屏幕保护

xset dpms 0 0 0 #关闭屏幕休眠

cd /usr/local/src/QT_dir

./hello

整体目录结构

xsessions

├── QT.desktop

└── QT.sh

xsessions_ubuntu

├── ubuntu-communitheme-snap.desktop

└── ubuntu.desktop

注意:此方法当 QT 崩溃时会跳转到登录界面,但是输入密码过后会反复显示登录界面,无法进入任何桌面,那是因为 QT 程序已经作为了 Ubuntu 的当前桌面,而程序崩溃之后,脚本执行完毕,故 Ubuntu 找不到该显示的桌面了,所以会无限显示登录页面

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/457520.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java obj与JSON互转(jackson)

JSON 解析 常见的json解析器: jsonlibGson(谷歌)fastjson(阿里)jackson(Spring内置) jackson 依赖jar包 jackson-annotations/jackson-core/jackson-databind/ 官网下载地址 1. Java对象转JSON 1.1 核心对象 ObjectMapper 1.2常用转换方法 writeValue(参…

如何制作一个简单的APP应用软件?

如今随着移动智能手机的普及,让APP的市场一片繁荣,现在市场上的APP数量数不胜数,对于APP开发的我们很多外行人也许认为,开发APP是不是特别难,是不是只有资历很高的程序员才能够完成这个任务,或者说要想开发…

I/O重定向

每个进程都至少有3个信息:“标准输入”stdin、“标准输出”stdout、和“标准出错”stderr。标准输入通常来自键盘,标准输出和标准错误输出通常被发往屏幕(并不会保存在磁盘文件中)。有些时候,需要从文件读取输入&#…

java 自动装拆箱

title: “java 自动装拆箱” tags: Java 将基本数据类型封装成对象的过程叫做装箱(boxing),反之基本数据类型对应的包装类转换为基本数据类型的过程叫做拆箱(unboxing); 基本数据类型与其他对象的区别 基本数据类型 …

设计模式11---组合模式(Composite Pattern)

一、组合模式定义 将对象组合成树形结构以表示“部分-整体”的层次结构,使得用户对单个对象和组合对象的使用具有一致性。Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compos…

Linux 多核下绑定硬件中断到不同 CPU(IRQ Affinity)

转载 - Linux 多核下绑定硬件中断到不同 CPU(IRQ Affinity) 作者 digoal 日期 2016-11-20 标签 Linux , IRQ , 中断 , CPU亲和 , 绑定中断处理CPU 背景 原文 http://www.vpsee.com/2010/07/load-balancing-with-irq-smp-affinity/ 原文 硬件中断发生频繁…

请列举你了解的分布式锁_这几种常见的“分布式锁”写法,搞懂再也不怕面试官,安排!...

什么是分布式锁?大家好,我是jack xu,今天跟大家聊一聊分布式锁。首先说下什么是分布式锁,当我们在进行下订单减库存,抢票,选课,抢红包这些业务场景时,如果在此处没有锁的控制&#x…

leetcode 268

等差数列求值 1 class Solution {2 public:3 int missingNumber(vector<int>& nums) {4 int nnums.size();5 int kn*(n1)/2;6 for(int i0;i<n;i)7 k-nums[i];8 return k;9 } 10 }; 转载于:https://www.cnblogs.…

301缓存重定向?301 Moved Permanently (from disk cache)

今天在写一个博客系统时&#xff0c;发现首页数据经常刷新不出来&#xff0c;甚至后端根本就没有接受到这个请求&#xff0c;以为是Ajax的问题&#xff0c;但通过抓包发现Ajax请求确实已经发出去了&#xff0c;但状态码是 301 Moved Permanently (from disk cache),301是永久重…

Firefox 50优化Electrolysis

Mozilla正式发布Firefox 50。最新的版本中提升了来自多个内容进程用户的用户体验&#xff0c;并修复了十几个高影响的安全漏洞。\\在Firefox最新版本的变更中&#xff0c;我们注意到了它对于Electrolysis的进一步改进。Electrolysis是Mozilla实现在后台进程中呈现和执行web相关…

ModuleNotFoundError: No module named '_ctypes' ERROR:Command errored out with exit status 1: python

Ubuntu下载 nginx 时报错&#xff1a; ERROR: Command errored out with exit status 1:command: /usr/local/bin/python3.7 -c import sys, setuptools, tokenize; sys.argv[0] ""/tmp/pip-install-7e0xdb36/uwsgi/setup.py""; __file__""/tmp…

python opc plc_PYthon简易OPC数据采集写入Access

利用hollias comm opcserver 与Python实现交互。代码如下&#xff1a;# -*- coding: utf-8 -*-from sys import *from getopt import *#from os import * 造成f open(test.txt, r) TypeError: an integer is required错误import signalimport sysimport osimport typesimport …

边工作边刷题:70天一遍leetcode: day 73

Read N Characters Given Read4 I/II 要点&#xff1a;这题的要点就是搞清楚几个变量的内在逻辑&#xff1a;只有buffer是整4 bytes的。而client要读的bytes&#xff08;需求&#xff09;和实际上disk上有的bytes&#xff08;供给&#xff09;都是不整的。所以&#xff0c; 循环…

javascript时间戳和日期字符串相互转换

1 <html xmlns"http://www.w3.org/1999/xhtml">2 <head>3 <meta http-equiv"Content-Type" content"text/html; charsetutf-8" />4 <script type"text/javascript">5 // 获取当前时间戳(以s为单位)6 var time…

wireshark 十六进制过滤_CTF流量分析之wireshark使用

01.基本介绍在CTF比赛中&#xff0c;对于流量包的分析取证是一种十分重要的题型。通常这类题目都是会提供一个包含流量数据的pcap文件&#xff0c;参赛选手通过该文件筛选和过滤其中无关的流量信息&#xff0c;根据关键流量信息找出flag或者相关线索。pcap流量包的分析通常都是…

vim 插件管理

1  进入自己的vim mkdir ./bundle/vundle 2  在vimrc同级中执行 git clone https://github.com/gmarik/vundle.git ./bundle/vundle 将一些插件文件 下载到./bundle/vundle中 3  编写自己的vim配置&#xff0c;其实很简单 set nocompatible " be iMp…

ubuntu install wiznote

sudo add-apt-repository ppa:wiznote-team #添加官方源sudo apt-get update #更新源sudo apt-get install wiznote #安装为知笔记

python 对象序列化 pickling_python操作文件——序列化pickling和JSON

当我们在内存中定义一个dict的时候&#xff0c;我们是可以随时修改变量的内容的&#xff1a;>>> ddict(namewc,age28)>>>d{name: wc, age: 28}我们可以随时修改name和age的值。但是当我们重新运行程序的时候&#xff0c;name、age的初始化值还是wc和28&#…

python实现Redis订阅发布

Redis 发布订阅 Redis 发布订阅可以用在像消息通知&#xff0c;群聊&#xff0c;定向推送&#xff0c;参数刷新加载等业务场景 发布订阅模型有三个角色&#xff1a; 发布者&#xff08;Publisher&#xff09;订阅者(Subscriber)频道(channel) 每个订阅者可以订阅多个频道&am…

nfs的快速部署

1、nfs内核自带协议模块不用安装&#xff0c;如果没有yum安装yum -y install nfs-utils2、配置vim /etc/exports #配置文件 此文件一般为空&#xff0c;编写格式为&#xff1a; /share/word 192.168.31.254(rw) 192.168.31.252(ro) # 共享/share/word目录给192.168.…