ubuntu下Mysql+sphinx+中文分词安装配置
“吃一口沙琪玛”通过精心收集,向本站投稿了10篇ubuntu下Mysql+sphinx+中文分词安装配置,这里小编给大家分享一些ubuntu下Mysql+sphinx+中文分词安装配置,方便大家学习。
篇1:ubuntu下Mysql+sphinx+中文分词安装配置
一、编译先前条件
确认是否已经安装以下软件,有些也许不是必须的,但建议还是都装上,
apt-get install autoconf automake autotools-dev cpp curl gawk gcc lftp libc6-dev linux-libc-dev make libpcre3-dev libpcrecpp0 g++ libtool libncurses5-dev
aptitude install libmysql++-dev libmysqlclient15-dev checkinstall
apt-get install python python-dev
二、安装所需文件
所需文件列表
mmseg-0.7.3.tar.gz 中文分词
mysql-5.1.26-rc.tar.gz mysql-5.1.26源代码
sphinx-0.9.8-rc2.tar.gz sphinx-0.9.8-rc2源代码
fix-crash-in-excerpts.patch sphinx支持分词补丁
sphinx-0.98rc2.zhcn-support.patch sphinx支持分词补丁
文件可以到官方下载,附件中我将会提供该系列文件。
三、开始安装
先将以上文件传到 root目录下
1、mmseg-0.7.3 安装
先解压安装文件 tar -zxvf mmseg-0.7.3.tar.gz
cd mmseg-0.7.3/
./configure
make
make install
cd ../
到此mmseg安装完毕
可以尝试 输入mmseg 命令,看是否已经安装成功
2、安装MySQL 5.1.26-rc、Sphinx、SphinxSE存储引擎
先解压 mysql和sphinx源文件
tar zxvf mysql-5.1.26-rc.tar.gz
tar zxvf sphinx-0.9.8-rc2.tar.gz
然后给sphinx打上补丁,这个是支持中文必须打的补丁
cd sphinx-0.9.8-rc2/
(请确认已经安装了patch,如果没有者 使用 apt-get install patch 安装)
patch -p1 < ../sphinx-0.98rc2.zhcn-support.patch
patch -p1 < ../fix-crash-in-excerpts.patch
接着将sphinx下的mysqlse 文件夹下的数据拷贝到mysql-5.1.26-rc/storage/sphinx 下面(这样才能在编译mysql的时候把SphinxSE存储引擎编译进去)
cp -rf mysqlse ../mysql-5.1.26-rc/storage/sphinx
到/mysql-5.1.26-rc/storage/sphinx目录下确认文件是否已经拷贝成功
cd ../
下面我们来编译安装mysql-5.1.26-rc
cd mysql-5.1.26-rc/
sh BUILD/autorun.sh 这步是必须的,请勿遗漏
使用configure命令确认安装
./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-extra-charsets=all --with-plugins=sphinx
确认是否提示可使用make编译,如果是。
执行
make
这步执行时间比较长,一般在10-20分钟,主要看个人电脑配置
编译成功后.再执行安装命令(如果出现error,需要重新编译,一般80%的error都是编译环境没有装好(个人编译体会))
make install //这个过程大概需要1分钟不到的时间
这样mysql就已经安装完毕了下面我们来配置和启动mysql
添加mysql用户组和用户
groupadd mysql
useradd –g mysql mysql
给mysql所在目录添加mysql用户权限
chown mysql:mysql /usr/local/mysql –R
将my-medium.cnf 拷贝到安装根目录
cp /usr/local/mysql/share/mysql/my-medium.cnf /usr/local/mysql/my.cnf
给my.cnf文件添加mysql用户权限
chown mysql:mysql /usr/local/mysql/my.cnf
然后修改my.cnf配置
在skip-external-locking上面插入(配置可以自定义)
user = mysql
pid-file = /usr/local/mysql/mysql.pid
socket = /tmp/mysq.sock
port = 3306
basedir= /usr/local/mysql
datadir = /usr/local/mysql/data
tmpdir = /tmp
language = /usr/local/mysql/share/mysql/English
将里面的# –skin-dbd 注释掉,否则在执行启动mysql命令 时会报错误
为了能在ubuntu系统下方便的使用mysql, 我们还需要安装 mysql-client-5.0 (客户端)
apt-get install mysql-client-5.0
初始化数据库
/usr/local/mysql/bin/mysql_install_db --defaults-file=/usr/local/mysql/my.cnf --user=mysql
执行结果
Installing MySQL system tables...
080917 14:36:16 [Warning] Storage engine 'SPHINX' has conflicting typecode. Assigning value 42.
OK
Filling help tables...
080917 14:36:16 [Warning] Storage engine 'SPHINX' has conflicting typecode. Assigning value 42.
OK
………………..
以上提示表示执行成功
此时你会发现/user/local/mysql 目录下多了一个data文件夹,这文件夹里存放的是mysql数据内容
我们需要给该目录赋予用户权限和写的权限
chown mysql:mysql -R /usr/local/mysql/data/
chmod -R o+w /usr/local/mysql/data/
将mysql.server 拷贝成 /etc/init.d/mysqld 文件
cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
并给mysqld添加执行权利
chmod 700 /etc/init.d/mysqld
通过执行
/etc/init.d/mysqld start 启动mysql 也可以使用stop | restart 等一些命令
然后我们输入mysql 命令,进去
Mysql>
输入
show engines;
此时我们可以看到已经包含sphinxSE 引擎
到此myql部分启动完毕
接着我们来安装sphinx-0.9.8-rc2
cd sphinx-0.9.8-rc2/
CPPFLAGS=-I/usr/include/python2.4
LDFLAGS=-lpython2.4
./configure --prefix=/usr/local/sphinx --with-mysql=/usr/local/mysql
make
make install
cd ../
安装完成后
将sphinx.conf.dist拷贝成sphinx.conf文件
cp /usr/local/sphinx/etc/sphinx.conf.dist /usr/local/sphinx/etc/sphinx.conf
修改sphinx.conf中的配置如下:(配置可以自定义)
sql_host = localhost
sql_user = root
sql_pass =
sql_db = test
sql_port = 3306
加载索引
/usr/local/sphinx/bin/indexer --config /usr/local/sphinx/etc/sphinx.conf --all
注: 先要给libmysqlclient.so.16 建立软链接
ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.16 /usr/lib/libmysqlclient.so.16
再通过
/usr/local/sphinx/bin/searchd --config /usr/local/sphinx/etc/sphinx.conf 开启索引监听
为了下面测试方便,我们先将sphinx.conf自带的example.sql脚本倒入的mysql中
mysql < /usr/local/sphinx/etc/example.sql //创建了一个test库,并建立了documents测试表和数据
到此安装部分基本结束,大功告成了一半,下面我们来谈谈他们的使用。
四、开始使用
1、在mysql中的使用SphinxSE方式调用Sphinx
首先建立一张索引专用表:
CREATE TABLE `sphinx` (
`id` int(11) NOT NULL,
`weight` int(11) NOT NULL,
`query` varchar(255) NOT NULL,
`CATALOGID` INT NOT NULL,
`EDITUSERID` INT NOT NULL,
`HITS` INT NULL,
`ADDTIME` INT NOT NULL, KEY
`Query` (`Query`)
) ENGINE=SPHINX DEFAULT CHARSET=utf8 CONNECTION='sphinx://localhost:3312/test1'
test1:索引的名称,可以在sphinx.conf中查找到
建立完索引专用表后,我们就可以在mysql中使用它了,例如,在mysql中输入
SELECT doc. * FROM documents doc JOIN sphinx ON ( doc.id = sphinx.id )
WHERE query = 'doc;mode= any '
运行后,结果记录中将会显示包含doc字符串的所用记录行
关于query的语法,还有sphinx的配置等信息你可以请参考:
www.sphinxsearch.com/doc.html
这里有十分详细的介绍,在这里我们只做一个简单的介绍,希望能起到抛砖引玉的效果,
2、中文分词的应用
在应用之前我们先将apache2和 phpmyadmin装上,以便输入中文进行测试
apt-get install apache2
apt-get install phpmyadmin
访问:192.168.2.249/phpmyadmin/ 出现了熟悉的界面,ok,安装成功.
接着我们需要修改/etc/php5/apache2/php.ini 中的
mysql.default_socket 值 设置成 /tmp/mysql.sock
这样我们就可以在192.168.2.249/phpmyadmin/ 上通过root用户(密码空) 访问mysql了
生成和使用分词字典
mmseg -u /root/mmseg-0.7.3/data/unigram.txt
将生成unigram.txt.lib 文件
将文件拷贝到 /usr/local/sphinx/下面,命名为uni.lib
cp unigram.txt.lib /usr/local/sphinx/uni.lib
修改 sphinx.conf(/usr/local/sphinx/etc/sphinx.conf)配置文件
在索引中加入
charset_type = zh_cn.utf-8
charset_dictpath = /usr/local/sphinx/
配置
然后通过
/usr/local/sphinx/bin/indexer --config /usr/local/sphinx/etc/sphinx.conf –all
(如果searchd已经再运行,先kill 它再运行,下一部分,我们会介绍怎样在searchd运行的状态下,加载索引)
重建索引,成功后,开启索引监听
/usr/local/sphinx/bin/searchd --config /usr/local/sphinx/etc/sphinx.conf
这样,就可以在phpmyadmin中进行测试了。
SELECT doc. * FROM documents doc JOIN sphinx ON ( doc.id = sphinx.id )
WHERE query = '张学友;mode= any '
注意:在添加完数据后,需要重新加载索引,这样新的数据才能被缓存进去五、实际应用介绍
通过以上的介绍,现在我们已经基本能使用这套东西了,下面我们来对索引的管理做一些介绍。
实时更新索引
在实际应用中往往有这么一种情况,数据库数据很大,比如我们的歌曲表,如果我们每次都去更新整个表的索引,对系统得开销将非常大,显然这是不合适,这时我们会发现,每天我们需要更新的数据相比较而言较少,在这种情况下我们就需要使用“主索引+增量索引”的模式来实现实时更新的功能。
这个模式实现的基本原理是设置两个数据源和两个索引,为那些基本不更新的数据建立主索引,而对于那些新增的数据建立增量索引。主索引的更新频率我们可以设置的长一些(可以设置在每天的午夜进行更新),而增量索引的更新频率,我们可以将时间设置的很短(几分钟左右),这样在用户搜索的时候,我们可以同时查询这两个索引的数据。
下面,我们通过一个简单的例子来描述一下怎样实现这种模式
以sphinx.conf中默认的数据为例:
先在mysql中插入一个计数表和两个索引表
CREATE TABLE sph_counter
(
counter_id INTEGER PRIMARY KEY NOT NULL,
max_doc_id INTEGER NOT NULL
);
//主索引使用(确认之前是否已经建立过该表,如果已经建立,这里就不需要重新建了)
CREATE TABLE `sphinx` (
`id` int(11) NOT NULL,
`weight` int(11) NOT NULL,
`query` varchar(255) NOT NULL,
`CATALOGID` INT NOT NULL,
`EDITUSERID` INT NOT NULL,
`HITS` INT NULL,
`ADDTIME` INT NOT NULL, KEY
`Query` (`Query`)
) ENGINE=SPHINX DEFAULT CHARSET=utf8 CONNECTION='sphinx://localhost:3312/test1'
//增量索引使用
CREATE TABLE `sphinx1` (
`id` int(11) NOT NULL,
`weight` int(11) NOT NULL,
`query` varchar(255) NOT NULL,
`CATALOGID` INT NOT NULL,
`EDITUSERID` INT NOT NULL,
`HITS` INT NULL,
`ADDTIME` INT NOT NULL, KEY
`Query` (`Query`)
)ENGINE=SPHINX DEFAULT CHARSET=utf8 CONNECTION='sphinx://localhost:3312/ test1stemmed '
数据库操作完毕后再来配置sphinx.conf
source src1
{
sql_query_pre = REPLACE INTO sph_counter SELECT 1, MAX(id) FROM documents
sql_query = “
SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content ”
FROM documents “
WHERE id<=( SELECT max_doc_id FROM sph_counter WHERE counter_id=1 )
………….. //其他可以默认
}
source src1throttled : src1
{
sql_ranged_throttle = 100
sql_query = ”
SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content “
FROM documents ”
WHERE id>( SELECT max_doc_id FROM sph_counter WHERE counter_id=1 )
}
index test1 //主索引
{
source = src1
……….
}
index test1stemmed : test1 //增量索引
{
source = src1throttled
……
}
配置完成后,我在通过
/usr/local/sphinx/bin/indexer --config /usr/local/sphinx/etc/sphinx.conf –all 和
/usr/local/sphinx/bin/searchd --config /usr/local/sphinx/etc/sphinx.conf
重新加载索引,执行成功后我们就可以来使用它了。
你可以往documents表中添加新的数据,比如我们插入一条这样的数据:
执行命令:
SELECT doc.* FROM documents doc join sphinx on (doc.id=sphinx.id) where query='test'
你会发现你刚添加的数据没有被检索出来
然后执行:
SELECT doc.* FROM documents doc join sphinx1 on (doc.id=sphinx1.id) where query='test'
你会发现数据是空的,这时我们就需要来更新增量索引了。
通过执行:
/usr/local/sphinx/bin/indexer --rotate --config /usr/local/sphinx/etc/sphinx.conf test1stemmed 命令来更新增量索引(正式使用时,我们可以将该命令配置到系统计划任务中,每格几分钟执行一次)
--rotate: 该参数可以使我们在不需要停止searchd的情况下,直接加载索引
执行完命令该命令后,我们再来查看一下增量索引的数据
SELECT doc.* FROM documents doc join sphinx1 on (doc.id=sphinx1.id) where query='test'
你会发现新添加的数据被检索出来的。
主索引的更新:
/usr/local/sphinx/bin/indexer --rotate --config /usr/local/sphinx/etc/sphinx.conf test1 (我们可以设置成每天的午夜执行)
只有在更新了主索引后,
SELECT doc.* FROM documents doc join sphinx on (doc.id=sphinx.id) where query='test'
的结果才会被更新
我们也可以通过合并索引的方式使主索引的数据保持更新
通过执行
/usr/local/sphinx/bin/indexer --merge test1 test1stemmed --merge-dst-range deleted 0 0 --rotate
可以将增量索引test1stemmed合并到主索引test1中去
注意:在你测试的过程中,mysql的查询缓存可能会给你带来一些困惑,所以测试时最好将其关闭。
关闭方法:
set global query_cache_size = 0; //禁止缓存开销
你可以通过 SHOW VARIABLES LIKE '%query_cache% 来察看缓存状态
到此Mysql+sphinx+中文分词的应用部分介绍完毕了。
总结
对于这块的学习,我也是刚起步,有些地方可能介绍的不是很到位,希望读者不要在意,
读者可以参考www.sphinxsearch.com/doc.html 的文档,那里有非常详细的介绍,对初学者来说,我这篇文章或许能帮上点忙。
篇2:ubuntu安装配置mysql
ubuntu安装配置mysql
本文只介绍最简单最基本的安装配置方法
1、安装
[plain]
sudo apt-get install mysql-server
在安装的过程中会出现设置mysql密码的界面,输入密码,点击确定即可,
检测是否安装成功:输入命令:netstat -tap|grep mysql,察看是否存在mysql服务
存在,说明安装成功。
2、配置
2.1开启远程访问
mysql默认是只有本地(127.0.01)访问的,不允许远程访问,开启办法为:
[plain]
sudo gedit /etc/mysql/my.cnf
打开mysql的配置文件,将bind-address=127.0.0.1注释掉
2.2设置mysql的字符集为utf8
首先登陆进mysql(假设我的mysql密码为1234)
[plain]
mysql -uroot -p1234
使用命令:show variables like 'character%'; 察看字符编码
在[client]和[mysql]添加:character-set-server=utf8
保存,
重启mysql:sudo restart mysql
介绍mysql的几个常用命令
一、库操作
1、、创建数据库
命令:create database <数据库名>数据库名>
例如:建立一个名为test的数据库
mysql>create database test;
2、显示所有的数据库
命令:show databases
mysql>show databases;
3、删除数据库
命令:drop database <数据库名>数据库名>
例如:删除名为 test的数据库
mysql>drop database test;
4、连接数据库
命令: use <数据库名>数据库名>
例如:如果test数据库存在,尝试存取它:
mysql>use test;
屏幕提示:Database changed
5、查看当前使用的数据库
mysql>select database;
6、当前数据库包含的表信息:
mysql>show tables;
篇3:ubuntu下安装php5+pdo
这几天尝试把工作机迁到ubuntu上来做开发,系统安装好之后的首要任务是安装php+mysql的开发环境. 我打算直接安装php5, pdo_mysql, 下面是安装过程的记录
首先我直接用apt-get安装了apache2,php5,pear以及mysql5, 为了方便后续的安装,还加上了make和libmysqlclient
sudo apt-get install apache2-mpm-prefork
sudo apt-get install php5
sudo apt-get install php5-dev
sudo apt-get install php5-pear
sudo apt-get install mysql-server-5.0
sudo apt-get install make
sudo apt-get install libmysqlclient15-dev
pdo在ubuntu的apt里头似乎还找不到安装源,所以通过pecl来安装这个扩展,非常简单 ―- 如果海底光纤能连通的话:
pecl install pdo
增加一行:
extension=pdo.so
到文件:
/etc/php/apache2/php.ini
/etc/php/cli/php.ini
接下来安装pdo_mysql碰到一些问题, 直接跑pecl install pecl_mysql会出现一些错误,搜索了一下发现是pecl本身的问题,下面是个比较简单的解决办法:
wget pecl.php.net/get/PDO_MYSQL-1.0.2.tgz
tar xzvf PDO_MYSQL-1.0.2.tgz
cd PDO_MYSQL-1.0.2
注释掉configure里头判断是否已经安装pdo扩展的代码片段,继续跑:
phpize
./configure
make
make install
然后再次添加下面一行到前面提到的两个php.ini
extension=pdo_mysql.so
重启apache之后, php5 + pdo_mysql就在ubuntu上安装好了, documentroot是/var/www
后记
更简单的解决办法是运行:
PHP_PDO_SHARED=1 pecl install pdo_mysql
篇4:Ubuntu下安装Apache
本安装方式是在Ubuntu下采用tar包源码得方式安装,
去官方下载apache2.2.17 源码包:www.apache.org/dist/httpd/httpd-2.2.17.tar.gz
1.解压缩httpd-2.2.17.tar.gz 到临时目录如~/httpd-2.2.17
sudo tar zxvf httpd-2.2.17.tar.gz ~/http-2.2.17
2.进入~/apache目录,执行
sudo ./configure --prefix=/usr/server/apache2 --enable-module=so
sudo make
sudo make install
实际执行过程中可能要求你有root权限,所以要求使用sudo
3.启动和停止apache
启动:sudo /usr/server/apache2/bin/httpd -k start
启动时提示:
httpd: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName.
解决办法是在http.conf中加一行:
ServerName 127.0.0.1:80
否则,只能在本地用127.0.0.1访问,不能使别的电脑访问网站
停止:sudo /usr/server/apache2/bin/httpd -k stop
4.让Ubuntu开机自动启动apache.
1). 复制 /usr/server/apache2/bin/apachectl到/etc/init.d
2). 加载为服务
sudo update-rc.d apachectl defaults
开机重启访问localhost/如果显示apache的网页,就说明自动启动成功了,
篇5:Windows7下用VirtualBox安装Ubuntu网卡配置
Win7下用VirtualBox安装Ubuntu,要求Ubuntu能连上互联网,同时在Ubuntu中配置SSH、FTP、NFS服务,能从Win7进行访问,
此时Linux虚拟机需要两块网卡,一块使用NAT方式(网络地址翻译网络)连接,用于连接互联网; 另一块设置为网桥网络(Bridged),用于建立SSH、FTP、NFS连接,要求所有机器(Linux主机网卡IP和Win7网卡IP)应处于同一网段,如192.168.0.x,子网掩码255.255.255.0
NAT方式连接的网卡,使用默认设置即可;而网桥网络的那块网卡,设置起来稍微有点特别
如果Win7本地连接已经接入网络,如图将桥接网卡桥接在本地连接的网卡上(图中的Realtek PCIe GBE Family Controller),然后将虚拟机的网桥网卡的IP,设置成与Win7本地连接同一网段即可,
如果Win7的本地连接为断开状态,使用的是Wifi上网,或未连接互联网,这时桥接网卡无法使用(不能和无线网卡桥接在一起)。此时可使用仅主机适配器,如图所示。保持VirtualBox安装时添加的那块虚拟网卡处于启用状态,并对其进行设置(可以理解成此时这块虚拟网卡代替了本地连接的那块网卡)。
本文由PurpleSword(jzj1993)原创,请注明
原文网址 blog.csdn.net/jzj1993
篇6:Ubuntu系统下Pureftpd的安装及配置教程
这篇文章主要介绍了Ubuntu系统下Pure-ftpd的安装及配置教程,同样适用于其他的Debian系的Linux系统,需要的朋友可以参考下
安装
Ubuntu/Debian 提供了三个不同的 Pure-FTPd 的 deb 安装包,分别是 pure-ftpd、pure-ftpd-ldap 和 pure- ftpd-mysql,其中 ldap 和 mysql 分别表示 Pure-FTPd 跟 ldap 和 mysql 集成,另外这三个包都依赖于 pure-ftpd-common,如果我们不需要 ldap 和 mysql 的话,选择 pure-ftpd 就可以了。
代码如下:apt-get install pure-ftp-common pure-ftpd
配置方式
不同于其他的多数守护进程(daemon),Pure-FTPd 的配置比较特别:它不读取任何的配置文件,配置选项都是通过命令行参数来实现的。例如:参数 ‘-H‘ 被设计为通过避免 DNS 查询来加快服务器的速度。要启用该特性,我们只需要将其加到命令行中: pure-ftpd -H 。备选的长参数也被支持的,下面是一个等价的命令 pure-ftpd --dontresolve
针对喜欢配置文件的用户,Pure-FTPd 官方给出了一种方案:通过一个封装(wrapper)工具,将配置文件解析并将其转换成命令行参数。首先根据自己的需要编辑配置文件 pure-ftpd.conf,而后通过下面的命令启动 pure-config.pl /etc/pure-ftpd.conf。pure-config.pl 是一个 perl 脚本,它根据配置文件采用合适的命令行选项来调用 pure-ftpd。
在 Ubuntu/Debian 中,开发人员采用了另外的一种 wrapper 方式:它没有采用单一的配置文件,而是在/etc下建立一个pure-ftpd的目录,其下又有 conf、auth、db 这三个目录和一个名为 pureftpd-alias-dir 的文件。每一个配置选项都以一个文件的形式存在于 /etc/pure-ftpd/conf 目录中,而且是以选项为文件名,选项值为文件内容。例如如果想配置AnonymousOnly=yes(只允许匿名用户),则在 /etc/pure-ftpd/conf 中创建一个名为 AnonymousOnly 的文件,里面只有一行内容:yes。
在 Ubuntu 中,我们只关注最后一种配置方式。
配置选项
通过 pure-ftpd 的手册页我们可以得到详细的命令行参数列表及其解释:
代码如下:man pure-ftpd
通过 pure-ftpd-wrapper 的手册页我们可以得到可用的配置文件选项列表:
代码如下:man pure-ftpd-wrapper
下面是前面我们介绍的第二种方式的配置文件,我们这儿可以将其作为第三种方式来理解。比如要限制所有用户在其主目录中,在 /etc/pure-ftpd/conf 中创建一个名为 ChrootEveryone 的文件,里面加入一行内容:yes 即可。
# 限制所有用户在其主目录中
ChrootEveryone yes
# 如果前一个指令被设置为了 “no”,下面组的成员(GID)就不受主目录的限制了。而其他的用户还是
# 会被限制在自己的主目录里。如果你不想把任何用户限制在自己的主目录里,只要注释掉 ChrootEveryone
# 和 TrustedGID 就可以了。
# TrustedGID 100
# 兼容ie等比较非正规化的ftp客户端
BrokenClientsCompatibility no
# 服务器总共允许同时连接的最大用户数
MaxClientsNumber 50
# 做为守护(doemon)进程运行(Fork in background)
Daemonize yes
# 同一IP允许同时连接的用户数(Maximum number of sim clients with the same IP address)
MaxClientsPerIP 8
# 如果你要记录所有的客户命令,设置这个指令为 “yes”。
# This directive can be duplicated to also log server responses.
VerboseLog no
# 即使客户端没有发送 ‘-a‘ 选项也列出隐藏文件( dot-files )。
DisplayDotFiles yes
# 不允许认证用户 - 仅作为一个公共的匿名FTP。
AnonymousOnly no
# 不允许匿名连接,仅允许认证用户使用。
NoAnonymous no
# Syslog facility (auth, authpriv, daemon, ftp, security, user, local*)
# 缺省的功能( facility )是 “ftp”。 “none” 将禁止日志。
SyslogFacility ftp
# 定制用户登陆后的显示信息(Display fortune cookies)
# FortunesFile /usr/share/fortune/zippy
# 在日志文件中不解析主机名。日志没那么详细的话,就使用更少的带宽。在一个访问量很大
# 的站点中,设置这个指令为 “yes” ,如果你没有一个能工作的DNS的话。
DontResolve yes
# 客户端允许的最大的空闲时间(分钟,缺省15分钟)
MaxIdleTime 15
# LDAP 配置文件 (参考 README.LDAP)
# LDAPConfigFile /etc/pureftpd-ldap.conf
# MySQL 配置文件 (参考 README.MySQL)
# MySQLConfigFile /etc/pureftpd-mysql.conf
# Postgres 配置文件 (参考 README.PGSQL)
# PGSQLConfigFile /etc/pureftpd-pgsql.conf
# PureDB 用户数据库 (参考 README.Virtual-Users)
# PureDB /etc/pureftpd.pdb
# pure-authd 的socket 路径(参考 README.Authentication-Modules)
# ExtAuth /var/run/ftpd.sock
# 如果你要启用 PAM 认证方式, 去掉下面行的注释。
# PAMAuthentication yes
# 如果你要启用 简单的 Unix系统 认证方式(/etc/passwd), 去掉下面行的注释。
# UnixAuthentication yes
# 请注意,LDAPConfigFile, MySQLConfigFile, PAMAuthentication 和
# UnixAuthentication 这些指令只能被使用一次,不过,他们能被混合在一起用。例如:如果你使用了
# MySQLConfigFile 和 UnixAuthentication,那么 SQL 服务器将被访问。如果因为用户名未找
# 到而使 SQL 认证失败的话,就会在/etc/passwd 和 /etc/shadow 中尝试另外一种认证,如果因
# 为密码错误而使 SQL 认证失败的话,认证就会在此结束了。认证方式由它们被给出来的顺序而被链
# 接了起来。
# ‘ls‘ 命令的递归限制。第一个参数给出文件显示的最大数目。第二个参数给出最大的子目录深度。
LimitRecursion 8
# 允许匿名用户创建新目录?
AnonymousCanCreateDirs no
# 如果系统被 loaded 超过下面的值,匿名用户会被禁止下载,
MaxLoad 4
# 被动连接响应的端口范围。- for firewalling.
# PassivePortRange 30000 50000
# 强制一个IP地址使用被动响应( PASV/EPSV/SPSV replies)。 - for NAT.
# Symbolic host names are also accepted for gateways with dynamic IP
# addresses.
# ForcePassiveIP 192.168.0.1
# 匿名用户的上传/下载的比率。
# AnonymousRatio 1 10
# 所有用户的上传/下载的比率。
# This directive superscedes the previous one.
# UserRatio 1 10
# 不接受所有者为 “ftp” 的文件的下载。例如:那些匿名用户上传后未被本地管理员验证的文件。
AntiWarez yes
第二个文件
# 客户端登录的时候的默认编码,开启这个选项的话,windows登录时就不会显示不了中文的了
ClientCharset gbk
# 服务监听的IP 地址和端口。(缺省是所有IP地址和21端口)
# Bind 127.0.0.1,21
# 匿名用户的最大带宽(KB/s)。
# AnonymousBandwidth 8
# 所有用户的最大带宽(KB/s),包括匿名用户。
# Use AnonymousBandwidth *or* UserBandwidth, both makes no sense.
# UserBandwidth 8
# 新建目录及文件的属性掩码值。<文件掩码>;:<目录掩码>; .目录掩码>文件掩码>
# 177:077 if you feel paranoid.
Umask 133:022
# 认证用户允许登陆的最小组ID(UID) 。
MinUID 100
# 仅允许认证用户进行 FXP 传输。
AllowUserFXP yes
# 对匿名用户和非匿名用户允许进行匿名 FXP 传输。
AllowAnonymousFXP no
# 用户不能删除和写点文件(文件名以 ‘.‘ 开头的文件),即使用户是文件的所有者也不行。
# 如果 TrustedGID 指令是 enabled ,文件所属组用户能够访问点文件(dot-files)。
ProhibitDotFilesWrite no
# 禁止读点文件(文件名以 ‘.‘ 开头的文件) (.history, .ssh...)
ProhibitDotFilesRead no
# 永不覆盖文件。当上传的文件,其文件名已经存在时,自动重命名,如: file.1, file.2, file.3, ...
AutoRename no
# 不接受匿名用户上传新文件( no = 允许上传)
AnonymousCantUpload no
# 仅允许来自以下IP地址的非匿名用户连接。你可以使用这个指令来打开几个公网IP来提供匿名FTP,
# 而保留一个私有的防火墙保护的IP来进行远程管理。你还可以只允许一内网地址进行认证,而在另外
# 一个IP上提供纯匿名的FTP服务。
#TrustedIP 10.1.1.1
# 如果你要为日志每一行添加 PID 去掉下面行的注释。
# LogPID yes
# 使用类似于Apache的格式创建一个额外的日志文件,如:
# fw.c9x.org - jedi [13/Dec/1975] “GET /ftp/linux.tar.bz2” 200 21809338
# 这个日志文件能被 www 流量分析器处理。
# AltLog clf:/var/log/pureftpd.log
# 使用优化过的格式为统计报告创建一个额外的日志文件。
# AltLog stats:/var/log/pureftpd.log
# 使用标准的W3C格式创建一个额外的日志文件。(与大部分的商业日志分析器兼容)
# AltLog w3c:/var/log/pureftpd.log
# 不接受 CHMOD 命令。用户不能更改他们文件的属性。
# NoChmod yes
# 允许用户恢复和上传文件,却不允许删除他们。
# KeepAllFiles yes
# 用户主目录不存在的话,自动创建。
# CreateHomeDir yes
# 启用虚拟的磁盘限额。第一个数字是最大的文件数。
# 第二个数字是最大的总的文件大小(单位:Mb)。
# 所以,1000:10 就限制每一个用户只能使用 1000 个文件,共10Mb。
# Quota 1000:10
# 如果你的 pure-ftpd 编译时加入了独立服务器( standalone )支持,你能够改变 pid 文件
# 的位置。缺省位置是 /var/run/pure-ftpd.pid 。
# PIDFile /var/run/pure-ftpd.pid
# 如果你的 pure-ftpd 编译时加入了 pure-uploadscript. 支持,这个指令将会使 pure-ftpd
# 发送关于新上传的情况信息到 /var/run/pure-ftpd.upload.pipe,这样 pure-uploadscript
# 就能读然后调用一个脚本去处理新的上传。
# CallUploadScript. yes
# 这个选项对允许匿名上传的服务器是有用的。当 /var/ftp 在 /var 里时,需要保留一定磁盘空间
# 来保护日志文件。当所在磁盘分区使用超过百分之 X 时,将不在接受新的上传。
MaxDiskUsage 99
# 如果你不想要你的用户重命名文件的话,就设置为 ‘yes‘ 。
# NoRename yes
# 是 ‘customer proof‘ : 工作区(workaround)反对普通的客户错误,类似于:‘chmod 0 public_html‘ 的错误。
# 那是一个有效的命令,不过,将导致无知的客户所定他们自己的文件,将使你的技术支持忙于愚蠢的的问题中。
# 如果你确信你所有的用户都有基本的Unix知识的话,这个特性将没什么用了。不过,如果你是一个主机提供商
# 的话,启用它。
CustomerProof yes
# 每一个用户的并发限制。只有在添加了 --with-peruserlimits 编译选项进行编译后,这个指令才起
# 作用。(大部分的二进制的发布版本就是例子)
# 格式是 : <每一个用户最大允许的进程>;:<最大的匿名用户进程>;最大的匿名用户进程>每一个用户最大允许的进程>
# 例如: 3:20 意思是同一个认证用户最大可以有3个同时活动的进程。而且同时最多只能有20个匿名用户进程。
# PerUserLimits 3:20
篇7:ubuntu安装nginx配置反向代理服务器
安装nginx:
sudo apt-get install nginx
启动nginx;
sudo service nginx start
如果报了这样的错误:
[alert] could not open error log file: open “/var/log/nginx/error.log” failed (13: Permission denied)/01/16 15:55:46[warn] 1973#0: the “user” directive makes sense only if the master process runs with super-user privileges, ignored in /etc/nginx/nginx.conf:1nginx: the configuration file /etc/nginx/nginx.conf syntax is ok2015/01/16 15:55:46 [emerg] 1973#0: open() “/var/run/nginx.pid” failed (13: Permission denied)nginx: configuration file /etc/nginx/nginx.conf test failed
出现上面的情况要么就是文件没创建,要么就是没权限,
ubuntu安装nginx配置反向代理服务器
,
所以:
先用touch和mkdir创建文件和文件夹。然后在用sudo chmod a+rwx -R 文件路径赋予所有用户所有权限(777)。
最后在nginx.conf文件中的http下加入
upstream myproject(内网映射的地址别名){server 192.168.0.27:80(ip:port);}server{listen 8088;server_name localhost;location / {root html;index index.html index.htm;proxy_pass myproject(内网映射地址别名);}}
好了,现在使用service nginx start命令启动服务器。然后输入localhost:8088看看是不是成功了。
篇8:Ubuntu系统如何安装和配置Git使用Git
Git是免费的分布式版本控制系统,能够帮忙Linux内核开发,在Ubuntu系统中要如何安装和配置Git以及对Git的使用,下面为大家详细介绍下
一、Git安装:
1、二进制方式安装:
$ sudo apt-get install git-core
安装完成后,在终端中输入 git 就可以看到相关的命令了。如果只是需要使用git来管理本地的代码,那么现在 就 可 以使用了。如果需要和github上的项目结合,还需要做其他的一些操作。
2、github帐号的申请
如果只是需要将github上感兴趣的代码拷贝到本地,自己进行修改使用,而不打算共享发布的话,其实不申请 帐号也没有关系,只需要 git clone 代码到本地就可以了。 $ git clone git:// IP work(工作目录名)。
毕竟使用 github 就是为了开源的目的,首先去 github.com 上注册一个帐号。
3、在本地建立一个文件夹,然后做一些全局变量的初始化
$ git config --global user.name = “用户名或者用户ID”
$ git config --global user.email = 邮箱
这两个选项会在以后的使用过程中自动添加到代码中。
4、创建验证用的公钥
这个是比较复杂和困扰大多数人的地方,因为 git 是通过 ssh 的方式访问资源库的,所以需要在本地创建验证 用的文件,
使用命令:$ ssh-keygen -C ‘you email address@gmail.com’ -t rsa会在用户目录 ~/.ssh/ 下建立相应 的密钥文件。可以使用 $ ssh -v git@github.com 命令来测试链接是否畅通。
5、上传公钥
在 github.com 的界面中 选择右上角的 Account Settings,然后选择 SSH Public Keys ,选择新加。
Title 可以随便命名,Key 的内容拷贝自 ~/.ssh/id_rsa.pub 中的内容,完成后,可以再使用 ssh -v git@github.com 进行测试。看到下面的信息表示验证成功。
二、Git配置与使用
利用 github 来管理自己的项目,可以按照下面的步骤进行
1、建立仓库
在需要建立项目的文件夹中,使用 git init 进行仓库的建立。完成后,可以看到文件家中多了一个 .git 隐藏目 录。
2、添加文件
使用 git add 。 来进行初始文件的添加。这里 。 表示将文件夹下所有的文件都添加进去,我们也可以指定文件进 行添 加。
3、提交文件
使用 git commit -m ‘comment’ 提交,可以将编辑的内容进行提交。
4、删除或增加github远程来源
git remote add origin github.com/Git-Elite/CodeBase.git //蓝色部分为github托管的仓库地址
5、提交至github仓库
git push -u origin master
上面就是Ubuntu安装和配置Git的方法介绍了,在使用Git前,需要先建立一个github仓库,之后就能使用git管理Linux项目了。
篇9:Ubuntu下安装极点五笔输入法
刚刚安装好了 Ubuntu 12.04,但是没有五笔的日子实在不好过,WINDOWS下用习惯了极点五笔,本以为极点的作者不出Linux版的,结果在网上一搜,居然有高手想到引用极点五笔的字典实现可以同时打拼音和五笔,废话少说,下面看如何操作
刚刚安装好了 Ubuntu 12.04,但是没有五笔的日子实在不好过,WINDOWS下用习惯了极点五笔,本以为极点的作者不出Linux版的,结果在网上一搜,居然有高手想到引用极点五笔的字典实现可以同时打拼音和五笔,废话少说,下面看如何操作:
ibus下用法
在终端中执行如下操作
sudo wget www.xiit.cn/wp-content/uploads//03/vissible-ibus.tar.gz
tar -zxvf vissible-ibus.tar.gz
sudo cp vissible.db /usr/share/ibus-table/tables
sudo cp vissible.gif /usr/share/ibus-table/icons
完成后,在点任务栏中那个键盘小图标,在下拉菜单选“重新重启” 重启ibus输入法,然后再点一下键盘小图标并在下拉菜单中选“首选项”,然后在弹出的窗口中点击“输入法”选项卡,接着点“选择输入法”>“汉语”,然后点“添加” 极点五笔,OK!
篇10:ubuntu下安装Fctix输入法
一、为何使用Fctix输入法
1、类似于windows下的搜狗输入法
2、解决了google输入法下的浏览文件快捷方式的冲突
2、如何安装Fctix?
sudo apt-get install fcitx
sudo apt-get install fcitx-config-common
sudo apt-get install fcitx-config-gtk
sudo apt-get install fcitx-data - Data
sudo apt-get install fcitx-sunpinyin
系统--》系统管理--》语言支持--》键盘输入方式系统--》选择Fctix!!!!
3、Fctix中文字是方框,怎么解决?
解决方框问题:#sudo gedit ~/.fcitx/config
在配置文件中找到 “显示字体(中)=*”
将 “显示字体(中)=*” 改成 “显示字体(中)=WenQuanYi Bitmap Song”,或者修改为“显示字体(中)=AR PL ShanHeiSun Uni“,“显示字体(中)=WenQuan YiZenHei”,
ubuntu下安装Fctix输入法
,
【ubuntu下Mysql+sphinx+中文分词安装配置】相关文章:
1.linux中Ubuntu Server安装和配置VNCServer介绍linux操作系统
3.Ubuntu Server下MySql数据库备份脚本代码
4.Ubuntu安装屏幕录像工具Simple Screen Recorder的方法
8.Linux解决ubuntu one(软件中心)安装deb文件的问题






文档为doc格式