在 Fedora 26 系统环境下编译安装 MPlayer

最近在Fedora 26上使用MPlayer,发现目前的MPlayer又有了较大改进,记录下编译安装过程。

1.安装所需依赖的库文件

1
2
3
[root@bogon athena]# dnf install alsa-lib-devel
[root@bogon athena]# dnf install yasm-devel
[root@bogon athena]# dnf install gtk2-devel

这里说一下ALSA是高级Linux声音体系(英语:Advanced Linux Sound Architecture,缩写为ALSA)是Linux内核中,为声卡提供的驱动组件,以替代原先的OSS(开放声音系统)。一部分的目的是支持声卡的自动配置,以及完美的处理系统中的多个声音设备,这些目的大多都已达到。另一个声音框架JACK使用ALSA提供低延迟的专业级音频编辑和混音能力。如果alsa-lib-devel没有安装,则会造成编译安装的MPlayer无声音。

2.下载安装文件

从MPlayer官方网站下载所需安装包,网站地址:http://www.mplayerhq.hu/

MPlayer-1.3.0.tar.gz(程序代码)

all-20110131.tar.bz2(解码器)

WMP6-2.2.tar.bz2(皮肤)
喜欢Windows Media Player风格的皮肤,所以下载的这个文件,感觉挺怀旧的。

arialuni.ttf.bz2(字体)

1
2
3
4
5
6
7
[root@bogon athena]# cd /home/
[root@bogon home]# mkdir mplayer
[root@bogon home]# cd mplayer/
[root@bogon mplayer]# wget ftp://ftp.mplayerhq.hu/MPlayer/releases/MPlayer-1.3.0.tar.gz
[root@bogon mplayer]# wget ftp://ftp.mplayerhq.hu/MPlayer/releases/codecs/all-20110131.tar.bz2
[root@bogon mplayer]# wget ftp://ftp.mplayerhq.hu/MPlayer/skins/WMP6-2.2.tar.bz2
[root@bogon mplayer]# wget ftp://ftp.mplayerhq.hu/MPlayer/contrib/fonts/arialuni.ttf.bz2

3.安装解码器

1
2
3
[root@bogon mplayer]# tar -xjvf all-20110131.tar.bz2
[root@bogon mplayer]# mkdir /usr/local/lib/codecs/
[root@bogon mplayer]# mv all-20110131/* /usr/local/lib/codecs/

4.编译安装mplayer

1
2
3
4
5
[root@bogon mplayer]# tar -xzvf MPlayer-1.3.0.tar.gz
[root@bogon mplayer]# cd MPlayer-1.3.0/
[root@bogon MPlayer-1.3.0]# ./configure --enable-gui --enable-menu --prefix=/usr/local/ --codecsdir=/usr/local/lib/codecs/
[root@bogon MPlayer-1.3.0]# make
[root@bogon MPlayer-1.3.0]# make install

5.安装皮肤

1
2
3
4
5
[root@bogon MPlayer-1.3.0]# cd /home/mplayer/
[root@bogon mplayer]# tar -xjvf WMP6-2.2.tar.bz2
[root@bogon mplayer]# mv WMP6 /usr/local/share/mplayer/skins/
[root@bogon mplayer]# cd /usr/local/share/mplayer/skins/
[root@bogon skins]# ln -s WMP6/ default

6.安装字体

1
2
3
4
5
[root@bogon skins]# cd /home/mplayer/
[root@bogon mplayer]# bunzip2 arialuni.ttf.bz2
[root@bogon mplayer]# mv arialuni.ttf /home/athena/.mplayer/
[root@bogon mplayer]# cd /home/athena/.mplayer/
[root@bogon .mplayer]#ln arialuni.ttf default

至此,MPlayer就编译安装完成,效果如下。

Enjoy!

linux系统下futurerestore的编译安装

感谢tihmstar大神开发的futurerestore工具,使我们可以在Linux或Mac系统下对已经越狱并备份了SHSH2的iOS设备刷入相应版本的iOS系统。tihmstar大神的github主页是https://github.com/tihmstar,大家可以直接从他的主页下载源码。
下面记录下我编译安装futurerestore的过程。
我使用的Linux系统为Fedora-Workstation-Live-x86_64-26-1.5.iso。

1
2
[root@bogon athena]# uname -a
Linux bogon 4.13.5-200.fc26.x86_64 #1 SMP Thu Oct 5 16:53:13 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

1.安装所需依赖的库文件

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@bogon athena]# dnf install libtool
[root@bogon athena]# dnf install gcc-c++
[root@bogon athena]# dnf install libcurl-devel
[root@bogon athena]# dnf install bzip2-devel
[root@bogon athena]# dnf install libzip-devel
[root@bogon athena]# dnf install zlib-devel
[root@bogon athena]# dnf install openssl-devel
[root@bogon athena]# dnf install readline-devel
[root@bogon athena]# dnf install libusb-devel
[root@bogon athena]# dnf install libimobiledevice-devel
[root@bogon athena]# dnf install python-devel
[root@bogon athena]# dnf install doxygen
[root@bogon athena]# pip install cython

2.下载工具及库文件
下载包括futurerestore,tsschecker,img4tool,idevicerestore,libplist,libfragmentzip,libirecovery,jssy。

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@bogon athena]# cd /home/
[root@bogon home]# mkdir downgrade
[root@bogon home]# cd downgrade/
[root@bogon downgrade]# git clone https://github.com/tihmstar/futurerestore.git
[root@bogon downgrade]# cd futurerestore/external/
[root@bogon external]# git clone https://github.com/tihmstar/tsschecker.git
[root@bogon external]# git clone https://github.com/tihmstar/img4tool.git
[root@bogon external]# git clone https://github.com/tihmstar/idevicerestore.git
[root@bogon external]# cd /home/downgrade/
[root@bogon downgrade]# git clone https://github.com/libimobiledevice/libplist.git
[root@bogon downgrade]# git clone https://github.com/tihmstar/libfragmentzip.git
[root@bogon downgrade]# git clone https://github.com/tihmstar/libirecovery.git
[root@bogon downgrade]# git clone https://github.com/tihmstar/jssy.git

3.编译安装libplist

1
2
3
4
[root@bogon downgrade]# cd /home/downgrade/libplist/
[root@bogon libplist]# ./autogen.sh
[root@bogon libplist]# make
[root@bogon libplist]# make install

4.编译安装libfragmentzip

1
2
3
4
[root@bogon libplist]# cd /home/downgrade/libfragmentzip/
[root@bogon libfragmentzip]# ./autogen.sh
[root@bogon libfragmentzip]# make
[root@bogon libfragmentzip]# make install

5.编译安装libirecovery

1
2
3
4
[root@bogon libfragmentzip]# cd /home/downgrade/libirecovery/
[root@bogon libirecovery]# ./autogen.sh
[root@bogon libirecovery]# make
[root@bogon libirecovery]# make install

6.复制jssy文件
将jssy文件夹复制到”/home/downgrade/futurerestore/external/tsschecker/external/jssy/”路径下。

1
2
[root@bogon libirecovery]# cd /home/downgrade/jssy/
[root@bogon jssy]# cp -rf jssy /home/downgrade/futurerestore/external/tsschecker/external/jssy/

6.编译安装tsschecker
编译前需引入环境变量”PKG_CONFIG_PATH”,不然编译过程,执行pkg-config会报错。

1
2
3
4
5
6
[root@bogon jssy]# cd /home/downgrade/futurerestore/external/tsschecker/
[root@bogon tsschecker]# export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/
[root@bogon tsschecker]# pkg-config --modversion libplist
[root@bogon tsschecker]# ./autogen.sh
[root@bogon tsschecker]# make
[root@bogon tsschecker]# make install

7.编译安装img4tool

1
2
3
4
[root@bogon tsschecker]# cd /home/downgrade/futurerestore/external/img4tool/
[root@bogon img4tool]# ./autogen.sh
[root@bogon img4tool]# make
[root@bogon img4tool]# make install

8.编译安装idevicerestore

1
[root@bogon img4tool]# cd /home/downgrade/futurerestore/external/idevicerestore/

编译安装前需要修改libimobiledevice-1.0库的版本号,不然configure会报错。

1
[root@bogon idevicerestore]# vi /usr/lib64/pkgconfig/libimobiledevice-1.0.pc

将”Version: 1.2.0″修改为”Version: 1.2.1″。

1
2
3
[root@bogon idevicerestore]# ./autogen.sh
[root@bogon idevicerestore]# make
[root@bogon idevicerestore]# make install

9.编译安装futurerestore

1
2
3
4
[root@bogon idevicerestore]# cd /home/downgrade/futurerestore/
[root@bogon futurerestore]# ./autogen.sh
[root@bogon futurerestore]# make
[root@bogon futurerestore]# make install

至此futurerestore就编译完成并可正常使用。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[root@bogon futurerestore]# futurerestore
Version: 451804fd967684c434ef031703c9676066ab195b - 153
Odysseus Support: no
Usage: futurerestore [OPTIONS] IPSW
Allows restoring nonmatching iOS/Sep/Baseband
 
  -t, --apticket PATH		Apticket used for restoring
  -b, --baseband PATH		Baseband to be flashed
  -p, --baseband-manifest PATH	Buildmanifest for requesting baseband ticket
  -s, --sep PATH		Sep to be flashed
  -m, --sep-manifest PATH	Buildmanifest for requesting sep ticket
  -w, --wait			keep rebooting until nonce matches APTicket
  -u, --update			update instead of erase install
      --latest-sep		use latest signed sep instead of manually specifying one(may cause bad restore)
      --latest-baseband		use latest signed baseband instead of manually specifying one(may cause bad restore)
      --no-baseband		skip checks and don't flash baseband.
                   		WARNING: only use this for device without baseband (eg iPod or some wifi only iPads)

此过程编译安装的futurerestore仅支持64位iOS设备,如果想要支持32位iOS设备,请补充安装libipatcher

CentOS 编译安装 json

1.下载源文件包

#wget http://www.aurore.net/projects/php-json/php-json-ext-1.2.1.tar.bz2 

2.解压

#wget http://www.aurore.net/projects/php-json/php-json-ext-1.2.1.tar.bz2 

3.进入目录

#cd php-json-ext-1.2.1

4.初始化PHP环境

#phpize

如果报错了:phpize commend not found,则需要安装phpize,这个可以通过yum安装.

#yum -y install php-devel

如果还不行,说明你的编译工具有问题,安装一下就可以了.

#yum -y install autoconf
#yum -y install automake
#yum -y install libtool

运行phpize
5.编译安装

#./configure
#make
#make install

6.查看有没有安装成功

#find / -name '*json.so'

返回结果./usr/lib/php/modules/json.so说明已经安装.
7.修改php.ini

#cd /etc/php.d
#vim json.ini

添加内容如下:
extension=json.so

8.重启服务

9.查看php信息

#php -i

返回结果:
json support enabled
json version 1.2.1
完成

CentOS 搭建 WordPress

配置环境,首先检查一下CentOS版本
方法一

#lsb_release -a

这个命令适用于所有的linux,包括Redhat,SuSE,Debian等发行版.
方法二

#cat /etc/redhat-release

这个命令适用于RedHat,CentOS.

WordPress和phpMyAdmin都要求php5.2+版本.如果你安装的是CentOS 5则需要升级PHP,如果你安装的是CentOS 6可直接跳过这一段
====================================================================我开始使用官方源http://dev.centos.org/centos/5/CentOS-Testing.repo但是没有成功,后来在网上找到另外一个源可以使用,方法如下

#vi /etc/yum.repos.d/utterramblings.repo

将下面这段添加进去

[utterramblings]
name=Jason’s Utter Ramblings Repo
baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/ enabled=1
gpgcheck=1
gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka

然后

#yum install php

完毕.
====================================================================
接下来安装 LAMP

#yum -y install mysql mysql-server httpd php php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc

设定为开机启动

#chkconfig mysqld on
#chkconfig httpd on

启动 MySQL

#service mysqld start 

进行 MySQL 安全配置

#mysql_secure_installation

让你输入当前的 root 密码,第一次肯定是空的,所以敲回车就行

Enter current password for root (enter for none):

然后会让你设定 MySQL 的 root 密码,敲回车后输入两遍密码

Set root password? [Y/n]

再往下所有的提示都直接敲回车过掉

为 WordPress 创建数据库和用户,这里有两种方法

方法一:使用mysql非图形界面的命令来创建

进入 MySQL 控制台

#mysql -u root -p

输入刚才设定的密码

我们先约定: WP_DB_NAME 表示数据库名字, WP_DB_USER 表示数据库用户名, WP_DB_PASSWD 表示该用户密码. 输入时根据个人需求替换掉. (注意命令的最后有个半角分号)

先新建数据库

mysql>create database WP_DB_NAME;

再给这个数据库配一个用户,同时设定密码

mysql>grant all privileges on WP_DB_NAME.* to "WP_DB_USER"@"localhost" identified by "WP_DB_PASSWD"; 

使改动生效

mysql>flush privileges; 

退出 MySQL 控制台(命令最后不需要半角分号了)

 mysql>exit

方法二:安装phpMyAdmin通过图形界面的phpMyAdmin图形界面来创建

安装需要在root用户下进行

进入网站根目录

#cd /var/www/html/

下载最新版本的phpMyAdmin程序(请到http://www.phpmyadmin.net/home_page/downloads.php下载最新版本的程序)

#wget http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/3.5.0/phpMyAdmin-3.5.0-all-languages.tar.gz 

解压

#tar xvfz phpMyAdmin-3.5.0-all-languages.tar.gz

修改目录名

#mv phpMyAdmin-3.5.0-all-languages.tar.gz phpmyadmin

进入phpmyadmin目录

#cd phpmyadmin

复制样本配置文件到config.inc.php文件

#cp config.sample.inc.php config.inc.php

重启apache

#service httpd restart

完成.现在你可以通过http://your.domain.com/phpmyadmin进入mysql管理,并为wordpress创建数据库及用户.

安装WordPress

进入网站根目录

#cd /var/www/html/

下载最新版WordPress

#wget http://cn.wordpress.org/wordpress-3.3.1-zh_CN.tar.gz

解压缩

#tar zxvf wordpress-3.3.1-zh_CN.tar.gz

接下来你需要使用WinSCP工具或chmod命令修改wordpress目录权限为777,使之可以读写.

最后通过http://your.domain.com/wordpress按照步骤完成Wordpress的安装.

至此,你会发现你的WordPress还不能通过FTP进行插件安装与更新.所以要安装FTP以获取支持.

检测是否安装FTP

#rpm -q vsftpd

如果安装了会显示版本信息,否则显示

#package vsftpd is not installed

安装FTP

#yum install vsftpd

由于考虑到安全问题,我们无法使用root用户进行FTP登陆.所以要么解除对root用户的限制,要么创建其他用户.由于我觉得创建其他用户过于麻烦,所以我使用root用户登录,以下是解除root限制的方法

#vi /etc/vsftpd/ftpusers

将该文件中的root注释掉

#vi /etc/vsftpd/user_list

将该文件中的root注释掉
开启FTP服务

#service httpd restart

设置FTP开机自启

#chckcongfig httpd on

完成.现在我们就可以使用root用户来对WordPress进行插件安装于升级.

Enjoying!

Fedora 15 GNOME 天气插件

更新至Fedora 15后,发现GNOME也随之更新。不过原来的天气显示却不见了,为了方便查看实时天气,现在为此图形界面添加GNOME天气插件。方法如下:
1.在这里https://github.com/simon04/gnome-shell-extension-weather下载天气插件simon04-gnome-shell-extension-weather.tar.gz。解压后使用终端进入该文件夹。
2.使用如下命令进行安装:

#./autogen.sh --prefix=/usr
#make
#sudo make install

以上命令说明文件安装在/usr/路径下,我们可以在/usr/share/gnome-shell/extensions/这里找到所安装插件,如想卸载,直接删除即可。
3.在http://sigizmund.info/woeidinfo/网站查询天气城市代码。比如我在北京。查询后获得城市代码2151330。
4.使用如下命令进行天气预报地点设置:

#gsettings set org.gnome.shell.extensions.weather woeid 2151330

5.重新启动GNOME后天气插件加载完毕,效果如下:

至此,该天气插件配置基本完毕。如果想进一步配置,请参看文件夹里的配置说明文件README.md。

Fedora 15 全新图形界面 GNOME 3

今天安装体验了Fedora 15(LoveUnlock),Fedora 15先前采用的GNOME2.X更新至GNOME3.0.1。看上去与以前大不一样了。下面截个图。

鼠标移至桌面左上角可以弹出程序列表以及窗口切换。原来的窗口切换是在右上角。看来上手新的图形界面要熟悉一段时间啦。

解决HOST1FREE中<noscript>引起的RSS Feed错误

目前本站使用的是HOST1FREE免费空间服务器,在使用RSS Feed时总是出现错误。

经过 http://feedvalidator.org/ 的feed检测,发现是由于HOST1FREE广告代码引起的:

Sorry This feed does not validate.
line 517, column 0: XML parsing error: <unknown>:517:0: junk after document element
<noscript>

516 <!-- www.Host1Free.com Counter Code -->
517 <noscript>
518 <a href="http://www.host1free.com/" title="Free Hosting">Free Hosting</a>
519 <a href="http://www.host1free.com/web-hosting/" title="Free Web Hosting Service">
    Free Hosting</a>
520 <a href="http://www.host1plus.com/" title="Web Hosting">Web Hosting</a>
521 <a href="http://www.host1plus.com/vps-hosting/" title="VPS Hosting">VPS Hosting</a>
522 </noscript>
523 <!-- End of www.Host1Free.com Counter Code -->

在查看HOST1FREE文档http://www.host1free.com/blog/remove-the-counter-code/后发现解决方法如下:

★在.htaccess文件中添加代码php_value auto_append_file none,问题解决。

目前本站RSS Feed运行正常。

解决WordPress Memory Limit问题

在使用3.0版WordPress过程中同样遇到2.0版WordPress内存限制问题:Fatal error: Allowed memory size of 33554432 bytes exhausted.但是解决方法已经不是像2.0版那样修改wp-settings.php文件,而是修改/wordpress/wp-includes/default-constants.php文件.
将原文件如下内容:

function wp_initial_constants( ) {
	global $blog_id;

	// set memory limits
	if ( !defined('WP_MEMORY_LIMIT') ) {
		if( is_multisite() ) {
			define('WP_MEMORY_LIMIT', '64M');
		} else {
			define('WP_MEMORY_LIMIT', '32M');
		}
	}

修改为:

function wp_initial_constants( ) {
	global $blog_id;

	// set memory limits
	if ( !defined('WP_MEMORY_LIMIT') ) {
		if( is_multisite() ) {
			define('WP_MEMORY_LIMIT', '128M');
		} else {
			define('WP_MEMORY_LIMIT', '64M');
		}
	}

保存该文件并刷新,问题解决.

给WordPress添加favicon图标

1.创建一个你喜欢的16x16pixels的图标,命名为favicon.ico.
2.将其通过FTP客户端上传到你的webhost空间的根目录(我的是”public_html”).
3.在你的主题文件夹(/wordpress/wp-content/themes/)里找到Header或header.php文件.
4.为了让你的图标能在更老版本的浏览器中显示,在该文件中搜索以<link rel=”shortcut icon”为开头且以/favicon.ico” />为结尾的代码,如果该代码存在则用下面的代码替换.如果不存在则在<head> HTML tag下添加.

<link rel="shortcut icon" href="<?php bloginfo('stylesheet_directory');?>/favicon.ico"/>

5.保存修改过的header.php刷新你的wordpress.完成!

参考原文地址:http://codex.wordpress.org/Creating_a_Favicon

Fedora OS tsocks & proxychains 配置

在Fedora OS下,由于系统代理不是全局代理,所以很多需要全局代理的软件不能正常使用.如最基本的Terminal就不支持系统代理.所以特意找了两个软件来解决这一问题.
一.tsocks:
1.安装tsocks,在终端中:

#yum install tsocks

2.修改配置文件:

vi /etc/tsocks.conf

3.将其内容改成以下几行并保存退出:

local = 192.168.1.0/255.255.255.0 #local表示本地的网络,也就是不使用socks代理的网络
server = 127.0.0.1 # SOCKS 服务器的 IP
server_type = 5 # SOCKS 服务版本
server_port = 9999 #SOCKS 服务使用的端口

你可能需要修改一下以上内容,用你自己的 SSH 隧道设置
4.用tsocks运行你的软件,在终端中:

tsocks 你的软件 &

现在我的python-twitter在终端中就是通过此软件运行的.
二.proxychains:
1.安装proxychains,在终端中:

#yum install proxychains

2.修改配置文件(/etc/proxychains.conf),应该如下:

# proxychains.conf VER 3.1
#
# HTTP, SOCKS4, SOCKS5 tunneling proxifier with DNS.
#

# The option below identifies how the ProxyList is treated.
# only one option should be uncommented at time,
# otherwise the last appearing option will be accepted
#
dynamic_chain
#
# Dynamic – Each connection will be done via chained proxies
# all proxies chained in the order as they appear in the list
# at least one proxy must be online to play in chain
# (dead proxies are skipped)
# otherwise EINTR is returned to the app
#
#strict_chain
#
# Strict – Each connection will be done via chained proxies
# all proxies chained in the order as they appear in the list
# all proxies must be online to play in chain
# otherwise EINTR is returned to the app
#
#random_chain
#
# Random – Each connection will be done via random proxy
# (or proxy chain, see chain_len) from the list.
# this option is good to test your IDS 🙂

# Make sense only if random_chain
#chain_len = 2

# Quiet mode (no output from library)
#quiet_mode

# Proxy DNS requests – no leak for DNS data
proxy_dns

# Some timeouts in milliseconds
tcp_read_time_out 15000
tcp_connect_time_out 8000

# ProxyList format
# type host port [user pass]
# (values separated by ‘tab’ or ‘blank’)
#
#
# Examples:
#
# socks5 192.168.67.78 1080 lamer secret
# http 192.168.89.3 8080 justu hidden
# socks4 192.168.1.49 1080
# http 192.168.39.93 8080
#
#
# proxy types: http, socks4, socks5
# ( auth types supported: “basic”-http “user/pass”-socks )
#
[ProxyList]
# add proxy here …
# meanwile
# defaults set to “tor”
http 127.0.0.1 8580
socks5 127.0.0.1 9999
socks4 127.0.0.1 9050

注意事项:

a. 要选 dynamic_chain 而不是 random_chain
b. 可以列举几个代理服务器,proxychains 会按顺序用,代理无法访问即自动选用下一个
c. 代理服务器要根据自己电脑的情况自行调整

3.运行proxychains与运行tsocks完全一样.在终端中:

proxychains 你的软件 &

至此以上软件配置完毕.

www.000webhost.com