Ubuntu 9.10 远程桌面、声音 (XDMCP,PulseAudio)

本文说明如何在 Ubuntu 9.10 操作系统中启用 XDMCP 类型的远程桌面并保留声音在服务器端。

我们需要启用 PulseAudio 的系统模式,来解决 XDMCP 远程登录的用户不能使用声音的问题。需要将使用声音的用户加入到 pulse-access 组中才可以访问 pulseaudio 服务。

需要修改的配置文件

/etc/gdm/gdm.schemas
/etc/default/pulseaudio

修改这个 /etc/gdm/gdm.schemas 配置文件启用 XDMCP 访问

    <schema>
      <key>xdmcp/Enable</key>
      <signature>b</signature>
      <default>true</default>
    </schema>

修改这个配置文件 /etc/default/pulseaudio 启用 PulseAudio 的系统模式

PULSEAUDIO_SYSTEM_START=1
DISALLOW_MODULE_LOADING=0

使用下面的命令将需要使用声音的用户加入 pulse-access 组

sudo gpasswd -a username pulse-access

重启系统或启动 pulseaudio 服务。

Over!

取消自动运行 X Window

今天升级了龙芯机器的所有软件包,误操作将 xserver-xorg 一起给升级了,结果导致机器启动到图形界面就死机。而我又只有一个系统,没有其它的修复启动盘。

我用下面的 PMON 命令以单用户模式(不自动进行图形界面)启动了系统,删除了 /etc/rc2.d/S19gdm 文件解决了这个问题。

load /dev/fs/ext2@wd0/vmlinux-2.6.32.7
g console=tty root=/dev/hda2 rootfstype=ext no_auto_cmd quiet S

在输入 root 用户的密码后,使用下面的命令取消图形界面的自动执行。

mv /etc/rc2.d/S19gdm /root

Over!

解决 ALSA 声卡驱动的噪音问题

我买了一个 USB 声卡,使用中发现通过 ALSA 驱动播放时输出的声音伴随着噪音,而 OSS 没有。下面给出一个解决办法。

修改 /etc/asound.conf 为下面的数据

# /etc/asound.conf
 
pcm.card0 
{
    type hw
    card 0
}
 
pcm.!default
{
	type plug
	slave.pcm "asymer"
}
 
pcm.asymer
{
	type asym
	playback.pcm	"dmixer"
	capture.pcm	"dsnooper"
}
 
pcm.dmixer
{
	type dmix
	ipc_key	1025
	ipc_key_add_uid	yes
 
	slave
	{
		pcm		"hw:0,0"
		period_time	0
		period_size	2048
		buffer_size 	262144
		rate		48000
	}
}
 
pcm.dsnooper
{
	type dsnoop
	ipc_key	1125
	ipc_key_add_uid	yes
 
	slave
	{
		pcm		"hw:0,0"
		period_time	0
		period_size	2048
		buffer_size	262144
		rate		48000
	}
}

如题问题仍然存在,需要再加大 buffer_size 的值,建议为 2 的 n 次方。

Over!

Linux 系统中使用 SSH 代理

SSH 是一款功能强大的软件,这个不用我再多说了,这次我们使用它的通道功能实现一个 socks 5 代理。

你需要一个可用的 ssh 账号,网络上很多的哦,不知道可以联系我。

我们以 Debian 系统为例,讲解一下如何连接SSH服务器并创建代理服务和在 Firefox 中使用它。

创建代理服务

ssh -N -D 6000 username@server_address

设置 Firefox 使用代理
1. 在地址栏里输入 about:config
2. 设置 network.proxy.socks_remote_dns = True
3. 选择菜单中 [编辑]->[选项]
4. 转到 [高级]
5. 转到 [网络],点击 [设置]
6. 选择 [手动设置代理]
7. 在 SOCKS 主机里输入 localhost 端口输入 6000
8. 选择 SOCKS v5
9. 确定保存

下面就浏览你的自由世界吧!

Over!

逸珑笔记本使用 Silicon Motion for XServer 驱动

在 Debian 6(Squeeze) 系统中直接安装 xserver-xorg-video-siliconmotion 上不能正常使用的。需要给 xorg-server 打上 mips 的补丁,并重新编译安装才可以。也可以直接下载我编译好的 deb 安装。

补丁程序: http://www.heiher.info/service/projects/xserver/01_mips-sarea.diff
xorg.conf: http://www.heiher.info/service/projects/xserver/xorg.conf
编译好的 deb 包: http://www.heiher.info/service/projects/xserver/deb/

使用补丁和重新编译 xorg-server 的流程

mkdir xorg-server
cd xorg-server
apt-get source xorg-server
dpkg-source -x xorg-server*.dsc
cd xorg-server*/debian/patches/
wget http://www.heiher.info/service/projects/xserver/01_mips-sarea.diff
echo "01_mips-sarea.diff" >> series
cd ../../
dpkg-buildpackage -rfakeroot -uc -b
cd ../
rm xserver-xorg-core-dbg*
sudo dpkg -i *.deb
wget http://www.heiher.info/service/projects/xserver/xorg.conf
sudo cp xorg.conf /etc/X11/

Over!

龙芯机器的 Debian 依赖出问题了

上次更新软件列表后,totem-plugins gnome-power-manager 等包的依赖就出现了问题,导致 gnome-desktop-environment 等包被删除了。

由于一直通过 XDMCP 方式在使用 Ubuntu 系统,也就一直没有管它,当今天再次更新一下软件列表后,发现只有 totem-plugins 的依赖存在问题了。

我把 totem-plugins 下载下来,解开后把依赖修改了一下,从本地安装上后,成功安装了 gnome-desktop-environment,等待以后的修复就可以升级了。

Over!

Linux 源代码阅读工具

阅读 Linux 是一件很麻烦的事情,都不知道从哪里开始。即使阅读其中很小的一部分,都可能涉及到很多个源文件,分布在不同的目录中,如何去定位函数和变量在哪里申明的成为了阅读过程的一大障碍。

LXR(Linux Cross Reference) 改变了这一切,它对 Linux 源代码(各个版本)中所有的符号都建立了索引,并提供简单、快速的查询接口。在阅读源代码的过程中可以轻松的查找到相关符号的声明处。

LXR 网站地址:http://lxr.linux.no

Over!

Linux 系统中使用 TL-WN422G+无线网卡

在 Linux 操作系统中使用这款无线上网卡需要如下程序:

  • ZD1211RW 驱动
  • ZD1211 Firmware

ZD1211RW 驱动
重新编译内核增加这个驱动,可以编译为模块或直接编译进内核。

ZD1211 Firmware
没有这个固件不能正常驱动设备,第一次我就是这样的问题。
如果你有包管理系统,那么安装一下 zd1211-firmware,或去 http://sourceforge.net/projects/zd1211/ 下载。解压后保存成 /lib/firmware/zd1211/ 目录中。

Over!