麒麟SP1系统非root用户强制修改分辨率,开机自动生效
一、背景
安装麒麟SP1系统后发现显示屏无法正常显示,通过显示硬件自动调节后上下左正常,右侧整条有一部分缺失,桌面查看分辨率为1920*1080是正确的,于是想到xrandr命令来解决此问题
二、手动指定分辨率(1920*1080 60hz举例),重启后失效
[kylin@kylin~]$ xrandr #会输出多种已加载分辨率
[kylin@kylin~]$ export DISPLAY=:0.0 #设置DISPLAY环境变量
[kylin@kylin~]$ cvt 1920 1080 60 | sed -n 's/Modeline //p' #过滤出需要使用的参数
[kylin@kylin~]$ xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync #创建一个mode,参数为上一条命令过滤出来的参数
[kylin@kylin~]$ xrandr --addmode VGA-1 "1920x1080_60.00" #新建模式,将新模式添加至当前输出设备
[kylin@kylin~]$ xrandr --output VGA-1 --mode 1920x1080_60.00 #设置newmode为当前分辨率
三、开机自动启动
1、编写设置参数脚本
[kylin@kylin~]$ vim /home/kylin/display.sh #编写脚本
#!/bin/bash
export DISPLAY=:0.0
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode VGA-1 "1920x1080_60.00"
xrandr --output VGA-1 --mode 1920x1080_60.00
[kylin@kylin~]$ sudo chmod +x /home/kylin/display.sh #给脚本加执行权限
[kylin@kylin~]$ /home/kylin/display.sh #验证脚本是否可正确执行,若分辨率可正常更改,继续如下操作
2、编写desktop文件
[kylin@kylin~]$ vim /etc/xdg/autostart/test.desktop
[Desktop Entry]
Encoding=UTF-8 #字符串所使用的编码方式
Name=display_ #desktop 文件最终显示的名称(一定要注意和 desktop 文件名的区别)
Exec=sh /home/kylin/display.sh #用于指定二进制可执行程序的完整路径
Info="Spark"
Terminal=false #程序是否在终端窗口中运行
Type=Application #用于指定 desktop 文件的类型(包括 3 种类型:Application、Link、Directory)
StartupNotify=true #如果不存在,则合理的处理取决于实现[kylin@kylin~]$ sudo chmod +x /etc/xdg/autostart/test.desktop #加执行权限#一个 desktop 文件主要由两部分组成,头部 [Desktop Entry] 声明(用于指定这是一个desktop文件)和一系列的参数/值对组成。一个 desktop文件至少要指定3个参数的值(Name、Type 和 Exec)
#=号两边不能有空格
#条目具体要求和含义可参见:
https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html
3、加入开机自启
4、文件描述整理
键Key 描述 Value 类型 是否必须? 生效类型 Type Application (type1), Link (type2), Direcory (type3) string Yes Version 版本,例如1.0 string No 1-3 Name 应用程序的特定名称 localestring Yes 1-3 GenericName 应用程序的通用名称 localestring No 1-3 NoDisplay 不在菜单中显示, 但可以与MIME类型相关联 boolean No 1-3 Comment 应用描述 ocalestring No 1-3 Icon 要么绝对路径,要么符合图标主题规范 localestring No 1-3 Hidden 是否隐藏,等同于不存在的文件 boolean No 1-3 OnlyShowIn, NotShowIn 一般不用此字段 boolean No 1-3 DBusActivatable DBus激活,默认false boolean No TryExec 如果文件不存在, 则忽略该文件,并不在菜单中出现 string No 1 Exec 执行路径 string No 1 Path 当Type=Application时,程序运行的目录 string No 1 Terminal 程序是否在终端窗口中运行 boolean No 1 Actions 为其他组提供接口,比如Action=Gallery;,那么其他组就为[Desktop Action Gallery] string(s) No 1 MimeType 此应用支持打开的类型 string(s) No 1 Categories 参阅桌面菜单规范 string(s) No 1 Implements 默认情况下,桌面文件不实现任何接口 string(s) No 1 Keywords 用于搜索,不应该是Name或者为多余的值 GenericName localestring(s) No StartupNotify 如果不存在,则合理的处理取决于实现(假设为false,使用StartupWMClass等)。参阅启动通知协议规范 boolean No 1 StartupWMClass 一般跟Name相同即可 string No 1 URL 只适用于Type=Link string Yes 2
4、
四、错误整理
错误1:设置DISPLAY环境变量, 运行图形程序(如xclock)时会收到如下错误:
Xlib: connection to ":0.0"refused by server
Xlib: No protocol specified
Error: Can’t open display: :0.0
错误2:开机自启趟过的坑
尝试过rc.loacl、xorg.conf、systemd、crontab、profile都无法实现开机自动配置,根据表现猜测为启动时序问题导致,最后使用了系统自带desktop解决此问题
麒麟SP1系统非root用户强制修改分辨率,开机自动生效相关推荐
- linux下非root用户如何修改root权限的文件
在linux下会出现把一些配置文件参数配错.root密码忘记等导致系统无法启动或进入root的窘迫境地,本文以redhat enterprise linux server 6.4为例介绍root身份 ...
- ansible 非root 用户 批量修改用户密码
为什么80%的码农都做不了架构师?>>> 目录 一 环境 系统环境 软件版本 二 批量修改用户密码 1. hosts 文件配置 2. 修改密码的yml 正文 一 环境 系统环 ...
- VMware中CentOS7 修改系统root/非root用户密码
1.修改系统用户root密码 [root@ITCATS-01 ~]# passwd 更改用户 root 的密码 . 新的 密码: 2.修改系统非root用户密码:huazi [root@ITCATS- ...
- root 启动mysql_非root用户随开机而启动mysql服务
非root用户随开机而启动mysql服务 今天验证了一下,非root用户随开机而启动msyql服务的脚本执行效果,特此简要记录如下: 环境: 192.168.142.130 mysql 5.6.41 ...
- linux装软件需要root用户,Linux下非root用户安装软件的一般流程:
1. 获取源代码,一般是wget方式,ubuntu可以使用apt-get source来获取源代码. 2. 解压源代码,一般使用tar -zxvf xxx.tar.gz即可 3. 切换到解压后的目录, ...
- Linux设置非root用户启动程序
目录 1. 文件权限说明 2. 操作指引 3. 具体操作方法参考 1. 前提条件 2. 初始化非root用户 3. 修改api部署目录权限 1. 文件权限说明 从左至右,1-3位字母代表文件所有者(U ...
- 手机安装python3.5_zzw_非root用户安装python3.5
目的:不想改变linux 自带的python,只想要用特定的非root用户运行特定版本的python 1.进入非root用户 2.新建一个python3.5的安装目录 [a4_csbdc@bdc816 ...
- linux系统下安装pfam数据库中hmmer软件以及python3非root用户的安装
linux系统下安装pfam数据库中hmmer软件以及python3非root用户的安装 http://hmmer.org/从该链接下载源,其中有Userguide.pdf 下载,解压缩并切换目录 之 ...
- linux上验证cudnn是否安装成功_非root用户安装cuda与cudnn
很多小伙伴都和我抱怨(其实我自己也是)服务器上管理员已安装好显卡驱动或已安装的CUDA版本无法满足自己要求(要么太高要么太低),与自己需要的TensorFlow或者Pytorch版本不兼容,急的头皮发 ...
最新文章
- java程序设计案例教程 钱银中_《Java程序设计案例教程》【价格 目录 书评 正版】_中国图书网...
- 55种网页常用小技巧(javascript) (转)
- return error怎么定义_SpringBoot 系列 web 篇之自定义返回 Http Code 的 n 种姿势
- Linux命令工具基础02 文件及目录管理
- 把握不好数组边界的危害(记洛谷P1789题RE+WA的经历,Java语言描述)
- 深度学习————如何在Python中求解函数的解析表达式
- menuStrip1动态添加菜单及快捷键
- STC12C5A60S2获取GPS信息(LCD1602显示)(一)
- golang mian函数和init函数
- R语言生成三维立体图
- 目前常见的web网络安全漏洞
- 浅谈英语学习兴趣的培养
- JAVA求三角形的面积
- 高端餐饮空间布局要点
- 缓存篇(二)- JetCache
- 微信小程序组件库——colorUI 的使用方法
- Pygame学习笔记 6 —— 3D游戏
- Python攻关之模块(1)
- 低版本android无法连接iPhone手机个人热点问题
- [everydayNote] 零零散散不成篇
热门文章
- 即时聊天工具二次开发
- excel文件保护工作表无法编辑,忘记密码时解决办法
- svn: Failed to add directory '../target': an unversioned directory of the same name already exis
- Java 12位uuid_java如何生成12位永远不重复的数字
- 深度学习【道路提取】:马萨诸塞州道路数据集分享
- [每日一题] 73. 电话号码(字符串、set)
- 【教程】EasyDSS演示模式播放ws-flv格式视频流,如何控制3分钟自动跳转登录页?
- Σoφoς:简单但有效的前向安全对称可搜索加密
- 为何企业级架构日益盛行?
- 无论你英语多差,只要想学,看了此文必有改变