作者: admin

  • Linux VPS下SSH常用命令

    目录操作:
    rm -rf mydir /*删除mydir目录*/
    cd mydir /*进入mydir目录*/
    cd – /*回上一级目录*/
    cd .. /*回父目录,中间有空格*/
    cd ~ /*回根目录*/
    mv tools tool /*把tools目录改名为tool */
    ln -s tool bac /*给tool目录创建名为bac的符号链接,最熟悉的应该就是FTP中www链接到public_html目录了*/
    cp -a tool /home/vpser/www /*把tool目录下所有文件复制到www目录下 */

    文件操作:
    rm go.tar /* 删除go.tar文件 */
    find mt.cgi /* 查找文件名为mt.cgi的文件 */
    df –h /* 查看磁盘剩余空间,好像没这个必要,除非你太那个了 */

    解压缩:
    tar xvf wordpress.tar /* 解压tar格式的文件 */
    tar -tvf myfile.tar /* 查看tar文件中包含的文件 */

    tar cf toole.tar tool /* 把tool目录打包为toole.tar文件 */
    tar cfz vpser.tar.gz tool /* 把tool目录打包且压缩为vpser.tar.gz文件,因为.tar文件几乎是没有压缩过的,MT的.tar.gz文件解压成.tar文件后差不多是10MB */

    tar jcvf /var/bak/www.tar.bz2 /var/www/ /*创建.tar.bz2文件,压缩率高*/
    tar xjf www.tar.bz2 /*解压tar.bz2格式*/

    gzip -d ge.tar.gz /* 解压.tar.gz文件为.tar文件 */
    unzip phpbb.zip /* 解压zip文件,windows下要压缩出一个.tar.gz格式的文件还是有点麻烦的 */

    下载:
    wget http://soft.vpser.net/web/nginx/nginx-0.8.0.tar.gz
    /*下载远程服务器上的文件到自己的服务器,连上传都省了,服务器不是100M就是1000M的带宽,下载一个2-3兆的MT还不是几十秒的事 */
    wget -c http://soft.vpser.net/web/nginx/nginx-0.8.0.tar.gz
    /* 继续下载上次未下载完的文件 */

    转载请注明出处:VPS侦探 http://www.vpser.net

    进程管理:
    ps -aux /*ps 进程状态查询命令*/

    ps命令输出字段的含义:
    [list]
    [*]USER,进程所有者的用户名。
    [*]PID,进程号,可以唯一标识该进程。
    [*]%CPU,进程自最近一次刷新以来所占用的CPU时间和总时间的百分比。
    [*]%MEM,进程使用内存的百分比。
    [*]VSZ,进程使用的虚拟内存大小,以K为单位。
    [*]RSS,进程占用的物理内存的总数量,以K为单位。
    [*]TTY,进程相关的终端名。
    [*]STAT,进程状态,用(R–运行或准备运行;S–睡眠状态;I–空闲;Z–冻结;D–不间断睡眠;W-进程没有驻留页;T停止或跟踪。)这些字母来表示。
    [*]START,进程开始运行时间。
    [*]TIME,进程使用的总CPU时间。
    [*]COMMAND,被执行的命令行。
    [/list]

    ps -aux | grep nginx /*在所有进程中,查找nginx的进程*/
    kill 1234 /*1234为进程ID,即ps -aux 中的PID*/
    killall nginx /*killall 通过程序的名字,直接杀死所有进程,nginx为进程名*/

    Vim操作:

    移动类的:
    h/j/k/l: 左/下/上/右 移一格
    w : 向后词移动 (前面加数字移动多少个词)
    b : 向前词移动 (前面加数字移动多少个词)
    e : 向后移到词末
    ge : 向前移到词末
    $ : 行末
    0 : 行首
    tx : 向右查找本行的x并移到那儿(大写时向左)
    33G : 移到文件的第33行
    gg : 文件首行
    G : 文件尾行
    33% : 文件的33%处
    H/M/L : 屏幕的首/中/尾行
    zt/zz/zb : 当前行移到屏幕的首/中/底部

    跳转:
    ” : 回到跳转来的地方
    CTRL-O : 跳到一个 “较老” 的地方
    CTRL-I : 则跳到一个 “较新” 的地方

    查找:
    / : 向下查找(后加关键字)
    ? : 向上查找(后加关键字)
    n : 下一条符合的记录

    编辑:
    i : 转换到插入模式
    x : 删除当前字符
    . : 重复最后一次的修改操作(同PS里ctrl+f执行滤镜)
    u : 撤销操作
    CTRL-R : 重做
    p : 将删除的字符插入到当前位置(put)

    退出保存:
    :q : 退出
    :q! : 不保存退出
    ZZ : 保存后退出
    :e! : 放弃修改重新编辑

    掌握这些基本命令,Linux下的基本使用已经掌握,只要多加练习,多遇到问题,解决问题,能力就会不断的提升。

    出处:VPS侦探 http://www.vpser.net

  • Dropbox,金山快盘,SugarSync,EverBox等等..服务评测

    话说 Company 不但封锁了无数的网络而且还不能用U盘,真是掩耳盗铃。咱好歹也是用过软盘的人,且不说可以用虚拟机、装双系统,甚至都可以直接强制Kill掉防止U盘的进程。 但咱是大好青年,不能那么暴力,于是乎只能求助于云同步了。

    目前我用过的云同步软件有:快盘(金山),T盘(金山),EverBox(盛大),Dropbox(国外),Dbank(据说是华为),Live-Mesh(微软),Sugar Sync(国外)。 这么多软件在我电脑上共存了大约三个月的时间,现在只剩下Dropbox一枚。且在此记录一下原因: 1、快盘,T盘 金山这个瓜娃子不知打的什么主意,一模一样的服务非得做两个软件。除了让用户更晕之外,没有任何用处。金山的有点是可以完全自定义同步文件的目录,缺点只有一个——速度巨慢。 2、EverBox 盛大出品的软件同步速度很快,但是灰常消耗宽带资源,基本上你有多少速度它用多少带宽,勉强算个缺点吧。也可以自定义目录,目前内测中,需要邀请码才可以注册,客户端也不是特别稳定。(PS:需要邀请码的童鞋请留言) 3、Dropbox 目前唯一一个还活在我电脑里面的同步软件,虽说服务器在国外,但是速度很不错,客户端还算稳定的吧。可惜不支持自定义目录。例如你只能选择 x:xxDropbox 这样的目录,也就是说同步文件夹的名字只能是Dropbox。 4、Dbank(数据银行) 据说是华为出品 待续……

  • 写给还奋战在XP第一线的同志们

    话说XX公司的网络监控客户端只支持win平台而且最高到 Vista(汗!!!三滴汗),偶千辛万苦的下载了各个版本的XP,挨个的安装测试,这把我累的要死要活的。
    最终找到这个版本《深度技术 Deepin Lite XP SP3 完美精简版》,一张光盘,两种选择,可以传统安装也可以Ghost,你爱咋咋地…
    为了劳苦大众,我千辛万苦的传到了网盘上。
    现如今咱还是转回Windows 7的阵营了,不就是个MD5质询么,就这~~~还难得住咱这上过刀山下过火海的?!
    PS:帝都你他妈的真扯蛋!歧视外地人,TMD孩子上个学还得交那么多钱,万恶的户口制度!!!
  • 这才是真正的-北京特产

    忽见装13的文章一篇:《谁稀罕什么帝都,我只是回不去了》(想看的童鞋自己搜索),一向不喜欢这种带有浓重酸腐气息的很犹豫的文艺青年。

  • Windows 7 SP1官方简体中文正式版下载

    早前在1月份网上已经泄漏了Windows 7 SP1,微软高管在官方博客亦透露该版本就是正式版。不过仍然有不少网友怀疑其的真实性。不过无关紧要,因为现在Windows 7 SP1官方简体中文正式版正式发布了。MSDN或TechNet订阅用户将会首先获得使用的权限。

    WINDOWS7 SP1 RTM

    MK使用的是之前泄漏版本,感觉还是很不错的。当然肉眼是无法看出SP1与Windows 7区别。明天凌晨MSDN或TechNet订阅用户将可以下载Windows 7 SP1,相信稍后将会MSDN或TechNet订阅用户上传文件共享,大家期待吧。

    WINDOWS7 SP1 RTM IMG04

    Windows 7 SP1的安装过程截图,MK在这里就不再提供,需要了解的朋友可以参考网站泄露版本安装截图。该文章也介绍了Windows 7 SP1的新增功能emoteFX和动态内存(Dynamic Memory)

    Windows 7 SP1正式版下载地址

    单独的安装包(来自于itellyou.cn 多语言版本,包括中文),32位和64位通用。

    Windows 7 SP1 单独安装包
    SHA1: F2ABA1102E18EAD08C78527AB422C09AB7D1F54C

    整合SP1的正式版 (目前只有英文版本,更新中)

    Windows 7 Ultimate with SP1 x86(32位)
    SHA1: 92C1ADA4FF09C76EC2F1974940624CAB7F822F62

    Windows 7 Ultimate with SP1 x86(64位)
    SHA1: 1693B6CB50B90D96FC3C04E4329604FEBA88CD51

    Windows 7 Enterprise With SP1 x86(32位)
    SHA1: 4788041EB06E0F49720C112FBD256AC637909D4F

    Windows 7 Enterprise With SP1 x86(64位)
    SHA1: 2C9774A1F48570E749E6D33C642FE8F6F7898CB0

  • WordPress3+的自定义内容类型功能详解

    WordPress3+进一步完善了自定义内容类型功能,也算是向CMS迈进了一大步。网络上关于这个功能的介绍少之又少,来来回回就那么几篇转来转去的,那我就来总结一下吧。

    实现方式一:辅助插件

    这里的插件只是辅助你利用这个功能的插件,并不是传统意义上的装上就完事ok的插件,关于插件的介绍大家可参见 wordpress.la的文章《如何在WordPress 3.0中使用自定义内容类型》 我就不多做介绍了

    实现方式二:functions.php中添加自定义代码

    对于完美主义者或者不喜欢插来插去的童鞋可以参考这个方法,废话不多说直接上例子;
    首先打开你的主题的functions.php文件,然后添加代码如下

    [php]
    add_action( ‘init’, ‘create_events’ );
    function create_events() {
    $labels = array(
    ‘name’ => _x(‘Events’, ‘post type general name’),
    ‘singular_name’ => _x(‘Event’, ‘post type singular name’),
    ‘add_new’ => _x(‘Add New’, ‘Event’),
    ‘add_new_item’ => __(‘Add New Event’),
    ‘edit_item’ => __(‘Edit Event’),
    ‘new_item’ => __(‘New Event’),
    ‘view_item’ => __(‘View Event’),
    ‘search_items’ => __(‘Search Events’),
    ‘not_found’ => __(‘No Events found’),
    ‘not_found_in_trash’ => __(‘No Events found in Trash’),
    ‘parent_item_colon’ => ”
    );

    $supports = array(‘title’, ‘editor’, ‘custom-fields’, ‘revisions’, ‘excerpt’);

    register_post_type( ‘event’,
    array(
    ‘labels’ => $labels,
    ‘public’ => true,
    ‘supports’ => $supports
    )
    );
    }
    [/php]

    参数详解:

    add_action告诉wordpress初始化时调用函数create_events

    $label数组告诉wordpress如何显示这个文章类型的相关信息

    $supports数组告诉wordpress这个文章类型可以支持什么(比如文章摘要excerpt)

    register_post_type就是在wordpress注册这个新的文章类型,这个函数有很多选项可用,具体可以参阅相关文章。

    一旦我们把代码添加到function.php后,我们可以在后台管理页面看到如下页面:

    wordpress-自定义文章类型

    点击添加新事件(Add New)你可以像发表一般文章一样来添加新的事情,如下图:

    wordpress-自定义文章类型

    显示自定义内容类型的文章

    为了显示自定义内容类型的文章,请添加下面的代码到循环(loop)中。将“name”用你的内容类型名称替换。 注意: 你不需要在index.php文件中添加自定义的内容类型。你可以创建一个自定义WordPress页面并循环(Loop)里运行下面的查询。
    query_posts( 'post_type=name');
    要显示来自多个内容类型下的文章,将上面的代码改成下面这样,并记得将“movie”改成自定义内容类型的名称。
    query_posts(array('post_type' => array('post', 'movies')));
    使用上面的代码将会显示所有来自普通的内容类型的文章以及其他自定义内容类型下的内容。

  • 推荐个对付wordpress垃圾评论(针对机器人)的终极办法

    前一段时间网站忽然多了大量垃圾评论,弄得数据库哗啦哗啦的涨到了百兆级别,话说我这么个小博客哪来这么大数据量!
    然后找了不少防止垃圾评论的方法和插件,国内最典型的就是 验证码和中文字符判断了(也就是如果评论内容没有中文就判断为垃圾评论) ,当然还有一些变态的 比如让你算个数学题啊这些咱就不考虑了。(你说我留个言容易么我):
    最终让我找到了 Willin kan 同志写的 Anti-Spam ;原理就是把评论内容表单替换掉了,机器人只会向默认不显示在页面上的表单提交数据,由此达到了防止机器人评论的目的。目前看来 效果是相当不错的,清净的有点不习惯还……
    使用我的King-blog主题的童鞋不用更新了,里面已经包含了这个功能。
    添加方式是:在你的主题文件functions.php中添加代码如下
    //建立
    class anti_spam {
    function anti_spam() {
    if ( !current_user_can('level_0') ) {
    add_action('template_redirect', array($this, 'w_tb'), 1);
    add_action('init', array($this, 'gate'), 1);
    add_action('preprocess_comment', array($this, 'sink'), 1);
    }
    }
    //设栏位
    function w_tb() {
    if ( is_singular() ) {
    ob_start(create_function('$input','return preg_replace("#textarea(.*?)name=(["'])comment(["'])(.+)/textarea>#",
    "textarea$1name=$2w$3$4/textarea><textarea name="comment" cols="100%" rows="4" style="display:none"></textarea>",$input);') );
    }
    }
    //检查
    function gate() {
    if ( !empty($_POST['w']) && empty($_POST['comment']) ) {
    $_POST['comment'] = $_POST['w'];
    } else {
    $request = $_SERVER['REQUEST_URI'];
    $referer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '隐瞒';
    $IP = isset($_SERVER["HTTP_X_FORWARDED_FOR"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] . ' (透过代理)' : $_SERVER["REMOTE_ADDR"];
    $way = isset($_POST['w']) ? '手动操作' : '未经评论表格';
    $spamcom = isset($_POST['comment']) ? $_POST['comment'] : null;
    $_POST['spam_confirmed'] = "请求: ". $request. "n来路: ". $referer. "nIP: ". $IP. "n方式: ". $way. "n内容: ". $spamcom. "n -- 记录成功 --";
    }
    }
    //处理
    function sink( $comment ) {
    if ( !empty($_POST['spam_confirmed']) ) {
    if ( in_array( $comment['comment_type'], array('pingback', 'trackback') ) ) return $comment; //不管 Trackbacks/Pingbacks
    //方法一: 直接挡掉, 将 die(); 前面两斜线删除即可.
    die();
    //方法二: 标记为 spam, 留在资料库检查是否误判.
    //add_filter('pre_comment_approved', create_function('', 'return "spam";'));
    //$comment['comment_content'] = "[ 小墙判断这是Spam! ]n". $_POST['spam_confirmed'];
    }
    return $comment;
    }
    }
    $anti_spam = new anti_spam();

    搞定。

  • 服务器架设:Debian/Ubuntu搭建LAMP教程

    本文是在独立服务器或VPS中使用Debian/Ubuntu操作系统搭建LAMP完整教程,适合初学者,本文会保持更新。

    第一部分

    LAMP 是Linux、Apache、MySQL、PHP的首字母缩写,也就是在一台Linux服务器上安装带有PHP和Mysql支持的Apache网站服务器。

    UAMP 是Ubuntu Linux、Apache、MySQL、PHP的首字母缩写,是指在一台Ubuntu Linux服务器上安装带有MySQL和PHP支持的Apache网站服务器。

    1. 说明

    本文以BurstNET VPS主机为例,操作系统是Debian 5 / Ubuntu 10.04,独立服务器操作方法与VPS相同。域名请做好DNS指向。

    安装前,用这个命令升级必要的软件包:

    apt-get install update

    2. 安装 Apache2 和 PHP5

    Apache2 和 PHP5已经包含在 Debian/Ubuntu 软件包中了,一般来说,系统已经默认安装完毕。如果没有,你可以使用下面的命令轻松安装它:

    apt-get install apache2 php5 libapache2-mod-php5 php5-gd php-pear php5-suhosin

    系统会提示已需要安装的版本并自动安装,如有更新,系统会显示需要更新的版本。

    安装 Apache 后,你可以启动:

    /etc/init.d/apache2 start

    重新启动Apache命令为:

    /etc/init.d/apache2 restart

    Apache 的配置文件位于: /etc/apache2/apache2.conf
    Apache 的默认web文件夹在: /var/www
    PHP的配置文件位于:/etc/php.ini

    3. 安装 MySQL5

    执行下面的命令来安装 MySQL:

    apt-get install mysql-server mysql-client php5-mysql

    然后启动 MySQL 服务器:

    /etc/init.d/mysql start

    安装完毕后我建议运行一下mysql_secure_installation来做一些基本的安全设置,它会检查root密码、移除anonymous帐号、禁止root远程登录、移除test数据库。

    运行下面的命令来为 root 用户设置一个密码(否则的话任何人都可以访问你的MySQL数据库!):

    mysqladmin -u root -p password 12345678

    Enter password: 输入root密码以确认修改,一般root初始密码为空(上面的12345678为你想要的密码)

    使用root帐号进入mysql:

    mysql -u root -p

    创建数据库:

    create database site1dbname;

    给新创建的数据库制定一个用户和密码:

    grant all on site1dbname.* to ‘site1dbuser’ identified by ‘site1dbpwd’;

    重新启动 MySQL:

    /etc/init.d/mysql restart

    mysql的配置文件位于:/etc/mysql/my.cnf

    好了,一个LAMP 服务器搭建完成。

    第二部分

    增加虚拟站点配置:

    vim /etc/apache2/sites-available/mysite

    添加内容如下:

    <VirtualHost *:80>
    ServerName www.mysite.com
    ServerAlias mysite.com www2.mysite.com
    DocumentRoot /var/www/mysite/
    </VirtualHost>

    激活这个虚拟站点:

    a2ensite mysite

    apache2重新加载配置:

    /etc/init.d/apache2 reload

    如果需要添加多个虚拟机,重复上述步骤即可。

    如果想启动rewrite,需要在终端运行:

    a2enmod rewrite

    然后重启Apache:

    /etc/init.d/apache2 restart

    实例:安装WordPress设置固定链接教程
    1.安装Wget

    apt-get install wget

    2.进入虚拟机所在目录

    cd /var/www

    3.下载WordPress到服务器并解压

    wget http://wordpress.org/latest.tar.gz
    tar zxvf latest.tar.gz

    4.修改WordPress目录属性

    chmod -R 777 /var/www/wordpress
    chgrp -R ftp /var/www/wordpress
    chown -R www /var/www/wordpress

    5.修改apache2的虚拟机配置文件(位于/etc/apache2/sites-enabled/),在<VirtualHost *:80>和</VirtualHost>中间加入下面代码

    <Directory “/var/www”>
    Options FollowSymLinks IncludesNOEXEC Indexes
    DirectoryIndex index.html index.htm index.php
    AllowOverride all
    Order Deny,Allow
    Allow from all
    </Directory>

    6.apache2重新加载配置:

    /etc/init.d/apache2 reload

    第三部分

    1.安装phpMyAdmin

    如果你觉得使用命令行管理MySQL很不方便,可以安装phpMyAdmin。

    phpMyAdmin是一个基于web的数据库管理软件,在apache下很容易安装和配置。

    你所需要做的就是:

    apt-get install phpmyadmin

    phpmyadmin配置文件在/etc/phpmyadmin目录。
    在apache下安装phpmyadmin,你仅需要在/etc/apache2/apache2.conf中加入以下这行:

    Include /etc/phpmyadmin/apache.conf

    现在重新启动 Apache:

    /etc/init.d/apache2 restart

    用浏览器打开:http://domain/phpmyadmin 输入用户名密码就可以管理MySQL数据库了。

    2.用vsftpd配置FTP服务

    一般用户都会选择用FTP上传的方式来管理自己的网站,所以需要配置FTP服务。

    安装vsftpd:

    apt-get install vsftpd

    安装好之后,编辑配置文件/etc/vsftpd.conf:

    anonymous_enable=NO
    local_enable=YES
    write_enable=YES
    local_umask=022

    以上每行解释如下:
    1.禁止匿名用户访问ftp
    2.允许本地用户访问ftp
    3.允许写操作
    4.上载文件的时候,使用的掩码是022

    重新启动 vsftpd:

    /etc/init.d/vsftpd restart

    设定FTP目录属性,如/var/www 目录属性:

    chmod -R 777 /var/www

    递归地给此目录下所有文件和子目录的读、写、执行权限

    chgrp -R ftp /var/www

    递归地把此目录及该目录下所有文件和子目录的组属性设置成ftp组

    增加FTP用户

    adduser 用户名

    设定用户密码

    passwd 用户名

    添加用户到指定组

    adduser 用户名 组名

    修改FTP用户的上传目录可以修改/etc/passwd

    安装配置完毕,重新启动 vsftpd即可:

    /etc/init.d/vsftpd restart

    常用参数意义,视具体情况配置:

    #anonymous_enable 是否允许匿名ftp,如否则选择NO,默认允许匿名访问,
    注意当允许是所有用户均视为匿名登录。
    #local_enable 是否允许本地用户访问,是指VSFTP所在机器上的注册用户。
    #local_umask=022 默认的umask码
    #write_enable 是否允许本地用户修改和删除
    #local_umask=022 FTP上传文件权限 ,默认是077
    #anon_upload_enable=YES 是否允许匿名用户上传
    #anon_mkdir_write_enable=YES 是否允许匿名用户的写和创建目录的权限
    #dirmessage_enable=YES 当切换目录时,是否显示该目录下message隐藏文件的内容
    #xferlog_enable=YES 是否激活上传和下载的日志
    #connect_from_port_20=YES 是否启动FTP数据端口20的连接请求
    #chown_uploads=YES 是否改变上传文件的所有者
    #chown_username=whoever 改变上传文件的所有着为whoever
    #xferlog_file=/var/log/vsftpd.log 上传/下载日志文件所默认的路径
    #xferlog_std_format=YES 是否使用标准的ftpd xferlog日志格式
    #idle_session_timeout=600 是否将在用户会话空闲10分钟后被中断
    #data_connection_timeout=120 是否将在数据连接空闲2分钟后被中断
    #nopriv_user=ftpsecure 是否运行vsftpd需要的非特殊系统用户默认nobody
    #async_abor_enable=YES 是否是否允许运行特殊的FTP命令async
    #ascii_upload_enable=YES 是否启用上传的ascii传输方式
    #ascii_download_enable=YES 是否启用下载的ascii传输方式
    #ftpd_banner=Welcome to blah FTP service. 用户连接服务器后显示信息
    #deny_email_enable=YES 是否允许某些匿名用户使用邮件地址(默认的)
    chroot_local_user=NO
    chroot_list_enable=YES

    VSFTPD的文件结构是很简洁的,主要包括:
    /usr/sbin/vsftpd —- VSFTPD的主程序
    /etc/init.d/vsftpd —- 启动脚本
    /etc/vsftpd.conf —- 主配置文件
    /etc/pam.d/vsftpd —- PAM认证文件
    /etc/ftpusers —-记录不允许访问FTP服务器的用户名单
    /home/ftp —-Vsftpd的根目录
    此外VSFTPD的日志文件为/var/log/vsftpd.log。

    Vsftpd的管理控制:
    /etc/init.d/vsftpd start //启动vsftpd
    /etc/init.d/vsftpd stop //停止vsftpd
    /etc/init.d/vsftpd restart //重新启动vsftpd
    /etc/init.d/vsftpd reload //重新导入vsftpd

    更多的配置内容请访问vsftpd的官方网站查看:

    http://vsftpd.beasts.org/vsftpd_conf.html

  • 现在主题存在的问题(持续更新)

    1.每篇文章的标题没有明显标志,不容易区分哪一段是一篇文章的开始
    2.为了精简CSS文章内容页面 <h1>…<h6>没有仔细定义,H1 有时候比标题还要大(—_—! 为了性能牺牲了功能,不值得啊)
    3.代码引用 样式实在有点难看。
    目前就这么多~~~2011.1.24