Ubuntu Softwares

 

 

Commands

1. 介绍:
Ubuntu下的一些命令,我经常忘记。所以贴在这里以便查找方便。

终端模式下 命 令 说 明
与目录有关 rm -rf filefold/ 强行删除非空目录
cd ~/
快速回到/home下的用户目录
与Latex有关 latex filename.tex 编译tex文件,产生dvi文件
xdvi filename.dvi
查看dvi文件
ps2pdf *.ps
产生pdf文件
dvips *.dvi
产生pdf文件
pdflatex *.tex
产生pdf文件
dvipdfmx *.dvi
产生pdf文件,利用dvipdfmx *.dvi生成pdf的文件会比较小
xpdf *.pdf
查看pdf文件
sam2p *.jpg *.eps
将jpg图片转为eps文件

 

 

GDB

介绍:
GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但如果你是在 UNIX,Linux平台下做软件,你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大的功能。所谓“寸有所长,尺有所短”就是这个道理。

GDB的命令很多,这里不一定面面俱到。先介绍GDB中的一个非常有用的功能:补齐功能。它就如同Ubuntu下SHELL中的命令补齐一样。当你 输入一个命令的前几个字符,然后输入TAB键,如果没有其它命令的前几个字符与此相同,SHELL将补齐此命令。如果有其它命令的前几个字符与此相同,你 会听到一声警告声,再输入TAB键,SHELL将所有前几个字符与此相同的命令全部列出。而GDB中的补齐功能不仅能补齐GDB命令,而且能补齐参数。

而且大部分GDB内的命令都可以仅输入前几个字符,只要不与其它指令冲突。如quit可以简写为q,因为以q打头的命令只有quit。List可以简写为l,等等。

1. 启动GDB

启动GDB命令是在SHELL下输入的,你可以输入GDB来启动GDB程序。如果你已经编译好一个程序,我们假设文件名为hello (注意想用GDB调试它,必须在编译时带上g参数,例如
$ g++ -g -o hello hello.c
得到hello文件),然后输入
$ gdb hello
来启动GDB并载入程序。如果已经启动了GDB,使用file命令。如
gdb> file hello
也可在GDB中再载入程序。注意:路径名要正确。

2. 退出GDB === q

在GDB的命令方式下,输入quit,就可以退出GDB。也可以输入'C-d'来退出GDB。

3. 运行程序 === r

在GDB中已将要调试的程序载入后,可以用run命令来执行。如果程序需要参数,在run指令后接着输入参数,就象在SHELL下执行一个需要参数的命令一样。

表 1. gdb 中最常用的命令

命令 说明 例子
help 显示命令类别 help - 显示命令类别
help breakpoints - 显示属于 breakpoints 类别的命令
help break - 显示 break 命令的解释
run 启动所调试的程序 ?
kill 终止正在调试的程序的执行 通常这会在要执行的代码行已经超过了您想要调试的代码时使用。执行 kill 会重置断点,并从头再次运行这个程序
cont 所调试的程序运行到一个断点、异常或单步之后,继续执行 ?
info break 显示当前的断点或观察点 ?
break 在指定的行或函数处设置断点 break 93 if i=8 - 当变量 i 等于 8 时,在第 93 行停止程序执行
Step 单步执行程序,直到它到达一个不同的源代码行。您可以使用 s 来代表 step 命令 ?
Next 与 step 命令类似,只是它不会“单步跟踪到”子例程中 ?
print 打印一个变量或表达式的值 print pointer - 打印变量指针的内容
print *pointer - 打印指针所指向的数据结构的内容
delete 删除某些断点或自动显示表达式 delete 1 - 删除断点 1。断点可以通过 info break 来显示
watch 为一个表达式设置一个观察点。当表达式的值发生变化时,这个观察点就会暂停程序的执行 ?
where 打印所有堆栈帧的栈信息 where - 不使用参数,输出当前线程的堆栈信息
where all - 输出当前线程组中所有线程的堆栈信息
where threadindex - 输出指定线程的堆栈信息
attach 开始查看一个已经运行的进程 attach <process_id> - 附加到进程 process_id 上。process_id 可以使用 ps 命令找到
info thread 显示当前正在运行的线程 ?
thread apply threadno command 对一个线程运行 gdb 命令 thread apply 3 where - 对线程 3 运行 where 命令
Thread threadno 选择一个线程作为当前线程 ?

4. 查看程序信息 === info

info指令用来查看程序的信息,用help info查看帮助的话,会显示info指令的参数非常多,但info指令最多的是用它来查看断点信息。

4.1 查看断点信息

info br

br是断点break的缩写,记得GDB的补齐功能吧。用这条指令,你可以得到你所设置的所有断点的详细信息。包括断点号,类型,状态,内存地址,断点在源程序中的位置等。

4.2 查看当前源程序

info source

4.3 查看堆栈信息

info stack

用这条指令你可以看清楚程序的调用层次关系。

4.4 查看当前的参数

info args

5. 列出源一段源代码 === l

5.1 列出某个函数

list FUNCTION

5.2 以当前源文件的某行为中间显示一段源程序

list LINENUM

5.3 接着前一次继续显示

list

5.4 显示前一次之前的源程序

list -

5.5 显示另一个文件的一段程序

list FILENAME:FUNCTION 或 list FILENAME:LINENUM

6. 设置断点 === break

现在我们将要介绍的也许是最常用和最重要的命令:设置断点。无论何时,只要程序已被载入,并且当前没有正在运行,就能设置,修改,删除断点。设置断点的命令是break。有许多种设置断点的方法。如下:

6.1 在函数入口设置断点

break FUNCTION

6.2 在当前源文件的某一行上设置断点

break LINENUM

6.3 在另一个源文件的某一行上设置断点

break FILENAME:LINENUM

6.4 在某个地址上设置断点,当你调试的程序没有源程序是,这很有用

break *ADDRESS

除此之外,设置一个断点,让它只有在某些特定的条件成立时程序才会停下,我们可以称其为条件断点。这个功能很有用,尤其是当你要在一个程序会很多次 执行到的地方设置断点时。如果没有这个功能,你必须有极大的耐心,加上大量的时间,一次一次让程序断下,检查一些值,接着再让程序继续执行。事实上,大部 分的断下并不是我们所希望的,我们只希望在某些条件下让程序断下。这时,条件断点就可以大大提高你的效率,节省你的时间。条件断点的命令如下,在后面的例 子中会有示例。

6.5 条件断点

break ...if COND

COND是一个布尔条件表达式,语法与C语言中的一样。条件断点与一般的断点不同之处是每当程序执行到断点处,都要计算条件表达式,如果为真,程序才会断下,否则程序会一直执行下去。

7. 其它断点操作

GDB给每个断点赋上一个整数数字,这个数字在操作断点时起到重要作用,它实际上就代表相应的断点。GDB中的断点有四种状态:

有效(Enabled)

禁止(Disabled)

一次有效(Enabled once)

有效后删除(Enabled for deletion)

在上面的四个状态有效和禁止都很好理解,禁止就是让断点暂时失效。一次有效就是当程序在此断点断下后,断点状态自动变为禁止状态。有效后删除就是当程序在此断点断下后,断点被删除。实际上,后两种状态一般不会碰到。

当你设置一个断点后,它的确省状态是有效。你可以用enable和disable指令来设置断点的状态为有效或禁止。例如,如果你想禁止2号断点,可以用下面的指令:

disable 2

相应的,如果想删除2号断点,可以有下面的指令:

delete 2

8. 设置监视点 === watch

当你调试一个很大的程序,并且在跟踪一个关键的变量时,发现这个变量不知在哪儿被改动过,如何才能找到改动它的地方。这时你可以使用watch命令。简单地说,监视点可以让你监视某个表达式或变量,当它被读或被写时让程序断下。watch命令的用法如下:

watch EXPRESSION

watch指令是监视被写的,当你想监视某个表达式或变量被读的话,需要使用rwatch指令,具体用法是一样的。要注意的是,监视点有硬件和软件 两种方式,如果可能Linux尽可能用硬件方式,因为硬件方式在速度上要大大快于软件方式。软件方式由于要在每次执行一条指令后都要检查所要监视的值是否 被改变,因此它的执行速度会大大降低。同时它也无法设置成被读时让程序断下,因为读操作不会改变值,所以GDB无法检测到读操作。幸运的是,目前的PC机 基本都支持硬件方式。如果你想确认一下你的机器是否支持硬件,你可以在调试程序时用watch设置一个监视点,如果GDB向你显示:

Hardware watchpoint NUM: EXPR

那么你可以放心了,你的机器支持硬件方式。

9. 检查数据

最常用的检查数据的方法是使用print命令。

print exp

print指令打印exp表达式的值。却省情况下,表达式的值的打印格式依赖于它的数据类型。但你可以用一个参数/F来选择输出的打印格式。F是一 个代表某种格式的字母,详细可参考输出格式一节。表达式可以是常量,变量,函数调用,条件表达式等。但不能打印宏定义的值。表达式exp中的变量必须是全 局变量或当前堆栈区可见的变量。否则GDB会显示象下面的一条信息:

No symbol "varible" in current context

10. 修改变量值

在调试程序时,你可能想改变一个变量的值,看看在这种情况下会发生什么。用set指令可以修改变量的值:

set varible=value

例如你想将一个变量tmp的值赋为10,

set tmp=10

11. 检查内存值

检查内存值的指令是x,x是examine的意思。用法如下:

x /NFU ADDR

其中N代表重复数,F代表输出格式(见2.13),U代表每个数据单位的大小。U可以去如下值:

b :字节(byte)

h :双字节数值

w :四字节数值

g :八字节数值

因此,上面的指令可以这样解释:从ADDR地址开始,以F格式显示N个U数值。例如:

x/4ub 0x4000

会以无符号十进制整数格式(u)显示四个字节(b),0x4000,0x4001,0x4002,0x4003。

12.输出格式

缺省情况下,输出格式依赖于它的数据类型。但你可以改变输出格式。当你使用print命令时,可以用一个参数/F来选择输出的打印格式。F可以是以下的一些值:

'x' 16进制整数格式

'd' 有符号十进制整数格式

'u' 无符号十进制整数格式

'f' 浮点数格式

13. 单步执行指令

单步执行指令有两个step和next。Step可以让你跟踪进入一个函数,而next指令则不会进入函数。

14.继续执行指令

当程序被断下后,你查看了所需的信息后,你会希望程序执行下去,输入 continue, 程序会继续执行下去。

15.帮助指令help

在GDB中,如果想知道一条指令的用法,最方便的方法是使用help。使用方法很简单,在help后跟上指令名。例如,想知道list指令用法,输入

help list

 

Gvim

1. 介绍:

GVIM和Emacs是两种功能最强、使用也比较复杂的编辑器,和Emacs相比,GVIM使用起来更简单,更容易上手,体积也比Emacs小的多,占用 内存资源也少。当然,如果你能像李师傅一样把Emacs熟练到出神入化的境界,自然是最好不过了。

 我开始用VIM时并没有体会到它有什么好,只是迫不得已使用它。所以很快也把它忘了。此后当我喜欢上Ubuntu时,却发现又不得不选择Linux下的 文本编译器,这个时候自然决定学VI。从VI和VIM到GVIM,软件本身已经经历了更新换代,也使我必须去学更多更复杂的东西,以体会什么才是真正的编 辑利器。

 本文主要是记录我在安装GVIM和它的插件,以及使用它过程中的点点滴滴,以备以后忘了时有据可查,同时也期望作为经验交流。

  

2 Ubuntu下的Gvim的安装

Gvim的安装
在Ubuntu只要用
sudo apt-get install gvim
就可以安装.

插件的安装

  • cscope,exuberant-ctags和global的安装:
    sudo apt-get install exuberant-ctags cscope global
  • cppcomplete.vim和taglist.vim的安装
    mkdir -p ~/.vim/plugin ~/.vim/doc
    cp cppcomplete.vim taglist.vim ~/.vim/plugin
    cp /usr/share/doc/global/examples/gtags.vim.gz ~/.vim/plugin
    cd ~/.vim/plugin
    gzip -d gtags.vim.gz

    taglist 的下载地址:
    http://www.vim.org/scripts/script.php?script_id=273
    cppcomplete 的下载地址:
    http://www.vim.org/scripts/script.php?script_id=527

  • Gvim的设置
    很多地方说要在~/.vimrc文件中改,但是我的Ubuntu在~/下没有这个文件,而在/etc/vim中有vimrc这个文件。但按照他们的设置却 不是完全有效,后来自己发现有些要在/usr/share/vim的gvimrc文件中改。

    我的vimrc如下:
    if filereadable("/etc/vim/vimrc.local")
    source /etc/vim/vimrc.local
    endif

    colorscheme koehler
    set number
    set shiftwidth=4
    set softtabstop=4
    set tabstop=4
    set fileencodings=ucs-bom,utf-8
    if has("gui_running")
    set guifont=Bitstream/ Vera/ Mono/ 12
    endif

    "设置高亮度
    function ToggleHLSearch()
    if &hls
    set nohls
    else
    set hls
    endif
    endfunction

    "打开C/C++的风格自动缩进
    set cin

    "显示行值
    set nu


    我的gvimrc如下:
    if has('gui_gtk2')
    colorscheme green
    set guifont=Bitstream/ Vera/ Sans/ Mono/ 16
    else
    set guifont=-misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-1
    endif

    set nocompatible
    " 设置编码
    set enc=utf-8
    " 设置文件编码
    set fenc=utf-8
    " 设置文件编码检测类型及支持格式
    set fencs=utf-8,chinese,ucs-bom,gb18030,gbk,gb2312,cp936
    " 指定菜单语言
    set langmenu=zh_CN.UTF-8
    " 设置语法高亮度
    set syn=cpp
    " 查找结果高亮度显示
    set hlsearch
    " tab宽度
    set tabstop=4
    set cindent shiftwidth=4
    set autoindent shiftwidth=4
    " C/C++注释
    set comments=://
    " 修正自动C式样注释功能 <2005/07/16>
    set comments=s1:/*,mb:*,ex0:/
    " 增强检索功能
    set tags=./tags,./../tags,./**/tags
    " 键盘操作
    map gk
    map gj
    " 命令行高度
    set cmdheight=1
    " 中文帮助
    if version > 603
    set helplang=cn
    endif

    if filereadable("/etc/vim/gvimrc.local")
    source /etc/vim/gvimrc.local
    endif

    3 Gvim的基本命令

    编 辑模式下 命 令 说 明
    进 入插入模式 i 从光标所在位置前开始插入文本
    I 将光标移动到当前行行首,然后在其前插入文本
    a 用于在光标当前所在位置之后追加新文本
    A 将光标移动到所在行行尾,在那里插入新文本
    o 在光标所在行的下面新开一行,并将光标置于行首,等待输入文本
    O 在光标所在行的上面插入一行,并将光标置于行首,等待输入文本

    光标定位

    G

    将光标移动到文件最后一行

    替换和删除

    rc

    用字符c替换光标所指向的渌前字符

    nrc

    用字符c替换光标所指向的前n个字符

    x

    删除光标处的字符

    nx

    删除从光标所在位置开始向右的n个字符

    dw

    删除一个单词。若光标个在某个单词中间,则从光标所在位置开始删至词尾并连同空格

    ndw

    删除n个指定的单词

    db

    删除光标所在位置之前的一个词

    ndb

    删除光标所在位置之前的n个词

    dd

    删除当前行

    ndd

    删除当前行及向后n-1行的内容

    复制和粘贴

    YY

    将当前行的内容复制到缓冲区

    nYY

    将当前开始的n行内容复制到缓冲区

    p

    将缓冲区的内容写到光村所在位置

     

    /str

    往右移动到有str的地方

    ?str

    往左移动到有str的地方

    n

    向相同的方向移动到有str的地方

    N

    向相反的方向移动到有str的地方

    撤销和重复

    u

    取消前一次的误操作

    .

    再执行一次前面刚完成的某个复杂的命令

    退出

    ZZ

    存盘退出

    ZQ

    不保存退出


    命令行模式下

    命令

    说明

    跳行

    :n

    跳到第n行

    退出

    :q

    退出Vi

    :wq

    保存退出Vi

    :q!

    不保存退出Vi

    文件相关

    :w

    将当前编辑的内容存盘

    :w file

    将当前编辑的内容写入到file文件中

    :n1,n2w file

    将从n1开始到n2结束的行写到file文件中

    :nw file

    将第n行写到file文件中

    :1,.w file

    将从第一行起到光标所在位置的所有内容写入到file文件中

    :.,$w file

    将从光标当前位置起到文件结尾的所有内容写入到file文件中

    :r file

    打开另一个文件file

    :e file

    新建另一个文件file

    :f file

    将当前文件改名为file文件

    字符串搜索、替换、删除

    :/str/

    从当前光标开始往右移动到有str 的地方

    str?

    从当前光标开始往左移动到有str 的地方

    :/str/w file

    将包含有str的行写入到file文件中

    :/str1/,/str2/w file

    将从str1开始到str2结束的内容写入到file文件中

    :s/str1/str2/

    将第一个str1替换为str2

    :s/str1/str2/g

    将所有的str1替换为str2

    :.,$ s/str1/str2/g

    将从当前位置到结尾的所有str1替换为str2

    文本的复制、移动和删除

    :n1,n2 co n3

    将从n1行到n2行的内容复制到n3后面

    :n1,n2 m n3

    将从n1行到n2行的内容移动到n3后面

    :d

    删除当前行

    :nd

    删除从当前行开始的n行

    :n1,n2 d

    删除从n1行开始到n2行结束的所有内容

    :.,$ d

    删除从当前行开始到结尾的所有内容

    :/str1/,/str2/d

    删除从str1开始到str2为止的所有内容

    执行shell

    命令

    :!ls

    运行shell命令ls(这里ls可用其他命令替换)

    n1,n2 w !Command

    将n1到n2行的内容作为Command命令输入。如果不指定n1和n2,则将整个文件的内容作为命令 Command的输入

    :r !ls

    将命令运行ls的结果写入当前行的位置(这里ls可用其他命令替换)

    4. Literatures

    Here I would like to recommend some good papers about "Gvim".

  • 王 垠之《Emacs是一种信仰!世界最强编辑器介绍》
  • Dieken 之《程序员的编辑器——VIM》
  • 5. gvim的fold功能

    程序写得大了以后, 如何使得程序赏心悦目, 会让编程的效率事半功倍. 为此gvim有了fold这个功能, 也就是折叠, 将繁琐的细节暂时隐蔽起来, 留出的只是粗框架
    打开gvim的折叠功能,请在~/.vimrc 中加入:set foldmethod=marker ,使用gvim默认的折叠标签进行处理。使用方法如下:

  • 加折叠标签
    在normal模式(not insert)下,从键盘输入zf并回车,您就会看到折叠在一起的两行标签如下:
    /*{{{*/
    .....这里输入您 的程序代码
    /*}}}*/
  • 输入程序代码后,将代码折叠起来使用如下命令(normal模式):
    zc 回车
  • 打开折叠的程序有以下几种方法
    a、在折叠的行上移动光标
    b、在normal模式下输入zo并回车
  • 给一段文字自动加折叠(normal 模式)
    zf
  • zr命令可以打开折叠几层的内容 zm使用内容折叠的更多一些(多层折叠操作时可反复使用)。
  • 嵌套了多层的折行, 也可以用zR命令一次打开所有折行
  • 关闭所有的嵌套折行使用zM
  • 可以用jznj命令来禁用一个折行. 然后用jzNj还可以恢复它. jzij命令则可以在两者之间切换.
  • 其它的,请参考vim的使用手册。

  • 转载于 http://debian.bloghome.cn/posts/127.html

    6. Notices and messages

    Gvim的缺省字体大小只能在gvimrc。green配色方案是我自己改的,主要是把背景改为绿色,适当保护眼睛。如果你觉得green配色方案不好, 可以到/usr/share/vim/vim71/colors里,那里保存着很多的配色方案,你可以任选一个,也选其中一个加以自己的修改。就此打住, 开始体验之旅吧!

     

    Nvu

    1. 介绍:
    Nvu(读作Nview)是跨平台的“所见即所得”(WYSIWYG)的免费网页编辑器。就像 Frontpage, Dreamweaver 那样。由Linspire公司出品,是Linux平台上最优秀的网页编辑工具之一。它基于Mozilla中的网页编辑器 Composer 发展而来。
    Amaya也是一个不错的网页编辑工具。但不能输入中文;而且还不能直接新建“HTML”文档,菜单操作也不太 顺手。感觉 不够友好。特别像我这种习惯Windows喜欢DreamWave的Ubuntu菜鸟更是巴不得在Ubuntu下直接运行Windows各种软件。

    2. Ubuntu下Nvu的安装准备:

    网上说Nvu可以源里安装
    $ sudo apt-get install nvu   
    但我的Ubuntu好像不行,可能是源的问题。

    我们可以到这里下载到版本  (20060530)的Nvu, 大小为 8.6M。
    http://backports.org/debian/pool/main/n/nvu/nvu_1.0final-0bpo1_i386.deb
    (要看最新版到:http://backports.org/debian/pool/main/n/Nvu/ )

    而我发现,用台湾的镜像会快不少。
    http://ftp.tw.debian.org/backports.org/pool/main/n/nvu/nvu_1.0final-0bpo1_i386.deb

    3. 安装
    将它下载后,双击就开始安装了。记得关闭新立得等包管理软件。

    4. 汉化
    先下载简体中文包,http://ftp.ubuntu.org.cn/programs/nvu/en-US.jar
    帐号密码可以在论坛的置顶帖中找到。

    另外,看到论坛上的朋友说,上面这个包新建文件总是Big5编码的问题。虽然在20060530这个版本中没发现,但还是进行了一些修改(修改方法见页 尾),做了个新的包,点这里下载 。

    下载后,将它放到自己的主目录下,然后开始安装中文包,执行下面的命令:
    $ cd /usr/lib/nvu/chrome/
    $ sudo mv en-US.jar en-US.jar.orig
    Password:
    $ sudo cp ~/en-US.jar ./

    5. 运行
    点击“应用程序”,“编程”,“ Nvu ”,OK!

    6. Notices and messages
    转载于:“擂鼓崖”http://blog.csdn.net/tipfoo/

    Matlab

    1. 介绍:
    MATLAB,我想无须太多介绍。

    2. Ubuntu下Matlab的安装准备:

    Matlab-Linux版的文件很大(3.3G),而且没有window版普及。不过现在网上只有你想不到的,没有你找不到的。下面只是安装的方法
    挂载iso文件
    $ sudo mount -o loop Mathworks.Matlab.R2007b.UNIX.DVD.-TBE.iso /media/cdrom   
    建立安装目录
    缺省是/opt/matlab
    $ sudo mkdir /opt/matlab
    拷贝license.dat
    一般在映像的目录下有一个CRACK目录,这里是(/media/cdrom/Crack)
    $ sudo copy /$CDROM$/crack/license_locked.dat to $MATLAB$/license.dat
    $MATLAB$是Matlab安装目录,这里是/opt/matlab
    更清楚一些
    $ sudo cp /media/cdrom/Crack/license_locked.dat /opt/matlab/etc/license.dat

    3. 安装
    在/opt/matlab/下
    $ sudo /media/cdrom/install

    1). 不要在/media/cdrom目录下执行这条命令
    2). 安装过程中需要确认一些信息,如安装什么模块,安装目录等等
    3). sudo /opt/matlab/install_matlab 进行配置,推荐默认配置

    4. 运行
    $ sudo /opt/matlab/bin/matlab

    6. Notices and messages
    1. 如果提示license出错,将/media/cdrom/Crack目录下的license_locked.dat复制到/opt/matlab/etc目录下(这个目录下面已经有一个了,覆盖即可)
    2.如果提示openGl的问题,请查论坛相关的帖子

    Xubuntu

    最近一直在捣鼓ubuntu,我的笔记本比较老,同时打开firefox和文件管理器后就成了老牛车了,更不用说openoffice了。 装了fluxbox速度还可以,就是界面过于简单。而xfce又编译不成功。听说xubuntu比较适合旧机子,决定尝试一下。

    关于xubuntu的硬盘安装

    下了xubuntu alternate的iso文件,放在根目录下,如果是双系统的且有grubfordos的,那么修改menu.lst文件就可以了, 不过要注意

  • 不要直接解压iso,而起iso里面的vmlinuz和initrd.gz会导致安装中无法挂载iso的;
  • vmlinuz和initrd.gz的匹配问题:
    我找了不少的vmlinuz和initrd.gz,包括ubuntu.org.cn上bhd_i386_2.6.17-10g.tar.gz内的这两个文件, 都会在安装中出现 "未找到内核模块"问题。我下的xubuntu.iso是gusty的,最后从ubuntu.org.cn上下了 gusty目录下的vmlinuz和initrd.gz,总算成功安装了。 vmlinuz和initrd.gz的匹配有没有其他的原因和 其他的方法,请知道的朋友发信告诉我,谢谢!
  • 将iso,vmlinuz 和initrd.gz 三个文件放在同一分区下,同时在menu.lst加入
    title Install Xubuntu #请自行确定所在分区。c ->(hd0,0) d->(hd0,4)
    kernel (hd0,0)/目录/vmlinuz root=/dev/ram ramdisk_size=32000 devfs=mount,dall
    initrd (hd0,0)/目录/initrd.gz

  • 安装
    接下来根据界面提示安装就可以了

    Notices and messages
    可参照Ubuntu的安装和更新过程。总的来说Xubuntu还是比较令我满意的。

    Dictionary

    1. 介绍:
    星际译王(stardict)是 Linux 下类似于金山词霸的辞典软件。

    2. 安装
    执行下面的命令:
    $ sudo apt-get install stardict stardict-common stardict-plugin stardict-plugin-espeak stardict-plugin-festival

    已加入 ubuntu-cn 源的用户,可以通过下面的命令安装 stardict 的词典文件:
    $ sudo apt-get install stardict-cdict-gb stardict-cedict-gb stardict-hanzim stardict-langdao-ce-gb stardict-langdao-ec-gb stardict-oxford-gb stardict-xdict-ce-gb stardict-xdict-ec-gb

    未加入 ubuntu-cn 源的用户,到星际译王的词典网页 或者本地镜像 ,挑选自己需要用的词典,下载到自己的主目录下。现在以安装文件名为a.tar.bz2 的词典为例:
    $ tar -xjvf a.tar.bz2
    $ sudo mv a /usr/share/stardict/dic

    1). a.tar.bz2是词典文件,a 是解压出来的词典目录
    2). 如果需要给 stardict 添加更多的词库真人发音 ,请访问星际译王

    3. Notices and messages
    转载于:“Ubuntu论坛”http://wiki.ubuntu.org.cn/Qref/Hardy

    Latex

    在Ubuntu下安装linux不是很麻烦,apt-get就可以,而且网上也能找到不少的安装说明。但中文Latex的支持配置却不容易,今天从网上找了LaTeX中文环境的方法,然后又经过自己亲身验证,记载如下:

    1. 下载安装tetex的四个包
    代码:
    sudo apt-get install tetex-bin tetex-base tetex-extra cjk-latex

    2. 字体安装
    新建~/texmf文件夹并且把你要在LaTeX里用到的中文字体和下载的gbkfonts 文件copy进去,用gbkfonts进行转换字体

    代码:
    mkdir ~/texmf
    cp *.ttf ~/texmf


    ttf文件可以从windowxp系统下导来,主要是windows/fonts/下的五个文件
    simfang.ttf simhei.ttf simkai.ttf symbol.ttf simsun.ttc(注意这个是ttc文件)
    对字体文件转换

    代码:
    ~/texmf/gbkfonts simsun.ttf song
    ~/texmf/gbkfonts simhei.ttf hei
    #其他的字体文件以此类推全部都转换好

    3. 让LaTeX识别你装好的字体
    代码:
    sudo gedit /var/lib/texmf/web2c/updmap.cfg #在最后面加入一行Map cjk.map保存退出
    sudo texhash; sudo updmap

    至此全部配置结束,至于dvipdfm-cjk和dvipdfmx等其他支持cjk的工具包则完全没有必要安装,
    使用的时候直接用latex和 pdflatex命令就行了,要从dvi转pdf也可直接用dvipdf命令,中文支持很不错,
    至于怎么编写中文文档我就不赘述了,请查阅有关文档吧。
    另外同样的问题,保存tex文档utf8编码不认,gbk、gb2313、gb18030都很正常。

    4. Notices and messages
    注意编码问题,我无法在编辑软件中改变编码,在网上也找了不少,但都没有成功,而且把mouspad和gvim弄坏了,
    最后总算弄好了,却由于过程太乱了,忘记怎么弄好的。这里只想说一下怎么改编码:
    如果你事先已经知道了文件的编码,可以通过 GNU 的 iconv 来进行编码转换。以下是一个例子用来

    把文件的编码从 GB2312 转换成 UTF-8:
    $ iconv -f gb2312 -t utf-8 foo.txt > foot.txt.utf-8
    把编码从 UTF-8 转换成 GBK:
    $ iconv -f utf-8 -t gbk test.tex.u > test.tex


    转载于:“Ubuntu论坛”http://forum.ubuntu.org.cn/viewtopic.php?t=37227

    WindowsXP

    在WindowsXP下安装linux或者Ubuntu,以及其他系统时,经常会导致XP进不去,其实这时候不用重新安装XP的,只要修复一下就可以了:

    1. Fixmbr
    修复启动磁盘的 主启动记录。fixmbr 命令仅在使用故障恢复控制台时才可用。代码:
    fixmbr [ device_name]

    参数
       device_name
       要写入新的主引导记录的设备(驱动器)。设备名称可从 map 命令的输出获得。例如,设备名称:
       / Device/ HardDisk0
    范例
       下列命令示例向指定设备写入一个新的主引导记录:
    Fixmbr [Drive] [/A] [/D] [/P] [/Z] [/H]
    /A Active DOS partition(激活基本DOS分区)
    /D Display MBR(显示主引导记录内容)
    /P Display partition(显示DOS分区的结构)
    /Z Zero MBR(将主引导记录区清零)
    /H Help(帮助信息)


    注意
    · 如果不指定 device_name,新的主引导记录将被写入引导设备,即装载主系统的驱动器。
    · 如果系统检测到无效或非标准分区表标记,将提示用户是否继续执行该命令。除非您访问驱动器有问题,否则不要继续进行。
    向系统分区写入新的主引导记录可能破坏分区表并导致分区无法访问。
    · 如果完成的结果不对,可以用“/Z”参数将结果清空后重新启动,就可以恢复到原来的状态。

    顺便也介绍一下Fixboot命令
    2. Fixboot
    向系统分区写入新的分区引导扇区。只有在使用故障恢复控制台时,才能使用fixboot 命令。代码:
    fixboot [drive]

    参数  驱动器
       将要写入引导扇区的驱动器。它将替代默认的驱动器(即用户登录的系统分区)。例如,驱动器:D:
       范例
       下列命令范例向驱动器 D:的系统分区写入新的分区引导扇区:
    fixboot d:

    注意
    如果不带任何参数,fixboot 命令将向用户登录的系统分区写入新的分区引导扇区。


    转载于:“百度知道”http://zhidao.baidu.com/question/33409354.html

    你可能感兴趣的:(shell,ubuntu,File,matlab,emacs,程序调试工具)