gentoo问题汇总
<1> ntfs-3g使用fuse文件系统
----------------------------------------------
ntfs-3g使用fuse文件系统,如果内核编译的时候没有将fuse编译成模块,挂载的时候就会报错
提示fuse module不存在
$cd /usr/src/linux
$make menuconfig
File systems --->
<M> FUSE (Filesystem in Userspace) support
重新编译
$sudo make&&make modules_install
注意最后一行输出,这是版本号
kernel-3.1.1-gentoo
$sudo cp arch/i386/boot/bzImage /boot/kernel-3.1.1-gentoo
$eselect kernel list
Available kernel symlink targets:
[1] linux-3.1.1-gentoo *
$eselect kernel set [n]
n为内核前的标号,重启即可
<2>gedit乱码
-----------------------------------
.运行 gconf-editor,把 gedit 的自动检测编码设置修改一下,加入 GB18030,GB2312 ,GBK 等几个 ( GB18030 兼容GB2312 ,GBK的,所以只添加有一个 GB18030就可以了的)在这项下 /apps/gedit-2/preferences/encodings/auto_detected 下面我的系统的encoding 默认是
utf-8的,添加了GB18030之后就可以了。但注意要放在你系统支持的locale前面才行。看下面怎么添加GB18030
locale的支持。有人说了,他是调用glib库的函数来判断编码的,好像你系统不安装这个locale的话,他是都检测的时候有点问题,所以你要把
GB18030放到最前面才行,因为我系统一开始只有UTF-8的支持,所以一开始顺序
<3>vim设置
--------------------------------------------
"模式下(命令模式下 TAB 补全
set nocompatible
"设定文件编码
set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
"显示行号
set nu
"开启语法加亮
syntax on
"配色风格
colorscheme pablo
"简洁启动模式
set shortmess=atI
"设定 GUI 选项
"set guioptions=gmrLtT m:菜单 T:工具栏
set guioptions=gmrLt
"命令行高度
set cmdheight=1
"设定行距 ( GUI 界面中生效 )
set linespace=4
"显示标尺
set ruler
"自动折行
"set nowrap
set wrap
"按完整单词折行
set nolinebreak
"set linebreak
"行宽(输入时自动插入换行符)
"set textwidth=80
set textwidth=0
"允许在 虚空间 内操作 (虚空间:不包含任何文本的空间。如换行符之后)
"set virtualedit=all
"禁止在 虚空间 内操作
set virtualedit=
"设定 Tab 键缩进的空格数
set tabstop=4
"设定编辑器将多少空格视为一个缩进
set shiftwidth=4
"将缩进转换为空格
"set expandtab
"设定自动缩进(新行与前一行缩进相同)
set autoindent
"set noautoindent
set backspace=indent,eol,start
"命令行历史纪录
set history=500
"禁用增量搜索
set incsearch
"set noincsearch
"搜索时忽略大小写
set ignorecase
"set noignorecase
"高亮显示搜索结果
set hlsearch
"设定折叠方式
"set foldmethod=manual
"以下字符将被视为单词的一部分 (ASCII):
"set iskeyword+=33-47,58-64,91-96,123-128
"pydiction 1.2 python auto complete
filetype plugin on
let g:pydiction_location = '~/.vim/tools/pydiction/complete-dict'
"defalut g:pydiction_menu_height == 15
"let g:pydiction_menu_height = 20
<4>gnome-terminal和gvim无法显示和输入中文
-----------------------------------------
这个问题困扰几天了,terminal下中文一直输入和显示不了
今天试了下这个
menu->terminal -> set character encoding -> UTF-8
尝试设置terminal
$cd ~/.gconf/apps/gnome-terminal/global
$vi %gconf-xml
1 <?xml version="1.0"?>
2 <gconf>
3 <entry name="active_encodings" mtime="1321886611" type="list" ltype="str ing">
4 <li type="string">
5 <stringvalue>UTF-8</stringvalue>
6 </li>
7 <li type="string">
8 <stringvalue>GB18030</stringvalue>
9 </li>
10 </entry>
11 </gconf>
没有效果,set character encoding 还是默认current(ascii)
想到应该是系统LANG变量没有设置
dinsy@localhost ~ $ locale
LANG=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=
果然我没有设置,默认就是ascii
gnome-ternimal默认是读取locale设置,所以乱码
$sudo vi /etc/profile
在末尾添加
export LANG="en_US.UTF-8"
当然也可以在 ~/.bashrc ~/.xinitrc 等开机启动文件中配置
此时再去用im和gvim,都没有乱码出现,看来大意没有配置系统语言还是带来了很多的麻烦。
<5>ibus图标无法正常显示
-----------------------------------------
这个问题比较容易解决
启动的时候加上-x参数
/usr/bin/ibus-daemon -d -x -r
加入到启动文件即可
<6>chromium and firefox flash plugin
-------------------------------------------
下载adobe flash player for linux解压后得到 libflashplayer.so
firefox:复制到 /usr/lib/mozilla/plugins/
chromium:复制到 /usr/lib/chromium-browser/plugins/
(没有可以自行建立相应目录)
查看下libflashplayer.so有没执行权限,没有则执行
$sudo chmod a+x libflashplayer.so
(7)U盘自动挂载 Not Authorized
----------------------------------
这时,可以修改 /usr/share/polkit-1/actions/org.freedesktop.udisks.policy 文件:
$sudo vi /usr/share/polkit-1/actions/org.freedesktop.udisks.policy
查找/filesystem-mount
<action id="org.freedesktop.udisks.filesystem-mount">
...
<allow_any>no</allow_any> # 将 no 改成 yes
...
(8).dmrc 644问题
更改权限文700就好了
(9)nautilus崩溃
这个不是gentoo装的
你把PATH里的/usr/bin放到/usr/local/bin之前
或者直接执行/usr/bin/nautilus试试
(9)配置home目录的文件夹映射
~/.config/user-dirs.dirs
~/.config/user-dirs.locale
(10)pcmanfm 替换 nautilus
备份
/usr/share/applications/nautilus-computer.desktop
/usr/share/applications/nautilus-folder-handler.desktop
然后用文本编辑器改动
把两个文件中的 Exec=
变成下面的形式
nautilus-computer.desktop:
不用修改,因为pcmanfm还不支持这个功能
nautilus-folder-handler.desktop:
代码:
Exec=pcmanfm %U
(11)less 乱码
1. export LESSCHARSET=utf-8 (推荐)
2. export LESS=-Mrf
(12)精简gnome
删除一些gnome组件后,再运行emerge --depclean,会因为依赖原因无法进行
这时候只需要修改ebuild文件,然后重建ebuild
下面以删除nautilus为例
$sudo emerge -C nautilus
$sudo vi /usr/portage/gnome-base/gnome/gnome-2.32.1-r1.ebuild
搜索 /nautilus
把该行删除,删除前最好将整个ebuild文件备份
$sudo ebuild /usr/portage/gnome-base/gnome/gnome-2.32.1-r1.ebuild digest
具体的参数可以man ebuild一下
(13)避免dns被修改
chattr +i /etc/resolv.conf 设置不可更改属性
or
在 /etc/dhcp3/dhclient.conf 中增加如下设定:prepend domain-name-servers <dns-server1>, <dns-server2>
(14)gentoo文件关联
全局文件关联设置
/usr/share/applications/mimeinfo.cache
用户文件关联
./.local/share/applications/mimeinfo.cache
MINE类型综述在这里
http://en.wikipedia.org/wiki/MIME
常用的文件MINE类型
http://en.wikipedia.org/wiki/Internet_media_type
(15)排除软件包/类别
http://www.gentoo.org/doc/zh_cn/handbook/handbook-x86.xml?part=3&chap=5
排除软件包/类别
你可以有选择地更新特定的类别/软件包并且忽略其他类别/软件包。我们通过让emerge --sync在执行rsync的时候排除个别类别/软件包来实现这个功能。
你需要在/etc/make.conf中赋予--exclude-from变量一个文件名,该文件应包含你想要排除的软件包。
代码 1.1: 在/etc/make.conf中指定包含排除软件包条目的文件
PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes"
代码 1.2: 在/etc/portage/rsync_excludes中设定排除所有游戏
games-*/*
然而要注意的是这可能导致依赖性问题,因为新的、允许安装的软件包可能依赖于那些新的、但被排除的软件包。
(16)nautilis显示桌面为home目录
打开gcon-editor
定位/apps/nautilus/preferences/desktop_is_home_dir 反选
(17)gnome锁定界面背景图片
/usr/share/pixmaps/backgrounds/gnome/background-default.jpg
(18)Operation not possible due to RF-kill
Failed to initialize driver interface
----------------------------------------------
ntfs-3g使用fuse文件系统,如果内核编译的时候没有将fuse编译成模块,挂载的时候就会报错
提示fuse module不存在
$cd /usr/src/linux
$make menuconfig
File systems --->
<M> FUSE (Filesystem in Userspace) support
重新编译
$sudo make&&make modules_install
注意最后一行输出,这是版本号
kernel-3.1.1-gentoo
$sudo cp arch/i386/boot/bzImage /boot/kernel-3.1.1-gentoo
$eselect kernel list
Available kernel symlink targets:
[1] linux-3.1.1-gentoo *
$eselect kernel set [n]
n为内核前的标号,重启即可
<2>gedit乱码
-----------------------------------
.运行 gconf-editor,把 gedit 的自动检测编码设置修改一下,加入 GB18030,GB2312 ,GBK 等几个 ( GB18030 兼容GB2312 ,GBK的,所以只添加有一个 GB18030就可以了的)在这项下 /apps/gedit-2/preferences/encodings/auto_detected 下面我的系统的encoding 默认是
utf-8的,添加了GB18030之后就可以了。但注意要放在你系统支持的locale前面才行。看下面怎么添加GB18030
locale的支持。有人说了,他是调用glib库的函数来判断编码的,好像你系统不安装这个locale的话,他是都检测的时候有点问题,所以你要把
GB18030放到最前面才行,因为我系统一开始只有UTF-8的支持,所以一开始顺序
<3>vim设置
--------------------------------------------
"模式下(命令模式下 TAB 补全
set nocompatible
"设定文件编码
set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
"显示行号
set nu
"开启语法加亮
syntax on
"配色风格
colorscheme pablo
"简洁启动模式
set shortmess=atI
"设定 GUI 选项
"set guioptions=gmrLtT m:菜单 T:工具栏
set guioptions=gmrLt
"命令行高度
set cmdheight=1
"设定行距 ( GUI 界面中生效 )
set linespace=4
"显示标尺
set ruler
"自动折行
"set nowrap
set wrap
"按完整单词折行
set nolinebreak
"set linebreak
"行宽(输入时自动插入换行符)
"set textwidth=80
set textwidth=0
"允许在 虚空间 内操作 (虚空间:不包含任何文本的空间。如换行符之后)
"set virtualedit=all
"禁止在 虚空间 内操作
set virtualedit=
"设定 Tab 键缩进的空格数
set tabstop=4
"设定编辑器将多少空格视为一个缩进
set shiftwidth=4
"将缩进转换为空格
"set expandtab
"设定自动缩进(新行与前一行缩进相同)
set autoindent
"set noautoindent
set backspace=indent,eol,start
"命令行历史纪录
set history=500
"禁用增量搜索
set incsearch
"set noincsearch
"搜索时忽略大小写
set ignorecase
"set noignorecase
"高亮显示搜索结果
set hlsearch
"设定折叠方式
"set foldmethod=manual
"以下字符将被视为单词的一部分 (ASCII):
"set iskeyword+=33-47,58-64,91-96,123-128
"pydiction 1.2 python auto complete
filetype plugin on
let g:pydiction_location = '~/.vim/tools/pydiction/complete-dict'
"defalut g:pydiction_menu_height == 15
"let g:pydiction_menu_height = 20
<4>gnome-terminal和gvim无法显示和输入中文
-----------------------------------------
这个问题困扰几天了,terminal下中文一直输入和显示不了
今天试了下这个
menu->terminal -> set character encoding -> UTF-8
尝试设置terminal
$cd ~/.gconf/apps/gnome-terminal/global
$vi %gconf-xml
1 <?xml version="1.0"?>
2 <gconf>
3 <entry name="active_encodings" mtime="1321886611" type="list" ltype="str ing">
4 <li type="string">
5 <stringvalue>UTF-8</stringvalue>
6 </li>
7 <li type="string">
8 <stringvalue>GB18030</stringvalue>
9 </li>
10 </entry>
11 </gconf>
没有效果,set character encoding 还是默认current(ascii)
想到应该是系统LANG变量没有设置
dinsy@localhost ~ $ locale
LANG=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=
果然我没有设置,默认就是ascii
gnome-ternimal默认是读取locale设置,所以乱码
$sudo vi /etc/profile
在末尾添加
export LANG="en_US.UTF-8"
当然也可以在 ~/.bashrc ~/.xinitrc 等开机启动文件中配置
此时再去用im和gvim,都没有乱码出现,看来大意没有配置系统语言还是带来了很多的麻烦。
<5>ibus图标无法正常显示
-----------------------------------------
这个问题比较容易解决
启动的时候加上-x参数
/usr/bin/ibus-daemon -d -x -r
加入到启动文件即可
<6>chromium and firefox flash plugin
-------------------------------------------
下载adobe flash player for linux解压后得到 libflashplayer.so
firefox:复制到 /usr/lib/mozilla/plugins/
chromium:复制到 /usr/lib/chromium-browser/plugins/
(没有可以自行建立相应目录)
查看下libflashplayer.so有没执行权限,没有则执行
$sudo chmod a+x libflashplayer.so
(7)U盘自动挂载 Not Authorized
----------------------------------
这时,可以修改 /usr/share/polkit-1/actions/org.freedesktop.udisks.policy 文件:
$sudo vi /usr/share/polkit-1/actions/org.freedesktop.udisks.policy
查找/filesystem-mount
<action id="org.freedesktop.udisks.filesystem-mount">
...
<allow_any>no</allow_any> # 将 no 改成 yes
...
(8).dmrc 644问题
更改权限文700就好了
(9)nautilus崩溃
这个不是gentoo装的
你把PATH里的/usr/bin放到/usr/local/bin之前
或者直接执行/usr/bin/nautilus试试
(9)配置home目录的文件夹映射
~/.config/user-dirs.dirs
~/.config/user-dirs.locale
(10)pcmanfm 替换 nautilus
备份
/usr/share/applications/nautilus-computer.desktop
/usr/share/applications/nautilus-folder-handler.desktop
然后用文本编辑器改动
把两个文件中的 Exec=
变成下面的形式
nautilus-computer.desktop:
不用修改,因为pcmanfm还不支持这个功能
nautilus-folder-handler.desktop:
代码:
Exec=pcmanfm %U
(11)less 乱码
1. export LESSCHARSET=utf-8 (推荐)
2. export LESS=-Mrf
(12)精简gnome
删除一些gnome组件后,再运行emerge --depclean,会因为依赖原因无法进行
这时候只需要修改ebuild文件,然后重建ebuild
下面以删除nautilus为例
$sudo emerge -C nautilus
$sudo vi /usr/portage/gnome-base/gnome/gnome-2.32.1-r1.ebuild
搜索 /nautilus
把该行删除,删除前最好将整个ebuild文件备份
$sudo ebuild /usr/portage/gnome-base/gnome/gnome-2.32.1-r1.ebuild digest
具体的参数可以man ebuild一下
(13)避免dns被修改
chattr +i /etc/resolv.conf 设置不可更改属性
or
在 /etc/dhcp3/dhclient.conf 中增加如下设定:prepend domain-name-servers <dns-server1>, <dns-server2>
(14)gentoo文件关联
全局文件关联设置
/usr/share/applications/mimeinfo.cache
用户文件关联
./.local/share/applications/mimeinfo.cache
MINE类型综述在这里
http://en.wikipedia.org/wiki/MIME
常用的文件MINE类型
http://en.wikipedia.org/wiki/Internet_media_type
(15)排除软件包/类别
http://www.gentoo.org/doc/zh_cn/handbook/handbook-x86.xml?part=3&chap=5
排除软件包/类别
你可以有选择地更新特定的类别/软件包并且忽略其他类别/软件包。我们通过让emerge --sync在执行rsync的时候排除个别类别/软件包来实现这个功能。
你需要在/etc/make.conf中赋予--exclude-from变量一个文件名,该文件应包含你想要排除的软件包。
代码 1.1: 在/etc/make.conf中指定包含排除软件包条目的文件
PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes"
代码 1.2: 在/etc/portage/rsync_excludes中设定排除所有游戏
games-*/*
然而要注意的是这可能导致依赖性问题,因为新的、允许安装的软件包可能依赖于那些新的、但被排除的软件包。
(16)nautilis显示桌面为home目录
打开gcon-editor
定位/apps/nautilus/preferences/desktop_is_home_dir 反选
(17)gnome锁定界面背景图片
/usr/share/pixmaps/backgrounds/gnome/background-default.jpg
(18)Operation not possible due to RF-kill
Failed to initialize driver interface
还没人转发这篇日记