由Ubuntu撰写的日志
ubuntu 安装 ffmpeg php-ffmpeg
八 2nd
最近在做一个视频网站安装本地环境费了不少时间。本地是ubuntu 9.10 而服务器是redhat as4 所以到时候本人会把服务器安装过程和大家分享出来。
本人环境如下
php —- 5.210
apache 2.2
ubuntu 9.10
ffmpeg 功能很强大包括视频抓图,视频信息,视频转换,在线视频录制,而且是免费的。所有一般的视频网站都会采用他。
本人首先是采用编译安装,但是一直都没有成功。编译过程中出现了很多问题。安装要使用ffmpeg往往需要编译很多包。感觉很麻烦。这些包又依赖于很多其他包。安装顺序也有要求。所以放弃了。
最终采用ubuntu 强大的 apt-get (使用dpkg进行安装) 进行安装(当然cenos,red hat这类使用rpm的系统都可以使用yum进行安装,具体的安装方法可以在本站进行查找).
apt-get 安装步骤如下:
sudo apt-get update ##更新以下源
sudo apt-get install ffmpeg
sudo apt-get install php5-ffmpeg
sudo apt-get install mencoder
sudo apt-get install flvtool2 ##视频转换flv
sudo apt-get install lame ##音频
sudo apt-get install yasm
编译安装ffmpeg 如下:
从 http://ffmpeg.mplayerhq.hu 下载
./configure –help ##查看有那些参数
./configure–prefix=/usr–enable-gpl–enable-shared–enable-libmp3lame–enable-libamr_nb–enable-libogg–enable-libvorbis–enable-libxvid–enable-liba52–enable-liba52bin–enable-pp–enable-libfaad–enable-libfaadbin–enable-libfaac–enable-pthreads–disable-ffserver–enable-x11grab
如果报错则安装该包,或者直接去掉该参数,只需要配置自己使用过程中需要使用到的就行了。
make & make install
其他的则一个一个的下载解压在编译就是了。
具体参考本文:centos+zendce+red5+ffmpeg安装配置
下面是php-ffmpeg 使用的api。功能是很少了。
如果需要给视频抓图择需要使用shell脚本。也就是用到php当中的(system,exec,passthru)这类执行外部命令函数。
往往很多服务器都将种类函数视为危险函数屏蔽掉了。所以想做视频网站对服务器的配置要求比较高。
当然最好是自己的独立服务器。vps 也可以。随便你怎么整都可以。
View Code PHP$movie = new ffmpeg_movie(String path_to_media, More >
red hat centos 安装 yum
六 6th
最近配置了服务器需要安装软件方法有几种。
下载软件包 ,编译安装 (./configure,make,make install)这样安装配置性更高。相信高手都是这样安装的。
yum安装。这样安装起来比较简单。(yum install 软件包名称) 主要适用于(centos,red hat)等.
卸载:yum remove 软件包名称.
apt-get 安装 这个和yum安装差不多。(sudo apt-get install 软件包名称 ) 主要适用于(ubuntu ,debian).
卸载 : sudo apt-get autoremove 卸载所有相关包。
采用 package 方式安装 : 用 package 安装,只要抓取该程序 package 档案。
安装 (pkg_add package_name) 移除 (pkg_delete package_name) 就可以完成安装 / 移除。
注意 :文件名称 .tgz 结尾的是 package 文件名称 .tar.gz 结尾的是 source 。
注 : 目前已经安装的 package 数据库放在 /var/db/pkg/ 这个数据夹之中。
另外还有 port tree 方式安装 More >
Ubuntu使用经验分享
五 14th
我对linux的使用是从ubuntu7.10开始,那时候我对windows也很不熟。既然学习编程,恰好是LAMP,我想,反正都不熟,学个人少的。这期间一直从8.04,8.10,9.04,9.10到最近的10.04。
这款与天下人共享的操作系统,我的确是喜欢上了。对这款系统赞不绝口的人不是少数。尤其有趣的是一个叫袁萌的老头,各大IT网站都会转载他的博文,开口闭口必谈Ubuntu,而且行文常用括号解释,生怕人不懂。
呵呵,这老头,70来岁,如此痴迷ubuntu,真是可爱。桌面系统使用ubuntu的确不错,虽然易用,游戏方面不如windows,然开放分享的精神可嘉。而且,做LAMP这行,不用LINUX,说不过去。
上次我问金浩,你们金山的linux服务器是什么版本。他答ubuntu server 8.04 。呵呵,我还真不信,毕竟大多数都用 centos(和redhat一样,更自由,支持yum);我说为什么选择它,他答,简单,就那么几条命令。维基百科也是采用ubuntu8.04。最近从9.10直接更新到了10.04,出现了一点小问题。主要是显示亮度和Flash乱码.比起以往繁琐的配置,这次安装没有什么配置了。积累了一些使用经验,上次老师要我写一份ubuntu文档,一直没有写,这次补上,和大家分享。
源列表:我是电信用户,一直用163的源,还不错。
查看cpu温度,同事笑我用笔记本,是对着CPU,内存用的,此话不假,我常输入top看看哪些东西占用资源。cpu温度很重要。
sudo apt-get install lm-sensors
sudo sensors-detect
查看: sensors
9.10中提供palimpset磁盘工具,我装完提示“one or more disks are failing” 我吓了一跳,心想磁盘坏了,提示有坏道。赶紧清理,呵呵,清理完重启就无法进入系统了。又重装了一次。10.04中这个问题没有了。 磁盘温度查看:
sudo apt-get install hddtemp
sudo hddtemp /dev/sda
安装硬件检测工具。ubuntu电源管理存在缺陷,这个Bug一直在官方Bug列表里,却没有重视。使用电源时候,Load_Cycle_Count每几分钟就增加了2次。开始时我也到处找解决办法,到后来发现这根本不重要,磁盘可以Load_Cycle_Count可以有60多万次。看看我使用半年的结果(2373):
sudo apt-get install smartmontools //安装
man smartctl //不懂的先问下男人,他会告诉你怎么做,养成习惯。不见得比gogole,baidu出来的差
sudo smartctl -a /dev/sda | grep Load_Cycle_Count
193 Load_Cycle_Count 0×0032 100 More >
ubuntu windows 文件共享
四 26th
文件共享在团队合作中是比较重要的。最经和同事一起协作开发就用到了,方法贴出来把。
安装samba:
sudo apt-get install samba
sudo apt-get install smbfs
下面我们来共享群组可读写文件夹,假设你要共享的文件夹为: /home/ray/share
首先创建这个文件夹
mkdir /home/ray/share
chmod 777 /home/ray/share
备份并编辑smb.conf允许网络用户访问
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
sudo gedit /etc/samba/smb.conf
搜寻这一行文字
;security = user
用下面这几行取代
security = user
username map = /etc/samba/smbusers
若要使用用户可以匿名访问到,用下面这一行取代:
security = share
将下列几行新增到文件的最后面,假设允许访问的用户为:youuser。而文件夹的共享名为 Share
[Share]
comment = Shared Folder with username and password
path = /home/ray/share
public = yes
writable = yes
valid users = youuser
create mask = 0700
directory mask = 0700
force user = nobody
force group = More >
ubuntu 路由上网
四 10th
ubuntu(9.04,9.10,10.04) 路由上网
1.sudo pppoeconf 先设置好拨号上网按照提示输入用户名和密码。
2.sudo gvim /etc/network/interfaces
预先做好备份。copy如下。
View Code SHELLauto lo
iface lo inet loopback
auto dsl-provider
iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider
auto eth0
iface eth0 inet dhcp
3.sudo /etc/init.d/networking restart 重启一下
查看路由状态命令。
命令:route
大功告成。
ubuntu 语音通话软件 skype
四 9th
最近一直在弄一个ubuntu下的语音通话软件---------skype,为了和一哥们一起协同开发。
开始的时候一直都是噪音,尝试了很多方法,都没有能解决。
1.sudo alsamixer 进行调整无效。
2. 也无效,此处按钮自己会左边的控制自动滑下去了,调上去噪音没有了,一说话又自动滑下去了。
还有一些说是驱动的问题。
最终解决:
后来猛的一看skype上面有一个噪音控制取消掉就行了。
skype->选项->声音设备->允许skype自动调整我的混淆音级别。
这样就好了。
ubuntu ip 设置 启动
四 6th
/etc/network/interfaces
打开后里面可设置DHCP或手动设置静态ip。前面auto eth0,让网卡开机自动挂载.
1. 以DHCP方式配置网卡
编辑文件/etc/network/interfaces:
sudo vi /etc/network/interfaces
并用下面的行来替换有关eth0的行:
# The primary network interface – use DHCP to find our address
auto eth0
iface eth0 inet dhcp
用下面的命令使网络设置生效:
sudo /etc/init.d/networking restart
也可以在命令行下直接输入下面的命令来获取地址
sudo dhclient eth0
2. 为网卡配置静态IP地址
编辑文件/etc/network/interfaces:
sudo vi /etc/network/interfaces
并用下面的行来替换有关eth0的行:# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.3.90
gateway 192.168.3.1
netmask 255.255.255.0
#network 192.168.3.0
#broadcast 192.168.3.255
将上面的ip地址等信息换成你自己就可以了.用下面的命令使网络设置生效:
sudo /etc/init.d/networking restart
(sudo /etc/init.d/networking force-reload)
3. 设定第二个IP地址(虚拟IP地址)
编辑文件/etc/network/interfaces:
sudo vi /etc/network/interfaces
在该文件中添加如下的行:
auto eth0
iface eth0 inet static
address 192.168.1.60
netmask 255.255.255.0
network x.x.x.x
broadcast x.x.x.x
gateway More >
ubuntu gnome 自定义快捷键方法
三 24th
作为Ubuntu默认的桌面环境,GNOME 是一种支持多种平台的开发&桌面环境,并且 GNOME 拥有很多强大的特性,如高质量的平滑文本渲染,首个国际化和可用性支持等。好了,以下是我使用 Ubuntu 时发现的一些有用的技巧,这里分享给大家。
1、用快捷键启动程序
为您指定的程序添加一个键盘快捷键,只需按相应快捷键便能启动程序等,就像我们使用 XP 时为快捷方式添加热键一样,GNOME 也有这些功能,而且设置并不难。首先打开终端输入:
gconf-editor
依次打开“Apps->Metacity->keybinding Commands”,这里一共能定义12条命令,如下图所示,我设置了 command_1 打开 Rhythmbox 播放器,command_2 打开 Swiftfox 浏览器,command_3 打开终端,您可以把您需要的命令添加进去。
添加完成后,去到“Apps->Metacity->Global keybingdings”,添加上您想要的快捷键。例如我上面一共填写了3条命令,分别填写在 command_1、command_2、command_3,那么我要在run_command_1,run_command_2, run_command_3 上填写快捷键组合,快捷键可以是 、、、F1 到 F12 和字母的组合,F1 表示同时按着 Ctrl+Alt+F1 键,如此类推。
现在只要按刚刚设置好的快捷键便能运行命令了。
2、把“桌面”文件夹设为自己的主目录
即使用家目录做为桌面上显示默认目录,打开配置编辑器,在终端运行
gconf-editor
去到 “Apps->nautilus->preferences” 下,启用 desktop_is_home_dir ,重启 X 即可。
3、在鼠标右键菜单中的“创建文档” 增加新项目
默认的只有一个空文件,其实很简单便能添加自己喜欢的模板。对于最新的 Ubuntu 7.10,在您主目录下有一个“模板”的文件夹,对,就是他了,在里面新建您需要的模板,例如新建一个 “文本文件.txt”,在鼠标右键菜单便会出现“文本文件”这个选项。如此类推,您可以新建 OpenOffice.org 文档、GIMP 文件等。
4、调整图标的大小
GNOME 默认的图标大小对于1024×768分辨率来说有点偏大,要改变大小,打开文件浏览器,例如从 “位置” 里打开 “主文件夹”,点 “编辑” –> “首选项”,把 “图标视图默认值” 下的 “默认缩放级别” 改为 75%。现在图标大小跟 WinXP More >
ubuntu 9.10 dpkg 错误
三 10th
Ubuntu错误提示:
dpkg: 语法分析错误,在“/var/lib/dpkg/available”文件的第“21728”行附近 软件包“libgnomevfs2-extra”:
该上下文中不允许“status”字段的值
E: Sub-process /usr/bin/dpkg returned an error code (2)
dpkg: 语法分析错误,在“/var/lib/dpkg/available”文件的第“21728”行附近 软件包“libgnomevfs2-extra”: 该上下文中不允许“status”字段的值E: Sub-process /usr/bin/dpkg returned an error code (2)
解决方法:
martin@martin-desktop:~$ sudo apt-get update
martin@martin-desktop:~$ sudo dpkg –clear-avail
martin@martin-desktop:~$ sudo dpkg –configure -a
martin@martin-desktop:~$ sudo apt-get install dselect
martin@martin-desktop:~$ sudo dselect update
以上从网路收集做个记录。
ubuntu man 汉化
三 10th
1.添加库函数手册
ubuntu默认是没有安装c语言的库函数man手册的,所以你在man perror 和sendto之类的函数时会显示没有相关文档的问题,这个问题让我郁闷了我好久。解决方法:
sudo apt-get install manpages-dev
2.让man显示中文
ubuntu源里面已经包含了中文的man包,所以不用从其他地方down了,直接
sudo apt-get install manpages-zh
但是这样man默认显示的还不是中文,还需要以下两步
a.把中文man包转换成utf8格式的
新建一个脚本文件
gedit t.sh
把下面内容添加进去
#!/bin/bashcd /usr/share/man/zh_CN/for k in *docd $kfor i in *.gzdo j=`echo ${i%.gz}` gunzip $i iconv -f gb18030 -t utf8 $j >tmp mv tmp $j gzip $jdonecd ..done
然后
sudo ./t
b.修改man默认的语言
sudo gedit /etc/manpath.config 把里面的所有的 /usr/share/man 改成 /usr/share/man/zh_CN
保存后退出,然后你再试一下man ls
3.让没有中文帮助的显示英文
做完上面第二部还不够,这时你再man 一下一些c语言函数(不要用printf,socket之类比较有名的函数,这些已经有中文帮助了)的时候就会发现竟然没有帮助,而刚才明明在第一步已经 安装了啊。这是因为你上面 把/usr/share/man 改成 /usr/share/man/zh_CN的操作使man只在中文帮助中搜索,如果没有就直接放弃,因此还需要以下操作,才能让man在没有中文帮助的时 候自动显示英文的帮助,如果英文的也没有,哪就真的没有了。
sudo gedit /etc/manpath.config
然后搜索你刚才改过的地方,然后在其后面添加同样的一行,只是后面的目录还用原来的/usr/share/man,比如在修改后的
MANPATH_MAP /bin More >