DICTD:构建自己的字典服务器
Dictd是字典网络协议(Dictonary Network Protocol)的守护进程
安装并配置DICT服务
安装DICTD
首先我们在服务器上安装DICT服务,在centos7上有两个相关包: dictd
和 dictd-server
, 其中
dictd
包含了DICT服务和客户端,而 dictd-server
只包含了DICT服务端。
sudo yum install dictd-server -y
Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile docker-ce-stable | 3.5 kB 00:00 epel | 4.7 kB 00:00 extras | 3.4 kB 00:00 os | 3.6 kB 00:00 updates | 3.4 kB 00:00 (2/5): epel/7/x86_64/updat 0% [ ] 0.0 B/s | 0 B --:-- ETA (1/5): extras/7/x86_64/primary_db | 180 kB 00:00 (3/5): epel/7/x86_64/updat 6% [= ] 0.0 B/s | 664 kB --:-- ETA (2/5): epel/7/x86_64/updateinfo | 962 kB 00:01 (4/5): epel/7/x86_64/prima 25% [==== ] 2.8 MB/s | 2.6 MB 00:02 ETA (3/5): updates/7/x86_64/primary_db | 2.4 MB 00:01 (4/5): docker-ce-stable/x86_64/primary_db | 25 kB 00:01 (5/5): epel/7/x86_64/prima 59% [========= ] 3.3 MB/s | 6.0 MB 00:01 ETA (5/5): epel/7/x86_64/prima 88% [============== ] 3.7 MB/s | 9.0 MB 00:00 ETA (5/5): epel/7/x86_64/primary_db | 6.6 MB 00:02 Resolving Dependencies --> Running transaction check ---> Package dictd-server.x86_64 0:1.12.1-20.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: dictd-server x86_64 1.12.1-20.el7 epel 242 k Transaction Summary ================================================================================ Install 1 Package Total download size: 242 k Installed size: 826 k Downloading packages: dictd-server-1.12.1-20.el7 0% [ ] 0.0 B/s | 0 B --:-- ETA dictd-server-1.12.1-20.el7.x86_64.rpm | 242 kB 00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : dictd-server-1.12.1-20.el7.x [ ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [## ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [### ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [##### ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [###### ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [######## ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [########### ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [############# ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [############## ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [################ ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [################### ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [#################### ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [##################### ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [###################### ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [######################## ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [######################### ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [########################## ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [########################### ] 1/1 Installing : dictd-server-1.12.1-20.el7.x [############################ ] 1/1 Installing : dictd-server-1.12.1-20.el7.x86_64 1/1 Verifying : dictd-server-1.12.1-20.el7.x86_64 1/1 Installed: dictd-server.x86_64 0:1.12.1-20.el7 Complete!
然后从 http://www.dict.org/bin/Dict?Form=Dict1&Query=00-database-info&Strategy=*&Database=* 中下载字典
配置DICTD
dictd-server的配置文件位于 /etc/dictd.conf
中。
详细的配置可以看 man dictd
的 CONFIGURATION FILE
一节。
修改好配置后可以通过给 dictd
发送 SIGHUP
信号来重新读取配置信息
kill -s SIGHUP $(pidof dictd)
启动DICTD服务
sudo systemctl enable dictd.service sudo systemctl start dictd.service
安装并配置DICT客户端
安装dict客户端
sudo pacman -S dictd --noconfirm
配置dict客户端
dict默认从 ~/.dcitrc
读取本用户的配置信息,若该文件不存在则从 /etc/dict/dict.conf
读取全局配置。
默认的 /etc/dict/dict.conf
配置了两个dict服务地址: localhost
和 dict.org
, 我们把它改成自己服务器的地址.
创建文件 ~/.dictrc
,填入下面内容
server tencent_cloud { port 2628 }
使用dict命令查询字典
最简单的方法就是直接运行 dict 单词
,它会列出所有字典中的查询内容
dict man
但是这样一来显示的内容会很多,我们还可以用 -d 字典名
指定从某个字典中查询内容:
dict -d gcide man
只有服务器上支持那些字典可以通过 -D
选项来查询
dict -D
图形化的dict客户端
sudo yum install gnome-dictionary -y