您的位置:首页 > 其它

VMware 下安装Ubuntu的吐血经历

2015-05-05 12:03 225 查看
一:起因

(1)自己学习Linux的历程

自己一直想着在Linux下面练习、学习一下Python,以及C编程;shell编程也顺带;今天突然来了兴趣,就开始安装了。

(2)血泪史

话说,自己第一次安装WMware 、Vbox不记得什么时候了,最近一次是在学习Hadoop 的Map/Reduce时候,又安装了一次,由于前面几次,安装版本的不同(Ubuntu),可能每一次遇到的问题也不同,可惜的是 —— 自己没有进行任何记录,才导致了今天吐血的经历(大概花了我半小时来解决开机就进入类似dos的命令行界面,自己就是忘了如何进入UI窗口界面)

(3)不知道,各位大虾们,是否和鄙人遇到过类似的拙计情形 —— 明明是前几天遇到的类似问题(ps:当时已经解决),这一次又的浪费同样的时间或者更多的时间处理这个问题;而且自己心情非常不爽(ps:明明自己处理过了)

二:缘由和结果

(1)大概花了我半小时来解决开机就进入类似dos的命令行界面,自己就是忘了如何进入UI窗口界面

自己首先各种百度 google 啦 ——

1)linux 公社 :

在VMware下安装了Ubuntu 10.4的虚拟系统,使用起来,有时候感觉字符命令界面更方便,比如编程;有时候感觉Xwindow用户界面更方便,比如上网。

于是,就想如何切换界面呢?

首先说明,在VMware中,用户按CTRL + ALT,执行的是将光标焦点从虚拟系统返回PC机的命令。

在Xwindow界面下,按SHIFT + CTRL + ALT + F1/F2/.../F6,分别可以切换到各个字符命令界面。

在字符界面下,按ALT + F2/.../F7,可以切换到其它字符界面或Xwindow用户界面,其中F7是Xwindow用户界面。

兄弟我也比较愚笨,就按照人间讲的,挨个的按键,这顿狂按。。。(没反应)

2)百度知道:
LT+CTRL+SPACE(空格),ALT+CTRL不松开,再按F1,从图形界面切换回字符界面之后,没有显示用户名,只有一个光标,无法执行命令。这个该怎么办啊?


不知所云,我就蒙了

3)百度贴吧

昨天用Vmware装的,装完进去后是个DOS界面,好像有输入密码之类的,我输了可是没反应啊!应该怎么正确安装啊?

startx没反应就sudo apt-get install kde

问题解决了,输入startx命令即可

4)后来,csdn上又找到更加详细的解答

1、按ALT+CTRL+F1切换到字符界面(Linux实体机)

如果是VMware虚拟机安装的Linux系统,则切换到字符界面的时候需要以下操作

按下ALT+CTRL+SPACE(空格),ALT+CTRL不松开,再按F1。这样就可以切换到字符界面了。

2、按ALT+CTRL+F7切换到图形界面(Linux实体机)

如果是VMware虚拟机安装的Linux系统,则切换到图形界面的时候需要以下操作

按下ALT+CTRL+SPACE(空格),ALT+CTRL不松开,再按F7。这样就可以切换到图形界面了。

在Linux中一般有ALT+CTRL+F1----F6为字符终端(字符界面),ALT+CTRL+F7为图形界面。不同的发行版本可能有一些差别,但切换方法都是一样的。可以自己试试就可以知道哪些是字符终端,哪些是图形界面。

如果想 Ubuntu 在每次启动到 command prompt ,可以输入以下指令:

$echo “false” | sudo tee /etc/X11/default-display-manager

当下次开机时,就会以命令行模式启动(text模式,字符界面登录),如果想变回图形界面启动(X windows启动),可以輸入:

$echo “/usr/sbin/gdm” | sudo tee /etc/X11/default-display-manager

如果在Ubuntn以命令行模式启动,在字符终端想回到图形界面的话只需以下命令:

$startx
(3)最近在虚拟机里装了个Ubuntu,但不知道怎么设置屏幕分辨率,在Ubuntu系统设置里貌似没法设置,虚拟机是vmware9,系统是Ubuntu 12.10

1) 百度某一答案: Edit → Preferences → Display (勾选 Autofit guest、 点Autofit guest那个就是Fullscreen那个的第一个选项 )→ OK(未成功)

2)csdn 上:在ubuntu里设的:

ubuntu左侧一栏有工具选项System Settings,选择中间一栏Hardware中的Display,在弹出的对话框中可设置分辨率,然后点击Apply应用就可以了。(正解)

另一个问题,仍没有解决 —— 希望大牛给予答案

1)虚拟机的任务栏被挡住了,要看到任务栏,还必须拖动滚动条


VMware的菜单栏,勾选如下菜单:View -> Autofit Guest 后,就可以自实行全屏了 你就会发现,虚拟机的桌面能随着VMware窗口大小的改变而改变,并且实现满屏(未成功)
(4)小记:不管问题,或大或小,遇到的问题一定要及时记录下来;以防今后犯同样可耻的错误。

三:其它问题小记

(1)ubuntu安装软件太慢,如何解决?

而你的网速又不慢,无论是虚拟机或者实体机安装。如果是你是图形界面的(桌面版)的用户,在用自带的软件管理中心安装软件的时候也会感觉很慢,多半原因是sources.list。路径位于:/etc/apt/sources.list

如何找到最适合自己的源列表:

首先,国内用户,一般情况下,用163的源都是没什么问题的,但是163也不是在所有地方都是最快的。网易的源地址为:百度搜索“163 mirrors”

除了163之外,TW同胞创建了一个有意思的站点:google搜索“ubuntu night”

该站点会自动检测离你最近的源、对你来说最快的源、最稳定的源。

更新源之后可能下载依然有问题,这个时候运行下面命令即可:

sudo apt-get update

注意:源的第一个词是人名(Karmic(9.10)),要是更新报错的话,记得及时更改其他的名称 http://www.oschina.net/code/snippet_105637_34442
2) 在使用apt-get的时候,提示 The package lists or status file could not be parsed or opened. 不能进行正常更新。

解决:

sudo rm -vf /var/lib/apt/lists/*

sudo apt-get update

3) Ubuntu中执行sudo apt-get install出错:E: Unable to fetch some archives, maybe run apt-get update or try with –fix-missing?

解决方案请见 点击原文 总之:一句话 —— 假如你是在VMWare 安装的Ubuntu,你的源也按照163的更新过了,2)也执行了,那就是网络连接不正常,重启Ubuntu 网络连接正常即可。
(2)vim 操作技巧

如何使用:这个入门应当也很简单的,在终端输入vimtutor即可弹出简单易懂的操作说明,一共有7讲,非常适合初接触者训练。

Vim有三种模式:命令行模式,插入模式,底行模式

1)命令行模式是进行一些基本命令的操作,进入Vim就是这种模式,如可以用h,j,k,l来控制光标的移动等

2)在命令行模式下按下i就进入插入模式,此时可以插入需要的文本,

3)(按esc键即可到命令好模式,也可以用ctrl+【代替esc)底行模式一般先输入:,此时就切换到该模式了,可以执行文件的保存,Vim的退出等操作(:wq -- 保存并退出,需要sudo vim;:q! -- 不保存退出)

(3)输入法: 下面的只是一部分,详细请见 http://www.cnblogs.com/zhj5chengfeng/archive/2013/06/23/3150620.html 或者联系我本人安装IBUS

1)默认只有英语一中,可以安装其他输入法;

IBus拼音:sudo apt-get install ibus-pinyin

IBUS五笔:sudo apt-get install ibus-table-wubi

谷歌拼音输入法:sudo apt-get install ibus-googlepinyin

Sun拼音输入法:sudo apt-get install ibus-sunpinyin

当然若是root用户,不用加sudo;

2)输入法的切换

输入法切换:Ctrl+空格

(4)补充一个hello word程序

1)准备工作

打开控制台:使用快捷键 Ctrl + Alt + T;

安装vim:输入 sudo apt-get install vim;

安装gcc:输入 sudo apt-get install g++。(注意gcc -c / -o 是编译c程序的;g++ -c / -o 才是编译c++程序的)

或者 在系统里安装G++ GCC,它们就是Linux下的C++/C的编译器。代码如下 sudo apt-get install build-essential

2)编写hello.c源代码 或者直接用系统自带的文本编译器打开

新建文件名为hello.c的源文件:输入vim hello.c;

键入i 进入insert模式(即编辑输入模式),写入如下经典代码:


//the first program hello.c

#include<stdio.h>

int main(void)

{

printf("Hello, world!\n");

return 0;

}

输入完成后,Esc 回到normal模式,键入:wq 保存退出vim。

3)编译hello.c

在终端执行 g++ hello.c -o hello 编译。

4)运行程序hello

./hello 就看到结果:

Hello,world!

(5) Ubuntu下挂载U盘

第一步:查看U盘信息

首先使用 sudo fdisk -l 命令查看一下U盘在那里,

这个信息查看后,可能会类似看到下面信息:

……

Device Boot Start End Blocks Id System

/dev/sdb1 * 1 487 3903795 b W95 FAT16

Partition 1 has different physical/logical endings:

phys=(633, 254, 63) logical=(486, 0, 63)

第二步:挂载U盘到指定节点

我们把 U 盘挂载在 /media/u 目录下 (上面我们可以看到是一个FAT16的格式的U盘)

# mount -t vfat /dev/sdb1 Desktop/zyp

如果是 ntfs 格式的U盘,则类似如下:

# sudo mount -t ntfs-3g /dev/sdb1 Desktop/zyp

/media/u 为你要挂载到的节点,这个你可以随便指定

之后你就可以通过 cd Desktop/zyp 访问U盘了。

第三步:卸载u盘

输入命令:# sudo umount /media/u U盘卸载了(注意:此时不能够在Desktop/zyp目录下输入前面的卸载命令,否则系统会认为你的“设备忙”而拒绝U盘的卸载)。

参考资料

ubuntu mount u盘
http://www.gagahappy.com/ubuntu-mount-u-driv/
ubuntu挂载/卸载U盘的方法
http://hi.baidu.com/fhdone/blog/item/d80aef198dddc54d43a9ade6.html
(6)中文乱码,打开文件

ubuntu 12.04 vim gedit中文乱码解决

添加中文字符编码:

$sudo vim /var/lib/locales/supported.d/local

#添加下面的中文字符集

zh_CN.GBK GBK

zh_CN.GB2312 GB2312

zh_CN.GB18030 GB18030

使其生效:

$sudo dpkg-reconfigure locales

vim:

打开vim的配置文件,位置在/etc/vim/vimrc

在其中加入

set fileencodings=utf-8,gb2312,gbk,gb18030

set termencoding=utf-8

set encoding=prc

保存退出

source /etc/vim/vimrc

此时vim就能正确显示中文了。

--------------------------------------------------------------'

gedit:

Gedit 3.x 版本设置 (适用于Ubuntu 11.10及以后)

gsettings set org.gnome.gedit.preferences.encodings auto-detected "['UTF-8','CURRENT','GB18030','ISO-8859-15','UTF-16']"

--------------------------------------------------------------'

pdf:

$sudo apt-get install xpdf-chinese-simplified xpdf-chinese-traditional #安装pdf的中文字体

$sudo apt-get install poppler-data #安装解决pdf中文显示乱码的软件

$cd /etc/fonts/conf.d

$sudo cp 49-sansserif.conf 49-sansserif.conf_backup #先备份下

$sudo rm 49-sansserif.conf #删除

在打开pdf文件,就能呢个正常显示中文了

(7) Python 编译器的安装

1)更改版本设置 --- 问题描述:Ubuntu 12中默认就自带了python的2.7版本,我自己安装了一个python3.2的版本,可是如果你不设置环境变量,那么在终端中运行的python都是系统默认的版本,这样就会导致3.2的程序在终端下无法运行,没有办法必须要将默认的python版本换到3.2.

问题分析:其实在linux系统中多个python版本是可以共存的,只不过在终端中运行的时候,输入 python2.7 或者 python3.2 就能进入不同的版本了,而且在你的*.py文件中可以用 #!/usr/bin/python 来指定程序的解释器版本,不过这样使用起来有些不方便,所以就把/usr/bin/python这个快捷方式的指向修改下好了。

2)解决方法:

sudo cp /usr/bin/python /usr/bin/python_bak,先备份

sudo rm /usr/bin/python,删除

sudo ln -s /usr/bin/python3.2 /usr/bin/python,默认设置成python3.2

这样在终端中输入python默认就是 3.2版本了

3)安装:

1. Run below command to add PPA to your repository

sudo add-apt-repository ppa:fkrull/deadsnakes

2..Then you can update your repository and install Python 2.6

sudo apt-get update

sudo apt-get install python2.6 python2.6-dev

4).py文件的执行:

首先确保 该脚本有执行权限

打开终端

chmod a+x /路径/xx.py

执行

python xxx.py

(8)版本的管理和查看

1)查看系统信息:

方法一:cat /etc/issue

方法二:cat /proc/version (操作系统的版本)

方法三:uname -a (操作系统的位数)


方法四:lsb_release -a

方法五:cat /etc/lsb-release

2)二、查看软件信息:

Ubuntu中查看已安装软件包的方法: sudo dpkg -l

在终端下也可以很方便查看已安装的软件包版本号,也能单独查看所需要的软件包是否已安装和版本号,还能查看可升级的软件包。在终端下要 实现这个目标就要用到一个软件工具叫做apt-

安装好之后就可以在终端下使用命令:

$apt-show-versions


来查看所有已安装的软件包和版本号,不过结果太多会一扫而过,加上终端的自有脚本more来打印每一屏的结果:

$apt-show-versions |more 这样子打印满一屏就暂停,按下回车键打印下一行,按下空格键打印下一屏,按下Q键退出打印结果。

如果想查看单个软件包的版本,则使用命令:

$apt-show-versions –p <package> //<package>是软件包名,不含符号


如果想查看可升级的软件包,则使用命令:

$apt-show-versions –u

如果没有任何可以升级的软件包,上面那条命令是不会返回任何结果的。更多的参数查看man,这两个方法哪个好用仁者见仁了。

(9)Linux分区的建立

1)挂载点的意义 (mount point):

每个 filesystem 都有独立的 inode / block / superblock 等信息,这个文件系统要能够链接到目录树才能被我们使用。
将文件系统与目录树结合的动作我们称为『挂载』
重点是:挂载点一定是目录,该目录为进入该文件系统的入口。 因此并不是你有任何文件系统都能使用,必须要『挂载』到目录树的某个目录后,才能够使用该文件系统的。举例来说,应该会有三个挂载点才是,分别是 /, /boot, /home 三个 (系统上对应的装置文件名为 /dev/hdc2, /dev/hdc1, /dev/hdc3)。 那如果观察这三个目录的 inode 号码时,我们可以发现如下的情况:

[root@www ~]# ls -lid / /boot /home
2 drwxr-xr-x 23 root root 4096 Sep 22 12:09 /
2 drwxr-xr-x  4 root root 1024 Sep  4 18:06 /boot
2 drwxr-xr-x  6 root root 4096 Sep 29 02:21 /home
2)文件系统特性

磁盘分区完毕后还需要进行格式化(format),之后操作系统才能够使用这个分割槽。 为什么需要进行『格式化』呢?这是因为每种操作系统所配置的文件属性/权限并不相同, 为了存放这些文件所需的数据,因此就需要将分割槽进行格式化,以成为操作系统能够利用的『文件系统格式(filesystem)』。由此我们也能够知道,每种操作系统能够使用的文件系统并不相同。 举例来说,windows 98 以前的微软操作系统主要利用的文件系统是 FAT (或 FAT16),windows 2000 以后的版本有所谓的 NTFS 文件系统,至于
Linux 的正统文件系统则为 Ext2 (Linux second extended file system, ext2fs)这一个。此外,在默认的情况下,windows 操作系统是不会认识 Linux 的 Ext2 的

文件系统通常会将这两部份的数据分别存放在不同的区块,权限与属性放置到 inode 中,至于实际数据则放置到 data block 区块中。 另外,还有一个超级区块 (superblock) 会记录整个文件系统的整体信息,包括 inode 与 block 的总量、使用量、剩余量等。

(16)linux 命令大全查询 Linux shell 编程入门
Ubuntu快捷键大全 廖雪峰的官方网站
个人GitHub
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: