Ross Wan's World!

Python, Ajax, PHP and Linux.

Archive for the ‘Archlinux’ Category

Archlinux: 以 non-root 运行 Lighttpd

Posted by Ross Wan 于 2008/11/07

假设 arch 为系统已经存在的非管理员账户(non-root)和组。

$ groups

可以查看用户 arch 是否已经加入 arch 组。

所用软件版本: PHP 5.2.6,Lighttpd 1.4.20。

安装 Lighttpd、PHP、Fastcgi

# pacman -S lighttpd php fcgi

配置 PHP

修改 /etc/php/php.ini,去掉以下行前面的注释:

cgi.fix_pathinfo=1
open_basedir = /home/:/tmp/:/usr/share/pear/

配置 Lighttpd

修改 /etc/lighttpd/lighttpd.conf 文件,注释或者添加以下行:

server.document-root    = "/home/arch/http/www/"

server.modules    = (
                    "mod_access",
                    "mod_fastcgi",
                    "mod_accesslog"
                    )

fastcgi.server    = ( ".php" =>
                           ( "localhost" =>
                             (
                               "socket" => "/tmp/php-fastcgi.socket",
                               "bin-path" => "/usr/bin/php-cgi"
                             )
                           )
                    )

server.username   = "arch"
server.groupname    = "arch"

注: server.document-root 是设置文档根目录,方便 arch 用户来管理。

更改相关日志的权限

# chown arch arch /var/log/lighttpd/*.log

修改 /etc/logrotate.d/lighttpd,在第二行添加 create 644 arch arch,示例:

/var/log/lighttpd/*log {
     create 644 arch arch
    postrotate
       /bin/kill -HUP `cat /var/run/lighttpd/lighttpd.pid 2>/dev/null` 2> /dev/null || true
    endscript
 }

运行 Lighttpd

在 /home/arch/http/www/ 下创建 index.php 文件:

<?php
phpinfo();
?>

启动 Lighttpd daemon:

# /etc/rc.d/lighttpd start

在浏览器里打开 http://localhost/。如果配置成功的话,会显示正确的 PHP 信息。

Advertisements

Posted in Archlinux, lighttpd, PHP | Tagged: , , , | Leave a Comment »

MPD:CPU 占用问题

Posted by Ross Wan 于 2008/11/02

近来转用 MPD 播放音乐,一方面是被它有创意的 C/S 架构所吸引,另一方面是它小巧而且占用极小的系统资源,还有就是有多种前端的支持:如带 GUI 的 Gmpc、命令行控制方式的 MPC、Firefox 扩展方式的 Minion…

简单的配置后就可以正常使用,不过令我不解的是,在占用 CPU 方面似乎并不像传闻中少,经常是20%的 CPU 占用。经过一翻折腾,原来问题出在 Audio Output 问题上!因为我没有显式的在 mpd.conf 上设置 Audio Output,而是让 MPD 自动探测。在 /etc/mpd.conf 上设置 Output 为 Alsa output,问题就解决了 :)

audio_output {
    type                    "alsa"
    name                    "My ALSA Device"
    device                  "hw:0,0"     # optional
    format                  "44100:16:2" # optional
}

Posted in Archlinux, Linux | Tagged: , , | Leave a Comment »

QQ2008 表情 for Pidgin

Posted by Ross Wan 于 2008/10/19

整理了一下 QQ2008 的默认表情,适用于 Pidgin 2.5.1 版本。只收录了 Pidgin 可识别的表情67个。

下载地址:

使用方法:

将解压得到的 qq2008 文件夹复制到 /usr/share/pixmaps/pidgin/emotes/ 。执行命令:

sudo chmod 744 /usr/share/pixmaps/pidgin/emotes/qq2008/*

然后在 Pidgin 的首项选的表情主题里选择 QQ2008 即可。

Posted in Archlinux, Linux | Tagged: , , | 1 Comment »

Archlinux:升级 Kernel 2.6.27 内核后禁用 Speaker

Posted by Ross Wan 于 2008/10/16

由于 Kernel 2.6.27内核新增了 snd-pcsp 模块,将 Speaker 模拟成为声卡,可能令部分声卡出现问题。而我这里出现的问题是不能禁用 Speaker,即使已经将 pcspkr 加入 rc.conf 的 blacklist。

最简单的解决方法就是将 snd-pcsp 同时加入 blacklist。

Posted in Archlinux | Tagged: , , , , | Leave a Comment »

Archlinux:Xfce4 下自动挂载 U 盘乱码的解决

Posted by Ross Wan 于 2008/09/17

对于在 Xfce4 下自动挂载的乱码问题,其实是 Xfce4 中 exo-mount 的一个 Bug,它会忽略挂载的 iocharset=utf8 参数。

目前解决的方法大概有两个,一是用 gnome-mount 来代替 exo-mount;二是为 exo-mount 打上一个 Path,重新编译安装。在 AUR 里已经有人制作了这样的一个包:

Posted in Archlinux, Xfce4 | Tagged: , , , | Leave a Comment »

好用的文档工具:reStructuredText

Posted by Ross Wan 于 2008/09/09

对于文档,最困难的就是排版,以及规范的格式。而 reStructuredText 就可以解决这个问题。它可以将纯文本重构建成格式规范的文档,输出成 html、xml、Latex 或者 PDF。妳只需要简单学习一下 reStructedText 的语法标记来编写那个纯文本即可。

reStructuredText 的学习曲线一点也不高,它跟 Python 的语法有点相近,主要通过缩进来定义元素。具体可以看看官网的文档:

中文文档可以参考《reStructuredText 简明教程》,由 Laurence 编写,Kardinal 翻译过来的:

编写好的源文档,需要使用一个 Python 工具 docutils 将其转化成 Html 或者 Latex 等等:(以在 Archlinux 系统下生成 Html 文件为例)

# pacman -Ss docutils

$ rst2html.py source.rst dest.html

这样就可以将 source.rst 纯文本文件转化成 HTML 格式的 dest.html 文档。

Posted in Archlinux, Python | Tagged: , , | Leave a Comment »

Openbox:音量控制

Posted by Ross Wan 于 2008/06/12

       要在 Openbox 下方便的控制音量,可以使用 Openbox 键绑定。例如,我将 PCM 音量绑定到组合键── win 键 + 小键盘的 “0”、“+”和“-” 健上。rc.xml 的具体配置如下:

<keybind key=”W-KP_0″>
      <action name=”Execute”>
        <command>amixer -q set Master 100%-</command>
      </action>
</keybind>
<keybind key=”W-KP_Subtract”>
      <action name=”Execute”>
        <command>amixer -q set Master 5%-</command>
      </action>
</keybind>
<keybind key=”W-KP_Add”>
      <action name=”Execute”>
        <command>amixer -q set Master unmute 5%+</command>
      </action>
</keybind>

       或者,可以绑定到鼠标的滚轮上:

<context name=”Desktop”>

      <mousebind button=”W-Up” action=”Click”>
        <action name=”Execute”>
          <command>amixer -q set Master unmute 5%+</command>
        </action>
      </mousebind>
      <mousebind button=”W-Down” action=”Click”>
        <action name=”Execute”>
          <command>amixer -q set Master 5%-</command>
        </action>
      </mousebind>

</context>

<context name=”Frame”>

      <mousebind button=”W-Up” action=”Click”>
        <action name=”Execute”>
          <command>amixer -q set Master unmute 5%+</command>
        </action>
      </mousebind>
      <mousebind button=”W-Down” action=”Click”>
        <action name=”Execute”>
          <command>amixer -q set Master 5%-</command>

</context>

Posted in Archlinux | 1 Comment »

Openbox 使用笔记

Posted by Ross Wan 于 2008/06/05

       为了贯彻 KISS,最近删除了 Gnome 桌面,改用了 Openbox 这个 VW。同时使用 Rox-filer 为作文件管理器和桌面。

GTK 主题

       我这里使用 Gnome 的,首先安装必需的包:

# pacman -S gnome-theme gtk-theme-switch2

       gtk-theme-switch2 是一个 GTK2/GTK+ 的主题管理器,运行 switch2 可以方便地更改和保存主题。如果想设置 GTK1 的主题,可以安装使用 gtk-theme-switch。

GTK 字体

       设置 GTK 程序使用默认字体样式,否则可能导致部分使用 GTK 的程序的字体大小不一致(如 Firefox)。编辑 ~/.gtkrc.mine 文件(没有的话,自行创建):

style “user-font”
{
font_name = “DejaVu Sans 12”
}
widget_class “*” style “user-font”
gtk-font-name = “DejaVu Sans 12”

       可以修改 DejaVu Sans 12 为你喜欢的其它字体和大小:)

GTK 图标

       我这里同样使用 Gnome 的图标,先安装必要的包:

# pacman -S gnome-icon-theme

       然后编辑 ~/.gtkrc.mine 文件,添加:

gtk-icon-theme-name = “MIst”

       这里使用 Mist 风格的图标。

注意:
为了确保 .gtkrc.mine 文件生效,必须确保 ~/.gtkrc.2.0 文件包含这一行:

include “/home/username/.gtkrc.mine”

鼠标主题

       编辑 ~/.Xdefaults:

Xcursor.theme:  whiteglass

        这里使用系统默认安装的鼠标主题之一 whiteglass。

注意:如果使用 startx 来启动 Openbox 的话,记得在 .xinitrc 的开始处添加一行:

xrdb -merge ~/.Xdefaults

DPI

       编辑 ~/.Xresources 文件,添加一行:

Xft.dpi:      75.


注意:
如果使用 startx 来启动 Openbox 的话,记得在 .xinitrc 的开始处添加一行:

xrdb -merge ~/.Xresources

dBus

       如果没有开启 dBus 进程的话,可能导致某些 GTK 程序启动缓慢!在 Openbox 的启动文件 .config/openbox/autostart.sh 开始处添加:

if which dbus-launch >/dev/null && test -z “$DBUS_SESSION_BUS_ADDRESS”; then
       eval `dbus-launch –sh-syntax –exit-with-session`
fi

autostart.sh

       可以在 Openbox 的启动文件 autostart.sh 处添加在 Openbox 启动时自动运行的程序,但记得使用 sleep,否则偶然导致 Openbox 启动失败,例如:

(sleep 2 && rox -p default) &
(sleep 2 && fbpanel) &
conky &

轻量级的程序

       终端可以使用 rxvt 或者 Xfce4 的 terminal,文件管理器可以使用 Rox 或者 Thunar,归档(压缩文件)管理器可以使用 squezee,图像查看器可以使用 gqview…

Posted in Archlinux | Leave a Comment »

解决 Wine 的中文乱码问题

Posted by Ross Wan 于 2008/05/15

        参考了 ubuntu 中文网的一篇 wiki,对其作了一些更正和修改。新建一个 mywine.reg 文件,下面是其内容:

REGEDIT4
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Hardware Profiles\Current\Software\Fonts]
“FIXEDFON.FON”=””
“FONTS.FON”=””
“LogPixels”=dword:00000070
“OEMFONT.FON”=””
[HKEY_CURRENT_USER\Software\\Wine\\Fonts\\Replacements]
@=”SimSun”
“Arial”=”SimSun”
“Fixedsys”=”SimSun”
“Microsoft Sans Serif”=”SimSun”
“MingLiU”=”SimSun”
“MS UI Gothic”=”SimSun”
“PMingLiU”=”SimSun”
“Simsun”=”SimSun”
“Songti”=”SimSun”
“System”=”SimSun”
“Tahoma”=”SimSun”
“Terminal”=”SimSun”
“宋体”=”SimSun”
[HKEY_CURRENT_USER\Software\\Wine\\X11 Driver]
“ClientSideAntiAliasWithRender”=”Y”
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]
“MS Shell Dlg”=”SimSun”
“MS Shell Dlg 2″=”SimSun”
“System”=”SimSun”
[HKEY_CURRENT_USER\Control Panel\\Colors]
“ActiveBorder”=”239 235 230”
“ActiveTitle”=”0 153 11”
“AppWorkspace”=”128 128 128”
“Background”=”58 110 165”
“ButtonAlternateFace”=”180 180 180”
“ButtonDkShadow”=”64 64 64”
“ButtonFace”=”232 227 221”
“ButtonHilight”=”255 255 255”
“ButtonLight”=”239 235 230”
“ButtonShadow”=”128 128 128”
“ButtonText”=”0 0 0”
“GradientActiveTitle”=”166 202 240”
“GradientInactiveTitle”=”192 192 192”
“GrayText”=”128 128 128”
“Hilight”=”0 153 11”
“HilightText”=”255 255 255”
“HotTrackingColor”=”0 0 255”
“InactiveBorder”=”192 192 192”
“InactiveTitle”=”232 227 221”
“InactiveTitleText”=”0 0 0”
“InfoText”=”0 0 0”
“InfoWindow”=”255 255 225”
“Menu”=”232 227 221”
“MenuBar”=”232 227 221”
“MenuHilight”=”0 0 0”
“MenuText”=”0 0 0”
“Scrollbar”=”239 235 230”
“TitleText”=”255 255 255”
“Window”=”255 255 255”
“WindowFrame”=”0 0 0”
“WindowText”=”0 0 0”

       注意,wiki 原文的注册文件内容由于在每一行前面多了一个空格,导致不能导入!我这里已经作了修改。下面可以使用 regedit 命令导入这个注册表文件:

$ regedit mywine.reg

       复制相应的字体文件或者创建字体文件的链接到 ~/.wine/drive_c/windows/Fonts 目录。例如:

$ ln -s ~/.fonts/YuanTi.ttf ~/.wine/drive_c/window/Fonts/simsun.ttc

       上面注册文件中的 “ClientSideAntiAliasWithRender”=”Y” 是用于开启反锯齿效果,如果你在使用矢量字体,必须开启。如果使用点阵字体的话,可以将其关闭: “ClientSideAntiAliasWithRender”=”N”。

Posted in Archlinux | Leave a Comment »

Archlinux:自动挂载 U 盘乱码的解决

Posted by Ross Wan 于 2008/03/04

对于 Gnome 桌面,自动挂载的 U 盘或者其它可移动存储设备的文件出现乱码,可以通过 gconf-editor 来解决。执行

gconfig-editor

打开 Gnome 的配置编辑器。依次打开 system ── storage ── default_options ── vfat,在右边的 mount_options 添加一个值“iocharset=utf8”。重新插拔 U 盘即可生效。

Posted in Archlinux | Leave a Comment »