原创
FoxBryant
这个作者很懒,什么都没留下…
展开
-
在ubuntu server 20.04搭建gitlab服务器
用docker在ubuntu server20.04上部署gitlab服务,中间遇到几个问题 后面通过如下方式解决。记录一下:1. 虚拟机上安装ubuntu server 20.04 (未勾选默认安装docker)2. 进入ubuntu server 20.04 执行:安装dockerroot@ubuntusrv:~# apt install docker.io设置环境变量:vi /etc/profile 在文件最后增加:export GITLAB_HOME=/srv/gitlab原创 2022-03-16 12:53:03 · 1782 阅读 · 0 评论 -
设置apt安装包时是否保留下载的deb包
默认情况下使用apt install安装包时,会自动下载安装包及其依赖包到/var/cache/apt/archieves目录,可通过如下配置改变这一行为:#禁止保存echo 'Binary::apt::APT::Keep-Downloaded-Packages "0";' | sudo tee /etc/apt/apt.conf.d/10apt-keep-downloads#允许保存echo 'Binary::apt::APT::Keep-Downloaded-Packages "1";' |原创 2022-03-02 11:35:41 · 3933 阅读 · 0 评论 -
dbus-send调用d-feet中显示的方法
有时候,需要调用系统或自定义的dbus接口。可通过dbus-send命令来执行,具体参数可查看man。下面直接通过图片的形式,说明如何用dbus-send调用在d-feet中看到的dbus对象和方法:其中:--system:表示System Bus --print-reply:可显示dbus调用的返回信息,如果有错误 会比较方便知道是哪里错了 --type=method_call:表示调用dbus方法,若不指定则表示发送dbus信号...原创 2022-01-08 10:29:34 · 582 阅读 · 0 评论 -
udev-configure-printer提示Device already handled问题
使用udev-configure-printer add打印机,之后由于某些原因将其移除后,再次执行add会添加失败并提示Device already handled。查看源码发现,add后会将打印机的path和uri信息保存到:#define USB_URI_MAP "/var/run/udev-configure-printer/usb-uris"格式为:/devices/pci0000:00/0000:00:14.0/usb1/1-3 usb://Sony/UP-D898MD_原创 2021-09-08 21:08:22 · 323 阅读 · 0 评论 -
CUPS之gutenprint生成ppd文件
查看支持的打印机cups-genppd.5.3 -M | grep 130原创 2021-06-20 21:06:30 · 3276 阅读 · 0 评论 -
ubuntu无法正常显示windows下设置的U盘中文卷标
以下是我自己的分析,如有错误,请不吝指正!结论:中文版本windows默认使用GB2312编码(代码页936),所以设置卷标时写入到U盘中的卷标名称字符也是GB2312编码。而linux默认使用的是UTF8编码,所以卷标会显示成乱码。另外mount挂载磁盘时指定的iocharset=utf8仅对U盘中的文件名有效,对卷标不生效,所以在windows上设置的中文卷标不能在linux上正常显示。分析过程在Ubuntu上设置中文卷标:1. 在ubuntu 18.04上运行gnome-di.原创 2021-03-08 19:41:38 · 531 阅读 · 0 评论 -
linux下U盘分区及格式化
重新分区使用fdisk对U盘删除分区并重建分区sudo fdisk /dev/sdb按d删除分区,再按n新建分区 依次按回车使用默认选项即可格式化分区使用mkfs.vfat将分区格式化为MS-DOS文件系统格式,-n指定卷标sudo mkfs.vfat -n fb /dev/sdb1或者用mkfs.ext4格式化为ext分区,-L指定卷标sudo mkfs.ext4 -L fb /dev/sdb1...原创 2020-09-29 22:51:22 · 786 阅读 · 0 评论 -
touch遍历更新文件访问时间
关键时间总是忘记xargs,特此一记:sudo find . -type f | xargs touch原创 2020-03-27 15:09:16 · 388 阅读 · 0 评论 -
QT程序界面在Ubuntu不同权限级别运行差异的解决方法
背景用QT开发了一个界面程序(名为test),通过QSS为其指定了widget样式,瞬间感觉程序高大上起来了。但经过几种情况的测试,发现不同的运行方式在Ubuntu上显示的样式效果是不一样的。如下:1.双击直接运行程序 结果:界面与预期一致2.在shell中执行 $./test 结果:界面与预期一致3.在shell中执行 $sudo ./test 结果:界面部分样式生原创 2016-12-01 21:17:00 · 2407 阅读 · 0 评论 -
Ubuntu提升运行权限
一、使用pkexec1. 在/usr/share/polkit-1/actions/目录创建一个policy文件(其实就是一个xml文件),如:/usr/share/polkit-1/actions/com.ubuntu.gedit.policy 输入以下内容:<!DOCTYPE policyconfig PUBLIC "-//freedesktop//DTD PolicyK原创 2016-12-01 23:15:17 · 4669 阅读 · 0 评论 -
Ubuntu开启sysrq magic key
最近学习如何分析Ubuntu当机问题,发现有一种叫作magic key的组合键可以协助排查。但是在我机器上按了半天一点反应也没有。经过一通google,找到了开启办法:完全放开组合键运行如下命令:echo 1 > sudo tee /proc/sys/kernel/sysrq或者:sudo gedit /etc/sysctl.d/10-magic-sysrq.con原创 2016-11-20 11:39:52 · 1515 阅读 · 0 评论 -
Python函数式编程
Python函数式编程的核心思想是:把函数当数据. 所以,函数可以用作函数参数,函数返回值,元组或字典成员等闭包闭包是实现代码复用的一种途径,与类不同的是它基于函数实现.函数与它的环境变量一起就构成了闭包,闭包只有一个返回值,那就是闭包中的函数def line_conf(a, b): def line_fun(x): return a*x + b原创 2017-01-07 14:38:36 · 503 阅读 · 0 评论 -
org.freedesktop.DBus.Error.AccessDenied解决办法
运行自己用python写的dbus服务时,出现如下错误:Traceback (most recent call last): File "./test.py", line 87, in object = DeviceObject() File "./test.py", line 37, in __init__ bus_name = dbus.service.BusNa原创 2017-02-07 22:35:52 · 12339 阅读 · 0 评论 -
Ubuntu QT for Android完整搭建过程
第一次搭建这个环境,浪费了一天的时间。各种问题,中间有一次安装卡住了 直接关机后再进不去系统了,搞得又把系统来一遍。各种坑爹~下面把过程记录一下:Ubuntu版本:16.04 LTS1.安装过程中涉及:JDK,android-sdk, android-ndk, apache-ant, QT几个包,可以按http://doc.qt.io/qt-5/androidgs原创 2016-07-03 20:35:08 · 14084 阅读 · 4 评论 -
rabbit svn命令行常用命令
1.检出svn checkout http://xxxx/trunk2.更新svn update3.添加文件目录svn add file4.撤销添加svn revert --recursive your_added_file5.生成diff文件svn diff single_flie >s.diff //生成单个文件的差原创 2017-01-17 17:04:41 · 1198 阅读 · 0 评论 -
Ubuntu解决软件相互依赖问题
这么棘手的一个问题,在折腾了N久之后竟然被我解决了.然而没有截图,现在仅把大致步骤说一下:一. apt-get update提示404问题出现此问题说明机器上存在某些软件,在当前指定的源服务器上找不到,解决方法有两个,要么尝试寻找其他源服务器并添加到/etc/apt/sources.list 要么就把出现404的软件从/etc/apt/sources.list.d目录中删除原创 2017-02-17 09:42:53 · 3388 阅读 · 0 评论 -
用checkinstall制作deb/rpm/Slackware安装包
简介checkinstall类似make install的功能,都可以根据Makefile中的指令执行相关操作.不同的是,checkinstall可以跟踪所有install的文件,并生成二进制的deb/rpm安装包.通过生成的deb/rpm包安装后,可以用包管理器方便地卸载.checkinstall作用的关键是Makefile, 所以,要做一个完善的安装包还是要熟悉Makefi原创 2017-02-28 21:56:57 · 1305 阅读 · 0 评论 -
python 批量下载并安装deb包
需要批量下载安装程序的可以参考以下.实现方法:1. urls.log中保存需要下载的deb包的URL地址2. download-install.py从urls.log中解析URL,然后下载到./Downloads目录下,最后逐个安装.上代码: #!/usr/bin/env pythonimport urllibimport osdef Schedule(a,原创 2017-02-14 21:30:55 · 3027 阅读 · 0 评论 -
dbus-python服务实现及introspection功能
话说dbus-python很强大,可以通过python轻松地实现一个dbus服务,供其它程序调用或与之交互。那么如何让QT通过proxy方式调用python实现的dbus服务呢? 这就要借助dbus-python的inspect功能了。比如通过dbus-python注册了一个名为com.foxbryant.demo的服务,通过d-feet查看结果如下:一、生成D原创 2017-02-07 23:20:36 · 1531 阅读 · 0 评论 -
Android实现生成二维码功能
这个功能比较简单,网上也能找到非常多的方法,大部分是通过google的zxing实现。问题在于网上的很多文章只说了生成方法,但没有介绍如何引入zxing库,导致我这个新手照葫芦竟然画不出瓢来,老是编译错误,甚是苦恼。解决后特来一记:1.首先下载zxing库,因为只是生成二维码,所以我只用了核心库,版本是3.2.1,下载地址2.将下载core-3.2.1.jar放到app/libs/目录下3.配置模...原创 2018-04-16 22:10:43 · 6020 阅读 · 0 评论 -
Ubuntu 14.04系统启动顺序回顾
产品在lightDM的配置中设置了Hook,通过session-setup-script调用了一个脚本,然后在脚本中启动软件。但这两天遇到一个问题:开机时偶发软件无法启动,日志跟踪发现,在脚本中启动软件时文件不存在。看日志发现有以下错误:而sda6正在软件所在的分区。 于是进一步查看分区挂载配置,在/etc/fstab中发现竟然把sda6的挂载注释掉了,然后再进一步确认发现sda6...原创 2018-08-10 00:14:41 · 1871 阅读 · 0 评论 -
linux分区挂载
fdisk:只用于磁盘分区管理工作,可以删除、新建分区分区完成后,要想插入机器后自动挂载,还需要设置分区的文件系统类型mkfs.vfat:将磁盘格式化成fat32格式 可以兼容windows和linuxsudo mkfs.vfat -F 32 /dev/sdb1mkfs.ntfs:将磁盘格式化成NTFS格式sudo mkfs.ntfs -f -L label /dev...原创 2019-03-20 17:38:10 · 294 阅读 · 0 评论 -
orange pi prime上部署selenium
想在orange pi prime(ubuntu OS)上部署selenium工具,折腾了两天终于搞定,主要是因为geckodriver在github上不提供arm64架构的版本,所以刚开始想按照源码编译一个能在arm上运行的驱动,但苦于没搞过交叉编译 弄了一通环境最终编译出来的文件竟然还不通用,用file命令一看,原来是32位的ARM EABI5,瞬间崩溃。。。后来通过google(你...原创 2019-05-26 19:37:56 · 599 阅读 · 0 评论 -
服务中监视会话切换
g_UserSessionID = 0;VOID CALLBACK OnTimerProc(HWND hwnd,UINT uMsg,UINT_PTR idEvent,DWORD dwTime){ /*****if session changed then reload OSD process******/ CurrentSessionID = WTSGetActiveConsole原创 2012-04-10 23:49:10 · 686 阅读 · 0 评论 -
QT5.6升级到5.7之后,编译apk失败的解决方案
Qt这个坑货,着实把我郁闷了一把。之前用的Qt5.6,想使用5.7中的linechart图表组件,就升级到QT5.7了。不料安装5.7之后,原先好好的工程竟然不能正常生成APK了,错误如下:BUILD FAILED/usr/local/android/android-sdk-linux/tools/ant/build.xml:649: The following error occ原创 2016-08-23 06:55:09 · 3096 阅读 · 1 评论 -
华为云服务器部署SVN Server
OS: CentOS 7.0.1406安装方法:参考http://blog.csdn.net/daixinmei/article/details/50971406其实我只用到了前3步,启动服务是放到了/etc/rc.d/rc.local中重点要注意的是:1.SVN安装完成后可以通过如下命令检查是否成功: #svnserve--version2.创原创 2016-09-12 23:10:53 · 3803 阅读 · 0 评论 -
AutoHotkey 命令列表
下面是官方的命令列表,直接单击命令,可进入命令的详细说明:http://cn.autohotkey.com/docs/commands/条目说明{ ... } (区块)一对大括号组成的区域表示一个区块. 区块通常与 函数, Else, Loop, While 循环 和 IF 命令一起使用.{ ... } / Object()创建脚本化原创 2012-06-03 18:06:10 · 11590 阅读 · 0 评论 -
NSIS循环遍历INI文件内容
INI文件格式如:[Logon]0CmdLine=hello.exe0Parameters=1231CmdLine=hello.exe1Parameters=123.... NSIS代码:!include "LogicLib.nsh" Function UpdateScriptIni strcpy $Var_IniFile "$INST原创 2012-04-30 20:33:21 · 5440 阅读 · 0 评论 -
学习HTML及XML非常好的网站
Mark一下: http://www.w3school.com.cn原创 2011-12-09 01:28:55 · 766 阅读 · 0 评论 -
Oracle 通过存储过程删除两个表中符合条件的记录
有book及book_copy两个表,要根据book_copy表中的某几个字段删除book表中所有与其相等的记录。存储过程如下: CREATE OR REPLACE PROCEDURE PROC_DEL_RECORDS IS v_cur_records I原创 2011-10-10 01:11:00 · 2402 阅读 · 0 评论 -
OTL之oralce开发总结
关于OTL,网上介绍的也不少,但看来看去也只是官方的那些文档。OTL很好用,结合官方提供的一些例子,多多尝试才能领悟。经过一个月左右的项目开发,对OTL也有些了解,在这里总结一下,希望对刚接触OTL的新手有所帮助。其中有些地方,比如对网络异常的处理,可是费了我两天的时间才解决的,原创 2011-10-16 00:45:34 · 8577 阅读 · 1 评论 -
批量删除PDF注释
<br /> 帖子参考http://blog.csdn.net/xiazhaoqiang/archive/2011/02/28/6212524.aspx,感觉原贴步骤写的不全,所以在此完善一下<br /> <br />在查看如电子书等pdf文档时,一般都喜欢在上面加些标记或注释,但有时需要将文档还原到原有状态。此时可以通过单个删除的方法(当注释较少时),也可以通过下面的方法删除整个pdf文档中的所有标记及注释:<br /> <br />1. 打开“Adobe Acrobat 8 Profes原创 2011-03-26 21:04:00 · 16296 阅读 · 0 评论 -
NSIS官网 http://nsis.sourceforge.net
http://nsis.sourceforge.net http://nsis.sourceforge.net/Category:Plugins http://nsis.sourceforge.net/Category:Code_Examples原创 2012-06-08 07:54:40 · 11838 阅读 · 0 评论 -
Ubuntu安装android-ndk编译出错的处理
环境:Ubuntu 16.04NDK版本:android-ndk-r12b-linux-x86_64.zip问题:下载后解压放到usr/local/lib/目录,编译时提示:“Android NDK: Your APP_BUILD_SCRIPT points to an unknown file”解决办法:修改~/.bashrc文件,添加:原创 2016-07-02 10:09:15 · 1341 阅读 · 0 评论 -
VMware11上安装CentOS7无法上网问题(通过NAT上网设置)
刚开始玩CentOS,用虚拟机装了个CentOS7,安装过程无比顺畅,这一点比Windows确实简单不少。但是装完之后网络却无法使用,百度了一下用ifconfig查看连eth0设置都没有,只有一个lo设备。。。被这个问题纠缠了几天,最终找到了问题所在。以下均转自网络,我只是在此整合一下,原文请看:http://bbs.csdn.net/topics/390916173原创 2016-01-10 10:29:03 · 27219 阅读 · 0 评论 -
VS2010常见的环境变量
$(OutDir)、$(TargetName) 、 $(TargetExt)、$(ProjectName)、$(TargetFileName)默认输出文件:$(OutDir)$(TargetName)$(TargetExt),默认等于$(TargetPath)。编译事件支持的命令:copy/del/xcopy如:copy "$(OutDir)$(TargetName原创 2014-05-08 15:01:52 · 9790 阅读 · 0 评论 -
C++ 编译 找不到标识符 问题
这是一个非常简单,但又容易被忽视的问题。希望会对不明白的同学有所帮助。首先,C++的编译是以.cpp为单元的,在编译.cpp时,会先将include的头文件声明加进来,然后编译并生成用于后续链接所用的.obj文件。编译期间,各个.cpp是独立的(即不可见的),不要期望在一个cpp中include了头文件,就不用在其它cpp中再include了。如果.cpp中有用到对当前原创 2014-05-09 10:34:09 · 39273 阅读 · 1 评论 -
浏览器之扩展与插件的区别
这几天在寻找跨浏览器与本地进程交互的实现,刚看到chrome扩展的时候,无比兴奋,这个东西做起来简直太easy了,直接用JS就可以写扩展,还找了几个例子。结果感觉越来越不对劲,通过JS怎么实现与本地进程的交互呢?于是又一轮Baidu & Google...后来才发现,原来扩展和插件是两个不同的概念,而我需要的实现应该要插件才能完成。其二者区别如下:1. 扩展是给能够给浏原创 2014-01-16 16:35:28 · 7093 阅读 · 2 评论 -
对Silverlight的认识总结
这几天要研究跨浏览器插件的实现方案,对Silverlight了一个接触的机会,下面是自已的一些理解,记录一下以便后续查阅,如有理解偏差之处,请指正:Silverlight是微软推出的一个跨浏览器(IE/Chrome/Safari/Firefox等)、跨平台(Windows、Mac)的插件,为网络带来下一代基于.Net Framework的多媒体和丰富的交互式应用原创 2014-01-11 22:35:38 · 1056 阅读 · 0 评论 -
64位Win8下访问虚拟内存出现违规访问的问题
通过Hook API的方式捕获程序异常时发现一个问题,代码片段如下: if (addr) { ... VirtualProtect(addr, size, PAGE_READWRITE, &dwOldFlag); WriteProcessMemory(GetCurrentProcess(), addr, code, size, NULL); VirtualProtect(addr, size, d原创 2013-10-12 10:50:52 · 5083 阅读 · 1 评论