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.pswp.cn/news/457520.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/457520.shtml
英文地址,請注明出處:http://en.pswp.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.…