https://static.06ms.com/static/images/index/12.jpg

linux编辑器nano快捷键

使用Linux VPS会经常和编辑器打交道,一般常用的是vi和nano,虽然vi功能强大,但是相对新手来要稍微难上手,GNU nano是一个体积小巧而功能强大的文本编辑器。这里就简单说一下nano的使用方法。

安装

CentOS:执行yum -y install nano

Debian:执行apt-get install -y nano

新建/打开文件

nano 路径+文件名
如果改文件存在,上面的命令将打开这个文件;如果文件不存在则将会创建一个新文件并打开。

Note:在Windows系统中,一个文件应当有后缀名,比如.txt,以供系统进行类型判断,不过Linux并不根据 后缀名来判断类型。当然,写上后缀名也无妨,比如example也可以用example.txt。

光标控制

移动光标:使用用方向键移动。

选择文字:按住鼠标左键拖到。
https://static.06ms.com/attach/20131122/528f0af71ef6f.jpg

谁说nginx不如apache?nginx与apache详细性能对比

nginx动态文件处理能力差?

这是我最困惑的地方,在google了nginx之后发现它的评价并没有想象中那么差劲,并且很多公司已经开始用nginx+php(fast-cgi)作为主流web服务器,于是我决定亲自试一试。

测试环境:

web服务器:192.168.0.235双核(Intel(R) Xeon(TM) CPU 3.00GHz)

测试客户端:192.168.30.149双核(Pentium(R) Dual-Core CPU E5200 @ 2.50GHz)

测试工具:

webbench-1.5 ,这里为何不用ab命令,因为测试时发现,在高并发下,ab命令可能会失败,在任务没有完成时,强制终止。所以我们要有一个容错的工具来进行测试。

直接进入主题

a、首先来看一下静态文件的处理性能比较:

①处理数据量比较

x轴:并发量

y轴:每秒钟的数据处理量(byte/sec)

这里不过多解释,nginx的静态处理能力完胜apache

https://static.06ms.com/static/images/index/11.jpg

CentOS6.3无缝升级nginx最新版

先交代一下本次升级的环境

系统:centos6.3 64位

nginx 安装位置: /usr/local/nginx(不同的主机安装位置不同,使用以下代码时请注意做必要的替换)

手动安装的时候要替换你的安装位置,其中 /usr/local/nginx 是nginx的安装目录Shell

首先备份你原有的nginx

tar -zcvf nginx.tar.gz /usr/local/nginx/.

然后远程下载最新稳定版的 nginx

wget http://nginx.org/download/nginx-1.5.7.tar.gz

查看Nginx最新的版本号:http://nginx.org/en/download.html

将下载好的文件解压缩:

tar -zxvf nginx-1.5.7.tar.gz

解压后得到目录 nginx-1.5.7,进入该目录

cd nginx-1.5.7

接下来我们需要编译 nginx 的源码,在编译之前确保你的主机安装了必须的编译工具

yum install gcc openssl-devel pcre-devel zlib-devel

如果你不清楚编译时的选项,可以参考现有 nginx 的编译选项,查看方法

https://static.06ms.com/static/images/index/15.jpg

Windows8.1开启TFTP服务

Like at Windows Vista, Windows 8 and Windows 7 don’t enable Telnet and TFTP Clients in installation.

To enable them, open Control Panel > Programs and Features > click Turn Windows features On or Off in left side > enable Client Telnet and Client TFTP then click in OK.

I not tested in Windows Vista yet, but the process can be same.

See you soon!

https://static.06ms.com/static/images/index/16.jpg

AMH 日历模块

说明:历法扩展集包括了一系列用于在不同历法间进行转换的函数;

安装方法,同官方一样!

此安装包,包含安装文件和所需下载安装的压缩文件,

https://static.06ms.com/static/images/index/19.jpg

ROOT模式下,接听来电的方法。

使用了Root Tools 来招待命令。https://code.google.com/p/roottools/

/**
 * 接听来电
 */
private void answerRingingCall()
{
    try
    {
        Command command = new Command(0, "input keyevent 5")
        {
            @Override
            public void output(int id, String line)
            {
                Log.d(Tag, line);
            }
        };
        RootTools.getShell(true).add(command).waitForFinish();
    }
    catch (InterruptedException e)
    {
        e.printStackTrace();
    }
    catch (IOException e)
    {
        e.printStackTrace();
    }
    catch (TimeoutException e)
    {
        e.printStackTrace();
    }
    catch (RootDeniedException e)
    {
        e.printStackTrace();
    }
}

https://static.06ms.com/static/images/index/16.jpg

安卓来电静音

来电铃声响起后,可通过此代码实现静音而非挂断。

private static int previousMuteMode = -1;

/**
 * 来电静音
 * 
 * @param context
 */
private void toggleRingerMute(Context context)
{
    AudioManager am = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
    if (previousMuteMode == -1)
    {
        previousMuteMode = am.getRingerMode();
        am.setRingerMode(0);
    }
    am.setRingerMode(previousMuteMode);
    previousMuteMode = -1;
}

https://static.06ms.com/static/images/index/19.jpg

安卓通话免提切换

实现免提开启和关闭,需要添加的权限

/**
 * 免提
 * 
 * @param context
 */
private void toggleSpeaker(Context context)
{
    AudioManager am = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
    am.setMode(AudioManager.MODE_IN_CALL);
    am.setSpeakerphoneOn(!am.isSpeakerphoneOn());
}

https://static.06ms.com/static/images/index/15.jpg

centos 卸载vsftpd方法

在服务器上安装了vsftpd,配置出错需要卸载vsftpd。卸载vsftpd的命令如下:

[root@localhost ~]# rpm -aq vsftpd
vsftpd-2.0.5-16.el5_5.1 #此处是查找vsftpd的返回结果
[root@localhost ~]# rpm -e vsftpd-2.0.5-16.el5_5.1 #用rpm -e 查找结果 进行删除就ok了。
warning: /etc/vsftpd/user_list saved as /etc/vsftpd/user_list.rpmsave
warning: /etc/vsftpd/ftpusers saved as /etc/vsftpd/ftpusers.rpmsave #删除时将备份vsftp的用户列表文件。

看下是否卸载了vsftpd,进行stop及start操作:

[root@localhost ~]# /sbin/service vsftpd stop
vsftpd: unrecognized service #找不到vsftpd
[root@localhost ~]# /sbin/service vsftpd start
vsftpd: unrecognized service #找不到vsftpd记住,在卸载vsftpd之前,先停止vsftpd。

https://static.06ms.com/static/images/index/23.jpg

Linux批量修改设置文件/文件夹权限

用Linux服务器的时候,最麻烦的莫过于权限的设置

一种可视化的方法就是通过Winscp一个一个文件夹设置,但是速度太慢了

其实SSH中可以用递归的方法实现批量修改文件或文件夹权限(chmod)操作:

先进入目录,举例为discuz3

cd /www/discuz3
然后递归设置文件夹(目录)权限为777
find -type d -exec chmod 777 {} ;          /一般用这条就可以了
find -type d|xargs chmod 777
随后可以选择设置文件权限为777
find -not -type d -exec chmod 777 {} ;
find -not -type d|xargs chmod 777
上面也是一样,一般只要设置第一行就行了。

但是在这里建议各位,有些文件,如config系统配置文件,还是保留为644权限为好。

https://static.06ms.com/static/images/index/1.jpg

解决NGINX PHP No input file specified

1、更改php.ini

把其中的 ;cgi.fix_pathinfo=0 改成 cgi.fix_pathinfo=1,然后重启php服务。

2、更改Nginx

在nginx/conf/nginx.conf中找到

fastcgi_param  SCRIPT_FILENAME  html$fastcgi_script_name;

改为

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

html 这个每个环境都不一样.

之后重启Nginx.

3、如果还不行,还有一种可能是php的测试页面代码格式有问题,我当初做的时候,phpinfo写成了:<? php phpinfo(); ?> 所以错了,应该是<?php phpinfo(); ?>
结果搞定。

https://static.06ms.com/static/images/index/6.jpg

centos 6.3用yum安装中文输入法

1、 su root

2、yum install "@Chinese Support"

3、exit

4、返回桌面,system->preferences->input method

5、如果没有请重启下

6、然后继续第4步按照提示添加输入法

7、最后再次注销,登录即可.

注:中途出现下载提示请选择y,贴出以下代码类似参考。

https://static.06ms.com/attach/2012/07/8ebb320f6379baffaae286c4fefe2ac820120717135804.png

Windows8关闭smartscreen筛选器

Windows8系统,如果不想要SmartScreen筛选器功能的话,那么也可以对其进行调整,按住Windows+R键,键入control.exe,回车启动旧式控制面板。

打开操作中心面板,点击更改SmartScreen设置,这样一来,用户就可以开启警告,但是避免打扰到自己,或者是直接关闭SmartScreen功能。

https://static.06ms.com/static/images/index/3.jpg

错误 324 (net::ERR_EMPTY_RESPONSE):解决方法(WIN7 X64)

错误 324 (net::ERR_EMPTY_RESPONSE):服务器已断开连接,且未发送任何数据。

把下面这段命令用复制粘贴到“记事本”中,然后保存为批处理,以管理员身份运行。如果还是不行,可能要修复注册表!

     regsvr32 /i /s Actxprxy.dll 
    regsvr32 /i /s Browseui.dll
 regsvr32 /i /s Jscript.dll
  regsvr32 /i /s Shdocvw.dll
  regsvr32 /i /s Oleaut32.dll
 regsvr32 /i /s Mshtml.dll
   regsvr32 /i /s Urlmon.dll
   regsvr32 /i /s Vbscript.dll