日光漫想

$ chmod +x mylife


  • 归档

  • 标签

  • 搜索

SliTaz——地球上最小的 GNU/Linux

发表于 Dec 21st 2008 | 分类于 Keep Digging

因为发现我的电脑可以从 U 盘启动,所以打算为 U 盘装个小型系统,于是就开始选择。呵呵,又是选择。当然要支持中文,即使界面没有中文,最起码要能显示中文。

起先试了 fanx,界面是舒服,kde 的,大小对于我 1G 的盘来说还是过得去的。不过速度是有点慢,比 Kubuntu 7.10 64-bit PC 版的 LiveCD 要慢,至少在我的电脑上是这样的。而且添加新软件也不是很方便,要去下载,而且可选的也不多。

看到 toy 上的文章:多合一小型 Linux 光盘,逐一看下,CDlinux,Puppy 有点搞头。再往下看有个 SliTaz,介绍说比 DSL 还小,启动速度极快,还有 Firefox、Mplayer,还软件包仓库。“软件包仓库”?!一个仅 28M 大小的东西还搞软件包仓库?于是我记住了 SliTaz。

CDlinux 和 Puppy 都还不错,尤其是 Puppy,有一群中文开发者,还有中文 Puppy Linux 开发者之家呢,所以 Puppy 的中文支持是绝对不用担心的。不过它的界面风格不是很喜欢。

呃,还能做什么呢,一个软件包管理的特性就足够说服我去尝试 SliTaz。通常我会事先通过 Google 来了解一下感兴趣的东西。Google 最大的收获就是中文 Puppy 开发者之家上有篇“比 Puppy 还要袖珍的中文 SliTaz”。看来中文 Puppy 开发者也惊叹于 SliTaz 的小巧。而且有提供单独的中文包下载。能显示中文,能输入中文,30M 不到,有什么理由不去尝试?

我不是直接下载中文 Puppy 上提供的家酿版中文 SliTaz,而是去 SliTaz 主站上下载了 cooking 版,然后再安装中文 Puppy 上提供的中文包。在此说下我的 SliTaz LiveUSB 安装过程吧。

首先用 UNetbootin 把 SliTaz LiveCD 的 ISO 到 USB 里,然后启动。这样就相当于有了一个 LiveCD 了。完后要重新使用 SliTaz 提供的 tazusb 程序将 SliTaz 安装进 U 盘,成为真正的 LiveUSB。当然也可以就这样用用就好了,但 tazusb 制作的 LiveUSB 有很多好处。比如启动时的欢迎画面,以 U 盘作为 /home,这样用户存储的数据不会丢失。所以强烈推荐重新装一遍。把 UNetbootin 生成的东西都删除。在 SliTaz 菜单里找到 Mount devices,把 SliTaz iso 所在的分区挂载上。然后执行

1
# tazusb gen-iso2usb /path/to/iso

接下来的事情都不用操心,装完后就可以选择重启了。如果当前运行的 SliTaz 是从中文 Puppy 上直接下载来的,那 tazusb 是没有 gen-iso2usb 选项的,需要先进行升级,很简单的,打开右下角的 Packages manager (GUI) 就知道怎么做了。

现在启动真正的 LiveUSB,U 盘已经自动挂载为 /home 了。然后安装中文包

1
# tazpkg install /path/to/chinese-pack

然后再执行 tazlocale,选 zh_CN UTF-8,再修改 /etc/profile,把 G_FILENAME_ENCODING 改成这样:

1
G_FILENAME_ENCODING=UTF-8

然后需要把 /etc/chinese-pack/.config/ 下的一些配置文件 copy 到主目录下。注销重新登录后,显示输入中文应该都没有问题了。中文包还提供了一个终端模拟器叫 sakura。

完成这一切后,还需要执行

1
# tazusb writefs lzma

以便生成新的 rootfs.gz。每次安装新的软件后都要这样,要不然下次启动还是原来的样子。更多关于 tazusb 的用法可以看 这里。

之后我还装了 Xorg,按 这篇文章 安装了显卡驱动,不过使用 Xorg 后产生了 xauth 的问题,irc 上求助也没解决。后来想想算了吧,能听歌就不错了,电影就免了。顺便说下,SliTaz 的官方 irc 是 irc.alterinet.org 上的 #slitaz。

本文就是在 SliTaz LiveUSB 下写的。

《飓风营救》经典台词

发表于 Dec 17th 2008 | 分类于 Keep Sharing

I don’t know who you are.

I don’t know what you want.

If you are looking for a ransom,

I can tell you, I don’t have money.

But what I do have

are a very particular set of skills.

Skills I’ve acquired over a very long career.

Skills that make me a nightmare for people like you.

If you let my daughter go now,

that’ll be the end of it.

I will not look for you.

I will not pursue you.

But if you don’t,

I will look for you.

I will find you…

and I will kill you.

什么样的父亲敢对电话那头的绑匪说这样的话?在绑匪甩给他一句 “Good luck” 之后,他真的这样做了。他找到了绑匪并通过这句 “Good luck” 认出了他,对他说:

You don’t remember me.

We spoke on the phone two days ago.

I told you I would find you.

真是太强悍了!久违了如此凛厉的动作片。

Dances with Wolves

发表于 Dec 8th 2008 | 分类于 Keep Thinking

I’d never really known who John Dunbar was. Perhaps the name itself had no meaning. But as I heard my Sioux name being called over and over… I knew for the first time who I really was.
Dances with Wolves

真希望有一天,我也能意识到真实的自我。

命令行小技巧——如何一次解压多个文件

发表于 Jun 11th 2008 | 分类于 Keep Digging

大家都知道,tar 命令只能接受一个文件名作为参数,也就是说 tar 命令本身一次只能解压一个文件。如果某个目录下有很多 .tar.gz 文件,一个一个去解压显然麻烦,能不能一条命令就把它们全解出来?答案是肯定的。

我们可以通过 for in 循环语句来实现,原理是将要解压的归档文件名逐一赋给一个变亮,通过循环语句让 tar 逐一引用这些变量即可。说得这么复杂,其实很简单,我也不碎碎念了,下面就给出具体命令。

解压当前目录下的所有 .tar.gz 结尾的文件:

1
$ for ARK in ./*.tar.gz; do tar xvf $ARK; done

原理就是上面说的,把当前目录下所有的 .tar.gz 文件的文件名逐一赋给变量 ARK,让 tar 来引用 ARK 变量。

基于 s2ram 实现挂起

发表于 May 22nd 2008 | 分类于 Keep Digging

挂起到底需要什么?以前一直以为要 acpi 的东西,其实不需要的。挂起的真正方案只有两种,一个是 s2ram,一个是 tuxonice,后者需要对内核打补丁,而前者是纯粹的用户空间程序。

Debian 的 s2ram 在 uswsusp 软件包中。

首先找出你的系统怎样挂起才能正常唤醒。如果仅仅 s2ram 就可以挂起并且能正常醒来的话,那就最好了,但如果你的机器是 unknown,用 s2ram 的话来说你的机器不再白名单之列,那么就需要附加参数以使 s2ram 正常工作。首先你得试试 s2ram -f,如果可行,那就没问题了,如果不行,那就按照下面的命令逐一试验,知道可以为止,这可是一个很伤机器的过程,但愿第一个命令就成功。

1
2
3
4
5
6
7
8
9
10
s2ram -f -a 3
s2ram -f -a 2
s2ram -f -a 1
s2ram -f -p -m
s2ram -f -p -s
s2ram -f -m
s2ram -f -s
s2ram -f -p
s2ram -f -a 1 -m
s2ram -f -a 1 -s

如果成功了,那么以后挂起就需要增加这些参数。当然这时相当麻烦的,而且直接用 s2ram 来挂起计算机也是很低阶的。

建立于 s2ram 之上

s2ram 很低阶,有许多实用脚本是建立在 s2ram 之上的,这里我们使用 pm-utils, 它可以自行配置。现在你已经知道了 s2ram 需要增加的参数,那么要让 pm-suspend 能正常工作,就需要让 pm-suspend 向 s2ram 传递必要的参数,我们将 pm-utils 的配置写在 /etc/pm/config.d/ 里,文件名随意,比如 config。

我们需要写上 ADD_PARAMETERS=""

双引号里写要附加的参数,具体那些参数可以用 pm-suspend --help 查看。这些参数对应的是哪个 s2ram 的参数,可以看看 man s2ram,很容易对应起来的。
完后,pm-suspend 也可以正常挂起了。

到目前为止,挂起都还仅先于 root 用户,要让普通用户挂起,我们需要一些图形界面程序,kde 下可以用 kpowersave,gnome 可以用 gnome-power-manager,此外,普通用户还必须是 powerdev 组的成员。在没有其他电源管理脚本的情况下,上面的两个程序都会去调用 pm-utils 的。

这样,挂起的问题就解决了,我们根本不需要 acpi。

2001: 太空漫游

发表于 May 11th 2008 | 分类于 Keep Thinking

看过此片,天下再无科幻片。

太兴奋了,至今为止看过的最尊重物理规律的太空电影。1968 年,就拍出这么强悍的电影了,为什么祖国拍来拍去还是古装片,拍了又拍,都不厌的。

据说当时太空照片都还没有传回来,就拍出这么漂亮的画面了,我敢打赌那些景象不是靠电脑画出来的,而是模型。

原来靠离心力模拟重力的环行太空站在那个年代就进入电影了,不知为什么现在的科幻片在处理重力的问题上都是如此敷衍。有重力的平板飞船到底谁先想出来的,《星际旅行》?

我敢打赌所有的失重都是靠演员演出来的,包括漂浮的手,穿重力鞋时奇怪的走路样子。

第一次知道还有硬科幻这种说法,现在我知道了,我喜欢看的是硬科幻。

终于明白了 Fluxbox 中鼠标滚轮怎么搞了

发表于 Apr 8th 2008 | 分类于 Keep Digging

鬼使神差地又跑到 Fluxbox 下搞了一下,居然这次被我发现了。

Fluxbox 默认设置下,在桌面上将鼠标滚轮向”上”拨,将切换到”下”一个工作区,向”下”拨将切换到”上”一个工作区,在工具栏上拨动鼠标滚轮也是这种情况。刚好和惯常思维相反。在窗口标题栏将鼠标滚轮向”下”拨,将会向”上”卷起窗口,向”上”拨将向”下”放下窗口。又是反的,不是吗?在我用过的 WM 中,像 openbox, xfwm, metacity, kwin 没有一个是像 Fluxbox 这样反着的。以前也不知道怎么设置,如今知道了,写出来和大家分享。

首先回答一个问题,我们的鼠标到底有几个键?如今一般的鼠标,带滚轮的,几个键?三个,你可能会说。呵呵,我起先也以为是三个,其实错了,有五个。哪来的五个?左键、右键、中键相信都不用说了,那还有两个键在哪?呵呵,我也不卖关子了,其实还有两个键也在滚轮上,只是按法不一样。将滚轮按下是我们熟知的中键,将滚轮向上拨是第四键,向下拨是第五键。左、中、右、上、下对应的数字是 1,2,3,4,5。知道了这些,我们就很容易地将 Fluxbox 的鼠标滚轮调回来了。

首先调整桌面滚轮的行为。打开 ~/.fluxbox/keys,你会看到

1
2
3
4
5
OnDesktop Mouse1 :HideMenus
OnDesktop Mouse2 :WorkspaceMenu
OnDesktop Mouse3 :RootMenu
OnDesktop Mouse4 :NextWorkspace
OnDesktop Mouse5 :PrevWorkspace

大家应该都知道这里的秘密了,把 Mouse4 和 Mouse5 换一下就好了。

然后是工具栏的滚轮行为。打开 ~/.fluxbox/init,找到这一行:

1
session.screen0.reversewheeling: false

把值改成 true 就好了。

最后是窗口标题栏的滚轮行为。还是在 ~/.fluxbox/init 里面。

1
session.screen0.windowScrollReverse:    false

同样的改成 true 就好了。

这样,Fluxbox 里的鼠标滚轮”上下”的概念就符合我们的思维了。为什么 Fluxbox 的开发者认为颠倒的才是正的?搞不懂了。

简简单单 vsftpd

发表于 Apr 4th 2008 | 分类于 Keep Digging

需要寝室某兄弟共享文件,知道可以用 samba,并且也一直用的 samba,可这回寝室那哥们网上邻居不会设,我也不会,搞来搞去 windows 的网络设置向导只能识别无线网卡,可明明上网用的是有线。用 U 盘可以,不过以后每次都 U 盘也太麻烦了。那就用 ftp。其实以前搭过 ftp 服务器,用的是 proftpd,很复杂,搞不来,也许是它太 pro 或我太不 pro 了。反正我的需求很简单,就是搭建一个匿名 ftp,某些目录可以上传,某些目录只能下载。其实权限问题用不着归 ftp 程序管的,我把目录设为只读,就算 ftp 程序认为它可写也不行。

这次不想再用复杂的 proftpd 了,于是试了一下 vsftpd,正好符合我的要求。用 apt 安装了 vsftpd 之后,一个匿名 ftp 就搭建好了,根本无须另外的配置。当然我是要 ftp 的某些目录可写好让那哥们把文件传给我,所以还得配置一下。配置也相当简单,在 /etc/vsftpd.conf 中,启用以下选项:

1
2
3
4
5
6
7
8
9
10
# 全局允许可写,只有这样下面的上传选项才会起作用。
write_enable=YES
# 允许匿名用户上传文件。
anon_upload_enable=YES
# 允许其他写操作,例如删除,重命名等。由于我要直接把上传的文件剪切走,所以才启用这个选项。
anon_other_write_enable=YES
# 设置匿名用户上传的文件权限为 644,即 -rw-r--r--。默认的权限是 -rw-------。
anon_umask=022
# 如果想让匿名用户能够创建目录,就启用该选项。
#anon_mkdir_write_enable=YES

好了,搞完后保存,重启 vsftpd。

1
$ sudo invoke-rc.d vsftpd restart

完后你会发现,匿名用户还是无法上传文件,这是因为匿名用户对 ftp 主目录没有写权限。ftp 主目录在 /home/ftp。直接将它设为可写不安全,最好在下面建一个 upload 目录专门用来上传文件,并将目录权限设为可写。

1
2
$ sudo mkdir /home/ftp/upload
$ sudo chmod 777 /home/ftp/upload

再重启 vsftpd 就 OK 了。

xfce.org 中文页面更新

发表于 Apr 2nd 2008 | 分类于 Keep Playing

其实早就想更新一下了,一直没去搞。今天终于把这件事做了。

以前没主意的一些细节都更新了,例如你改成了您,中英文之间加空格。本来就想更新这两个的,顺带发现了好些问题,也一道更新了一下。xfce.org 的英文版有新加页面的,项目里加了个 xfce4-terminal,还有一个叫 Ristretto 的图像查看器,这个东西也被整合进 xfce 了。不过这个图像查看器英文主页都还没有,只是在项目页面上有这么一个项目。我把 “blog” 都改成”博客”,”wiki” 都改成”维基”了。中文 faq 的链接也改了,因为 xfce 的 wiki 用了翻译插件后,链接变了,其实早该改了,就没去做,今天终于把它做了。其他的更新还有 meta data,以前是英文的,现在翻译成中文了,以后 google 到中文页面几率应该增加了。

顺便写一下工作流程吧。首先是从 xfce 的 svn 里 checkout 网站的代码,大堆 php 文件。然后一个一个开始翻译。完毕后执行

1
svn di > www-i18n-update.patch

创造一个 patch 文件,发到 xfce i18n 邮件列表就可以了。以后各位朋友有兴趣也可以参与一下。

搬家了

发表于 Apr 1st 2008 | 分类于 Keep Playing

博客搬家了!原先在 wordpress.com.cn 上的数据今天导入了。又开博了。wordpress.com.cn 今天终于发了一封道歉信,说重新开通了。这回我不敢用了。在 wordpress.com.cn 停止服务其间,我了解到了所谓的 wordpress.com.cn 事件,想过重新换个。找了很多,居然发现了 blog.ubuntu.org.cn ,踏破铁鞋无觅处啊!总体感觉不错,很跟的上时代,就是我这里访问速度有点慢,不知是不是网通都慢。

1…456
yhlfh

yhlfh

$ chmod +x mylife

59 日志
6 分类
18 标签
RSS
Creative Commons
  • cc的博客
  • 乱码博客
© 2008 - 2019 yhlfh
由 Hexo 强力驱动
主题 - NexT.Muse