Category Archives: linux

linux 软件

KDE回收站没有空间的解决方法

症状:无法删除文件,删除文件时提示“回收站已到达其最大容量! 请手动清理回收站。”用Dolphin打开回收站,没有任何文件,并且回收站所在的分区有足够空间。

一种可能的原因是:~/.local/share/Trash/metadata文件中Size选项所对应的数值太大。

解决方法:将~/.local/share/Trash/metadata文件备份后删除。

linux

Arch Linux升级系统内核后无法启动的处理

个人感觉Arch Linux是比较激进的一个发行版。早早将Python的默认版本升级到3.0,对待内核也是不留余地。内核文件不区分版本号,都叫kernel26.img,因此每次升级内核,都会将老内核文件覆盖。一旦新内核有问题,麻烦就大了。

今天一开机,习惯性的pacman -Syu,和往常一样,有若干软件包需要升级,直接确认升级。最后才注意到内核也升级了。重启后,卡在加载Alsa的那一步,无法进入系统。折腾了一上午,以下方法可以避免重装。

  • Arch Linux还是给自己留了一条后路。系统一般安装了lts版(应该是长期支持版本)的内核,也就是kernel-lts.img和vmlinuz26-lts,都在/boot目录下。如果没有安装这个包,建议立即安装,以备不时之需。可以在系统启动时,修改启动参数,选择使用lts版内核。Grub菜单出现后,按e修改启动参数,将kernel26.img换成kernel26-lts.img,将vmlinuz26换成vmlinuz26-lts,按b启动即可。或者在系统还是正常的时候,修改/boot/grub/menu.lst文件增加一个使用lts内核的启动项。

  • 如果已经进不了系统,也没有安装lts内核,用Arch Linux系统盘启动或者其他方式启动,想办法加载原系统的/分区,修改/etc/rc.conf文件,将启动时报错的服务禁用后重启。我这次是alsa和hal与新内核不兼容,重启后进入系统。

  • 后来在Arch Linux的wiki上看到另外一个方法:https://wiki.archlinux.org/index.php/Kernel_Panics_(%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87),但是我自己还没有尝试。

为了防止以后出现类似问题,可以将kernel26和kernel26-headers加入pacman.conf的忽略包列表,这样在使用pacman -Syu时,这两个包就不会被升级了。

linux

Archlinux下安装HP LaserJet P1505打印机

1) 安装cups

1
2
3
sudo pacman -S cups

修改/etc/rc.conf,在DAEMONS中添加cups

2) 安装hplip和hplip-plugin

1
2
3
yaourt -S hplip-plugin

(注:以上命令运行时,会自动安装hplip)

3) 启动cups

1
2
3
重启计算机或运行如下命令:

sudo /etc/rc.d/cups start

4) 添加打印机

1
2
3
4
5
6
7
- 将打印机连接到电脑上,打开电源
- 通过浏览器访问http://localhost:631
- 进入Administration --> Add Printer,按提示输入系统管理员账号密码
- 选择"HP LaserJet P1505 USB CA2988Z HPLIP (HP LaserJet P1505)"(其中的编号有可能不同),点击"Continue"
- 修改打印机名称等信息后点击"Continue"
- 在Model中,选择"HP LaserJet p1505, hpcups 3.11.3, requires proprietary plugin (en)",点击"Add Printer"
- 选择打印机默认设置选项后,点击"Set Default Options"

5) 下载Firmware

1
2
3
4
5
6
7
运行

hp-toolbox

(或在程序菜单选择HP打印机管理程序)

在左边选择正确的设备,点击"Download Firmware",再点击"Download Firmware"

6) 打印测试页

1
如果以上步骤正确,应该能够输出正确的打印结果。(我的机子上,使用cups的web管理界面打印出的测试页有方块,不知道是不是缺字体的原因。)

注:如果有问题,可以尝试将用户加入到lp组:sudo gpasswd -a yourusername lp

===========================

English Version

Install HP LaserJet P1505 printer under Archlinux

1) Install cups

1
2
3
sudo pacman -S cups

Modify /etc/rc.conf, add cups to DAEMONS.

2) Install hplip and hplip-plugin

1
2
3
yaourt -S hplip-plugin

(Note: hplip will be installed automatically with this command)

3) Start cups

1
2
3
Reboot your pc or run this command in command-line window:

sudo /etc/rc.d/cups start

4) Add printer

1
2
3
4
5
6
7
- Connect the printer and power on.
- Using web browser to access http://localhost:631
- Click Administration --> Add Printer,and input root's information.
- Select "HP LaserJet P1505 USB CA2988Z HPLIP (HP LaserJet P1505)" (the number may be diffenent), click "Continue".
- Modify the information or not and click "Continue".
- In "Model", select "HP LaserJet p1505, hpcups 3.11.3, requires proprietary plugin (en)", click "Add Printer".
- Select the default options, and click "Set Default Options"

5) Download Firmware

1
2
3
4
5
6
7
run this command

hp-toolbox

or select from the program menu.

Select right device in the left coloum, click "Download Firmware", and click "Download Firmware" again.

6) Print test paper

1
It's done.

Note: can anyone help me to improve my poor English?

=============================

周五晚将ubuntu 11.04换成Archlinux,速度有提升,但是太折腾。每项设置都要看着wiki,开着google。目前感觉最困难的是声音和打印机。

alsa折腾很久都没有声音,换oss。有声音了,还挺大,但是插上耳机没有用,还是用喇叭放。又换回alsa,莫明其妙好了,也不知道是哪个地方的设置起作用了。

打印机也很麻烦,什么hplip了,foo2zjs了,直接安装了,自己编译了,反正能查到的,能折腾的,都试了一遍。周六凌晨终于能够打印了。睡了一觉起来,打印机又不干活了。又折腾了一天,总算成功了。为了保险,将所有相关的程序都删除,再重新安装,确认没有问题。

关键的步骤有三点:1、第4步添加打印机时,只能用cups的web管理界面添加,不能用HP的管理程序添加。用HP的程序添加时,总是会卡在下载plugin那一步,无法下载。2、Model一定要选对,其他的不行,至少在我的机子上不行。3、第5步,Firmware一定要下载,不下载打印机不干活。

相信以上步骤对于其他发行版下安装HP打印机也有一定的参考价值。

PS:知道第一次安装、配置会很难,但是没想到这么难!现在我知道为什么装了Archlinux的人都说,装了一次,就不用重装了,折腾不起啊!

2012年3月1日更新:
如果安装好之后,不能正常打印,可以试试下面的技巧,或许能够解决问题。

  • cups是否正常启动?如果能访问web管理界面,一般是正常的。网上有一种说法,说是cups依赖avahi-daemon这个系统服务,我不确定,实在不行也可以试试。
  • 如果web管理界面中显示打印机是paused什么的,而不是Idle(正常待机状态显示Idle)的话,可以选择Resume Printer试试。
  • 在web管理界面中的任何操作,如果问你用户名和密码,请填写root的密码。这一点请Ubuntu,Debian,Arch用户注意,平时常用的那个用户,有sudo权限也不行,一定要填root的信息。至少在我的机子上是这样的,也可能是我的用户组没有设置好。
linux

Linux Documentation Project

Linux Documentation Project (LDP) 是一个关于Linux系统相关文档的项目。详细信息请参考项目指南The Linux Documentation Project: Guides

linux

备忘:ydict, garlicsim, funtoo

  • ydict: 是使用Yahoo在线字典查单词的命令行工具,其实就是一个Python脚本。和那个调用dict.cn的脚本是类似的,功能更完善。
  • GarlicSim: 是一个开源的计算机仿真平台。
  • funtoo: 是一个基于Gentoo的Linux发行版。这不是重点,我感兴趣的是它的主页上有一个Linux Core Concepts的教程,包括Linux核心概念,Bash,Awk,Sed等,看上去很不错不错。
linux python 软件

Fcitx 4.0 郑码码表

下载:Fcitx 4.0 郑码码表

官方网站上那个zm.mb中,词序比较乱,很多词的编码是错的,比如“浏览”的编码应该是vskm,而不是vskd,组词规则也是错的。

我修改这个是以winzm为基础,并添加了fcitx 4.0中自带的wbx中的词组。

btw: 2005年前后,用pascal写过一个win码表转到scim码表的mb2scim,花了不少时间,这次用的是python,轻松+愉快。上次差不多400多行代码,这次不到60行,当然完成的功能略有不同。
另外,如果3.6用着没啥毛病的朋友,就不要折腾了,4.0似乎还不是特别稳定。

linux 软件

一句话实现PDF文件减肥

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/default -dNOPAUSE -dQUIET -dBATCH -sOutputFile=”outfile.pdf” “infile.pdf”

其中infile.pdf和outfile.pdf分别是输入、输出文件名。

还可以将其写成一个脚本,比如叫compresspdf
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/default -dNOPAUSE -dQUIET -dBATCH -sOutputFile=”$2″ “$1″
添加可执行权限,放入执行文件目录
compress infile.pdf outfile.pdf

注:参考了nautilus的PDF压缩脚本,参见http://www.ubuntuhome.com/compress-pdf.html

linux 软件

pdf文件自动剪裁(自动切白边)

可能用到的环境、工具:Ubuntu 10.04+TeXLive 2008+pdfcrop+CUPS打印驱动,用Windows的兄弟就不用看了,这些工具理论上在Windows下也有,但是还要另外装不少东西。

下面假设原文件(也就是打算切白边的文件)叫abc.pdf

  1. pdfcrop abc.pdf,默认会生成abc-crop.pdf文件,这个已经是切掉白边的了,要是你不嫌它大(或者它确实不大)的话,就完成了。
  2. 用阅读器(如evince)打开abc-crop.pdf,并通过CUPS打印到文件,打印时注意关闭所有和页面缩放有关的命令,并选中“使用文档的页面尺寸作为页面尺寸”。打印,完成。

说明:

  1. pdfcrop其实是TeXLive自带的。本质上是一个perl脚本。
  2. pdfcrop要调用gs(ghostscript)确定每页的白边大小。对于空白页,会报错,忽略即可。
  3. pdfcrop还可以在切的时候留若干像素,具体请–help。
  4. pdfcrop要调用pdftex以生成切白边后的文件。
  5. pdfcrop本质上(猜想,没有阅读源码)是先将abc.pdf展开成单页的pdf,调用gs切白边,再用tex文件直接调用pdf页面,最后用pdftex生成输出。
  6. pdfcrop直接生成的文件一般是原文件的20倍以上(本人测试的几个文件均是如此),虚拟打印到新的文件后,基本可以恢复到与原文件同样数量级的尺寸。
  7. 测试都是使用的内嵌字体的中英文PDF。扫描版的没试,估计够呛。

5月27日更新:
使用这个脚本PDF压缩脚本-Compress PDF,代替上面的第2步。简单,效果不错。

linux

Android on Nokia N800

根据 http://talk.maemo.org/showthread.php?t=25736 这篇文章,将Android刷到N800上。需要注意两点:

1、作者用的是2G的SD卡,我自己用的是1G的SD卡,所以

sudo sfdisk -uM /dev/sdc
,1024,C
,1,L
,,
,,
这一步需要改一下参数。
2、刷Flash这步,我这里出错:Error claiming USB interface: Device or resource busy
需要参考http://forums.internettablettalk.com/showthread.php?t=33543&page=2这篇文章解决。
linux

终于在ubuntu 9.10装上了nvidia显卡驱动

Sony VAIO VGN-Z系列的笔记本都是双显卡,需要使用软件切换。之前在我的Z25上多次尝试安装NV显卡驱动,论坛上能看到的方法都用过了,均没有成功。无论是源中的驱动还是官方的驱动,都不行,重起后黑屏。
今天用了 http://global-social.net/VGN-Z 这里的一个脚本,问题基本解决。
只是我在用那个脚本时,下载了官方驱动后,又进行了一个什么检测,需要从网上下载包,但是不知道什么原因没有成功,脚本退出。再次运行脚本,在测试过OS版本后,没有反应,只能中止。手工安装了官方驱动,设置了LCD亮度与Fn键的关联。

无觅相关文章插件,快速提升流量