把上面的代码保存为dummy.c。而后使用autoscan命令来粗昂间一个configure模板文件,命令如下
$ autoscan
$ ls
autoscan.log configure.scan dummy.c
将生成的configure.scan文件保存为configure.in,并进行修改,只用保留下面几行内容就行了,我在文件里注释说明
把上面的代码保存为dummy.c。而后使用autoscan命令来粗昂间一个configure模板文件,命令如下
$ autoscan
$ ls
autoscan.log configure.scan dummy.c
将生成的configure.scan文件保存为configure.in,并进行修改,只用保留下面几行内容就行了,我在文件里注释说明
ssh的功能无比强悍,对于一个Unix/Linux而言,只要开放一个ssh服务,就可以轻松,随意,快捷,方便的全盘操控这台机器。相信很多功能大家都很熟悉了,我这里只是想把它的其中三个具有杀手级的功能例举一下:
端口转发,也就是-L参数的设置。以我的实际例子来说明吧,我在家里上网,设置的是局域网,IP地址是192.168.100.101。公司总部呢,也是用的是局域网地址,172.16.0.0网段。我需要访问公司内部的一台应用服务器,比如172.16.81.111。我该怎么办呢?恰好,公司有一台网关服务器,有两块网卡,一块是设置的公网IP地址,比如219.99.12.23。另外一块网卡,则是公司的内网的IP地址,比如172.16.81.220。这台服务器开启了SSH服务。那么我要做的便是执行下面的指令:
原来一个分区分得太小了(只有5G),等拷贝完数据才知道太小了。于是尝试了扩容的办法。以前对ext3干过这样的事情,看了ext3上的wiki介绍,得知做法和原来的ext2/ext3一样(看来兼容性还是不错)。下面是我的扩容过程
首先下载你要扩容的分区,这样当然是最保险的,如果你就是不想卸载,只要你别对其做写操作,也没有问题。
Norton DNS (198.153.192.1, 198.153.194.1)
OpenDNS (208.67.222.222,208.67.220.220)
OpenDNS Family (208.67.222.123, 208.67.220.123)
Comodo Secure DNS (156.154.70.22, 156.156.71.22)
ScrubIt DNS (67.138.54.100,207.225.209.66)
DNS Advantage (156.154.70.1, 156.154.71.1)
$ ffmpeg -f x11grab -s wxga -r 25 -i :0.0 -sameq /tmp/out.mpg
我们在一些视频网站上看到别人的3D桌面怎么怎么酷的视频,通常就是这么来的,ffmpeg可以直接解码X11的图形,并转换到相应输出格式。
ffmpeg的通常用法是,根据一堆参数,输出一个文件,输出文件通常放最后,下面解析下几个参数:
-f x11grab 指定输入类型。 因为x11的缓冲区不是普通的视频文件可以侦测格式,必须指定后ffmpeg才知道如何获得输入。
-s wxga 设置抓取区域的大小。wxga是1366*768的标准说法,也可以换成-s 800×600的写法。
-r 25 设置帧率,即每秒抓取的画面数。
-i :0.0 设置输入源,本地X默认在0.0 -sameq 保持跟输入流一样的图像质量,以用来后期处理。
至于其他ffmpeg的用法,可以参考下面两篇文章:
How to Extract Audio Tracks from YouTube Videos
Converting YouTube Flash Videos to a Better Format with ffmpeg
我的系统是ubuntu 10.04 ,编码是zh_CN.UTF-8。
我从网络上下载的绝大部分zip包,解压后,连带目录和文件都是乱码。在终端尝试更换LANG,LANGUAGE等环境变量,还是不能直接解决问题。
而且用unzip解压后,无论你怎么设置convmv命令的编码参数,均不能解决问题。后通过7z工具算是暂时解决了这个问题。
首先用apt安装7z工具包。
然后用下面的两条指令:
1) LANG=C 7z x xxx.zip
2) convmv -f cp936 -t utf8 -r --notest *
对于虚拟主机而言,平衡用户易用体验和安全是一个挑战,比如如果开发ssh给用户,那么无疑能极大的增加用户操作的灵活性,但是ssh的强大也是得在安全方面让管理员很头疼,如何将用户限制在自己的环境中,就显得尤为重要。
幸而openSSH已经了解到了这点,目前的版本均支持chroot功能,下面我简单的描述一下在ubuntu 10.04系统上如何实现,其他系统实现的原理相同,只是一些配置文件和指令不同而已。
针对一个服务器需要同时开几个ssh连接,也许是同一个帐号链接,也许是不同的帐号,你是不死和厌烦了每次的都要输入密码?其实ssh链接可以做到共享会话的。
一个办法是用一些ssh链接客户端,比如Windows下的Secure
CRT,Linux下的hotssh。
另外一个办法,就是自己修改ssh客户端配置文件,创建~/.ssh/ssh_config文件,加入下面的内容:
Host *
ControlMaster auto ControlPath ~/.ssh/master-%r@%h:%p
当对服务器发起一个链接的时候,在~/.ssh目录下就会创建一个文件,当你退出所有多该服务器的链接是,该文件会自动删除。 现在就尝试吧
之前的版本如何做,这里不做描述,自行
Google。
之前通常的方法,在该版本,KERNEL并不能直接获得设备名称或者主次设备号,我们需要通过dmsetup指令来间接获得。
一下操作的目录均在/etc/udev/rules.d/。
编辑90-dm.rules文件,注释掉下面这行
KERNEL=="dm-[0-9]*", ACTION=="add", OPTIONS+="ignore_device"
编辑60-raw.rules文件,加入下面几行:
KERNEL!="dm-[0-9]*",GOTO="skip_dm"
PROGRAM!="/sbin/dmsetup ls --exec /bin/basename -j %M -m %m", GOTO="skip_dm"
RESULT=="vg1-lv1", RUN+="/bin/sh -c '/bin/raw /dev/raw/raw1 $MAJOR $MINOR'"
LABEL=skip_dm
上面第一行代码表示如果不是dm设备,则直接跳到skip_dm处 第二行表示如果后面的指令返回为假(非0值),则跳到skip_dm处。