Ubuntu历险记

前两天csdn升级抽风,帐号一直登录不上,甚是郁闷!在chinaunix写了一些再粘贴过来。

一:移动硬盘安装盘的制作

Ubuntu最新版本14.04出来了,又打算玩下Ubuntu了,装个双系统,手里有个40G的移动硬盘。
1) 先是使用了ultraiso软件制作安装盘,但是每次ultraiso都会把整个移动硬盘当作一个分区进行硬盘映像的写入(不管是不是使用硬盘分区工具对移动硬盘进行过分区)。写入硬盘映像后,重启系统设置USB引导,发现在安装时提示找不到linux的映像文件(估计和移动硬盘太大有关系)。
2) 重新使用硬盘分区工具(PartitionManager硬盘分区魔术师)对移动硬盘重新分区(1个2G的FAT32,一个30多G的NTFS),其中2G的分区使用universal-usb-install工具( www.pendrivelinux.com/universal-usb-installer-easy-as-1-2-3/)写入Ubuntu的ISO文件,然后重启系统设置USB引导,一路next。大功告成。

装系统时出现过一个问题,装完重启后,出现系统启动不起来,日志显示mount文件系统失败,没有找到好的解决方案,重装解决,汗!

后面系统又出现过该情况,系统启动是出现如下类似信息:

mount: mounting /dev/disk/by-uuid/***************************** on /root
failed: Invalid argument
mount: mounting /sys on /root/sys failed: No such file or directory
mount: mounting /dev on /root/dev failed: No such file or directory
mount: mounting /sys on /root/sys failed: No such file or directory
mount: mounting /proc on /root/proc failed: No such file or directory
Target file system doesn’t have /sbin/init
No init found. Try passing init= bootarg

Busybox v1.13.3 (Ubuntu 1:1.13.3-1ubuntu7) built-in shell (ash)
Enter ‘help’ for a list of built-in commands
(initramfs) _

解决方法是:用启动盘启动系统(体验模式),然后使用命令sudo fsck /dev/sda1修复分区,reboot即可。

参考:

http://blog.csdn.net/daybreakgx/article/details/24880991


二:vim工具配置

Ubuntu系统安装完成后,启动Terminal,默认是没有安装vim工具(可以使用vi)的。作为装B一族,首先要安装一个vim:
sudo apt-get install vim
安装完成后就要修改vim工具的配置文件了,常用的配置项目如下(修改$HOME/.vimrc或/etc/vimrc文件):

vim配置可参考:

http://blog.csdn.net/daybreakgx/article/details/7184341

http://hi.baidu.com/listentowindy/item/ede08ddf93a4f0d4251f40a0

www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html

http://blog.sciencenet.cn/blog-683919-667321.html


简明vim使用教程:

http://coolshell.cn/articles/5426.html

vim配置及插件安装等:

http://blog.csdn.net/namecyf/article/details/7787479


VIM下常用的插件:ctags/taglist/winmanager

1) ubuntu下安装ctags:sudo apt-get install ctags

在代码目录下执行ctags -R 生成tags文件,之后就可以使用 ctrl+] / ctrl+T 命令切换

2) 安装taglist后,修改.vimrc文件,添加:

let Tlist_Show_One_File=1

let Tlist_Exit_OnlyWindow=1

然后使用vim打开文件后执行  :Tlist即可打开taglist视图

3) 安装winmanager后,修改.vimrc文件,添加:

let g:winManagerWindowLayout='FileExplorer|TagList'

nmap wm :WMToggle<cr>

然后使用vim打开文件后,在normal中执行wm即可打开winmanager和taglist视图

4) 使用sudo apt-get install cscope按照cscope插件

在.vimrc中添加:

set cscopequickfix=s-,c-,i-,t-,e-,f-

nmap <C-_>s :cs find s <C-R>=expand("<cword>")<CR><CR>

nmap <C-_>g :cs find g <C-R>=expand("<cword>")<CR><CR>

nmap <C-_>c :cs find c <C-R>=expand("<cword>")<CR><CR>

nmap <C-_>t :cs find i <C-R>=expand("<cword>")<CR><CR>

nmap <C-_>e :cs find e <C-R>=expand("<cword>")<CR><CR>

nmap <C-_>f :cs find f <C-R>=expand("<cfile>")<CR><CR>

nmap <C-_>i :cs find i <C-R>=expand("<cfile>")<CR><CR>

nmap <C-_>d :cs find d <C-R>=expand("<cword>")<CR><CR>


cscope的主要功能是通过同的子命令"find"来实现的
"cscope find"的用法:
cs find c|d|e|f|g|i|s|t name

0 或 s查找本 C 符号(可以跳过注释)
1 或 g查找本定义
2 或 d查找本函数调用的函数
3 或 c查找调用本函数的函数
4 或 t查找本字符串
6 或 e查找本 egrep 模式
7 或 f查找本文件
8 或 i查找包含本文件的文件

跟Ctags一样, 要使用其功能必须先为你的代码生成一个cscope的数据库, 在项目的根目录运行下面的命令:

cscope -Rbq

进入vim后第一件事是要把刚才生成的cscope文件导入到vim中来, 用下面的命令:
:cs add /home/wooin/vim71/cscope.out /home/wooin/vim71

查找vim_strsave()到底在那些地方被调用过了, 用命令:
:cs find c vim_strsave

如果自动跳转的位置你不满意, 想看其他的结果, 可以用下面的命令打开QuickFix窗口:
:cw

查找快捷键:

当光标停在某个你要查找的词上时, 按下<C-_>g, 就是查找该对象的定义, 其他的同理.
按这种组合键有一点技巧,按了<C-_>后要马上按下一个键,否则屏幕一闪就回到nomal状态了
<C-_>g的按法是先按"Ctrl+Shift+-", 然后很快再按"g"

5) quickfix功能将编译过程中产生的错误信息保存到文件中,然后vim利用这些信息跳转到源文件的对应位置,我们就可以进行错误的修正,之后跳到下一个错误重复上述操作,从而极大地提高编译错误的修改效率。

:cc     显示详细错误信息
:cp     跳到上一个错误
:cn     跳到下一个错误
:cw     如果有错误列表,则打开quickfix窗口,没有则什么也不错
:cope(n) 打开quickfix窗口,可以在后面添加窗口高度参数,如10行: :copen 10
:ccl(ose) 关闭quickfix窗口

6) minibufexplorer

需要在.vimrc中添加

let g:miniBufExplMapCTabSwitchBufs = 1

let g:miniBufExplMapWindowNavVim = 1

当你只编辑一个buffer的时候MiniBufExplorer派不上用场, 当你打开第二个buffer的时候, MiniBufExplorer窗口就自动弹出来了

当你把光标置于这个窗口时, 有下面几个快捷键可以用:

<Tab>向前循环切换到每个buffer名上
<S-Tab>向后循环切换到每个buffer名上
<Enter>在打开光标所在的buffer
d删除光标所在的buffer



三. 中文输入法

首先在Language Support中添加中文支持,在input method 中选择ibus,然后在Text Entry中添加中文输入法,该版本默认安装了chinese(sunpinyin),如果没有安装,可以到Ubuntu Software Center中搜索sunpinyin进行安装

在Text Entry中记得勾选左下方的 show current input source in the menu bar,这样在menubar中就能看到输入法了,默认的切换快捷键是super+space。点击menubar上的输入法图标,选择perferences可以对输入发进行设置。

选择输入法时出现的问题:首先在Text Entry中选择了sunpinyin和english两种,但后来输入切换到sunpinyin是发现输入不了中文,在Text Entry中发现以前选择的添加的sunpinyin不见了,但是再次添加是又找不到该项。然后添加pinyin输入法,进行输入法切换时,发现sunpinyin又能使用了...很诡异!

解决方法:

1. killall ibus-daemon

2. ibus-daemon -xrd


安装google拼音输入法:

http://blog.csdn.net/ilyz5609/article/details/7196173


四.乱码问题

vim打开文件乱码,可参考上面vim的配置,设置fileencodings

gedit打开文件路乱码,通过dconf-editor工具配置: org->gnome->gedit->prefernces->encodings中auto-detected项目的value中在UTF-8前面添加GB18030

参考:http://wiki.ubuntu.org.cn/Gedit%E4%B8%AD%E6%96%87%E4%B9%B1%E7%A0%81

dconf-editor工具安装: sudo apt-get install dconf-editor


五. 常用命令

1)sudo apt-get remove --purge gconf-editor

--purge 选项表示彻底删除该软件和相关文件


2)source abc.sh 在当前shell中执行abc.sh脚本

sh abc.sh 在子shell中执行abc.sh


3)ubuntu下载工具axel:

sudo apt-get install axel

axel http://soft.vpser.net/lnmp/lnmp0.8-full.tar.gz

一般下载在当前目录


六. 环境变量设置

1.查看所有的环境变量:env / printenv

2.查看某一个环境变量:echo $LANG

3.设置本地变量(当前shell有效): export LANG="zh_CN.gb18030:en_US.utf-8"

  设置环境变量(长久有效): 修改文件 /etc/profile ---> /etc/bashrc ---> ~/.bash_profile ---> ./.bashrc

/etc/profile : 所有用户登陆系统是都会执行该文件,而且只在登陆是执行一次

/etc/bashrc : 任何使用bash的用户每打开一个bash时都会执行过该文件

~/.bash_profie : 当前用户登陆是执行一次

~/.bashrc : 当前用户登陆或打开一个新的bash时执行

~/.bash_logout : 每次退出bash时执行一次

4.显示和设置本地变量: set

LocalTest=abc

echo $LocalTest

set |grep LocalTest

unset LocalTest

5.清除本地变量/环境变量: unset

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值