标签 ubuntu 下的文章

Ubuntu 13.04 安装后要做的几件事

系统安装已经变得很简单,但是安装完后离在其上开始进行开发却还很远;因为有很多事情还没有做,比如驱动、开发工具设置、系统设置等等,然而正是这些事情让进度卡壳。这次安装 Ubuntu 13.04其实是继续之前,之前安装失败了,重装也没有搞好。现在有点时间了,终于在周末搞的差不多了,先记录先来。

一、ATI驱动安装

在 Ubuntu 12.04 之前,一直使用这篇文章的方法安装即可,但是从 Ubuntu 12.10 开始,由于xorg的版本更新,而 ATI 驱动跟进太慢,AMD 最终放弃对 ATI Mobility Radeon HD 2xxx-4xxx系列显卡的支持,于是我就悲催鸟!

我的显卡是 ATI Mobility Radeon HD 4650,按照以前的方法安装失败,显卡不能驱动,风扇呼呼的扇,但温度还是很高。可通过一下命令查看显卡类型:

lspci -vvnn | grep VGA

运行命令后我的显示内容:

ping- SERR- FastB2B- DisINTx-
02:00.0 VGA compatible controller [0300]: Advanced Micro Devices [AMD] nee ATI RV730/M96 [Mobility Radeon HD 4650/5165] [1002:9480] (prog-if 00 [VGA controller])

幸亏有老外开发者专门做了 PPA 源,可以装打好补丁的 fglrx ,运行以下命令:

sudo add-apt-repository ppa:makson96/fglrx
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install fglrx-legacy

二、安装 Eclipse 及插件

安装 Eclipse 其实不能说叫安装,应该叫下载解压,从 www.eclipse.org 下载后解压到相应目录就可以运行了,当然需要JDK的支持,可以直接在软件中心安装 OpenJDK 。但是如果使用 Unity 环境就需要修复全局菜单bug,以及配置下 Unity 上的快捷方式。

1. 全局菜单配置

1.1 备份要修改的文件

sudo cp /usr/lib/gtk-2.0/2.10.0/menuproxies/libappmenu.so /usr/lib/gtk-2.0/2.10.0/menuproxies/libappmenu.so.bak

Ubuntu 13.04 中目录变更为以下:

# 64位操作系统
/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/menuproxies/libappmenu.so
# 32位操作系统
/usr/lib/i386-linux-gnu/gtk-2.0/2.10.0/menuproxies/libappmenu.so

1.2 用vim打开文件并修改

sudo vim /usr/lib/gtk-2.0/2.10.0/menuproxies/libappmenu.so
# 搜索Eclipse并修改为Xclipse
/Eclipse
rX
# 保存并退出
ZZ

- 阅读剩余部分 -

解决Ubuntu更新源Hash Sum mismatch错误

有时候在更新Ubuntu时会发生如下错误:

Fetched 9,718 kB in 36s (268 kB/s)                                             
W: Failed to fetch bzip2:/var/lib/apt/lists/partial/mirrors.163.com_ubuntu_dists_precise_restricted_source_Sources  Hash Sum mismatch

W: Failed to fetch gzip:/var/lib/apt/lists/partial/mirrors.163.com_ubuntu_dists_precise-updates_restricted_source_Sources  Hash Sum mismatch

E: Some index files failed to download. They have been ignored, or old ones used instead.

这是由于一些文件被墙的原因导致更新源服务器中的文件不完整,此时可以用Goagent代理去下载:

执行命令:

sudo apt-get -o Acquire::http::proxy="http://127.0.0.1:8087/" update

Hash Sum mismatch Error.png

Ubuntu 12.04 ATI卡驱动安装

1.安装Ubuntu提供的 fglrx/Catalyst(催化剂)

在Ubuntu 12.04中将会安装催化剂Catalyst 8.960版本,这可能不是最新的版本,但是这样做更安全和稳定,它相当于AMD Catalyst 12-4。

2.手动安装AMD催化剂(推荐)

注意:在32位Ubuntu12.04上手动安装AMD提供的催化剂12-4版本将会需要一个补丁,你可以在http://ubuntuforums.org/showthread.php?t=1969827找到它。

2.1 开始之前

安装依赖的包

sudo apt-get install build-essential cdbs dh-make dkms execstack dh-modaliases fakeroot

如果时64位的系统,请执行以下命令

sudo apt-get install ia32-libs-multiarch:i386 lib32gcc1 libc6-i386
cd /usr; sudo ln -svT lib /usr/lib64

这将会安装32位的编译器,并在库引用间建立软链接

2.2 下载催化剂12-4

cd ~/; mkdir catalyst12.4; cd catalyst12.4/
wget http://www2.ati.com/drivers/linux/amd-driver-installer-12-4-x86.x86_64.run
chmod +x amd-driver-installer-12-4-x86.x86_64.run

2.3 创建.deb文件

sh ./amd-driver-installer-12-4-x86.x86_64.run --buildpkg Ubuntu/precise

创建时间可能比较慢且终端没有输出,请耐心等待...

2.4 安装.deb文件

sudo dpkg -i fglrx*.deb

2.5 配置/etc/X11/xorg.conf文件

即使安装了驱动系统仍然无法识别你的显卡,还需要配置配置文件,系统将依靠配置文件来驱动显卡。 执行下面的命令初始化amd的配置文件

sudo amdconfig --initial -f

打开/etc/X11/xorg.conf文件,找到以下内容

Section "Device"
Identifier "ATI radeon 6870"
Driver "fglrx"
EndSection

你的文件内容可能与以上内容不同,你需要知道自己显卡的型号将Identifier引号内的名称修改为你显卡的名称,保存。 如果你的GPU是双核的,请执行以下命令;但是如果你是双显卡就不需要执行了

sudo amdconfig --initial -f --adapter=all

如果你时多屏的,请执行下面的命令

sudo amdconfig --initial -f
sudo amdconfig --set-pcs-str="DDX,EnableRandR12,FALSE"

2.6 强制使用配置文件的设置

sudo amdconfig --input=/etc/X11/xorg.conf --tls=1

2.7 测试一下刚才的配置是否成功

fglrxinfo

你应该会看到以下类似内容

display: :0 screen: 0
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: ATI Mobility Radeon HD 4650
OpenGL version string: 3.3.11631 Compatibility Profile Context

再检测下显卡的帧率

fgl_glxgears

fg1-300x157.png

2.8 启用显卡的硬解

显卡驱动了,GPU当然不能浪费,看高清硬接才是王道

这里我使用的是xvba-va驱动

sudo apt-get install xvba-va-driver libva-glx1 libva-x11-1 vainfo

重启电脑,执行

vainfo

你将会看到以下内容

libva: VA-API version 0.32.0
Xlib: extension "XFree86-DRI" missing on display ":0".
libva: va_getDriverName() returns 0
libva: Trying to open /usr/lib/x86_64-linux-gnu/dri/fglrx_drv_video.so
libva: va_openDriver() returns 0
vainfo: VA-API version: 0.32 (libva 1.0.15)
vainfo: Driver version: Splitted-Desktop Systems XvBA backend for VA-API - 0.7.8
vainfo: Supported profile and entrypoints
VAProfileH264High : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD

更多内容请移步这里

Ubuntu 12.04 字体配置

如果安装Ubuntu的英文版,中文字体在其下就会显示的极其丑陋;当然,如果你安装的是中文版,对默认的字体不满意也可以重新配置一下。

1. 查看系统设置的字体存放目录

根据/etc/fonts/fonts.conf,默认的字体文件存放在如下几个位置:

<dir>/usr/share/fonts</dir>
<dir>/usr/share/X11/fonts</dir>
<dir>/usr/local/share/fonts</dir>
<dir>~/.fonts</dir>

前三个字体存放位置需要root权限,而最后一个很自由,随便你怎么弄都不会有问题。如果在~/下没有.fonts目录,手动创建一个即可。

2. 安装字体

其实所谓的安装字体很简单,就是拷贝到上述~/.fonts目录啦。这里我推荐直接把M$系统的fonts文件夹下的字体都拷贝过来,这样,在浏览网页,写文档时,说不定什么时候就用到了;还有一种字体很值得安装:dejavu字体,Google找下下载吧。

拷贝完之后,还需要刷新下字体缓存,系统才会知道你又安装了那些字体:

sudo fc-cache -f -v

3. 字体配置

以前配置字体,我都是直接修改或拷贝下别人的.fonts.conf文件,但是这种方法有时候不起作用,或者说这种方法只对你自己目录的字体起作用,而有些软件(其实是大部分软件)都不是在你的权限下安装的,而是在root权限下安装的,或者软件使用root权限在系统下先创建一个用户再使用此用户安装,这些情景下,只用.fonts.conf文件就不行。这是我的理解吧。

因此,这里推荐直接配置全局的字体:

ubuntu的全局字体配置在/etc/fonts/目录下:

xiaoxie@xiaoxie-laptop:~$ cd /etc/fonts
xiaoxie@xiaoxie-laptop:/etc/fonts$ ls -li
总用量 24
1049890 drwxr-xr-x 2 root root 4096 Jan 29 21:36 conf.avail
1049891 drwxr-xr-x 2 root root 4096 Jan 29 21:37 conf.d
1049892 -rw-r--r-- 1 root root 5287 Aug 22 13:43 fonts.conf
1049893 -rw-r--r-- 1 root root 6961 Aug 22 13:43 fonts.dtd

可以看到,/etc/fonts/下一共有两个文件和两个文件夹(权限那列d表示directory),这里解释下:
conf.avail:存放了许许多多的字体配置文件,可在conf.d/readme中看到相关解释
conf.d:存放的全都是对conf.avail中文件的软链接,这种方式在linux系统下很常见,比如apache的模块配置文件
fonts.conf:描述字体文件存放目录位置
fonts.dtd:fonts.conf是xml格式的,此文件就是此xml的规则约束文件

由于是设置中文字体,所以系统应该使用的是69-language-selector-zh-cn.conf这个文件,如果没有则在conf.avail中创建此文件:

xiaoxie@xiaoxie-laptop:/etc/fonts/conf.avail$ sudo touch 69-language-selector-zh-cn.conf

对与字体设置,我们只需要对三种字体表现形式进行设置即可,分别是:Sans Serif、Serif和等宽字体。以下是我在69-language-selector-zh-cn.conf文件中的设置:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>

    <match target="pattern">
        <test qual="any" name="family">
            <string>serif</string>
        </test>
        <edit name="family" mode="prepend" binding="strong">
            <string>WenQuanYi Micro Hei</string>
            <string>DejaVu Serif</string>
            <string>Bitstream Vera Serif</string>
            <string>HYSong</string>
            <string>AR PL UMing CN</string>
            <string>AR PL UMing HK</string>
            <string>AR PL ShanHeiSun Uni</string>
            <string>AR PL New Sung</string>
            <string>WenQuanYi Bitmap Song</string>
            <string>AR PL UKai CN</string>
            <string>AR PL ZenKai Uni</string>
        </edit>
    </match> 
    <match target="pattern">
        <test qual="any" name="family">
            <string>sans-serif</string>
        </test>
        <edit name="family" mode="prepend" binding="strong">
            <string>WenQuanYi Micro Hei</string>
            <string>DejaVu Sans</string>
            <string>Bitstream Vera Sans</string>
            <string>WenQuanYi Zen Hei</string>
            <string>Droid Sans Fallback</string>
            <string>HYSong</string>
            <string>AR PL UMing CN</string>
            <string>AR PL UMing HK</string>
            <string>AR PL ShanHeiSun Uni</string>
            <string>AR PL New Sung</string>
            <string>AR PL UKai CN</string>
            <string>AR PL ZenKai Uni</string>
        </edit>
    </match> 
    <match target="pattern">
        <test qual="any" name="family">
            <string>monospace</string>
        </test>
        <edit name="family" mode="prepend" binding="strong">
            <string>WenQuanYi Micro Hei Mono</string>
            <string>DejaVu Sans Mono</string>
            <string>Bitstream Vera Sans Mono</string>
            <string>WenQuanYi Zen Hei Mono</string>
            <string>Droid Sans Fallback</string>
            <string>HYSong</string>
            <string>AR PL UMing CN</string>
            <string>AR PL UMing HK</string>
            <string>AR PL ShanHeiSun Uni</string>
            <string>AR PL New Sung</string>
            <string>AR PL UKai CN</string>
            <string>AR PL ZenKai Uni</string>
        </edit>
    </match> 

</fontconfig>

PS:可以根据自己的爱好修改这三种字体。

最后,需要在conf.d中建立软链接:

sudo ln -s ../conf.avail/69-language-selector-zh-cn.conf

4. 查看字体

上述过程完成后,注销系统重新登入,检查下当前字体吧。下面是我设置后的效果,大爱微米黑啊!

Ubuntu fonts

关于 ubuntu 和 win7 uuid

今天重装win7之后,grub菜单没了,这是意料之中的事,不过用livecd把菜单弄回来后,进入选择菜单后出现开机画面后就停在那了,不能进ubuntu,然后我又试了下win7也进不去了,根据提示信息是 说 can't find dev 了,找不到设备了,我想了一下,重装win7之后都是什么发生了变化,无非就是硬盘分区了,而且也就只是重装win7的那个分区,影响到别的分区的可能性不大,于是我就到网上找ubuntu的硬盘分区管理方法,才知道uuid的事。

我在ubuntu上为了方便把所有的分区设置成了自动挂载,包括重装系统的这个分区, 用livecd进了系统,用命令

sudo ls -l /dev/disk/by-uuid

查看现在实际的各个分区的uuid 然后在打开/etc/fstab文件看里面的内容是否对应,果然win7所在的uuid不一样了,把它改回来后,然后在把grub.cfg也改了一下,重启之后就全好了,其实如果不设置自动挂载的话,这事就不会发生了,不过话又说回来了,因为一个分区无法自动挂载就进不去系统,ubuntu还是很脆弱的,还有待改进,呵。