关于ffmpeg 的总结(一个linux 下 集 屏幕录像录音,音频视频转换,合并音频视频文件,格式转换于一身的命令)
当然先安装了 gentoo 下一条命令搞定
emerge ffmpeg
格式转换 (将file.avi 转换成output.flv)
ffmpeg -i file.avi output.flv
-i 表示输入文件
:现在有个视频video.avi,有个音频 audio.mp3,将其合并成output.avi
两个命令 ( video2.avi 是中间文件 ,用完可删)
ffmpeg -i video.avi -vcodec copy -an video2.avi
ffmpeg -i video2.avi -i audio.mp3 -vcodec copy -acodec copy output.avi
-i 表示输入文件
-vcodec copy 表示 force video codec (‘copy’ to copy stream) 这个不知怎么译 ,估计是直接copy
-acodec copy 这个说的应该是音频了 跟上面一样
-an : 表示 disable audio 估计是audio no 之类的缩写 表示去掉video.avi 原有的音频
方法2 好像可以直接指定两个输入文件 ,
ffmpeg -i /tmp/a.wav -i /tmp/a.avi /tmp/a.avi 两个文件 的顺序很重
从视频里提取声音(声音与视频的分离)
ffmpeg -i 人生若只如初见.flv -vn r.mp3 从flv 文件 中提取声音并保存为mp3 格式
-vn : 表示忽略视频 估计是video no 之类的缩写
ffmpeg -i 人生若只如初见.flv -an r.flv 只留视频不留声音
-an : 表示 忽略 声音 估计是audio no 之类的缩写
从视频里提取图片( )
ffmpeg -i test.avi -y -f image2 -ss 8 -t 0.001 -s 350×240 test.jpg
-ss 第8秒处 截一图
压缩mp3 文件
如果你觉得mp3 文件 有点大,想变小一点那么可以通过-ab 选项改变音频的比特率 (bitrate)
ffmpeg -i input.mp3 -ab 128 output.mp3 //这里将比特率设为128
你可以用file 命令查看一下源文件 的信息
z.mp3: Audio file with ID3 version 2.3.0, contains: MPEG ADTS, layer III, v1, 192 kbps, 44.1 kHz, Stereo
其中的192 kbps 就是这个东西
mp3中比特率的含义是:在压缩音频文件至mp3时,由压缩软件所确定数码文件在播放时每秒传 送给播放器大小,其单位是:千位/秒;英文的含义是:kbps – = kilobits per second。现在mp3文件的最高数位率是320 kbps。这样的文件体积很大,每分钟的音乐超过两兆字节。如果采用可变比特率(VBR)编码来生成mp3文件,获得与320 kbps相当音质,文件的体积会缩小25~50%。请注意:播放时间相同,而歌曲不同,所获的压缩mp3文件的一般不相同,这是因为VBR编码所生成的 mp3文件的大小不仅仅取决于播放时间的长度,还取决于源音频文件的其它因素。
录音(要有可用的麦克风,并且如果用alsa 的话,好像得安alsa-oss,重启)
ffmpeg -f oss -i /dev/dsp out.avi (should hava oss or alsa-oss)
ffmpeg -f alsa -ac 2 -i hw:0, 0 out.avi (should )
ffmpeg -f alsa -ac 2 -i pulse (should hava PulseAudio)
oss 是linux 下的声音相关的东西,与alsa 一样,不过oss 是商业的, 而/dev/dsp 是oss 用到的麦克的设备吧,可以这样理解
屏幕录像
ffmpeg -f x11grab -s xga -r 10 -i :0.0+0+0 wheer.avi
ffmpeg -f x11grab -s 320×240 -r 10 -i :0.0+100+200 wheer.avi
:0:0 表示屏幕(个人理解,因为系统变量$DISPLAY值就是:0.0) 而100,表示距左端100象素,200表示距上端200
-s 设置窗口大小
-r 10 好像是设置频率,不懂
ffmpeg -f x11grab -s xga -qscale 5 -r 10 -i :0.0+0+0 wheer.avi
-qscale 8 设定画面质量,值 越小越好
屏幕录像,同时录音
ffmpeg -f oss -i /dev/dsp -f x11grab -r 30 -s 1024×768 -i :0.0 output.mkv
ffmpeg -ac 2 -f oss -i /dev/dsp -f x11grab -r 30 -s 1024×768 -i :0.0 -acodec pcm_s16le -vcodec libx264 -vpre lossless_ultrafast -threads 0 output.mkv
看到这,你会发现这个命令有多强大,
如果我屏幕上打开了一个窗口,我只想录这个窗口的内容,如何确定这个窗口的坐标位置呢
可以用另外一个命令
xwininfo 输入这个命令后,用鼠标点选目标窗口,
就会出现目标窗口的坐标,宽高等一系列信息
Absolute upper-left X: 276
Absolute upper-left Y: 57
Relative upper-left X: 2
Relative upper-left Y: 23
Width: 742
Height: 499
Depth: 24
Visual: 0x21
Visual Class: TrueColor
Border width: 0
Class: InputOutput
Colormap: 0x20 (installed)
Bit Gravity State: NorthWestGravity
Window Gravity State: NorthWestGravity
Backing Store State: NotUseful
Save Under State: no
Map State: IsViewable
Override Redirect State: no
Corners: +276+57 -262+57 -262-244 +276-244
-geometry 80×24+274+34 看到这一行了没 ()
比如根据上面的信息
ffmpeg -f oss -i /dev/dsp -f x11grab -r 30 -s 1280×752 -i :0.0+0+23 output.avi
Another thing you can change is the video frame rate (FPS). In the example above we used -r 30 which means capture at 30 FPS. You can change this value to whatever frame rate you want.
这个 -r 30 应该是每秒钟取样几次,估计是一秒截三十次屏,
切头去尾
ffmpeg -ss 00:00:10 -t 00:01:22 -i 五月天-突然好想你.mp3 output.mp3
只要 从第10秒开始截取,共截取1:22时长的内容
视频文件的连接,如两个flv 文件 连接成一
好像必须先将文件 转成mpg ,dv 等格式的文件后才能进行连接
连接复数的AVI影片档之范例(在此范例中须一度暂时将AVI档转换成MPEG-1档(MPEG-1, MPEG-2 PS, DV格式亦可连接))
ffmpeg -i input1.avi -sameq inputfile_01.mpg -r 20
ffmpeg -i input2.avi -sameq inputfile_02.mpg -r 20
cat inputfile_01.mpg inputfile_02.mpg > inputfile_all.mpg
ffmpeg -i inputfile_all.mpg -sameq outputfile.avi
上面将 input1.avi input2.avi 合并成outputfile.avi
-sameq 表示 相同的质量(可能指的是画面,不太清楚)
-r 指频率
=====================================================================下面是wiki 上给的几个例子
参数
FFmpeg可使用众多参数,参数内容会根据ffmpeg版本而有差异,使用前建议先参考参数及编解码器的叙述。此外,参数明细可用 ffmpeg -h 显示;编解码器名称等明细可用 ffmpeg -formats 显示。
下列为较常使用的参数。
[编辑 ] 主要参数
-i 设定输入档名。
-f 设定输出格式。
-y 若输出档案已存在时则覆盖档案。
-fs 超过指定的档案大小时则结束转换。
-ss 从指定时间开始转换。
-title 设定标题。
-timestamp 设定时间戳。
-vsync 增减Frame使影音同步。
[编辑 ] 影像参数
-b 设定影像流量,默认为200Kbit/秒。( 单位请参照下方注意事项 )
-r 设定FrameRate值,默认为25。
-s 设定画面的宽与高。
-aspect 设定画面的比例。
-vn 不处理影像,于仅针对声音做处理时使用。
-vcodec 设定影像影像编解码器,未设定时则使用与输入档案相同之编解码器。
[编辑 ] 声音参数
-ab 设定每Channel (最近的SVN 版为所有Channel的总合)的流量。( 单位 请参照下方注意事项 )
-ar 设定采样率。
-ac 设定声音的Channel数。
-acodec 设定声音编解码器,未设定时与影像相同,使用与输入档案相同之编解码器。
-an 不处理声音,于仅针对影像做处理时使用。
-vol 设定音量大小,256为标准音量。(要设定成两倍音量时则输入512,依此类推。)
[编辑 ] 注意事项
以-b及ab参数设定流量时,根据使用的ffmpeg版本,须注意单位会有kbits/sec与bits/sec的不同。(可用ffmpeg -h显示说明来确认单位。)
例如,单位为bits/sec的情况时,欲指定流量64kbps时需输入‘ -ab 64k ’;单位为kbits/sec的情况时则需输入‘ -ab 64 ’。
以-acodec及-vcodec所指定的编解码器名称,会根据使用的ffmpeg版本而有所不同。例如使用AAC编解码器时,会有输入aac与 libfaac的情况。此外,编解码器有分为仅供解码时使用与仅供编码时使用,因此一定要利用ffmpeg -formats 确 认输入的编解码器是否能运作。
[编辑 ] 范例
将MPEG-1影片转换成MPEG-4格式之范例
ffmpeg -i inputfile.mpg -f mp4 -acodec libfaac -vcodec mpeg4 -b 256k -ab 64k outputfile.mp4
将MP3声音转换成MPEG-4格式之范例
ffmpeg -i inputfile.mp3 -f mp4 -acodec libaac -vn -ab 64k outputfile.mp4
将DVD的VOB档转换成VideoCD格式的MPEG-1档之范例
ffmpeg -i inputfile.vob -f mpeg -acodec mp2 -vcodec mpeg1video -s 352×240 -b 1152k -ab 128k outputfile.mpg
将AVI影片转换成H.264格式的M4V档之范例
ffmpeg -i inputfile.avi -f mp4 -acodec libfaac -vcodec libx264 -b 512k -ab 320k outputfile.m4v
将任何影片转换成东芝REGZA可辨识的MPEG2格式之范例
ffmpeg -i inputfile -target ntsc-svcd -ab 128k -aspect 4:3 -s 720×480 outputfile.mpg
连接复数的AVI影片档之范例(在此范例中须一度暂时将AVI档转换成MPEG-1档(MPEG-1, MPEG-2 PS
DV格式亦可连接)、
ffmpeg -i input1.avi -sameq inputfile_01.mpg
ffmpeg -i input2.avi -sameq inputfile_02.mpg
cat inputfile_01.mpg inputfile_02.mpg > inputfile_all.mpg
ffmpeg -i inputfile_all.mpg -sameq outputfile.avi
=============================================================================
http://ffmpeg.org/ffmpeg-doc.html
http://ubuntuforums.org/showthread.php?t=1392026
同时搞明白的一些问题在alsa 体系中声卡(也可能是麦克风,)叫hw:0,0 而在oss 体系中叫/dev/dsp (用词可能不太专业) Linux在安装了声卡后,会有一些设备文件生成。
采集数字样本的/dev/dsp文件,针对混音器的/dev/mixer文件,用于音序器的/dev/sequencer,/dev/audio文件一个基于兼容性考虑的声音设备文件。只要向/dev/audio中输入wav文件就能发出声音。而对/dev/dsp文件读取就能得到WAV文件格式的声音文件。
Ubuntu Linux按下电源键关机
按下电源键(Poweroff button)就关机:
前置原来:默认Ubuntu linux server未安装acpid程序;
1、安装acpid程序$sudo apt-get install acpid
2、按关机键即自动关机(主板上关键跳针、Power、reset、电源灯、硬盘灯等)
Ubuntu Linux无法双向复制U盘的中文字符文件方法
前言:本地终端本身不是不支持显示中文,需要安装外挂软件才可以。默认ubuntu的字符环境如下:en_US.UTF8。很多人没有理解字符集的概念,每个文件系统fs都需要指定中文字符集,才可以查看拷贝中文文件,由于Linux默认文件系统字符集UTF8比Windows系统自带默认文件系统字符集GB2312要大的多,所以Windows下无法查看UTF8编码的中文字符文件。解决方案:1)修改linux的系统字符集gb2312; 2)挂载u盘时指定中文字符集cp936。
本文档测试操作系统版本:Ubuntu Server 11.10 32bit。
详见附件!
[转]AIX如何查看cpu个数?
系统中有很多命令可以查看cpu的个数,但是哪个命令输出的是逻辑cpu个数,哪个又是物理cpu个数呢?我们下面做一个简单的介绍。
解答:
从AIX5.3起,对于power5的机器,系统引入了SMT(Simultaneousmulti-threading)的功能,其允许两个处理线程在同一颗处理器上运行,对操作系统而言,一颗物理处理器逻辑上会成为两个处理单元(逻辑处理器)。也就是说,在SMT功能启用的情况下,逻辑cpu个数是物理cpu个数的两倍,而在SMT功能禁用的情况下,逻辑cpu个数与物理cpu个数相等。
下面我们介绍如何通过各种命令检查系统中的物理cpu和逻辑cpu的个数。
1. smtctl
# smtctl
This system is SMT capable.
SMT is currently enabled.
SMT boot mode is not set.
SMT threads are bound to the same physical processor.
proc0 has 2 SMT threads.
Bind processor 0 is bound with proc0
Bind processor 1 is bound with proc0
proc2 has 2 SMT threads.
Bind processor 2 is bound with proc2
Bind processor 3 is bound with proc2
proc4 has 2 SMT threads.
Bind processor 4 is bound with proc4
Bind processor 5 is bound with proc4
proc6 has 2 SMT threads.
Bind processor 6 is bound with proc6
Bind processor 7 is bound with proc6
可以看到,该系统具有SMT能力且当前SMT功能已启用。4个物理cpu对应着8个逻辑cpu。
2. bindprocessor
# bindprocessor -q
The available processors are: 0 1 2 3 4 5 6 7
可以看到可用逻辑cpu个数是8个(0-7)。
3. prtconf
# prtconf
System Model: IBM,9131-52A
Machine Serial Number: 0677A5G
Processor Type: PowerPC_POWER5
Number Of Processors: 4 ==》物理cpu有4个
Processor Clock Speed: 1648 MHz
CPU Type: 64-bit
Kernel Type: 64-bit
LPAR Info: 1 06-77A5G
4.lsdev
# lsdev -Cc processor
proc0 Available 00-00 Processor
proc2 Available 00-02 Processor
proc4 Available 00-04 Processor
proc6 Available 00-06 Processor
可以看到系统中有4个物理cpu。
5.vmstat
# vmstat
System configuration: lcpu=8 mem=7936MB
kthr memory page faults cpu
—– ———– ———————— ———— ———–
r b avm fre re pi po fr sr cy in sy cs us sy id wa
1 1 428238 41599 0 0 0 13 25 0 40 1639 182 0 0 99
可以看到系统中有8个逻辑cpu。
关闭 htt_server 服务
htt 3178 1 0 Jan14 ? 00:00:00 /usr/sbin/htt -retryonerror 0
htt 3179 3178 0 Jan14 ? 00:00:00 htt_server -nodaemon
通过finger可以看到htt用户相关信息。
# finger htt
Login: htt Name: IIIMF Htt
Directory: /usr/lib/im Shell: /sbin/nologin
Never logged in.
No mail.
No Plan.
来源IIIMF
# rpm -qa |grep iim
iiimf-libs-12.1-13.EL.6
iiimf-le-chinput-0.3-18.el4
iiimf-libs-devel-12.1-13.EL.6
iiimf-csconv-12.1-13.EL.6
iiimf-x-12.1-13.EL.6
iiimf-gtk-12.1-13.EL.6
iiimf-server-12.1-13.EL.6
iiimf-le-xcin-0.1.7-12.EL4
iiimf-docs-12.1-13.EL.6
iiimf-gnome-im-switcher-12.1-13.EL.6
# rpm -ql iiimf-server-12.1-13.EL.6
/etc/iiim
/etc/iiim/htt.xml.conf
/etc/iiim/le.xml.conf
/etc/rc.d/init.d/iiim
/usr/bin/iiimf-le-tools
/usr/lib/im/leif
/usr/lib/im/leif/default.so
/usr/lib/im/share
/usr/lib/im/share/iiim
/usr/lib/im/share/iiim/gdbcmd
/usr/libexec
/usr/libexec/iiimf-segv-logger
/usr/sbin/htt
/usr/sbin/htt_server
/var/log/iiim
/var/run/iiim
关闭htt_server服务
/etc/rc.d/init.d/iiim stop
Stopping IIIMF input server:
linux下使用rar
用RAR版本:WinRAR 3.20 beta 2(© 1993-2003 Eunege Roshal )
用法: rar <命令>-<开关 1> -<开关 N> <压缩文件> <文件…>
<@列表文件…> <解压路径>
<命令>
a | 添加文件到压缩文件 |
c | 添加压缩文件注释 |
cf | 添加文件注释 |
cw | 写入压缩文件注释到文件 |
d | 删除压缩文件中的文件 |
e | 解压压缩文件到当前目录 |
f | 刷新压缩文件中的文件 |
i[参数]=<串> | 在压缩文件中查找字符串 |
k | 锁定压缩文件 |
l[t,b] | 列出压缩文件[技术信息,简洁] |
m[f] | 移动到压缩文件[仅对文件] |
p | 打印文件到标准输出设备 |
r | 修复压缩文件 |
rc | 重建丢失的卷 |
rn | 重命名压缩文件 |
rr[N] | 添加数据恢复记录 |
rv[N] | 创建恢复卷 |
s[名字|-] | 转换压缩文件为自解压格式或转换回压缩文件 |
t | 测试压缩文件 |
u | 更新压缩文件中的文件 |
v[t,b] | 详细列出压缩文件[技术信息,简洁] |
x | 用绝对路径解压文件 |
<开关>
– | 停止扫描 |
ac | 压缩或解压后清除文件属性 |
ad | 添加压缩文件名到目标路径 |
ag[格式] | 使用当前日期生成压缩文件名 |
ao | 添加具有压缩属性的文件 |
ap<格式> | 添加路径到压缩文件中 |
as | 同步压缩文件内容 |
av | 添加用户身份校验(仅注册版本可用) |
av- | 禁用用户身份校验 |
c- | 禁用注释显示 |
cfg- | 禁用读取配置 |
cl | 名称转换为小写 |
cu | 名称转换为大写 |
df | 压缩后删除文件 |
dh | 打开共享文件 |
ds | 对固实压缩文件禁用名称排序 |
e<属性> | 设置文件排除属性 |
ed | 不添加空目录 |
en | 不添加”压缩文件结束”标志 |
ep | 从名称中排除路径 |
ep1 | 从名称中排除基本目录 |
ep2 | 展开为完整路径 |
f | 刷新文件 |
hp[密码] | 同时加密文件数据和文件头 |
idp | 禁用百分比显示 |
ieml[属性] | 用E-mail发送压缩文件 |
ierr | 发送所有消息到标准错误设备 |
ilog[名称] | 把错误写到日志文件(只有注册版本可用) |
inul | 禁用所有消息 |
ioff | 完成一个操作后关闭PC电源 |
isnd | 启用声音 |
k | 锁定压缩文件 |
kb | 保留损坏的已解压文件 |
m<0..5> | 设置压缩级别(0-存储…3-默认…5-最大) |
mc<参数> | 设置高级压缩参数 |
md<大小> | 以KB为单位的字典大小(64,128,256,512,1024,2048,4096 or A-G) |
ms[ext;ext] | 指定存储的文件类型 |
o+ | 覆盖已存在文件 |
o- | 不覆盖已存在文件 |
os | 保存NTFS流 |
ow | 保存或恢复文件所有者和组 |
p[密码] | 设置密码 |
p- | 不询问密码 |
r | 递归子目录 |
r0 | 仅递归通配符名称的子目录 |
ri<P>[:<S>] | 设置优先级(0-默认,1-最小..15-最大)和以毫秒为单位的休眠时间 |
rr[N] | 添加数据恢复记录 |
rv[N] | 创建恢复卷 |
s[<N>,v[-],e] | 创建固实压缩文件 |
s- | 禁用固实压缩文件 |
sfx[名称] | 创建自解压压缩文件 |
t | 压缩后测试文件 |
ta<日期> | 添加日期<日期>后修改的文件,日期格式YYYYMMDDHHMMSS |
tb<日期> | 添加日期<日期>前修改的文件,日期格式YYYYMMDDHHMMSS |
tk | 保留原始压缩文件时间 |
tl | 设置压缩文件时间为最新文件时间 |
tn<时间> | 添加<时间>以后的文件 |
to<时间> | 添加<时间>以前的文件 |
ts<m,c,a>[N] | 保存或恢复文件时间(修改,创建,访问) |
u | 更新文件 |
v | 自动检测创建卷的大小或者列出所有的卷 |
v<大小>[k,b] | 创建卷大小=<大小>*1000[*1024, *1] |
vd | 创建容量前清除磁盘内容 |
ver[n] | 文件版本控制 |
vn | 使用旧风格的卷命名方案 |
vp | 每卷之前暂停 |
w<路径> | 指定工作目录 |
x<文件> | 排除指定的文件 |
x@ | 从标准输入设备读取要排除的文件名 |
x@<列表> | 排除指定列表文件中的文件 |
y | 假设对全部询问都回答是 |
z<文件> | 从文件读取压缩文件注释 |
示例:
1、rar a file file.ext
如果file.rar不存在将创建file.rar文件;如果file.rar压缩包中已有file.ext,将更新压缩包中的file.ext;还可用d:*.ext代替file.ext将d盘下所有ext文件(不包括自文件夹)添加到压缩包中。
2、rar a -r -v2000 -s -sfx -rr file
从当前文件夹和子文件夹压缩全部文件成为 2000000 字节大小、固实的、分卷自解压文件 file.part1.exe,file.part2.rar,file.part3.rar 等,并在每一个分卷中添加恢复记录;将命令a换成命令m可将文件压缩后删除
3、rar x Fonts *.ttf
会从压缩文件解压 *.ttf 字体文件到当前文件夹,但下面命令:
rar x Fonts *.ttf NewFonts
会从压缩文件解压 *.ttf 字体文件到文件夹 NewFont
4、rar a -pZaBaToAd -r secret games*.*
使用密码 ZaBaToAd 来将文件夹“games”的内容添加到压缩文件“secret”
5、rar a -pfengjian.org mymp3.rar “mylove.mp3”
单文件添加密码加密;
Google earth 在Ubuntu 10.10安装问题,无法运行!
在应用程序点击google earth没有反应,进入目录运行$google-earth
提示:
clon@clon-notebook:/opt/google/earth/free$ ./googleearth-bin
bash: ./googleearth-bin: 没有那个文件或目录
(可能是clon@clon-notebook:/opt/google/earth/free$ ldd ./googleearth-bin
缺少一个组件的原因,可以通过$ ldd ./googleearth-bin)
解决办法:
clon@clon-notebook:/opt/google/earth/free$ sudo apt-get install lsb-core
---
[sudo] password for clon:
正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
下列软件包是自动安装的并且现在不需要了:
linux-headers-2.6.35-22 linux-headers-2.6.35-22-generic
使用’apt-get autoremove’来卸载它们
将会安装下列额外的软件包:
alien bsd-mailx librpm1 librpmbuild1 librpmio1 lsb-invalid-mta ncurses-term
pax rpm rpm-common rpm2cpio
建议安装的软件包:
lsb-rpm lintian lsb elfutils rpm-i18n
下列【新】软件包将被安装:
alien bsd-mailx librpm1 librpmbuild1 librpmio1 lsb-core lsb-invalid-mta
ncurses-term pax rpm rpm-common rpm2cpio
升级了 0 个软件包,新安装了 12 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
需要下载 5,464kB 的软件包。
解压缩后会消耗掉 13.5MB 的额外空间。
您希望继续执行吗?[Y/n]y
获取:1 http://cn.archive.ubuntu.com/ubuntu/ maverick/main librpmio1 i386 4.8.1-5 [770kB]
获取:2 http://cn.archive.ubuntu.com/ubuntu/ maverick/main rpm-common i386 4.8.1-5 [714kB]
获取:3 http://cn.archive.ubuntu.com/ubuntu/ maverick/main librpm1 i386 4.8.1-5 [876kB]
获取:4 http://cn.archive.ubuntu.com/ubuntu/ maverick/main librpmbuild1 i386 4.8.1-5 [761kB]
获取:5 http://cn.archive.ubuntu.com/ubuntu/ maverick/main rpm2cpio i386 4.8.1-5 [699kB]
获取:6 http://cn.archive.ubuntu.com/ubuntu/ maverick/main rpm i386 4.8.1-5 [839kB]
获取:7 http://cn.archive.ubuntu.com/ubuntu/ maverick/main alien all 8.81 [85.7kB]
获取:8 http://cn.archive.ubuntu.com/ubuntu/ maverick/universe lsb-invalid-mta all 4.0-0ubuntu8 [19.8kB]
获取:9 http://cn.archive.ubuntu.com/ubuntu/ maverick/main bsd-mailx i386 8.1.2-0.20100314cvs-1 [77.7kB]
获取:10 http://cn.archive.ubuntu.com/ubuntu/ maverick/main ncurses-term all 5.7+20100626-0ubuntu1 [520kB]
获取:11 http://cn.archive.ubuntu.com/ubuntu/ maverick/main pax i386 1:20090728-1build1 [57.8kB]
获取:12 http://cn.archive.ubuntu.com/ubuntu/ maverick/main lsb-core i386 4.0-0ubuntu8 [43.3kB]
下载 5,464kB,耗时 5分 25秒 (16.8kB/s)
正在预设定软件包 …
选中了曾被取消选择的软件包 librpmio1。
(正在读取数据库 … 系统当前共安装有 222929 个文件和目录。)
正在解压缩 librpmio1 (从 …/librpmio1_4.8.1-5_i386.deb) …
选中了曾被取消选择的软件包 rpm-common。
正在解压缩 rpm-common (从 …/rpm-common_4.8.1-5_i386.deb) …
选中了曾被取消选择的软件包 librpm1。
正在解压缩 librpm1 (从 …/librpm1_4.8.1-5_i386.deb) …
选中了曾被取消选择的软件包 librpmbuild1。
正在解压缩 librpmbuild1 (从 …/librpmbuild1_4.8.1-5_i386.deb) …
选中了曾被取消选择的软件包 rpm2cpio。
正在解压缩 rpm2cpio (从 …/rpm2cpio_4.8.1-5_i386.deb) …
选中了曾被取消选择的软件包 rpm。
正在解压缩 rpm (从 …/archives/rpm_4.8.1-5_i386.deb) …
选中了曾被取消选择的软件包 alien。
正在解压缩 alien (从 …/archives/alien_8.81_all.deb) …
选中了曾被取消选择的软件包 lsb-invalid-mta。
正在解压缩 lsb-invalid-mta (从 …/lsb-invalid-mta_4.0-0ubuntu8_all.deb) …
选中了曾被取消选择的软件包 bsd-mailx。
正在解压缩 bsd-mailx (从 …/bsd-mailx_8.1.2-0.20100314cvs-1_i386.deb) …
选中了曾被取消选择的软件包 ncurses-term。
正在解压缩 ncurses-term (从 …/ncurses-term_5.7+20100626-0ubuntu1_all.deb) …
选中了曾被取消选择的软件包 pax。
正在解压缩 pax (从 …/pax_1%3a20090728-1build1_i386.deb) …
选中了曾被取消选择的软件包 lsb-core。
正在解压缩 lsb-core (从 …/lsb-core_4.0-0ubuntu8_i386.deb) …
正在处理用于 man-db 的触发器…
正在设置 librpmio1 (4.8.1-5) …
正在设置 rpm-common (4.8.1-5) …
正在设置 librpm1 (4.8.1-5) …
正在设置 librpmbuild1 (4.8.1-5) …
正在设置 rpm2cpio (4.8.1-5) …
正在设置 rpm (4.8.1-5) …
正在设置 alien (8.81) …
正在设置 lsb-invalid-mta (4.0-0ubuntu8) …
正在设置 bsd-mailx (8.1.2-0.20100314cvs-1) …
update-alternatives: 使用 /usr/bin/bsd-mailx 来提供 /usr/bin/mailx (mailx),于 自动模式 中。
正在设置 ncurses-term (5.7+20100626-0ubuntu1) …
正在设置 pax (1:20090728-1build1) …
正在设置 lsb-core (4.0-0ubuntu8) …
正在处理用于 libc-bin 的触发器…
ldconfig deferred processing now taking place
正在处理用于 python-central 的触发器…
----------
开机运行成功~然后新问题来了,菜单等都是乱码,主要是Googleearth自带的libQ库有问题,使用ubuntu的库就OK了。
方法:进入目录
$cd /opt/google/earth/free
将文件改名或删除即可:
$sudo mv libQtCore.so.4 libQtCore.so.4~
$sudo mv libQtGui.so.4 libQtGui.so.4~
$sudo mv libQtNetwork.so.4 libQtNetwork.so.4~
$sudo mv libQtWebKit.so.4 libQtWebKit.so.4~
再次运行一般问题就解决了,但是发现这个方法只能坚持5秒钟,不知道啥原因?
最后修改了
/opt/google/earth/free/lang$下把zh-Hans.qm和zh-Hant.qm改成别名,再运行google以E文方式运行正常。
待解决。。。
在ubuntu linux使用SSH等与secureCRT类似的工具
注:如无法安装,提示 依赖关系不满足: libgnome2-vte-perl 可以安装如下类似的包!
-----------以下为转贴-----------
在windows下管理linux服务器,经常用的是securecrt,它主要特性有
1、标签式管理
2、标签可以克隆,方便在不同标签完成不同工作
3、服务器列表支持分类
4、缓存key的 passphrase,只需要输入一次,后续使用该key的服务器访问都不需要再输入
5、Forward agent.
大家通过用securecrt登录到2台服务器,2台服务器上都有自己的key,这时,2台服务器上不需要额外的设置即可以相互scp文件,这个过程用的就是 SSH的Forward agent特性,它把认证进行转发。
而我们在linux下管理linux,比较常用的是gnome terminal,这个与securecrt比起来,未免太原始了,敲命令,敲到手抽筋,最近在网上找securecrt的替代工具,竟然在WOW!Ubuntu上找到了PAC Manager [URL: http://wowubuntu.com/pac-254.html ]
它主要特性:
1、标签式管理
2、标签可以克隆,方便在不同标签完成不同工作
3、服务器列表支持分类
4、Forward agent(这个可以通过PAC本身的配置实现,有可以通过修改/etc/ssh/ssh_config的配置来实现).
对比下可以看到,PAC Manager不支持缓存passphrase,这意味着,你每登录一台服务器 ,你都需要输入一次你key的 passphrase,但这个可以通过修改系统配置来达到.
我在ubuntu 10.10上安装了,下面先来做简单介绍
下面说下PAC Manager的图形化操作
添加组:
PAC窗口左上角“GROUP”显示的是组信息,点击添加可以新建分组
左下角是添加服务器列表,点击添加可以添加服务器信息
填好IP,用户名和密码等,如果是用key登录,密码留空即,再指定key的位置
”Edit connection” -> ”Connections Properties” -> ”Advanced Options”:
-o ”IdentityFile=/path/to/my_private_key_file”
如果想登录2台服务器,可以相互scp文件,则需要在“CONNECTION PROPERTIES”里把“Forward Agent”选上。
这样就可以进行连接了
每台服务器都需要指定key,这个未免太麻烦了,另外有些服务器需要使用另一个key,而且每次使用key登录服务器,都需要输入key的passphrase,为解决这个问题,我们只要把要用到的private key都交给ssh-agent来进行管理,,每个key只需要输入一次passphrase,后面的登录,就不用输入密码了。
ssh-agent 是个管理 private key 的 passphrase 的工具,启动
ssh-agent
添加需要被ssh-agent管理的key,假设你的private key名是id_rsa
ssh-add id_rsa
此时需要输入一次 private key 的 passphrase ,输入正确后,passphrase 就归 ssh-agent 管理,往后的 ssh 操作,就不需要询问 passphrase 了
ssh-add -l 可以看到现有托管的key
PAC Manager的配置文件保存在 /home/user/.pac/pac.yml,如果有大量服务器需要添加,可以写脚本,直接生成配置文件放到 /home/user/.pac/pac.yml 。
安装飞信 for Linux
“openfetion: error while loading shared libraries: libofetion.so.0: cannot open shared object file: No such file or directory”
http://sourceforge.net/projects/ofetion/files/openfetion-2.0.tar.gz/download
安装环境:ubuntu 10.10
1、下载后解压(这个都会了吧?):
直接安装会发现少很多文件包,安装如下包:
sudo apt-get install libsqlite3-dev
sudo apt-get install libxss-dev
sudo apt-get install libnotify-dev
sudo apt-get install libgstreamer0.10-dev
sudo apt-get install libnm-glib-dev
sudo apt-get install libnm-glib-dev
然后$sudo ./configure
$sudo make
$sudo make install
会遇到 “ openfetion: error while loading shared libraries: libofetion.so.0: cannot open shared object file: No such file or directory”的错误
按照 http://basiccoder.com/openfetion介绍的方法:
如果/etc/ld.so.conf里面有没有/usr/local/lib这个路径,加上一行include /usr/local/lib,再运行一下sudo ldconfig就可以了。 终于可以登录飞信了。
--------------以下为转自开发作者--------------
我去年的时候写了一个fetion for linux,当时程序写得挺烂的,也就没怎么宣传,前一段时间飞信出了个2010的新版本,分析了一下协议发现协议百分之八九十都改了,再加上上次代码写 得实在很粗糙,我自己都有点看不过去,然后就一怒之下重新分析了一下协议,用C重写了一遍,扔掉了我一个月的休息时间。程序是基于GTK开发的,在GNOME上运行起来界面还是比较友好的,大家可以下载试用一下.
今天把大家报告的bug修改了一下,请大家下载新版本试用。
感 谢上次在这里发布软件的时候大家的支持,由于在32位机器上编译的静态库在64位的系统上跑不起来,应大家需求现在完全开放源码,方便大家学习交流以及使 用。源码已上传至sourceforge 和googlecode上,大家可以到那里下载,更希望大家能发现修复它所存在的bug,另外呼吁大家制作测试32位和64位的deb包。
版本特性及修复的bug
2010-9-25 levin
* 修复了旧版本登录过程中出现的各种崩溃的问题
* 修复了查看聊天记录崩溃的问题
* 修复了查看群功能使用中的崩溃问题
* 更换了图标及提示音,解决了资源文件的版权问题
* 去掉了之前的自绘主题
* 添加了离线不接收飞信信息的功能
* 添加了发送失败提示功能
* 添加了断线提示功能
* 添加了多种常用快捷键
* 对界面做了一些优化,使更美观
下载地址:
http://sourceforge.net/projects/ofetion/
或
http://code.google.com/p/ofetion/
大家可以到http://basiccoder.com/openfetion报告发现的bug,我可以第一时间看到并修改。
Unix/Linux 下的小工具:lsof [转]
lsof 本来是一个很普通的小工具,用来显示被进程打开的文件信息,因为在 Unix/Linux 下任何东西都是文件,所以 lsof 这个 “小” 工具就显得非常强大,常被称作 “Unix debugging 的瑞士军刀”。lsof 很好的遵循了 Unix 的哲学 “只做一件事,并把事情做好”。来看看 Unix/Linux 下被看作文件的有哪些:普通文件,目录,NFS 文件,特殊块文件,字符文件,管道,连接,各种 socket,共享文件库等,所有都是文件,所以 lsof 用途非常广泛。
列出所有进程打开的所有文件:
# lsof
列出某个程序打开的所有文件:
# lsof -c vim # lsof -c vim -c python
列出某个用户打开的所有文件:
# lsof -u vpsee # lsof -u vpsee, root
列出某个组(group id)打开的所有文件:
# lsof -g 1
列出某个进程(PID)打开的所有文件:
# lsof -p 1 # lsof -p 1,2,3
列出某个目录下被打开的所有文件:
# lsof +D /usr/lib
列出所有网络连接:
# lsof -i
列出所有 TCP 连接或 UDP 连接:
# lsof -i tcp # lsof -i udp
列出谁在使用某个网络端口:
# lsof -i :22 # lsof -i :ssh
列出某个用户所有的网络连接:
# lsof -a -u vpsee -i
列出所有 NFS 文件、Unix domain socket 文件:
# lsof -N # lsof -U