Use LVM thin LV on cache LV

Post on: Category: 学习笔记Tag: Linux,LVM 2 Comments

As of the LVM release 2.02.106, LVM supports the use of fast block devices (such as SSD drives) as write-back or write-though caches for larger slower block devices.
The cache logical volume type uses a small and fast LV to improve the performance of a large and slow LV. It's based on dm-cache(the kernel driver), so you can only use it on CentOS7.1/Ubuntu 15.04 or later.
For this article, I will assume you used Ubuntu 15.04.



Read More...

Import Xposed bridge library in Android Studio

Post on: Category: 学习笔记Tag: Android,Xposed 2 Comments

Make a directory like /app/deps ,and put the XposedBridgeApi.jar in it.

Read More...

在 Ubuntu 上安装 Office 2010

Post on: Category: 学习笔记Tag: Ubuntu,Wine 6 Comments

    前几日感受到了 Wine 的强大魔力, 遂萌生在 Wine 里安装 Office 的想法. 到网上找了下, 发现已经有人确认了安装 Office 2010 的可行性, 不过 Office 2013 还是无法正常工作. 便决定在自己的 Ubuntu 上也安装一下, 这里做一下记录.

Read More...

git只保留最新代码,删除历史记录

Post on: Category: 学习笔记Tag: Git No Comments Yet

git cat-file commit master^X | sed -e '/^parent/ d' > tmpfile
git rebase --onto $(git hash-object -t commit -w tmpfile) master
rm -f tmpfile

Read More...

修改Youku的Swf实现去广告

Post on: Category: 学习笔记Tag: 优酷,Flash 46 Comments

声明:本文只是对Flash实现16进制编辑的基本思路的说明,并不是确实可行完整的Youku去广告方法.

首先打开Firebug,获取swf文件地址,下载下来.

使用大名鼎鼎的某SWF Decomper工具反编译,经过鲁夫的爱的提点,

com.youku.core.view.components.BaseVideo

找到了关键代码. 

Read More...

Wamp Error 500

Post on: Category: 学习笔记Tag: Apache,PHP 8 Comments

以前在本地调试PHP脚本一直用的是自己搭建的APM环境(Apache+PHP+MySQL).
今天写脚本要用到PHP 5.3的功能,我自己搭建的环境还是很久前的PHP 5.2 .于是打算更新下环境.
由于有任务在身,所以没有自己一一下载安装,而是直接使用WAMP.

谁曾想在安装就绪,添加虚拟主机时,出现了大问题.一旦配置文件里有虚拟主机,整个服务器直接报500错误.

研究多时,终于找到解决问题的办法.原来是因为没有添加默认虚拟主机的原因.

加入如下配置

<VirtualHost *:80>
 ServerName *
 DocumentRoot "D:/Wamp/www"
</VirtualHost>

OK,一切恢复了正常.

Moving Projects from GoogleCode to GitHub

Post on: Category: 学习笔记Tag: GoogleCode,GitHub,Git No Comments Yet

Moving from Google Code to GitHub

The protocol outlined below may appear complex, but it looks more
intimidating than it really is. Moving a project takes about two to five
minutes once your GitHub account and your migration computer is
properly configured.

You need four things to move a Google Code SVN project to GitHub:

  1. A Google Code project to move
  2. A GitHub user account
  3. SSH keys, and
  4. A migration computer that is configured to migrate the
    project from Google Code to GitHub. (in this tutorial, we will use a
    Ubuntu server; but any other Linux/Windows/Mac computer, properly
    configured, should do the job)

Read More...

inline内联函数(声明前加inline还是定义前加inline)

Post on: Category: 学习笔记Tag: C++ 15 Comments

(一)inline函数(摘自C++ Primer的第三版)
在函数声明或定义中函数返回类型前加上关键字inline即把min()指定为内联。
      inline int min(int first, int secend) {/****/};
      inline 函数对编译器而言必须是可见的,以便它能够在调用点内展开该函数。与非inline函数不同的是,inline函数必须在调用该函数的每个文本文件中定义。当然,对于同一程序的不同文件,如果inline函数出现的话,其定义必须相同。对于由两个文件compute.C和draw.C构成的程序来说,程序员不能定义这样的min()函数,它在compute.C中指一件事情,而在draw.C中指另外一件事情。如果两个定义不相同,程序将会有未定义的行为:
      为保证不会发生这样的事情,建议把inline函数的定义放到头文件中。在每个调用该inline函数的文件中包含该头文件。这种方法保证对每个inline函数只有一个定义,且程序员无需复制代码,并且不可能在程序的生命期中引起无意的不匹配的事情。

(二)内联函数的编程风格(摘自高质量C++/C 编程指南)
关键字inline 必须与函数定义体放在一起才能使函数成为内联,仅将inline 放在函数声明前面不起任何作用
如下风格的函数Foo 不能成为内联函数:
inline void Foo(int x, int y); // inline 仅与函数声明放在一起
void Foo(int x, int y){}
而如下风格的函数Foo 则成为内联函数:
void Foo(int x, int y);
inline void Foo(int x, int y) // inline 与函数定义体放在一起{}

Read More...

Ubuntu不启动XServer

Post on: Category: 学习笔记Tag: Linux 13 Comments

修改/etc/init/gdm.conf, 在第12行的start on 加上条件 "and runlevel [35]", 保存即可,需要GUI时,直接执行 init 3 切换runlevel.


PS:环境为Ubuntu 10.04 LTS

使用正则找出XML(HTML)里不匹配的标签

Post on: Category: 学习笔记Tag: C#,正则 2 Comments

找到HTML里错误的Tag,主要是为了方便在程序里将HTML以XML方式读取分析.
通过正则表达式来找到标签,然后通过堆栈方式处理,使用C#编写.

Read More...

Return Top