HTTPD启动绑定端口失败

问题描述:

在apache中绑定非http标准端口时,一直出现如下的错误提示:

[root@localhost ~]# /etc/init.d/httpd start
Starting httpd: (13)Permission denied: make_sock: could not bind to address 0.0.0.0:8087
no listening sockets available, shutting down
Unable to open logs

原因分析:

该问题是由SELinux 引起的

解决方案:

 

1、快速解决,修改selinux级别(不推荐)

vi /etc/sysconfig/selinux 
SELINUX=enforcing =>SELINUX=disabled 
reboot

 

2、从根本上解决(推荐)

根据自己的需求在selinux中添加需要指定的端口
前提需要先安装semanage(Centos6.0默认没有安装该应用)
a)安装方式如下:

[root@localhost /]# yum provides /usr/sbin/semanage
[root@localhost /]# yum whatprovides /usr/sbin/semanage
[root@localhost /]# yum -y install policycoreutils-python
[root@localhost /]# semanage

b)使用semanage添加apache侦听的端口

查看现在的支持http的端口有哪些

[root@localhost /]# semanage port -l|grep http 
为http服务添加新的端81 

[root@localhost /]# semanage port -a -t http_port_t -p tcp 81 
查看添加的结果 

[root@localhost /]# semanage port -l|grep http

 

Git 乱码处理方法

乱码情景1

在cygwin中,使用git add添加要提交的文件的时候,如果文件名是中文,会显示形如274\232\350\256\256\346\200\273\347\273\223.png的乱码。

解决方案:

在bash提示符下输入:

[codesyntax lang=”text”]

git config --global core.quotepath false

[/codesyntax]
core.quotepath设为false的话,就不会对0×80以上的字符进行quote。中文显示正常。

乱码情景2

在MsysGit中,使用git log显示提交的中文log乱码。

解决方案:

设置git gui的界面编码

[codesyntax lang=”text”]

git config --global gui.encoding utf-8

[/codesyntax]
设置 commit log 提交时使用 utf-8 编码,可避免服务器上乱码,同时与linux上的提交保持一致!

[codesyntax lang=”text”]

git config --global i18n.commitencoding utf-8

[/codesyntax]
使得在 $ git log 时将 utf-8 编码转换成 gbk 编码,解决Msys bash中git log 乱码。

[codesyntax lang=”text”]

git config --global i18n.logoutputencoding gbk

[/codesyntax]
使得 git log 可以正常显示中文(配合i18n.logoutputencoding = gbk),在 /etc/profile 中添加:

[codesyntax lang=”text”]

export LESSCHARSET=utf-8

[/codesyntax]

乱码情景3

在MsysGit自带的bash中,使用ls命令查看中文文件名乱码。cygwin没有这个问题。

解决方案:

使用?lls --show-control-chars?命令来强制使用控制台字符编码显示文件名,即可查看中文文件名。

为了方便使用,可以编辑?/etc/git-completion.bash?,新增一行?alias ls="ls --show-control-chars"

Linux查看系统资源情况

1. 查看CPU使用情况的命令

$ vmstat 5

每5秒刷新一次,最右侧有CPU的占用率的数据

$ top

top 然后按Shift+P,按照进程处理器占用率排序

2. 查看内存使用情况的命令

$ free

$ top

top 然后按Shift+M, 按照进程内存占用率排序

3. 查看网络流量

可以用工具iptraf工具

$ iptraf -g

“”针对某个Interface的网络流量可以通过比较两个时间网络接口的RX和TX数据来获得

$ date; ifconfig eth1

4. 查看磁盘i/o

$ iostat -d -x /dev/sdc3 2

用iostat查看磁盘/dev/sdc3的磁盘i/o情况,每两秒刷新一次

$ vmstat 2

用vmstat查看io部分的信息

procs:
r–>;在运行队列中等待的进程数
b–>;在等待io的进程数
w–>;可以进入运行队列但被替换的进程

memoy:
swap–>;现时可用的交换内存(k表示)
free–>;空闲的内存(k表示)

pages:
re--》回收的页面
mf--》非严重错误的页面
pi--》进入页面数(k表示)
po--》出页面数(k表示)
fr--》空余的页面数(k表示)
de--》提前读入的页面中的未命中数
sr--》通过时钟算法扫描的页面

disk 显示每秒的磁盘操作。 s表示scsi盘,0表示盘号

fault 显示每秒的中断数
in--》设备中断
sy--》系统中断
cy--》cpu交换

cpu 表示cpu的使用状态
cs--》用户进程使用的时间
sy--》系统进程使用的时间
id--》cpu空闲的时间

其中:
如果 r经常大于 4 ,且id经常少于40,表示cpu的负荷很重。
如果pi,po 长期不等于0,表示内存不足。
如果disk 经常不等于0, 且在 b中的队列 大于3, 表示 io性能不好。

Eclipse使用技巧

文件比较

Eclipse列编辑模式

Search功能(还有一个是Find/Replace)

一个文件打开多次,这样在你写代码时,需要参考文件的不同部分时,就不需要滚上滚下了

提取公共代码到私有的公共方法

eclipse显示启动时间的插件:
看这里http://www.blogjava.net/shenh062326/archive/2011/10/16/361360.html

常用Eclipse配置

eclipse的使用,在其help文件中都有详细的介绍如何使用的,一般可以去那边找。
代码折叠设置

快捷键设置

编译器错误、警告设置

本地历史设置

代码格式化设置

库设置

文本编辑器设置

让eclipse能启动多个实例

工作空间设置

xml编辑器设置

外观设置

代码格式化风格设置

鼠标over代码等时的提示设置

创建新文件时生成文件的模版设置

junit launcher设置。在开发android时,如果用eclipse内置的launcher是不行的,必须用android提供的。

eclipse调优

一般在不对eclipse进行相关设置的时候,使用eclipse总是会觉得启动好慢,用起来好卡,其实只要对eclipse的相关参数进行一些配置,就会有很大的改善。
加快启动速度
1.在eclipse启动的时候,它总是会搜索让其运行的jre,往往就是这个搜索过程让eclipse启动变慢了。(没设置时,等2-3s出现进度条,设置后直接出现进度条)

只要在eclipse.ini中加入-vm的参数就可以了

2.取消所有启动时要激活的插件(在用时激活也一样)和其它的相关的在启动时执行的操作。

3.关闭自动更新

减少jvm内存回收引起的eclipse卡的问题
这个主要是jvm在client模式,进行内存回收时,会停下所有的其它工作,带回收完毕才去执行其它任务,在这期间eclipse就卡住了。所以适当的增加jvm申请的内存大小来减少其回收的次数甚至不回收,就会是卡的现象有明显改善。

主要通过以下的几个jvm参数来设置堆内存的:

-Xmx512m 最大总堆内存,一般设置为物理内存的1/4
-Xms512m 初始总堆内存,一般将它设置的和最大堆内存一样大,这样就不需要根据当前堆使用情况而调整堆的大小了
-Xmn192m 年轻带堆内存,sun官方推荐为整个堆的3/8
堆内存的组成 总堆内存 = 年轻带堆内存 + 年老带堆内存 + 持久带堆内存
年轻带堆内存 对象刚创建出来时放在这里
年老带堆内存 对象在被真正会回收之前会先放在这里
持久带堆内存 class文件,元数据等放在这里
-XX:PermSize=128m 持久带堆的初始大小
-XX:MaxPermSize=128m 持久带堆的最大大小,eclipse默认为256m。如果要编译jdk这种,一定要把这个设的很大,因为它的类太多了。

我的配置(2g内存的笔记本):

还有其它的相关参数可以看看下面的参考材料,很有启发的:
-XX:+UseParallelGC 使用并发内存回收
-XX:+DisableExplicitGC 禁用System.gc()的显示内存回收

eclipse相关设置来来减少卡的现象
1.关闭自动构建。在启用时,每保存一下,eclipse就会自动为我们构建整个项目,这样对于大的项目来说,每次保存时都会造成很卡。其实自动构建完全没有必要,只要保证在运行前构建一次就ok了,eclipse也会在运行前自动为我们构建,所以关闭是最明智的选择。

2.关闭拼写检查设置

3.关闭SaveAction。在每次保存时都会执行的操作,这个会严重的拖慢保存,特别是文件大时。这个其实只要自己养成良好的编程习惯,就完全不需要这个了。

4.优化代码提示。

5.eclipse按Ctrl键卡死的问题解决方法
在eclipse中编辑3万行左右的代码时,在用ctrl+c/v复制时eclipse经常会卡住较长的时间。
后来发现只要按下ctrl键就会卡,我猜测应该是因为eclipse中按住ctrl后可以用鼠标单击跳转到变量定义的地方,所以当按下ctrl键时eclipse会去生成这个映射,当文件比较大时,这个行为会花费比较多的时间,非常不爽,经过一番查找才知道,可以通过以下方法设置快捷键。

Eclipse — Windows->Preferences->General->Editors->Text Editors->Hyperlinking:
去掉这个选项:Enable on demand hyperlinks style navigation
或者将你不想做Ctrl跳转的文件不选即可!

其它的优化链接
http://wcgdonot.iteye.com/blog/1380429

参考材料:

jvm启动参数大全:
http://www.blogjava.net/midstr/archive/2008/09/21/230265.html
jvm结构的一些知识(其中的堆的构成):
http://hllvm.group.iteye.com/group/wiki/2905-JVM
jvm堆知识:
http://ruijf.iteye.com/blog/1028455
eclipse启动调优:
http://www.iteye.com/topic/756538
eclipse自带的help contents(搜索”Running Eclipse”可以找到启动相关的配置)

自同步 局域网文件同步

自同步是一款小巧实用的局域网文件同步工具,具有使用方便、同步快速的特点,在局域网内,它可以让你在任意两台电脑(手机)的两个目录之间建立同步,你在一个目录中添加/修改的文件,在另一个目录中也会相应的添加/修改。

基本介绍

1、 无需再用 U盘、QQ、邮件传输文件;
2、 windows 用户可以抛弃文件夹共享、winScp;
3、 linux 用户可以抛弃scp、samba、rsync;
4、 mac用户不用设置“文件共享”;
5、 Android 和 IOS的图片能便捷同步(备份)到你的电脑上了。

使用方法

下面例子是教你如何在两台 windows 电脑(zisync-window1与 zisync-window2)之间建立同步,如何让 zisync-window1桌面上的目录 A与 zisync-window2桌面上的目录B建立同步关系。
Step1:启动”自同步”程序,设置同步口令(token),自同步会自动发现局域网内有相同同步口令的设备,如图:

输入您的同步口令(我们在此输入同步口令 zisync),点击完成,发现另外一台同步口令为zisync的设备(zisync-window2),其中 zisync-window1为当前设备,如图:

Step 2:建立设备间的互相信任, 鼠标右键点击设备 zisync-window2,点击【添加信任】,向 zisync-window2 发送请求信任的请求,如图,

然后在 zisync-window2 设备上同意信任该设备,完成后,可以看到与 zisync-window2已经建立了信任,如图:

Step 3:建立同步目录。点击选项页上的【同步目录】 ,可以看到当前没有已建立的同步关系,所以我们点击左下角的【添加】按钮来建立同步目录,如图:

选择【使用已有的同步目录】,然后点击下一步,会出现让您选择其它设备的同步目录界面,如图:

当前在zisync-window2上没有看到已存在的同步目录,所以我们点击【创建同步目录】,选择“桌面/B”来为 zisync-window2 创建新的同步目录,点击完成后,我们可以看到zisync-window2多了一个同步目录的信息,如图:

注:这里也可以为本机创建同步目录,这样不仅可以在两台设备的目录之间建立同步关系,也可以在一台设备的目录之间建立同步关系。
点击【下一步】去选择本地的目录,如图:

选择与建立同步关系的本地目录,在该教程中,我们选择“G:/zisync” ,点击【完成】后,这样我们就完成了在两个设备目录之间建立同步关系的操作。
Step 4:在自同步主界面上【同步目录】可以看到你刚刚建立同步关系,如图:

 

下载地址:

官网下载

MagicPlan 人人都是房屋设计师

MagicPlan这款智能机上的装修绘图软件第一个版本在ios平台上架时有超过100万的用户下载,这个数量足以说明其功能的强大,只要使用您设备上的摄像头,MagicPlan安卓版就可以测量您的房屋并且画出您的楼层平面图。这就和拍照一样简单!接下来您可以将您的楼层平面图以PDF、JPG或DXF格式输出,也可以作为交互性网页版本发布。

【软件特点】

MagicPlan利用设备中的传感器(陀螺仪和加速度计)以及摄像头。对于每一台设备,MagicPlan都需要进行校准才能正常工作。由于安卓设备的多样性,不是每一台设备都能支持房间捕捉功能。如果您的设备不支持但具备捕捉的功能,您可以在我们对您的设备进行支持前先自行进行校准。
MagicPlan是对于房地产经纪人、工艺操作人员、调停人、消防员、建筑师、验房人员、室内设计师、小型商户、家具零售商和其他相关行业人员来说,最理想的一款应用软件。


【使用方法】

一.创建一个新的平面图

(1)在主菜单界面上点击“New Plan”按钮,新建一个你属于的平面图。
(2)点击后会弹出选择框,让你在Residential(住宅) 和Commercial(商业用地)之间选择一个,根据你自己的需要进行相应的选择吧!
(3) 再输入一些相关的信息,如名字,街道,城市,国家,邮政编码等等(拉动到最底部,点击“Delete”按钮便可删除该平面图,当然你可以通过回收站图标进行删除)
(4) 可以为你的平面图设置一个封面,点击“Add a Picture”上方的+按钮,你可以选择重新拍一张,也可以从相册中选择。点击“New Floor”即可以创建一个新的楼层,之后选择你所需要的房间类型。

二.通过摄像头捕获你的房间

想要创建一个完整的楼层平面图,你需要捕捉每一个房间。为了捕捉一个房间,你需要捕获了房间的每一个角落。而你所站的位置十分重要,必须保证你站立的地方能够看到房间中最多数量的角落。一旦你开始捕获房间里的角落,你需要保持不移动地站立在同一个地方,手持你的iPhone向四周旋转,注意手肘尽量靠近身体,这样可以获得更好地效果。
(1) 为了捕捉好一个角落,根据画面上的绿色指针来定位,你需要将绿色指针定位在墙壁和地板之间的十字交叉处,对准后就点击屏幕右侧的角落图标。
(2) 你可能也注意到了屏幕左侧的大门图标,它的作用是来捕捉门的:指针来到门的一边时按一下,来到另外一侧时再按一次即可。
当你捕获完整个房间的角落时,便会呈现一幅房间的平面图了!

三.修改你的平面图

当房间平面图完成后,你便可以发挥你的空间想象力进行设计了!
(1) 黑色边缘代表墙壁,选中某一墙壁后会变红,同时出现拉伸箭头,你可以进行长度上的调整。
(2) 两墙壁之间的角度也是可以进行调整的,选中两墙壁交界处后出现灰色圆圈,同样也可进行拉伸。注意,如果是完全的正方形的房间,角度是不能够调整的!
(3) 你可以通过选中某墙壁,添加门,窗或楼梯。当然还可以在房间内添加其他家具设施,像沙发,床等!这个得靠大家的空间设计能力啦!
(4) 想要为你设计好的房间添加描述或者注视,只需要点击右下方的“ i ”,输入相应信息即可。

四.组合房间布局

假如你将每个房间都设计修改完成,那么接下来你要做的就是将各个房间进行调整和组合。选中所要调整位置的房间进行拖动(可以进行旋转),放置在你想要放置的位置上。这里你可能会注意到,旋转圆圈的颜色会改变,绿色代表房间的方向对应另外房间的方向,红色则代表不对应!

五.添加房间或其他

房间布局完成后,可以添加壁橱,填充墙,方型房间等内容。

六.修正你的设计

当以上步骤都完成后,我们还需要做的一件事情就是精确地调整设计中的一些方向和距离,这可能有点专业了,不过相信细心总能够为你的设计增色不少的!

 

下载地址:

官方主页 | App Store | Google Play | 豌豆荚

Point 网页实时讨论与分享

通常情况下,当你向好友分享了一篇文章之后,是很难继续深入交流的。除非你们转移到Facebook或Twitter等社交网站上继续讨论。不过,今天我们要介绍的,则是一款名叫Point的Chrome免费插件。通过它,你不但可以向好友分享文章,还能够在当前页面与之进行实时聊天。此外,你也可以突出显示文中里的部分内容,并在聊天窗口中进行分享。

使用 Point 的另一个要求是必须使用 Facebook 或者 Google 账号登录,相信这个门槛足已抵挡 95% 的国内用户,

在任意网页按下快捷键 shift + 2,Point 便会在浏览器右下角快速弹出窗口,使用 @用户名 的方式通知好友,对方会实时收到通知推送并且只需点击就能进入与你相同的页面。

Point 网页在线实时分享与讨论[Chrome][图] | 小众软件

选中文字点击旁边出现的“大引号”,就能快速将引用发送到 Point 中,同样好友点击就会打开页面并且定位到引用文字。

而此过程中可以实时讨论、引用,非常适合多个人讨论技术性文章,而一起讨论规章制度什么的也不错…

需要注意的是,该服务是通过Point网络提供的。换言之,该插件并未通过Google Hangouts或Facebook Messenger来实现会话功能。此外,Point服务的移动版本也正在开发当中。

下载地址:

官方主页 | Chrome 网上应用店

VideoInspector 检测视频编码

VideoInspector 是一款免费的编码器检测程序,能为您快速解析各种影片格式,例如 AVI、DivX、XviD、MPEG、QuickTime 等,只要使用 VideoInspector 载入需要测试的影片,程序马上就能告诉您该影片是由何种视频以及音频编码方式组成,当计算机缺少该解码器时,程序会自动开启解码器下载功能,按下载后即可连接到解码器下载网页。

 

 

如今在线视频和万能视频播放器已经让大多数人省心到不需要理会视频文件的编解码问题了,但还会有少部分人需要。

VideoInspector 与 SUMo – 获取已安装软件列表及更新 出自同门,其官方还有许多小巧实用的软件工具。

VideoInspector 用起来就非常简单了,自带有中文,只需加载视频文件就能看到详细信息了,支持 AVI, Matroska, MPEG I, MPEG II, QuickTime 格式。

其中视频包括解析度、帧速、比特率、品质因数、编解码器,音频包括声道数、采样率、比特率、编解码器。还能显示视频时间以及电影完整性与否。会自动检测电脑里是否已经安装了相应的编解码器。

 

下载地址:

官网

注册信息:

name:lengxue
code: 50083090086072095106077