解决安装字体后,导致系统太慢的问题。

为当前最终发行版之前的所有版本提供支持
回复
kemean
帖子: 110
注册时间: 2007-03-06 22:58
送出感谢: 0
接收感谢: 1 次

解决安装字体后,导致系统太慢的问题。

#1

帖子 kemean » 2007-04-30 23:19

ubuntu 7.04 font-config有个问题,在安装新字体后,fc-cache -fv会产生failed to write cache 的bug,
之后系统就变的非常慢,打开应用程序,登录等,都慢的难受。

下面有个简单的解决方法:
1)下载我提供的touchpath
2)解压缩touchpath.tar.gz,之后make 生成touchpath
3)运行下列命令,或加入脚本中运行。
sudo ./touchpath /usr/share/fonts
sudo ./touchpath /usr/share/X11/fonts
sudo ./touchpath /usr/local/share/fonts
sudo ./touchpath /var/lib/defoma/fontconfig.d
4)更新字体缓存
sudo fc-cache -fv

此时,就不再出来failed to write cache 的问题,系统运行正常。
附件
touchpath.tar.gz
touchpath
(4.39 KiB) 下载 296 次
头像
stlxv
论坛版主
帖子: 8273
注册时间: 2006-05-03 0:39
来自: المريخ
送出感谢: 0
接收感谢: 1 次

#2

帖子 stlxv » 2007-04-30 23:48

安装字体,看我这里:viewtopic.php?t=51747

不要去搞那么复杂,否则还会再出问题
PHP是最好的语言!不服来战!
kemean
帖子: 110
注册时间: 2007-03-06 22:58
送出感谢: 0
接收感谢: 1 次

#3

帖子 kemean » 2007-05-01 1:34

嗯,一种方便有效的方法,呵呵。

不过,我的字体比较多咧,都按目录分类了,所以,动作起来相对麻烦点。没有新增目录的话,这样的确是一种有效的办法。
头像
stlxv
论坛版主
帖子: 8273
注册时间: 2006-05-03 0:39
来自: المريخ
送出感谢: 0
接收感谢: 1 次

#4

帖子 stlxv » 2007-05-04 1:25

kemean 写了:嗯,一种方便有效的方法,呵呵。

不过,我的字体比较多咧,都按目录分类了,所以,动作起来相对麻烦点。没有新增目录的话,这样的确是一种有效的办法。
建议你说明一下,什么样子的做法才会导致系统太慢,这样会比较完整,也才知道这种方法的适应范围。
PHP是最好的语言!不服来战!
头像
tiancaiabc
帖子: 98
注册时间: 2007-01-11 0:40
送出感谢: 0
接收感谢: 0

#5

帖子 tiancaiabc » 2007-07-15 10:43

怎么我到make这步就不行了呢?
lb@ubuntu:~/Desktop/touchpath$ make
cc -c -o touchpath.o touchpath.c
touchpath.c:4:19: 错误: stdio.h:No such file or directory
touchpath.c:5:20: 错误: stdlib.h:No such file or directory
touchpath.c:6:20: 错误: unistd.h:No such file or directory
touchpath.c:7:22: 错误: sys/stat.h:No such file or directory
touchpath.c:8:20: 错误: dirent.h:No such file or directory
touchpath.c:9:20: 错误: string.h:No such file or directory
touchpath.c: 在函数 ‘usage’ 中:
touchpath.c:14: 警告: 隐式声明与内建函数 ‘printf’ 不兼容
touchpath.c:15: 警告: 隐式声明与内建函数 ‘exit’ 不兼容
touchpath.c: 在函数 ‘touchpath’ 中:
touchpath.c:21: 错误: ‘DIR’ 未声明 (在此函数内第一次使用)
touchpath.c:21: 错误: (即使在一个函数内多次出现,每个未声明的标识符在其
touchpath.c:21: 错误: 所在的函数内只报告一次。)
touchpath.c:21: 错误: ‘dirp’ 未声明 (在此函数内第一次使用)
touchpath.c:21: 错误: ‘NULL’ 未声明 (在此函数内第一次使用)
touchpath.c:23: 错误: 变量 ‘st’ 有初始值设定但类型不完全
touchpath.c:23: 警告: 结构初始值设定项中有多余元素
touchpath.c:23: 警告: (在 ‘st’ 的初始化附近)
touchpath.c:23: 错误: ‘st’ 的存储大小未知
touchpath.c:29: 警告: 隐式声明与内建函数 ‘printf’ 不兼容
touchpath.c:30: 警告: 隐式声明与内建函数 ‘exit’ 不兼容
touchpath.c:33: 警告: 赋值时将整数赋给指针,未作类型转换
touchpath.c:35: 警告: 隐式声明与内建函数 ‘strcpy’ 不兼容
touchpath.c:36: 警告: 隐式声明与内建函数 ‘strlen’ 不兼容
touchpath.c:37: 警告: 隐式声明与内建函数 ‘strcat’ 不兼容
touchpath.c:39: 错误: 提领指向不完全类型的指针
touchpath.c:40: 错误: 提领指向不完全类型的指针
touchpath.c:43: 错误: 提领指向不完全类型的指针
touchpath.c:47: 警告: 隐式声明与内建函数 ‘printf’ 不兼容
touchpath.c:48: 警告: 隐式声明与内建函数 ‘exit’ 不兼容
touchpath.c:51: 错误: ‘S_IFMT’ 未声明 (在此函数内第一次使用)
touchpath.c:51: 错误: ‘S_IFDIR’ 未声明 (在此函数内第一次使用)
touchpath.c:53: 警告: 隐式声明与内建函数 ‘sprintf’ 不兼容
touchpath.c: 在函数 ‘main’ 中:
touchpath.c:69: 警告: 隐式声明与内建函数 ‘exit’ 不兼容
make: *** [touchpath.o] 错误 1
lb@ubuntu:~/Desktop/touchpath$
kemean
帖子: 110
注册时间: 2007-03-06 22:58
送出感谢: 0
接收感谢: 1 次

#6

帖子 kemean » 2007-07-18 22:57

安装build-essential....
kemean
帖子: 110
注册时间: 2007-03-06 22:58
送出感谢: 0
接收感谢: 1 次

#7

帖子 kemean » 2007-08-10 16:50

stlxv 写了:安装字体,看我这里:viewtopic.php?t=51747

不要去搞那么复杂,否则还会再出问题
我喜欢一劳永逸,font分类放好后,一个shell脚本搞定,呵~~很少用GUI装东西,全部用脚本:)
再说,出问题了想办法解决也是件乐事:)

根源:(fc-cache 处理失败)
失败的原因:
1)字体目录日期不对,此时,可 touch此目录
2)fc-cache处理了一个不存在的目录,比如ttf-opensymbol就干过这种事情,此时,做个已有字体目录的链接就OK
3)目录中没有字体,也会fail,拷个比较小的字体过去就OK
4)字体或目录权限不对,这点也要注意。

参考:
viewtopic.php?t=65723&highlight=
回复

回到 “老旧版本支持”