Linux
文章平均质量分 55
司青-已停止更新
本博客已停更;
展开
-
OS X 10.11下词法分析工具Flex编译链接问题
在用gcc编译flex生成的lex.yy.c文件时需要指定链接fl库,官方给出的例子也是执行gcc lex.yy.c -lfl然而在OS X 10.11下并没有该lib。我找到了15年前的一个帖子,原因是OX X 并没有提供libfl.a库,而是提供了一个功能一样的libl.a。因此链接-ll即可:gcc lex.yy.c -ll2001年的帖子原创 2016-04-17 16:41:43 · 1051 阅读 · 0 评论 -
Debian-7.6下升级glibc至2.15
MySql WorkBench, Eclipse-4.4等很多常用开发工具都要求 glibc 版本 >= 2.14,而 Wheezy 仓库中 glibc 最高仅为 2.13。为了让这些工具正常使用,我们只能用 Wheezy unstable 版的 glibc-2.15。升级方法如下:打开 /etc/apt/sources.list 文件,添加:deb http://ftp.debi原创 2014-09-17 01:04:12 · 4196 阅读 · 0 评论 -
解决Debian-7.6下eclipse-4.4崩溃问题
今天把系统从Debian-7.1换成了7.6,于是麻烦也就随之而来~Debian-7.6下eclipse-4.4 crash的原因是当前的glibc库的版本低于2.14,而很多软件都需要glibc >= 2.14才能运行。悲剧的是Debian的仓库里只有2.13版本的glibc,所以无法通过apt-get 升级。不过还有其它方法让eclipse运行:1. 在 eclipse.ini原创 2014-09-15 22:32:56 · 1934 阅读 · 0 评论 -
debian7解决chrome中文乱码
1、安装wqy-zenhei字体 sudo apt-get install ttf-wqy-zenhei 2、修改系统字体配置文件/etc/fonts/conf.d/49-sansserif.conf 打开/etc/fonts/conf.d/49-sansserif.conf这个文件:sudo gedit /etc/fonts/conf.d/49-sansserif.conf原创 2013-12-09 01:09:44 · 4646 阅读 · 1 评论 -
Linux下Tomcat死活找不到JSP页面中import指定类的解决方法
如果你没有使用任何的IDE,只是用自己喜欢的文本编辑器写代码,并手动部署到webapps/下的话,经常会遇到 "类 cannot be reloved to a type" 的错误。解决方法:1. 检查你的.class文件有没有放到/WEB-INF/classes/目录下,如果没有,则创建需要的目录并放进去。2. 如果.class文件的位置都放对了,包的问题也处理好了,但还是找不到原创 2013-04-22 11:08:57 · 3753 阅读 · 1 评论 -
GlassFish下手动部署JSF程序
以login项目为例:目录结构:login | |---index.jsp |---page.jsp |---WEB-INF/ |---web.xml |---faces-config.xml |---classes/web.xml : Web容器配置文件原创 2013-05-02 23:04:50 · 1662 阅读 · 0 评论 -
Ubuntu下 Tomcat + JSF + Ant + eclipse 开发环境搭建
JDK的安装就不用说了,这是必须的。。1. 去http://tomcat.apache.org/tomcat-7.0-doc/index.html下载Tomcat应用服务器,我用的版本是7.02. 从网上下载jsf-impl.jar 和 jsf-api.jar 这2个JSF实现jar包,放到tomcat_home/lib/ 目录下3. 去http://ant.apache.or原创 2013-06-03 01:34:51 · 1855 阅读 · 0 评论 -
在JBoss中部署GeoServer
GeoServer一直就不能在 JBoss应用服务器中正常部署。最近我在一个国外的论坛上找到了该问题的解决方案。以下方法经测试,可以将GeoServer 2.1.3 成功部署在 JBoss 5.0 和 JBoss 7.1.1中。添加 jboss-classloading.xml在 geoserver.war/WEB-INF目录下,添加 jboss-classloading.xml原创 2013-08-31 00:56:42 · 1840 阅读 · 0 评论 -
让Ubuntu14.04"保存"屏幕亮度值
Ubuntu系统有一个通病,那就是每次开机,系统都会把你的屏幕亮度调到最大值。 我很惊讶为什么到了14原创 2014-09-18 00:14:29 · 2681 阅读 · 0 评论 -
Ubuntu 14.04安装WPS
去官网下载 deb包:http://linux.wps.cn/安装完成后会无法启动程序,控制台会提示错误:error while loading shared libraries: libgthread-2.0.so.0: cannot open shared object file: No such file or directory需安装32位库:sudo apt-get in原创 2014-10-30 10:54:09 · 1617 阅读 · 0 评论 -
解决Ubuntu14.04下外接显示器无法指定最佳分辨率的问题
一般出现这种情况,在System Settings -> display 会发现多出来一个 unknown display。这往往是因为你用的视频线质量太差,比如几块钱的VGA线。解决方法有2,一是换条质量好的(有磁环抗干扰)VGA线或换成HDMI,DVI线,二是编写以下bash脚本:原创 2014-12-22 09:47:37 · 4022 阅读 · 0 评论 -
OS X EI Capitan下编译安装Libevent
由于EI Capitan版本的OS X移除了openssl的头文件只保留了bin文件,因此在编译libevent时会提示找不到openssl/bio.h。这时候直接找到openssl头文件目录, copy到libevent编译目录即可。拷贝openssl头文件到libevent编译目录:sudo cp -r /usr/local/opt/openssl/include/openssl openssl原创 2016-02-15 20:24:42 · 1774 阅读 · 0 评论 -
Linux/OS X下将Jar包转换成可直接执行文件(不用java -jar)
在github上发现了这个脚本stub.sh:#!/bin/shMYSELF=`which "$0" 2>/dev/null`[ $? -gt 0 -a -f "$0" ] && MYSELF="./$0"java=javaif test -n "$JAVA_HOME"; then java="$JAVA_HOME/bin/java"fiexec "$java" $java_ar原创 2015-08-10 14:17:51 · 3125 阅读 · 0 评论 -
Debian/Ubuntu下Nginx的安装、反向代理和负载均衡的基本配置
源码安装去Nginx官网下载最新稳定版,这里用的是nginx-1.6.3版。 下载完成后解压缩,进入该目录执行:./configure如果你的机器上没有安装PCER库、zlib库等,这一步会出错。sudo apt-get install libpcre3-dev zlibc zlib-bin然后执行:sudo makesudo make install完成后,nginx会默认安装在/usr/lo原创 2015-04-14 15:14:17 · 2852 阅读 · 0 评论 -
Linux TOP命令Load Average数值详解
一只单核的处理器可以形象得比喻成一条单车道。设想下,你现在需要收取这条道路的过桥 费 - 忙于处理那些将要过桥的车辆。你首先当然需要了解些信息,例如车辆的载重、以及还有多少车辆正在等待过桥。如果前面没有车辆在等待,那么你可以告诉后面的司机通过。 如果车辆众多,那么需要告知他们可能需要稍等一会。 因此,需要些特定的代号表示目前的车流情况,例如: 0.00 表示目前桥面上没有任何的车流。 实际上这种转载 2015-06-11 15:11:08 · 4277 阅读 · 1 评论 -
Redis的安装、部署和与Spring Cache整合
安装去http://redis.io/下载最新稳定版的源码。解压,进入解压目录,执行makemake install之后在src/目录下会多出以下几个文件:redis-serverredis-benchmarkredis-cliredis-conf将其copy至/usr/redis目录下即可。部署修改redis-conf文件,添加:requirepass 111111将连接密码设为11111原创 2015-06-14 14:09:55 · 2529 阅读 · 1 评论 -
淘宝开源项目TbSchedule的部署和使用
tbschedule项目其实可以分为两部分:schedule管理控制台。负责控制、监控任务执行状态实际执行job的客户端机器。在实际使用时,首先要启动zookeeper, 然后部署tbschedule web界面的管理控制台,最后启动实际执行job的客户机器。这里zookeeper并不实际控制任务调度,它只是负责与N台执行job的客户端通讯,协调、管理、监控这些机器的运行信息。实际分配任务的是原创 2015-06-17 17:57:39 · 11591 阅读 · 2 评论 -
使用crontab执行GUI程序
最近用python写了一个小GUI程序用于提醒自己做某某事,但是放到crontab后发现总是不执行,也没有报错。原因是如果要执行GUI程序,必须显示指定一个显示设备:0 11 * * 4 export DISPLAY=:0 && python /home/whf/mytools/eat-tip.py问题解决。原创 2015-06-20 13:18:38 · 2252 阅读 · 0 评论 -
Ubuntu14.04下Android Studio字体优化
Ubuntu: 14.04 Android Studio: 1.0.1Android Studio是基于IntelliJ的IDE,因此其字体就跟NetBeans一样难看。话说对于程序员来说,字体难看会折寿啊!先上一张改好的截图:如果这样效果是你的菜,那么就按下面的步骤来做吧。添加JVM参数切换到Android Studio的bin/目录下,会看到有studio64.vmoptions和studio原创 2015-02-14 23:33:26 · 8004 阅读 · 0 评论 -
修改JBoss-7.1.1 http访问端口并取消JBoss内网访问限制
修改http服务端口找到 jboss-as-7.1.1.Final/standalone/configuration/standalone.xml文件,找到第298行,如下图:如果我们想改成80端口,显然只需要将 port="8080" 改为 port="80" 并重启JBoss即可。取消访问限制默认情况下,JBoss只允许本地(内网) IP地址原创 2013-10-14 07:10:13 · 4772 阅读 · 0 评论 -
Debian/Ubuntu 下修改postgresql默认密码
刚安装好postgresql时postgre用户是没有初始密码的。执行以下命令以postgre身份登陆数据库并修改密码:sudo su postgrespsql -U postgresalter user postgres with password 'new-password';\q原创 2013-12-18 16:09:56 · 5739 阅读 · 0 评论 -
Debian-7.1下JBoss Forge + Arquillian + JBoss-as-7.1 测试环境搭建
下载安装ForgeJBoss Forge是一种能够快速创建、开发Java项目的工具,通过它我们可以迅速生成项目骨架,解决库依赖问题,并与Arquillian测试框架集成。Forge有点类似于seam-gen,但其最大的不同之处在于,seam-gen只能在项目创建时一次性成生class,而Forge可以随时动态添加class,field, 依赖库等。我们可以从官网(http://forge.jb原创 2013-12-26 22:39:48 · 2534 阅读 · 0 评论 -
Reinstall /usr/bin/ld in Debian
Just run following command:$ sudo apt-get install --reinstall binutilsThen you get ld back.原创 2013-12-09 01:42:04 · 1018 阅读 · 0 评论 -
在Debian-7.1下安装Bumblebee解决双显卡发热问题
1. 修改/etc/apt/sources.list, 使用如下源:# deb cdrom:[Debian GNU/Linux 7.1.0 _Wheezy_ - Official amd64 DVD Binary-1 20130615-23:06]/ wheezy contrib main# deb cdrom:[Debian GNU/Linux 7.1.0 _Wheezy_ - Offi原创 2013-12-09 04:25:59 · 5056 阅读 · 0 评论 -
解决安装完Ubuntu系统后启动项中没有Ubuntu的问题
问题出现的原因是你没有把grub安装到硬盘的起始扇区里,按理说Ubuntu在安装的时候应该能很好的处理这个问题,但有个别电脑还是会出问题。不过我们可以通用命令解决 问题。使用U盘进入Ubuntu系统,打开终端。首先你需要知道自己的/boot目录到底装到哪个分区里了。执行ls -l /dev会输出一大串结果,你去找含有 sda* 或者 sdb* 字样的文件. 一般来说我们的硬原创 2013-10-13 20:34:47 · 32649 阅读 · 5 评论 -
Learn Vim Progressively
老外blog的文章 ,学习vim的方法。TL;DR: You want to teach yourself vim (the best text editor known to human kind) in the fastest way possible. This is my way of doing it. You start by learning the minimal转载 2013-09-28 14:58:05 · 1124 阅读 · 0 评论 -
Ubuntu下Tomcat连接MySql数据库
Linux下在tomcat上配置MySql数据库没Windows那么简单,得折腾一翻。。。因此值得写下来做个记录,供日后参考。1. 下载安装MySQLUbuntu下安装MySQL非常简单,只需要:sudo apt-get install mysql-server安装过程中会让你设置用户名、密码,我的是root,root.2、下载JDBC去http://www原创 2013-04-20 23:43:18 · 3669 阅读 · 1 评论 -
Ubuntu下安装NetBeans步骤和相关问题的解决方法
折腾了一下午,总算搭好了NetBeans + JSF 开发环境。现将折腾期间出现的问题和解决方案记录如下。。:1. 去 https://netbeans.org/downloads/ 下载 netbeans-7.3-javaee-linux.sh2. 为 netbeans-7.3-javaee-linux.sh 添加可执行权限执行 chmod +x netbeans-7.3-j原创 2013-05-03 15:04:43 · 3119 阅读 · 1 评论 -
解决Ubuntu发热量大的问题
用Ubuntu 的朋友应该都有体会,开机不久风扇就开始狂转,本本也会很热。据说是双显卡支持不好,独显导致的问题。解决方法如下:sudo suecho IGD > /sys/kernel/debug/vgaswitcheroo/switch 切换到集成显卡echo OFF > /sys/kernel/debug/vgaswitcheroo/switch 关掉没有连接的显卡修原创 2013-04-15 01:18:51 · 4459 阅读 · 0 评论 -
为什么Linux不需要磁盘碎片整理
如果你是个Linux用户,你可能听说过不需要去对你的linux文件系统进行磁盘碎片整理。也许你注意到了,在Liunx安装发布包里没有磁盘碎片整理的工具。为什么会这样?为了理解为什么Linux文件系统不需要磁盘碎片整——而Windows却需要——你需要理解磁盘碎片产生的原理,以及Linux和Windows文件系统它们之间工作原理的不同之处。什么是磁盘碎片很多Windows用户,甚至是没有转载 2013-04-08 10:56:23 · 2361 阅读 · 3 评论 -
解决network-manager中wired为unmanaged的问题
我的Debian-7.1安装好时没有network-manager,便下载安装了一个,但安装完后wired总显示为unmanaged.解决方法如下:打开 /etc/NetworkManager/NetworkManager.conf, 将managed=false改为managed=true即可。原创 2013-12-09 09:16:55 · 12458 阅读 · 0 评论 -
使用vim的find命令快速打开文件
在sublime中,我们可以使用 Ctrl + P 呼出输入框,直接输入文件名就可以快速打开工程内的相应文件,非常方便。vim中也能实现同样的功能。网上大多数教程都是说用 lookupfile + ctag 插件来实现文件查找,配置起来比麻烦。其实使用vim自带的find命令也能完成所需功能。find 会从 path 中搜索文件。所以在使用find之前一定要配置一下path变量(不是P原创 2013-12-13 21:08:00 · 17571 阅读 · 1 评论 -
解决Debian-7.1下Chrome浏览器字体难看的问题
首先在 Advance Setting 的 font 标签页下做如下配置:然后在用户目录下创建 .fonts.conf 文件,内容如下: rgb true hintmedium true <!--***** ***** The following section原创 2013-12-17 02:02:12 · 3080 阅读 · 0 评论 -
Linux下定时备份Postgresql数据库
假设条件:Linux用户名:whfPostgresql超级用户:postgres要备份的数据库名:icomplain_desktop思路:首先为 whf 添加操作数据库的权限,然后将 pg_dump 命令写成shell脚本,最后使用crontab创建定时作业。步骤:切换到 postgres 用户:sudo su postgres连接数据库:p原创 2014-04-11 11:28:46 · 6976 阅读 · 1 评论 -
Debian Wheezy下安装 Emacs 24
Wheezy的仓库中只有Emacs 23,要想使用最新的24,需要进行源码安装原创 2014-04-21 03:13:47 · 2587 阅读 · 0 评论 -
取消SVN版本控制的bash脚本
原理很简单,递归删除当前目录下所有的 .svn 文件。#!/bin/bash# This script is used to remove ".svn" directory resursively in the current directory# author: Neo Smith(司青)# 2014.4.27del_svn() { for file in `原创 2014-04-27 03:31:14 · 1279 阅读 · 0 评论 -
编程解决Linux下解压zip乱码问题
JDK7 的ZipInputStream新添了一个构造方法,第二个参数可以指定字符集。这样一来我们就能用这个类写一个解压程序解决zip乱码问题了。下面是代码:package cn.fh;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.原创 2014-04-28 13:49:10 · 2049 阅读 · 0 评论 -
Linux Shell学习小记 - function, here document, if statement, declare constant
发现直接上代码比用文字说明要快的多。这里把常用的语法示例列出,以备日后查询。#!/bin/bash# a note.# define Constantdeclare -r TITLE="THIS IS TITLE" # shell would prevent any subsequent assignment to TITLEecho $TITLE# function d原创 2014-01-05 20:19:15 · 1144 阅读 · 0 评论 -
64位Debian-7安装WPS
添加对i386环境的支持:sudo dpkg --add-architecture i386sudo apt-get update安装32位库:sudo apt-get install ia32-libs ia32-libs-gtk安装wps:sudo gdebi wps-office_8.1.0.3724~b1p2_i386.deb原创 2014-01-26 14:43:34 · 3036 阅读 · 0 评论 -
Debian/Ubuntu下GPT分区转MBR分区
采用GPT分区方式的硬盘往往会在安装双系统时遇到麻烦。我们可以通过一个linux下的软件将GPT转换为传统的MBR。安装 partedsudo apt-get install parted然后在终端执行:sudo partedmklabel msdos重启即可。原创 2014-01-07 21:02:15 · 9560 阅读 · 0 评论