查看: 5398|回复: 38
收起左侧

[系统] Ubuntu有什么办法得知图形工具调用哪些命令,修改哪些配置文件?

[复制链接]
菩提祖师
发表于 2013-8-18 00:09:27 | 显示全部楼层 |阅读模式
本帖最后由 woxihuan2011 于 2013-8-22 20:14 编辑

Ubuntu有什么办法得知图形工具调用哪些命令,修改哪些配置文件?
这只是为了了解Ubuntu,并不是监控病毒之类的强迫症.
因为有些时候不想且无法依赖图形工具,所以想知道图形工具都做了些什么.

评分

参与人数 1经验 +4 收起 理由
woxihuan2011 + 4 感谢提供分享

查看全部评分

woodelf
发表于 2013-8-18 00:30:03 | 显示全部楼层
两种方法,一种是用apt查看对应的包安装了哪些文件,另一种是用进程查看工具查看软件运行前后的进程差异。
监控进程打开和访问的文件可以用lsof和strace。用法很简单,就是lsof/strace -p PID。

评分

参与人数 1经验 +4 收起 理由
woxihuan2011 + 4 感谢解答: )

查看全部评分

thelord
发表于 2013-8-19 10:29:37 | 显示全部楼层
菩提祖师 发表于 2013-8-18 04:10
如果程序关闭了文件指针,那还能看得到吗?

打开、关闭的整个过程都会被输出,你看记录就行了
菩提祖师
 楼主| 发表于 2013-8-20 00:13:47 | 显示全部楼层
thelord 发表于 2013-8-19 10:29
打开、关闭的整个过程都会被输出,你看记录就行了

在Ubuntu中查看鼠标设置的进程,想查看鼠标双击间隔的配置文件,结果看到一堆看不懂的,隐约里面看到一个dconf,但我实机是Lubuntu,试过用dconf-editor,但在Lubuntu(LXDE)环境中无效,无法调整鼠标双击间隔.
thelord
发表于 2013-8-20 22:29:47 | 显示全部楼层
本帖最后由 thelord 于 2013-8-20 22:31 编辑
菩提祖师 发表于 2013-8-20 00:13
在Ubuntu中查看鼠标设置的进程,想查看鼠标双击间隔的配置文件,结果看到一堆看不懂的,隐约里面看到一个dco ...


搜了下,有答案曰:
修改家目录下的".gtkrc-2.0"配置文件(没有则新建),加一行
gtk-double-click-time=1000
注销后生效

评分

参与人数 2经验 +4 人气 +1 收起 理由
菩提祖师 + 1 感谢解答: )
woxihuan2011 + 4 感谢解答: )

查看全部评分

菩提祖师
 楼主| 发表于 2013-8-20 22:53:31 | 显示全部楼层
本帖最后由 菩提祖师 于 2013-8-22 00:23 编辑
thelord 发表于 2013-8-20 22:29
搜了下,有答案曰:
修改家目录下的".gtkrc-2.0"配置文件(没有则新建),加一行
gtk-double-click-t ...


已阅,方便时尝试,请问您是用什么搜索引擎搜索什么关键词出来的?

2013年8月22日00时23分28秒补充:
已经测试,Lubuntu 13.04中有效.
thelord
发表于 2013-8-22 00:16:25 | 显示全部楼层
菩提祖师 发表于 2013-8-20 22:53
已阅,方便时尝试,请问您是用什么搜索引擎搜索什么关键词出来的?

舍 google 其谁?
独家单传秘诀:翻译成英文后用google搜索,
关键词: lxde mouse double click interval

评分

参与人数 1人气 +2 收起 理由
菩提祖师 + 2 感谢解答: )

查看全部评分

thelord
发表于 2013-8-25 00:54:56 | 显示全部楼层
菩提祖师 发表于 2013-8-23 20:36
试了试在跟踪图形终端进程,找free命令的文件位置,但在事先知道被调用程序名为"free"的情况下,才搜索到" ...

看不懂,图形进程为什么要调用外部free命令?为什么不直接系统调用?
strace 跟踪的都是系统调用
read(6, "free", 8184) = 4 意思是从文件6中读入了"free"字符串
参考:
5 simple ways to troubleshoot using Strace
菩提祖师
 楼主| 发表于 2013-8-25 01:23:34 | 显示全部楼层
本帖最后由 菩提祖师 于 2013-8-25 01:42 编辑
thelord 发表于 2013-8-25 00:54
看不懂,图形进程为什么要调用外部free命令?为什么不直接系统调用?
strace 跟踪的都是系统调用
read( ...


我执行的命令是free,free本身是系统中的一个程序,在Lubuntu中它位于"/usr/bin",类似于Windows中如果要运行一个命令,相应的path目录中的程序文件就会被运行.

我想知道图形界面都调用了哪些命令,可是按照您说的方法我无法跟踪到一个程序具体运行了哪些命令.

2013年8月25日01时24分00秒补充:
您提供的英文资料正在查看中.

2013年8月25日01时30分07秒补充:
没有很仔细的看,粗略查看(英文水平有限,完全仔细看完压力很大),感觉您提供的英文资料对我可能没有什么帮助.

2013年8月25日01时41分00秒补充:
阴差阳错的找到了这篇文章的中文译文版:http://blog.csdn.net/dlmu2001/article/details/8842891
看了看,没有解决我的疑惑,我想知道一个进程运行了哪些其它进程.
菩提祖师
 楼主| 发表于 2013-8-25 03:03:53 | 显示全部楼层
thelord 发表于 2013-8-25 02:13
“图形界面都调用了哪些命令”
1. 首先,图形工具进程通过调用外部程序(如 /usr/bin/free)来完成功能是 ...


追踪文件,感觉应该不是问题了.
但是追踪调用的外部程序还是没有办法.
图形程序调用外部工具实现功能的例子有GNOME MPlayer(MPlayer的GUI前端) Code::Blocks (各种编译器(如GCC),调试器(如GDB)的GUI前端)

以上举例的图形工具中都会调用外部程序来实现相应的功能.
thelord
发表于 2013-8-25 14:08:34 | 显示全部楼层
菩提祖师 发表于 2013-8-25 03:03
追踪文件,感觉应该不是问题了.
但是追踪调用的外部程序还是没有办法.
图形程序调用外部工具实现功能的 ...

跟了下 gnome-mplayer
strace -f -o gm.trace gnome-mplayer

外部程序调用:grep exec gm.trace
文件:grep open gm.trace
菩提祖师
 楼主| 发表于 2013-8-25 18:27:36 | 显示全部楼层
thelord 发表于 2013-8-25 14:08
跟了下 gnome-mplayer
strace -f -o gm.trace gnome-mplayer


难道没有发现mplayer进程吗?
我仔细看了看,gonme-mplayer的确不是mplayer的父进程,但gonme-mplayer确实依赖mplayer进程,如果结束它就提示"MPlayer interrupted by signal 2 in module: sleep_timer",如果停止mplayer进程,gonme-mplayer的画面就卡住不动了.
mplayer的父进程ID是1,即init进程,不明白为什么.
通过任务管理器之类的工具可以查看这种固定的进程,但是如果进程是一启动就马上结束那种,任务管理器就恐怕看不到了,怎么办呢?
thelord
发表于 2013-8-25 19:53:27 | 显示全部楼层
菩提祖师 发表于 2013-8-25 18:27
难道没有发现mplayer进程吗?
我仔细看了看,gonme-mplayer的确不是mplayer的父进程,但gonme-mplayer确实 ...

我的意思是,gonme-mplayer确实调用了mplayer程序,通过下面的方法可以查看。短时间的调用也能看见
外部程序调用:grep exec gm.trace
文件:grep open gm.trace

评分

参与人数 1人气 +1 收起 理由
菩提祖师 + 1 感谢解答: )

查看全部评分

kxmp
发表于 2013-8-26 01:11:00 | 显示全部楼层
菩提祖师 发表于 2013-8-26 01:10
这个就是自带的工具

in Lubuntu
LXDE button/ Preferences/ Openbox Configuration Manager / Mouse

Change doubleclick time to 300 - 500 ms.

评分

参与人数 1人气 +1 收起 理由
菩提祖师 + 1 我居然没发现,竟然有这么简单的方法...

查看全部评分

kxmp
发表于 2013-8-26 01:14:07 | 显示全部楼层
本帖最后由 kxmp 于 2013-8-26 01:15 编辑
kxmp 发表于 2013-8-26 01:11
in Lubuntu
LXDE button/ Preferences/ Openbox Configuration Manager / Mouse


复杂法也多得是
gtk配置法
.gtkrc-2.0
gtk-double-click-time=250
x配置法
~/.Xdefaults or .Xresources
*multiClickTime: 250

评分

参与人数 1经验 +5 收起 理由
woxihuan2011 + 5 感谢解答: )

查看全部评分

菩提祖师
 楼主| 发表于 2013-8-18 04:10:19 | 显示全部楼层
woodelf 发表于 2013-8-18 00:30
两种方法,一种是用apt查看对应的包安装了哪些文件,另一种是用进程查看工具查看软件运行前后的进程差异。
...

如果程序关闭了文件指针,那还能看得到吗?
菩提祖师
 楼主| 发表于 2013-8-22 22:38:57 | 显示全部楼层
thelord 发表于 2013-8-22 00:16
舍 google 其谁?
独家单传秘诀:翻译成英文后用google搜索,
关键词: lxde mouse double click ...

感谢解答,但是2楼中关于查看进程差异还是感觉无法操作,如果一个进程运行了另一个进程,然后子进程很快结束,那这时2楼的方法岂不无效了?(两次查看列表都是子进程没有运行时的)
thelord
发表于 2013-8-23 00:29:03 | 显示全部楼层
菩提祖师 发表于 2013-8-22 22:38
感谢解答,但是2楼中关于查看进程差异还是感觉无法操作,如果一个进程运行了另一个进程,然后子进程很快结束 ...

strace 的 -f / -F 选项支持跟踪子进程
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2025-5-6 04:49 , Processed in 0.147474 second(s), 21 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表