win7/archlinux双系统安装手记(二)

接上一篇,win7/archlinux双系统安装手记(一) ,继续。
先放几张折腾后的图:

折腾容易,要把折腾的过程整理一下可就麻烦了,所以这里可能会有点乱。将就着看吧。JUST LOG IT 。 :mrgreen:
现在还是文字界面的系统,得加上图形,还是用gnome吧。
https://wiki.archlinux.org/index.php/GNOME
在安装GNOME之前,请务必确认pacman已升级到最新版本,要升级pacman,执行

1
pacman -Syu

接着

1
pacman -Syy

安装sudo :

1
2
3
4
pacman -S sudo
#将当前用户加入允许使用sudo的列表,注意一定要使用visudo命令编辑。
cd /etc
visudo -f sudoers

在user privilege specification下面增加:

1
admin ALL=(root) ALL

安装Xorg :

1
pacman -S xorg

安装gnome:

1
2
pacman -S gnome
pacman -S gnome-extra

安装GDM (GNOME Display Manager, GNMOE 显示管理器)

1
pacman -S gdm

设置启动默认级别为5 (X桌面):
vi /etc/inittab
把默认的

1
id:3:initdefault:

注释掉,

1
id:5:initdefault:

前面的注释去掉。
再到下面把
默认的登录管理器xdm注释掉:

1
#x:5:respawn:/usr/bin/xdm -nodaemon

1
x:5:respawn:/opt/gnome/sbin/gdm -nodaemon

前面的注释去掉.

安装acpi ,dbus(dbus是必须D) :

1
sudo pacman -S acpi dbus

让dbus随系统启动,把它加入DAEMONS即可:
DAEMONS=(@dbus …)

这玩意儿也装上吧:

1
pacman -S avahi nss-mdns

声卡配置:

1
vi /etc/modprobe.d/modprobe.conf

在最后添加如下:

1
options snd-pcsp index=2

安装alsa-utils ,并把当前用户加入audio组,确保当前用户可使用之:

1
2
 pacman -S alsa-utils
gpasswd -a 你的用户名 audio

运行

1
alsamixer

调整声卡。
保存配置:

1
alsactl store
1
sudo vim /etc/rc.conf

将alsa加入DAEMONS:

1
DAEMONS=(syslog-ng network crond alsa)

安装浏览器:

1
sudo pacman -S firefox opera chromium

安装mplayer /mplayer前端 和浏览器播放插件:

1
2
3
4
5
pacman -S gecko-mediaplayer

pacman -S smplayer mplayer smplayer-themes

pacman -S gstreamer0.10-bad gstreamer0.10-ugly

为firefox 安装flash插件:
到http://get.adobe.com/cn/flashplayer/ 下载 .tar.gz的Adobe Flash Player

1
2
3
tar -xvzf install_flash_player_10_linux.tar.gz
sudo cp libflashplayer.so /usr/lib/mozilla/plugins
sudo chmod +x  /usr/lib/mozilla/plugins/libflashplayer.so

如有flash中文乱码问题,可按这篇文章的方法解决:

http://www.ihacklog.com/linux/ubuntu-desktop/solve-problem-ubuntu-flash-chinese-words-error.html

对archlinux 下面 flash 内中文字显示残缺的问题,可通过安装adobe reader或者 安装 WIN 下的 adobe reader的字体解决。
安装WIN 字体法:

1.安装Acrobat Reader中文版。
2.复制安装目录下的AdobeSongStd-Light.otf到/usr/share/fonts/TTF/.
PS:Acrobat Reader Windows版的黑体/AdobeSongStd-Light.otf 等都行。
3.sudo fc-cache -fv
4.重启gnome或linux

安装编译环境:

1
2
sudo pacman -S automake autoconf intltool gcc glibc
sudo pacman -S flex

编译安装中文输入法:
这里我还是用的fcitx 4.0 , 4.0.1 版的曾经在UBUNTU 下尝试编译过,N多ERROR,最终放弃。

修改 /etc/gtk-2.0/gtk.immodules,将:

1
 "xim" "X Input Method" "gtk20" "/usr/share/locale" "ko:ja:th:zh"

这一行的后面,加入“en”,即更改为:

1
 "xim" "X Input Method" "gtk20" "/usr/share/locale" "en:ko:ja:th:zh"

英文界面输入中文需要设置两个参数
LC_CTYPE=”en_US.UTF-8″
export LANG=”zh_CN.UTF-8″
这里我是这样做的:
新建一名为fcitx.sh的脚本:

1
2
3
4
5
6
7
#setup XIM environment, needn't if use SCIM as    gtk-immodules
export LANG=zh_CN.UTF-8
export XIM=fcitx
export XMODIFIERS=@im=fcitx
export GTK_IM_MODULE=xim
export QT_IM_MODULE=xim
#end
1
sudo vim /etc/locale.gen

把zh_CN开头的几个前面的注释删除,并重建LOCALE:

1
sudo locale-gen

vim ~/.xprofile 添加如下内容:

1
2
3
4
LOCALE=zh_CN.UTF-8
killall fcitx
fcitx -d
#conky&

经过这样折腾后,fcitx 方能在en locale 下成功激活了。关于fcitx 的配置,见我以前的文章。

安装Adobe reader :
http://www.adobe.com/products/reader.html下载之,

1
sudo ./AdbeRdr9.4.2-1_i486linux_enu.bin

安装我平常要用的工具:
sudo pacman -S iptables
sudo pacman -S netstat-nat
sudo pacman -S tcpdump
pacman -S fdupes
从源码编译安装 md5deep
#转换MP3 ID3信息编码要用的(即ubuntu下的python-mutagen):
pacman -S mutagen
pacman -S gnu-netcat
wireshark 依赖于GTK+ / libpcap / glib /zlib /flex

1
2
3
4
5
6
wget http://wiresharkdownloads.riverbed.com/wireshark/src/wireshark-1.4.6.tar.bz2
sudo tar -xvjf wireshark-1.4.6.tar.bz2
sudo pacman -S openssl
sudo ./configure  --with-ssl
sudo make
sudo make install
1
pacman -S nss gstreamer0.10-base ttf-dejavu

卸载不要的gnome软件:

1
2
3
pacman -R empathy
pacman -R ekiga
pacman -R orca

安装lm_sensors监控CPU温度:

1
2
pacman -S lm_sensors
# sensors-detect

把sensors 加入DAEMONS:
DAEMONS=(sensors…)

安装hddtemp监控硬盘温度:

1
pacman -S hddtemp

安装 conky
sudo pacman -S conky
PS:conky 是可以调用hddtemp的
把如下加入 rc.local:

1
hddtemp -d -uC -4 /dev/sda

直接运行下,可以通过 http://127.0.0.1:7634 看到硬盘型号和温度。

安装apache / mysql / php

https://wiki.archlinux.org/index.php/LAMP

1
2
3
4
5
6
7
8
9
pacman -S apache php-apache apache php-mcrypt
pacman -S php-sqlite
pacman -S lynx
pacman -S fuse
pacman -S pam_mysql  mysql mysql-clients libmysqlclient
pacman -S xdebug
pacman -S php-mcrypt
pacman -S php-curl php-gd
pacman -S php-tidy php-apc php-curl php-intl php-suhosin php-xsl  php-docs

稍微配置下XDEBUG:

1
sudo vim /etc/php/conf.d/xdebug.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
zend_extension=/usr/lib/php/modules/xdebug.so
xdebug.profiler_enable = Off
xdebug.default_enable = On

;Xdebug允许远程IDE连接
xdebug.remote_enable=On

;允许连接的zend studio的IP地址  
xdebug.remote_host=127.0.0.1

;反向连接zend studio使用的端口
xdebug.remote_port=9000

;用于zend studio远程调试的应用层通信协议
xdebug.remote_handler=dbgp

ls /usr/lib/php/modules/
看下模块。
apachectl status 看下APACHE 服务状态。

看下http用户和组是否已经存在,若有则删除并新建之(因为archlinux默认的WEB 路径是 /srv/httpd ,个人更喜欢设置为/var/www):

1
2
3
4
5
sudo cat /etc/passwd | grep "http"
userdel http
sudo mkdir /var/www
useradd -d /var/www -r -s /bin/false -U http
/etc/rc.d/httpd start

vim rc.conf 将httpd 和 mysql 加入daemons:
DAEMONS=(… httpd …) #或者将/etc/rc.d/httpd start 加入rc.local
DAEMONS=(… mysqld …) #或将 /etc/rc.d/mysqld start 加入 rc.local

如果你不想用户目录在网上存在(即 ~/public_html 目录下的文件可通过 http://localhost/~user/ 访问到 ), 编辑
/etc/httpd/conf/httpd.conf
注释掉这一行:

1
 Include conf/extra/httpd-userdir.conf

apache2 简单配置:

1
2
cd /etc/httdp/conf/
sudo vim httpd.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
"/var/www"
<Directory />
    Options FollowSymLinks
    AllowOverride All
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1
</Directory>

<Directory "/var/www">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

#-----------------------------
ExtendedStatus On
<Location /server-status>
 SetHandler server-status
  Order deny,allow
  Deny from all
  Allow from 127.0.0.1
</Location>
#-----------------------------

<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>

<FilesMatch "^\.ht">
    Order allow,deny
    Deny from all
    Satisfy All
</FilesMatch>

ErrorLog "/var/log/httpd/error_log"


<IfModule mime_module>

    TypesConfig conf/mime.types

    #AddEncoding x-compress .Z
    #AddEncoding x-gzip .gz .tgz

    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps

    AddHandler cgi-script .cgi

    #AddType text/html .shtml
    #AddOutputFilter INCLUDES .shtml
</IfModule>


Include conf/extra/httpd-autoindex.conf
Include conf/extra/httpd-userdir.conf
Include conf/extra/httpd-vhosts.conf
Include conf/extra/httpd-default.conf

然后按需要编辑httpd-vhosts.conf 添加基于名称的虚拟机,并修改/etc/hosts增加IP映射。

简单配置下PHP(开发环境):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
zlib.output_compression =On
safe_mode = Off
open_basedir = /var/www/:/home/:/tmp/:/usr/share/pear/:/lib/FirePHPCore/
disable_functions =
expose_php = Off
max_execution_time = 60
max_input_time = 60
memory_limit = 128M
error_reporting = E_ALL | E_STRICT
display_errors = On
display_startup_errors = On
log_errors = On
html_errors = On
error_log = /var/log/php_errors.log
post_max_size = 50M
magic_quotes_gpc = Off
include_path = ".:/usr/share/pear"
extension_dir = "/usr/lib/php/modules/"
file_uploads = On
upload_tmp_dir = /tmp
upload_max_filesize = 50M

extension=mysqli.so
extension=mysql.so
extension=pdo_mysql.so
date.timezone = "Asia/Shanghai"
date.default_latitude = 31.5167
date.default_longitude = 121.4500

安装IDE:

1
sudo pacman -S eclipse

安装实用软件:

1
2
3
4
5
pacman -S poedit
pacman -S emesense
sudo pacman -S p7zip
#7z x foo.7z
sudo pacman -S shotwell

关于gnome自带的tomboy :

Notes: ~/.local/share/tomboy/
Configuration and add-ins: ~/.config/tomboy/
Caches: ~/.cache/tomboy/
Log: ~/.config/tomboy/tomboy.log
(NOTE: Tomboy actually follows the XDG Base Directory Spec here, so you can modify these locations by setting $XDG_DATA_HOME (defaults to ~/.local/share/), $XDG_CONFIG_HOME (defaults to ~/.config/), and $XDG_CACHE_HOME (defaults to ~/.cache/).
for Linux: ~/.config/tomboy/addins/

安装gnome-tweak-tool 让gnome3桌面重现:

1
pacman -S gnome-tweak-tool

运行 gnome-tweak-tool ,
FileManager:
Have file manager handle the desktop : ON

解决ntfs访问问题:

https://wiki.archlinux.org/index.php/NTFS_Write_Support

pacman -S ntfs-3g

开机自动挂载WIN NTFS分区:
先运行blkid 查看UUID,再编辑fstab :

1
2
3
4
5
6
7
8
[admin@HuangYe etc]$ blkid
/dev/sda1: LABEL="win7" UUID="B06891DC6891A1A0" TYPE="ntfs"
/dev/sda2: LABEL="windata" UUID="6A0C1B510C1B1821" TYPE="ntfs"
/dev/sda3: LABEL="WINMEDIA" UUID="0C802E60802E510E" TYPE="ntfs"
/dev/sda5: LABEL="archboot" UUID="01aa1204-1e16-4b00-b48c-00fc659ede0b" TYPE="ext4"
/dev/sda6: LABEL="archroot" UUID="d95683c2-582f-404f-8aa4-b0856858d4e0" TYPE="ext4"
/dev/sda7: LABEL="archhome" UUID="fd457eb3-491c-46be-8e20-f09466499a7c" TYPE="ext4"
[admin@HuangYe etc]$

或者

1
 ls -l /dev/disk/by-uuid/
1
2
3
4
5
6
7
sudo mkdir  /media/win7
sudo mkdir  /media/windata
sudo mkdir  /media/winmedia
sudo vim /etc/fstab
UUID=B06891DC6891A1A0 /media/win7 ntfs-3g defaults,nls=utf8 0 2
UUID=6A0C1B510C1B1821 /media/windata ntfs-3g defaults,nls=utf8 0 2
UUID=0C802E60802E510E /media/winmedia ntfs-3g defaults,nls=utf8 0 2

Mount type ntfs-3g doesn’t need to be explicitly specified in Arch. The mount command by default will use /sbin/mount.ntfs which is symlinked to /bin/ntfs-3g after the ntfs-3g package is installed.

Damaged NTFS Filesystems

If an NTFS filesystem has errors on it, NTFS-3G will mount it as read only. To fix an NTFS filesystem, load Windows and run its disk checking program.

To repair the file system without booting windows, install the the ntfsprogs package available in Extra which can be installed by:

1
# pacman -S ntfsprogs

To fix the NTFS file system, the device must already be unmounted. For example, to fix an NTFS partition residing in /dev/sda2:

1
2
3
4
5
6
7
# umount /dev/sda2
# ntfsfix /dev/sda2
Mounting volume... OK
Processing of $MFT and $MFTMirr completed successfully.
NTFS volume version is 3.1.
NTFS partition /dev/sda2 was processed successfully.
# mount /dev/sda2

If all went well, the volume will now be writable.

安装python:

1
sudo pacman -S python tk

笔记本降频:
夏天对笔记本来说是种折磨,LINUX下的电源管理及风扇速度控制一直是个问题。为免CPU烧坏,我还是决定给它适当降频:

https://wiki.archlinux.org/index.php/Cpufrequtils_%28%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%29

https://wiki.archlinux.org/index.php/CPU_Frequency_Scaling

1
sudo pacman -S cpufrequtils

加载合适的 CPU 频率调节驱动程序 ,大部分较新的笔记本电脑可以简单地使用 acpi-cpufreq 驱动:

1
sudo modprobe acpi-cpufreq

若要自动加载驱动,将合适的驱动添加到 /etc/rc.conf 的 MODULES 列,如:
MODULES=( acpi-cpufreq vboxdrv fuse fglrx iwl3945 … )
加载合适的 cpufreq 驱动后,可以用命令来查看您的 CPU 的详细信息:
$ cpufreq-info

手动降频:

1
2
sudo cpufreq-set -c0 -f 1.60GHz
sudo cpufreq-set -c1 -f 1.60GHz

守护进程

cpufrequtils 也安装了一个守护进程,可以在启动系统的时候就设置调速器和 CPU 的最高、最低频率,而不需要额外的如 kpowersave 之类的程序。
在启动守护进程之前,以 root 编辑 /etc/conf.d/cpufreq,选择需要的调速器并且设置 CPU 的最高、最低频率
注意: 精确的 min/max 数值可以由运行 cpufreq-info 查看 (在加载 CPU 驱动之后,如 modprobe acpi-cpufreq)。
设置好配置文件后,可以运行以下命令来启动守护进程:

1
sudo /etc/rc.d/cpufreq start

若要在启动系统时自动加载守护进程,将 cpufreq 加到 /etc/rc.conf 的 DAEMONS 列,如:

DAEMONS=(syslog-ng hal cpufreq @sshd)

调速器 (CPU 电源方案)
可用的调速器:

performance (默认) — Performance 调速器使 CPU 运行在最高频率,它已经被编译进内核。
cpufreq_ondemand (推荐使用) — 根据系统负载动态调节 CPU 频率。
cpufreq_conservative — 与 ondemand 相似但更为保守 (clock speed changes are more graceful)
cpufreq_powersave (节能模式) — 使 CPU 运行在最低频率。
cpufreq_userspace (手动模式)– 由用户手动选择 CPU 频率。

将需要的调速器加入 /etc/rc.conf 的 MODULES 列:

MODULES=(acpi-cpufreq cpufreq_ondemand cpufreq_powersave fuse fglrx iwl3945 … )

作为选择,您可以以 root 执行 cpufreq-set 命令来手动设置调速器,但这在关机或重启后不会保存。如:

1
sudo cpufreq-set -g ondemand

运行 cpufreq-set –help 或者 man cpufreq-set 来获得更多信息。

参考:archlinux Beginners’ Guide (简体中文)

更多
2 Responses Post a comment

Leave a Reply

Note: You may use basic HTML in your comments. Your email address will not be published.

Subscribe to this comment feed via RSS