创建一个最简单的Linux随机启动服务

网上有不少关于如何让Linux自动运行自己编写的脚本或者程序的方法,但是大多数都是把命令写到/etc/rc.d/rc.local或者/etc/rc.local里,这样虽然能够实现随机运行,但是并不够灵活。不能像mysql,apache等服务一样能够使用service命令或者调用init.d下的脚本启动、关闭或者重启进程。例如,

service mysql restart
service apache2 stop

或者

/etc/init.d/mysql restart
/etc/init.d/apache2 stop

因为不同的Linux发行版本,对后台服务的处理方式不大一样,所以下面以Ubuntu系统为例,看看如何写一个简单的随机启动服务。
继续阅读

用UNetBootin制作CentOS的USB安装盘

据说有人愿意赞助我300多元去制作一个校园的Linux服务器,这个价钱,就够一台二手主机,凑着用就好!
周二下午去岗顶看一下二手货,顺便在我的U盘上放一个CentOS安装文件,这样可以在店家那里测试一下USB安装系统。

经历多番波折,终于制作好了CentOS的USB安装盘。我用的是CentOS6.0的Minimal版本的iso安装文件,写入U盘使用UNetBootin这个工具。
具体步骤如下:

1、安装UNetBootin

root@xiaoxia-pc:~# apt-get install unetbootin

继续阅读

免口令登录远程SSH服务

切换到本地~/.ssh目录下,执行下面命令生成本地账户的RSA密钥对。需要一个公钥和一个私钥,私钥自己保留,公钥是保存在远程服务器上的。原理是,当你用ssh连接远程服务器的时候,服务器会找到对应的公钥,然后用那个公钥对一串东西进行加密,发送给客户端,客户端必须使用本地的私钥对这串东西进行解密,把结果返回给服务器,服务器核对无误,客户端便成功登录。

root@xiaoxia-pc:~/.ssh# ssh-keygen -trsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
eb:2e:9b:ed:2b:e6:0e:d7:ad:dd:ec:50:73:20:ca:77 root@xiaoxia-pc
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|                 |
|          . .    |
|       . . . .   |
|        S . E .  |
|       . + o o   |
|    . . o o      |
|     o++ o +     |
|     +=*B...+    |
+-----------------+

继续阅读

自动翻译WordPress所有的中文别名为英文

因为之前的文章,wordpress直接用了中文做别名,这样以别名为固定链接的设置就会导致URL不是那么的友好,而且wordpress还不会去掉中文标点,所以感觉有点怪怪的。今晚写个脚本,利用网上的翻译引擎,把我博客的所有中文别名都翻译为英文。这样就可以用英文的URL作为固定链接来定位我的文章了。

1、导出数据库

暂时只做一个测试,所以我把wp的数据库从服务器上dump出来,然后下载到本机。

mysqldump -uroot -p xiaoxia > blog.sql
tar zcf blog.tar.gz blog.sql

2、导入到本地的mysql中

mysql> create database xiaoxia;
mysql> use xiaoxia;
mysql> source blog.sql;

继续阅读

写编译器:学习GNU Flex,写一个词法分析器

以下内容仅为个人学习笔记,非正规教程,难免有疏漏之处,请指出!

目标要分析词法的对象是一种叫TINY+的计算机语言。下面是一个Example,

char str;
int x, fact;
str:= 'sample program in TINY+ language- computes factorial';
read x;
if x>0 and x<100 then {don’t compute if x<=0}
    fact:=1;
    while x>0 do
        fact:=fact*x;
        x:=x-1
    end;
    write fact
end

继续阅读

又恢复了以前的工作环境了

这个19寸的Samsum显示屏是我大一开学不久的时候买的,应该是将近1000元吧。原因是当时的上网本的屏幕太小了,看着很累,键盘也不舒服,所以打算外接。可惜用了半年多就出问题了。屏幕开了一段时间就花屏,一开始拍一下显示器后面,好像又有好转,但是坚持不久。最后还是放弃了。最近无聊用了一下,发现竟然坚持了一天没有花屏,神奇了!难道是因为现在比较干燥???各种不解……
继续阅读