Blog

  • 使用pkill踢掉linux用户

    先看看都哪些终端登陆

    root@ibm:~# w
    19:28:23 up 2 days, 12:12, 1 user, load average: 0.20, 0.29, 0.33
    USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
    root pts/0 192.168.1.102 19:12 1.00s 1.24s 0.02s w

    用户帐号/所用的终端/何处登陆/登陆时间/空闲时间/耗费的CPU/执行后耗费CPU/正在执行

    root pts/0 192.168.1.102 19:12 1.00s 1.24s 0.02s w

    上面可以看到只有我一个用户,使用如下命令会将我自己踢出:

    pkill -kill -t pts/0

    进而衍生出对pkill用法的整理

    pkill is used to send signals to Process (computing)processes. The pkill command allows the use of extended regular expression patterns and other matching criteria.

    pkill的使用是发送信号给进程,支持扩展正则表达式或其他匹配规则.

    pgrep, pkill – look up or signal processes based on name and other attributes。

    后面跟进程名而kill只能跟进程号,pkill还支持自动补全

    那么,如果说xxx有两个进程

    root     10976     1  0 Jul31 ?        00:00:00 xxx: master process usr/local/xxx/sbin/xxx
    www-data 10978 10976  0 Jul31 ?        00:00:00 xxx: worker process

    运行pkill xxx 会把他们全杀死,有时我们并不想要这样的结果,所以要认准了再用。

  • 我使用的几个wordpress插件

    用wordpress也老长时间了

    wordpress装插件很方便,有好多插件是国人开发便于中文用户使用的

    在这里我就记录下来整理一下

    当前用的主题是 PhilNa 1.0.9,作者为 yinheli 各方面我都比较满意

    有若干个控制字体的,用javascript来显示脚本 高亮文字的,我基本不用 。 一是咱没那么出息会那么多语言,二是wordpress的引号已经够我用的了

    插件:Akismet

    一款优秀的防垃圾评论插件。

    在Akismet配置里有说明,去申请一个key就好了。若您还没有 API key,您可从 Akismet.com 得到一个。

    插件:日志自动截断

    自动截断日志,可达到在首页显示一大段而不是全部显示的效果,可以选择截断的长度并去除所有脚本类的文字,使首页看起来美观

    插件:WP-Cumulus

    标签云插件,不支持中文,有人推出一个swf可以支持中文,但是我用了下比较卡,而且不好看,就没有用,我的tag全是英文的,也就简单的英文单词,也用不着中文

    插件:WP-DB-Backup

    设置好自动备份选项自动备份数据库的,用处大

    插件:Quotmarks Replacer

    有时候整理好的命令或代码拷贝的时候出现中文字符,用此插件解决引号等全角问题

    插件:Google Syntax Highlighter for WordPress

    平时用不大到,哪里有那么多代码可写,所以删掉了,有些东西就是,功能强大反而用不到. Supports C++, C#, CSS, Delphi, Java, JavaScript, PHP, Python, Ruby, SQL, VB, XML, and HTML.

    插件:Countdown Timer

    自动倒计时的功能,给懒人用的

    插件:cos-html-cache

    该插件会在页面第一次载入的时候产生和url对应的真正的html文件作为缓存,后面的运行将会直接载入该html从而大大的提高了页面的效率。有利有弊。也不用了,用了之后我的搜索框没法搜东西,于是用了谷歌的自定义搜索

    插件:Code Markup

    A filter that displays <code> blocks nicely while still allowing formatting.
    对于想显示的html标签代码,放入<code lang=”xhtml”></code>里面

    插件:All in One SEO Pack

    Out-of-the-box SEO for your WordPress blog. Options configuration panel | Upgrade to Pro Version | Donate | Support | Amazon Wishlist
    插件:Google XML Sitemaps
    This plugin will generate a special XML sitemap which will help search engines like Google, Yahoo, Bing and Ask.com to better index your blog.
    插件:Wireless-WordPress
    为你的WordPress增加wap主题模板功能,让你的WordPress博客拥有一个更加友好的UI.
    插件:WP-PageNavi分页导航
    增加了一个更美观实用的分页导航到你的WordPress博客
    插件:Random Pages Widget
    显示随机文章

  • nginx对某目录进行身份验证

    本例对web根目录下的phpmyadmin文件夹进行认证

    #cd /usr/local/nginx/conf
    #mkdir htpasswd

    在 nginx.conf 文件中对应的 server 段中 添加引用:
    location ^~ /phpmyadmin/ {
    auth_basic “database-login”;
    auth_basic_user_file /usr/local/nginx/conf/htpasswd/DBpass;
    }

    再在 相应目录中创建一个新文件DBpass
    此文件的书写格式是
    用户名:密码
    用户名 自己随意设置 无需加密

    密码必须使用函数 crypt(3) 加密

    方法一:

    用 htpasswd 工具来创建密码文件

    /usr/bin/htpasswd -c /usr/local/nginx/conf/htpasswd/DBpass jpuyy       //-c  Create a new file.创建一个文件 最后跟上用户名

    New password:
    Re-type new password:
    Adding password for user jpuyy

     

    方法二:

    使用perl 创建密码文件

    新建 一个 pw.pl 文件

    #!/usr/bin/perl
     use strict;
     my $pw=$ARGV[0] ;
     print crypt($pw,$pw)."\n";

    然后执行:
    chmod +x pw.pl
    ./pw.pl password
    papAq5PwY/QQM 就是password 的crypt()密码
    如果 不用
    ^~ /phpmyadmin/
    而用
    /phpmyadmin
    将只能对目录进行验证 直接访问其下的文件 将不会弹出登录验证

    昨天搞好后草草了事
    今天发现认证后php打不开,几经搜索资料,在location里要加上fast-cgi,注意两个location包含关系

    #对phpmyadmin进行认证
    location ^~/phpmyadmin/ {
       location ~ \.php$ { 	
    	fastcgi_pass   127.0.0.1:9000;
    	fastcgi_index  index.php;
    	fastcgi_param  SCRIPT_FILENAME  /web/$fastcgi_script_name;
    	include        fastcgi_params;
    	}
    
    	root   /web/;
    	index  index.php;
    	auth_basic "database-login";
    	auth_basic_user_file /usr/local/nginx/conf/htpasswd/DBpass;
    }
  • ip别名(ip alias)设置和应用

    A.ip别名(ip alias)的设置和取消

    最近看到web虚拟主机实现的方式有两种,一是设置ip别名 二是在server{}里设置(常用)

    所以特地整理学习一下ip 别名的设置

    ip别名(ip alias)是Linux内核的一个标准功能

    设置:

    #/sbin/ifconfig eth0:0 219.219.219.219 broadcast 219.219.219.255 netmask 255.255.255.0 up

    检验:

    #/sbin/ifconfig

    取消:

    #ifconfig eth0:0 down

    eth0后的取值 0~255

    后面跟的ip如果是和eth0所在网的ip同一网段,则本网内全能ping通

    如果是乱跟一通,则只能本机测试之用,也没有多大的意义

    B.ip别名(ip alias)的应用

    1.充分利用有限的资源

    本来两台差劲的电脑分别跑着两个应用,ip当然不同

    来了一台新的高级的服务器,想同时迁移这两个程序到这台主机,ip别名便派上了用场

    2.服务不间段

    两台服务器,主服务器的提供某服务

    主服务器不用真实的ip来提供服务

    当主服务器坏了时候,副服务器可以直接ip别名设置好顶上来

     

    在淘宝买了一个差劲的vps

    ifconfig 以后发现ip别名:

    venet0    Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
    UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1
    RX packets:1352 errors:0 dropped:0 overruns:0 frame:0
    TX packets:1860 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:0
    RX bytes:102537 (100.1 KiB)  TX bytes:1380885 (1.3 MiB)

    venet0:0  Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
    inet addr:178.17.162.219  P-t-P:178.17.162.219  Bcast:0.0.0.0  Mask:255.255.255.255
    UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1

  • 入手kindle及使用小记

    到今天已入手三天
    没感觉到亏,但是1000块还是比较心疼


    第一天,购买,淘宝。1000RMB wifi 广告版
    顺丰快递,很快,第一天下午订的,第二天早上8点多打电话叫我拿快递,验货,签收。
    签完后快递员从背包里拿出扫描的,直接一扫,就记进了网上系统,对发件的和收件的都是比较负责
    花了好长时间才做了决定,不知道是怎么说服自已的,重要一点就是我要在年底之前看完六十本书,这样我就赚回来了,不论怎样,买下来好好用就好。这么说我的android手机计划就要推迟到毕业的时候了。
    回到宿舍,明明是未拆封,为何装好了多看,这让我很费解
    也不管那么多,两个系统各有各的好处
    折腾了下amazon的注册
    因为听说免费书注册什么的最好美国什么的,所心用puff+autoproxy全局代理进行注册,目的就是为了长久的安定,买了免费书也
    是把它下到电脑里,然后usb传过来。暂时不用wifi来推
    注册后有几点要说明:
    1.免费书要填写好美国地址,我用的puff,所以就找到puff的ip,然后在那个城市找了个地址填了
    2.Manage Your Kindle 里一些设置如推送邮件等,设置好可以给你@free.amazon.com的邮件列表


    然后就到了第二天
    放了一些pdf,epub
    升级了多看
    我个人认为多看存在的必要性会随着时间逐渐降低
    毕竟我们看得是书,原有的系统已经很好了,而且上网在多看下不可行
    多看有些不稳定,至少我的kindle是这样的
    一句话,为了看书,少折腾了,原生系统debug后还是不错的
    在公交、上厕所、各种可以带手机的地方,你都可以把kindle带上
    无线的功能有时候还能很帮你忙


    第三天
    在搜索kindle的资源的时候
    发现了这个本来就有的推送功能
    这下心花怒放
    为什么呢,因为有了 dogear.mobi 各种我想看的cnbeta /oschina /google reader资讯会每天定时发到我的kindle帐号里
    这样连上wifi就可以更新了,试用了下,版式也顺眼
    这样就是说,每天吃完饭,躺在床上休息的时候,打开wifi,更新,就可以舒舒服服的以书的形式看最新消息了

    小结:
    原版系统自然有它的好处,设计的也比较人性化,简单有效
    多看系统在我的kindle有些不稳,一些功能还是很赞,比如说看pdf的时候就很不错,最近支持了umd,这个团队很上进,咱是免费用的不多说
    kindle我感觉好就好在了它的专一性和它的屏,因为我想看书,就是要看书。就和我们听音乐一样,用电脑听音乐总感觉想办点其他的事,所以kindle的思维让人觉得 有时人的刻意追求多任务同时进行,反而不如咱实实在在的就做一件事,包括kindle里面听音乐的功能,我也很少用到,这样会打断我的思路
    也不知道国内的产品怎么样,以后手头有点钱的话,给我弟弟买一台,看书总比看电脑强些
    还有一些小感触,那就是,去下载那些视频教程并不能太提高自己能力,因为不可能有人教你一辈子,要有自学的能力,所以我把手头的视频教程删去了好多

  • 如何查看 Linux 系统安装的时间

    有个办法是查看 lost+found 目录状态,因为这个目录一般很少用到,改动最少(很可能无任何改动),而其他目录比如 /bin, /home 等因为经常升级系统、创建用户等操作会修改目录状态。

    $ stat /lost+found/
    File: `/lost+found/’
    Size: 16384 Blocks: 32 IO Block: 4096 directory
    Device: 805h/2053d Inode: 11 Links: 2
    Access: (0700/drwx——) Uid: ( 0/ root) Gid: ( 0/ root)
    Access: 2010-03-11 02:40:20.000000000 -0800
    Modify: 2010-03-10 19:14:34.000000000 -0800
    Change: 2010-03-10 19:14:34.000000000 -0800

    还有一种办法是查看 bin, daemon, sys, adm 等这些帐号的建立时间,这些帐号是在系统安装的时候创建的,所以这些帐号的创建时间基本上就是 Linux 系统的安装时间:

    # passwd -S bin
    bin LK 2010-03-10 0 99999 7 -1 (Alternate authentication scheme in use.)

    # passwd -S daemon
    daemon LK 2010-03-10 0 99999 7 -1 (Alternate authentication scheme in use.)

    上面这个看帐号创建时间的方式有局限性,不同的 Linux 发行版安装的时候处理 bin, daemon 这些系统帐号的方式不同,有的是直接从安装光盘拷贝这些帐号和相关文件,有的是安装脚本自动创建。只有安装脚本自动创建的发行版本才能根据帐号的创建时间来判断系统的安装时间。

    转载自:http://www.vpsee.com/2011/06/how-to-find-out-a-linux-system-installation-date/

    use this:

    stat /etc/shadow