分类 技术 下的文章

KDE SC 4.9 发布好几天了,估计大家关注 KDE 的朋友们已经都用上了吧,在这里来照顾一下刚入门的linux爱好者,一步一步的给大家演示一下怎么在 Ubuntu 12.04 LTS 下安装 KDE SC 4.9。

第一步:给 Ubuntu 添加 KDE SC 4.9 源

在 Ubunut 桌面环境下按下 Ctrl+Alt+T 来打开一个终端窗口,然后在窗口中键入如下命令:

sudo add-apt-repository ppa:kubuntu-ppa/backports

这个命令执行的时候需要您的密码,请输入您的密码。

这个命令在执行的时候,中间可能需要你按几下回车键。当这个命令执行完以后,我们在执行如下命令:

sudo apt-get update

然后你会看到一个升级的进度。当然了,上面这些命令都要在你的 Ubuntu 处于联网状态下。

第二步:安装 KDE SC 4.9

很简单,您如果刚好在看这篇文章的时候操作这些的话,可以直接点击下面的连接来执行安装:

点击这行文字来安装 KDE SC 4.9

点击后,浏览器应该会弹出一个让你确认的窗口:

很简单,点击 OK 确认就可以了,然后稍微过一下,你就会看到 Ubuntu Software Center 已经打开执行起来了,我们要做的就是点击那个 Install 按钮了。

安装的时候,同样,需要您再次输入密码:

好了,输入密码,后按 Authenticate 按钮,下面就是等待 KDE 下载和安装了,时间不定,要看网络情况了,文件包还真不小,375.9 MB,乖乖。

乘这段时间,你可以去吃个饭了(我这顿饭吃了四个小时……)。安装完毕的时候,会让您选择您的登录管理界面的默认界面,看您的喜好选择您喜欢的就可以了。

完后,关闭 Ubuntu Software Center 并重启你的计算机。

重启到登录界面你的时候,你就可以看到登录界面已经发生了变化了。

填入您的用户名和密码,打开选项按钮,然后您就可以选择 KDE 桌面登录了。

好了,您已经可以看到并使用您的新桌面了。

那么当您不在想使用 KDE 的时候呢,作为 linux 系统,最不可忍受的就是我们不能控制系统的各个方面了,所以不想使用的时候,我们当然要能完整无后遗症的删除它。删除方法很简单,打开一个终端窗口( Ctrl+Alt+T )然后键入如下命令:

sudo apt-get install -y ppa-purge
sudo ppa-purge ppa:kubuntu-ppa/backports
sudo apt-get -f -y autoremove

现在我们已经完全的了解了如何安装和删除 KDE SC 4.9 了,您感觉怎么样?

原文:Vim 复制粘帖格式错乱问题的解决办法

有时候,复制文本(尤其是代码)到 Vim,会出现格式错乱的问题。看样子,应该是自动缩进惹得祸。本文不去深究原因,直接给出解决方法。

  1. paste 模式

运行如下命令,进入 paste 模式:

:set paste

进入 paste 模式后,按 i 键进入插入模式,然后再粘帖,文本格式不会错乱了。但粘帖后还需要按 进入普通模式并执行如下命令结束 paste 模式:

:set nopaste

显然,这样非常麻烦。下面我们进行改进。

  1. 快捷键一

我们可以利用设置快捷键来简化上面的两个命令。在 ~/.vimrc 中加入如下两行:

map  :set paste
map  :set nopaste

这样,在普通模式下按 F10 (你也可以用自己喜欢的按键)就会进入 paste 模式,按 i 进入插入模式后粘帖,然后按 回到普通模式,再按 F11 结束 paste 模式。
这样虽然方便了,但占用了两个按键。下面我们继续改进。

  1. 快捷键二

在 ~/.vimrc 中加入如下内容:

set pastetoggle=

这样就可以把上面的 F10 和 F11 合并为一个快捷键来切换 paste 模式了。
还有更好的办法么?当然!

  1. Vim 寄存器一

关于 Vim 寄存器的详细信息请执行命令 “:help registers” 查看。
对于“剪切板”这个概念,Linux 下有两个东西:一个叫做选择缓冲区(X11 selection buffer),另一个才是剪切板(clipboard)。鼠标或键盘选择内容时,内容实时进入缓冲区,然后按中键将内容插入光标所在位置;鼠标或键盘选择内容后,按Ctrl-C(或Shift-Ctrl-C)或菜单中的“复制”,内容进入剪切板,然后按Ctrl-V(或Shift-Ctrl-V)或菜单中的“粘帖”将内容插入光标所在位置。关于这两者的详细信息,请自行搜索,此处不深究。
Vim 的寄存器 "* 对应系统缓冲区, 寄存器 "+ 对应系统剪切板。
如果你是把选择的内容(在系统缓冲区中)粘帖到 Vim ,只需在普通模式下执行如下命令:

"*p

对应的,如果你是把复制的内容(在系统剪切板中)粘帖到 Vim,只需在普通模式下执行如下命令:

"+p

怎么样?格式没有错乱了吧?
这样虽然简便很多了,但还是需要输入三个字母,并且这三个字母都得使用右手小拇指输入,甚至其中的两个字母还需要 shift 键配合!
还有更简单的办法。

  1. Vim 寄存器二

在 ~/.vimrc 里加入如下内容:

set clipboard=unnamed

然后只需在普通模式下按 p 即可把系统缓冲区中的内容粘帖到 Vim 中,就像粘帖用 yy 命令得到的内容一样,并且格式不错乱。
如果把上面的一行换成如下内容:

set clipboard=unnamedplus

普通模式下按 p 粘帖的内容就是系统剪切板里的内容了。
这已经足够简便了。在搜索此问题的过程中,我还看到了另外一些办法。

  1. 快捷键三

在 ~/.vimrc 里加入如下内容:

inoremap  :setl pastegi+:setl nopastegi

这样,你就可以在插入模式下使用 Shift-Insert 快捷键在粘帖系统剪贴板中的内容了。
把上面一行替换成如下内容同样可以达到相同的效果:

inoremap  "+p`]a

注意,这可是在插入模式下哦!比起第 5 节提到的方法,这种方法省去了一次 按键进入普通模式和一次 i 按键重新回到插入模式。
至此,你需要做的只是:
a. 复制你想要的内容;
b. 回到 Vim 并按 Shift-Insert 快捷键;
c. 继续编辑其他内容。

参考

前言:最近新入手了一台电信版的Android手机,由于厌恶其中预装的各种应用,也想按照自己的意愿裁剪一下手机中的应用,所以对此进行了一些学习。我找到了一个HTC的RUU包,从中解析到了system.img,发现这个system.img不是EXT4格式的,不能简单的在Ubuntu上挂载,于是在网上找到了一篇说明Android里面各种分区拆解的文章。我做了翻译和补充,供大家参考。

RAMDISK

RAMDISK(initrd)是一个小的分区镜像,在引导时内核以只读方式挂载它。它只保护/init和一些配置文件。它用于初始化和挂载其它的文件系统镜像。RAMDISK是一个标准的Linux特性。

ramdisk.img被包含Google android SDK中($SDK\_ROOT/tools/lib/images/ramdisk.img),也可以编译生成($SDK\_ROOT/out/target/product/$PRODUT\_NAME/ramdisk.img)。这是一个gzip压缩的CPIO文件。

修改Android的RAMDISK镜像

要修改它,首先复制它到你的Linux机器上,并用如下命令解开:

user@computer:$ mv ramdisk.img ramdisk.cpio.gz
gzip -d ramdisk.cpio.gz
mkdir ramdisk
cd ramdisk  
cpio -i -F ../ramdisk.cpio

解开后,做一些你的修改和删除无用的文件后,通过如下命令重新创建ramdisk.cpio:

user@computer:$ cpio -i -t -F ../ramdisk.cpio | cpio -o -H newc -O ../ramdisk_new.cpio

然后可以重新改名并压缩:

user@computer:$ cd ..
gzip ramdisk_new.cpio
mv ramdisk_new.cpio.gz ramdisk.img

SYSTEM和DATA镜像

system.img是挂载到 / 下的镜像,它包含了全部的系统可执行文件。

userdata.img挂载到 /data 下的镜像,它包含了应用及用户相关的数据。

在实际的物理设备中,他们通过ramdisk中的init.rc脚本挂载为文件系统。它们可以有各种不同的格式,如 YAFFS2、EXT4或 UBI-FS。

它们通过Android构建系统生成并刷入到物理设备中。模拟器对它们的使用有所不同(见下文):

Android模拟器镜像

  • system.img 被复制到一个临时文件中,用于模拟器工作。所以你对模拟器中的根目录做的任何改变都会在模拟器退出后丢失。
  • userdata.img 只用于使用了 -wipe-data参数时。通常将~/.android/userdata-qemu.img(linux下)作为 /data 分区镜像挂载,而使用 -wipe-data 时会复制userdata.img中的内容到userdata-qemu.img。
  • sdcard.img 用于使用了-sdcard参数时,挂载到/sdcard
  • cache.img 用于使用了-cache参数来指定/cache内容。如果未指定该参数,模拟器启动时会创建一个空的临时文件挂载到/cache上。这个临时文件会在退出时自动清除。

模拟器不会修改system.img和userdata.img。

拆解Android’s YAFFS2 镜像

一个YAFFS2文件在Linux被识别为“VMS Alpha executable”文件。

user@computer:$ file ${SDK_ROOT}}/out/target/product/imx51_ccwmx51js/system.img
./out/target/product/imx51_ccwmx51js/system.img: VMS Alpha executable

从Google代码站中下载 unyaffs

如果上面的可执行文件在你的系统不工作的话,你也可以下载 源代码 并重新编译它。

user@computer:$ gcc -o unyaffs unyaffs.c
sudo chmod +x /complete/directory/path/to/unyaffs

然后使用这个命令来拆解 YAFF2 镜像文件:

user@computer:$ mkdir image
cd image
unyaffs ../system.img

拆解EXT4镜像

如果镜像是EXT4,那么很简单,直接挂载就可以读取其中的内容了:

user@computer:$ mount -o loop -t ext4 system.img /media

拆解JFFS2镜像

作为补充,这里说一下如何拆解JFFS2镜像:

user@computer:$ modprobe mtdblock
modprobe jffs2
modprobe mtdram total_size=65536 erase_size=256
mknod /tmp/mtdblock0 b 31 0
dd if=/pathtoimage/rootfs.jffs2 of=/tmp/mtdblock0
mount -t jffs2 /tmp/mtdblock0 /mnt

原文链接:http://www.lindusembedded.com/blog/2012/02/23/androids-partition-images/

Diablo 3 现在在全球游戏界的热门程度绝对排名第一,这个游戏是什么游戏我就不多介绍了,如果你实在不了解的话,可以去他们的官方网站或者维基百科看看。导致很多游戏厂商都不敢在这个阶段发布新游戏和更新游戏版本。那么,作为 Linux 用户,如何在 Linux 下也能玩 Diablo 3 呢。

要想在 Linux 下安装 Diablo 3 ,我们需要一个支持软件,PlayOnLinux

playonlinux在百度百科上的介绍官方下载地址,直接下载地址:

我们已经在 32 位的 Ubuntu 12.04 LTS 上做过完整的测试,这个教程也是基于它的。很遗憾的是,我们不能在 64 位的系统上完成这个过程,因为没办法在 64 位的系统上找到合适的 OpenGL 库。

另外还有一个要注意的地方,Ubuntu 虽然不太需要很强劲的计算机,不过我们打算运行的 Diablo 3 却需要一个稍微强大一点的计算机,所以,您的显卡内存CPU最好能比 Diablo 3 要求的最低计算机配置高一些。

好了,下面我们就开始一步一步的安装 Diablo 3。

第一步 安装PlayOnLinux和Wine

PlayOnLinux 对于不同的 Linux 操作系统有不同的版本,所以大家在安装的时候选择对应自己的 Linux 系统的版本,目前有Fedora、Debian、archlinux、Frugalware和Ubuntu的版本,大家可以在PlayOnLinux的官方下载地址下载。

对应的,不同的 Linxu 系统的安装方法也略有不同。所以我们不在这里做详细的介绍了,大家可以在它们的官方网站寻求到相关的介绍。

同时您的系统中需要安装有 Wine,如果没有,您可以去这里查找相关介绍和安装文件

第二步 暗黑3下载

如果你购买了 Diablo 3 的载体版本的话,那么你可以跳过这一步了。如果没有的话,我们可以采用下载版本的。您需要在Battle.net上注册一个账号,然后通过这篇文章来了解相关知识,从而下载一个安装文件包。

现在您应该在您的系统中有一个 .exe 的安装文件包。右键点击它,然后从对应菜单中选择“Open With Wine Windows Program Loader”

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201206/07/1012168akm222igs8ke0gk.jpg)

Blizzard 的下载器窗口将开始运行,您需要设置文件储存的硬盘所在位置。这将下载到一个大约 8 GB 的文件,这个过程可能是漫长的,当然,您可能换需要一个大点的硬盘。

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201206/07/101219bwl33jr5g2sma2za.jpg)

第三步 安装 Diablo 3

打开 PlayOnLinux,第一次运行的时候,您需要对它做一些配置。根据您的情况,完成他们就可以了。好了,这个时候PlayOnLinux 已经运行起来,您已经看到 PlayOnLinux 的运行窗口,点击窗口上的“Install”按钮,然后在新打开的对话框中输入“Diablo”来查找到 Diablo 3。

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201206/07/101221a2ty2z6vasasa8q8.jpg)

选中搜索出来的 Diablo 3 ,然后点击右下角的 “Install” 按钮。好了,一个标准的程序安装窗口将出现,您只需要点击“Next”按钮来进入到下一步。

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201206/07/101223opv3e5fee1ewqw5z.jpg)

选择您的安装文件是那种介质的,然后点击“Next”

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201206/07/101225n71x5171noxtx4w5.jpg)

我们是采用的下载文件包的方式,所以选择下载的安装文件包,然后点击“Next”……

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201206/07/101227dj3oy3yv0ccjhujh.jpg)

现在您只需要等待就可以了,程序会下载并安装 Diablo 3 游戏的一些资源并安装。您只需要在需要的时候单击“下一步”...

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201206/07/101230cvaccvg8gckapkcc.jpg)

安装完成后,会弹出一个“Diablo III Setup”的对话框,它会更新一些文件……

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201206/07/101232omcmo28nia9m2an4.jpg)

一会儿以后,文件更新完毕,Diablo 3 的安装对话框出现,点击那个大大的“Install”按钮。
[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201206/07/1012347l6jclhsm67nn3qs.jpg)

下面就是等待的时间了,看您的计算机性能了,时间大约需要15-20分钟。

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201206/07/1012367mq620x32lxmfd3q.jpg)

安装完成的时候,您就可以点那个“PLAY”按钮来进行游戏了。

[
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201206/07/101239tujyrlrrwyvrlpuu.jpg)

好了,安装完成,您可以游戏了,在您的桌面上也会有一个进入游戏的快捷方式,您以后就可以通过它来进行游戏了。祝您在游戏里玩的愉快!

[https://img.linux.net.cn/data/attachment/album/201206/07/1012411t1gyts9qyq7o9iy.jpg
点击查看原始大图](https://img.linux.net.cn/data/attachment/album/201206/07/1012411t1gyts9qyq7o9iy.jpg)

SQLite,是一款轻型的数据库,实现了多数的SQL-92标准,包括事务,就是代表原子性、一致性、隔离性和持久性的(ACID),触发器和多数的复杂查询。SQLite数据库是Android平台软件开发必备数据库产品!
在Ubuntu 12.04下进行SQLite开发简单实例如下:
1、 安装SQLite3
hadron@hadron ~ $ sudo apt-get install sqlite sqlite3
2、 查看版本号
hadron@hadron ~ $ sqlite3 -version
3、 创建test数据库
hadron@hadron ~ $ sqlite3 test.db
SQLite version 3.7.9 2011-11-01 00:52:41
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
4、 查看数据库
sqlite> .database
seq name file
--- --------------- ----------------------------------------------------------
0 main /home/hadron/test.db
5、 创建数据表
sqlite> create table user(id,username,password);
6、 插入数据
sqlite> insert into user(id,username,password) values(1,'abc','123');
7、 查询数据
sqlite> select * from user;
1|abc|123
8、 退出数据库
sqlite> .exit
9、 再次进入数据库
hadron@hadron ~ $ sqlite3
SQLite version 3.7.9 2011-11-01 00:52:41
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
10、安装可视化工具:
hadron@hadron ~ $ sudo apt-get install sqlitebrowser