Ubuntu笔记

来源:互联网 发布:开淘宝前景怎么样 编辑:程序博客网 时间:2024/05/16 23:39

Ubuntu虚拟机搭建一些记录

1. 虚拟机软件

最开始使用VirtualBox,错误百出,主要有:安装ubuntu 14.04 64位安装出错,32位屏幕分辨率只有800x600,安装增强工具没用(或是增强工具没有安装成功);安装ubuntu 17.04不能设置屏幕分辨率,和win7共享文件夹出错,重新分配磁盘空间出错。
最后使用了VMware Workstation,以下设置都是在此软件中安装ubuntu。

曾不小心误删了vmdk文件,打开虚拟机时出错:指定的文件不是虚拟磁盘。好不容易安装的系统,不想要重装,可以重新加载iso生成vmdk文件,但可能还是打不开,把这个vmdk文件用文本编辑工具打开,把里面链接的其他分区vmdk。

为了实现共享文件夹的功能(其他功能等待挖掘),除了在VMware中启用并设置共享文件夹外,还需要在ubuntu中安装vmware tools:

  • 打开VMware虚拟机菜单安装。如果安装VMware tool处于灰色不可选状态,可能VM在屏幕下方正在提示安装(可能要退出全屏才能看到);需要有CD/DVD硬件,可以在虚拟机-设置-添加硬件CD/DVD,(貌似)可以随便加载个iso镜像。
  • 打开VMware tools的光盘,可以手动解压安装文件,也可以利用命令行1。

  • 安装vmware-install.pl:2

sudo perl vmware-install.pl

如果没有安装perl,则需要

sudo apt-get install perl 

安装过程中可能出现“what is the location of the “ifconfig” program on your machine”这样的错误,可能需要安装net-tools 3

sudo apt-get update #如果无法安装说明网络连接出现问题, 修改网络链接方式为桥接模式.sudo apt-get install net-tools #安装net-tools

有必要的话还可以使用whereis ifconfig得到ifonconfig路径

  • 可以在/mnt/hgfs找到共享文件夹。

2. 设置屏幕分辨率

在命令窗口中运行一下命令4:

~$ cvt 1920 1080# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHzModeline "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync~$ xrandr --newmode "1920X1080_60.00" 173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync~$ xrandr --addmode Virtual1 "1920X1080_60.00"~$ xrandr --output Virtual1 --mode "1920X1080_60.00"

If the last command doesn’t work for you,you can go back to ubuntu display gui setting and can chose the display you have added just now.For me the option was 1904 x 1070 (16:9)

However if you are fine with this experiment and have found the desired screen resolution and to make that permanent,write the all the last 3 commands starting from xrandr –newmode command in your .xprofile file using following command and then save,exit and restart your ubuntu vm and you will get your desired resolution permanently.

$ gedit ~/.xprofile

可以查看一下所有支持的屏幕分辨率:

xrandr

3. 一些命令和shell应用技巧

df -h #查看磁盘空间locate finger #查找名称中有finger的文件、文件夹等,速度快,依赖每晚自动更新的cron进程,可以root用户登录手动更新updatedb(或者sudo updatedb)sudo su #以root用户登陆,用exit退出root用户
  • ctrl+r后shell进入revise-i(ncremental)-search即向后增量搜索,可搜索搜索命令行历史,按回车执行或者按Esc返回

  • “!$”表示上一行命令的最后一个参数,例如mkdir foo/bar生成一个文件夹后,cd !$ 进入该目录

  • 多命令执行:利用 “command1 ; command2”先执行command1,无论成功与否都执行command2;利用”command1 && command2”只有command1执行成功后,再执行command2.

  • 后台运行。终端开启一个程序后,终端要等到程序关闭后才能继续使用(需要另外打开一个终端),为了释放终端可把任务放于后台运行——只需要在命令后加上&,终端被立即释放,利用jobs命令可查看此终端运行的程序5。例如

gedit & #在后台打开geditjobs    #输出[1]+  Running  gedit &显示后台有gedit在运行

程序放到后台一种好处是关闭当前终端时,该程序不会被关闭;并且该程序(测试期Beta)的出错信息也会显示在终端。还可以

gedit #前台打开#[在终端按Ctrl+z]把终端中正在运行的程序挂起bg #用bg命令把挂起的程序放在后台
  • 批量查找删除文件6
sudo su #以防Permission denied,用exit退出super userfind -name "*google-music*" -exec rm -rf "{}" \; #注:find [目录名] -name "文件名" 搜索删除文件#   -exec表示后面执行命令,"{}"表示查询到的文件名,-rf为删除命令rm的参数#   \;是一个整体,不可删除【原因未知???】

又如:①find type f -name *.raw -exec rm -rf "{}" \;在当前目录下查找x天前的后缀为log的文件并且删除。②find / -type f -name *.log -mtime +300 -exec rm -fv "{}" \;查找300天前的后缀名为log的文件并且删除。③find /etc/rc.d -name '*crond' -exec file "{}" \;查找/etc/rc.d目录下面所有以crond结束的文件,并使用file指令查看其属性。
- Ubuntu的which、whereis、locate、find命令联系和区别7:
- which只能寻找执行文件,在PATH变量中查找
- whereis从Linux文件数据库(/var/lib/slocate/slocate.db)寻找,所以有可能刚刚删除,或者没有发现新建的文件(手动更新updatedb或者sudo updatedb)
- locate同上,不过文件名是部分匹配
- find直接从硬盘上搜索,功能强大,但耗硬盘,一般不要用

  • 终端中文件名颜色的含义8
    使用Ubuntu的ls命令时候,常常会出现各种颜色的文件名及文件夹名,可使用命令”dircolors -p“来输出所有配色代表的意义:
蓝色 文件夹 红色 压缩文件 绿色 可执行文件 白色 文本文件 红色闪烁 错误的符号链接 淡蓝色 符号链接 黄色 设备文件 灰色 其它文件

- -

4. 定制命令提示符

提示太长:http://blog.csdn.net/alex_equal/article/details/50081819
个人定制:http://blog.csdn.net/ghostfromheaven/article/details/6990180
在教程中看到有提示符后自动换行,设置方法暂时未知

5. 安装软件

  • Sublime text
  • QT creator下载后安装:
chmod +x ./xxx.run sudo ./xxx.run

安装后使用qmake(具体如何使用qt creator待学习)时可能出现错误:

qmake -v #显示qt版本号qmake: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/qmake': No such file or directory

其中一种解决方法是把真正的qmake路径(可以用locate /bin/qmake定位)连接到上面错误的位置:910

ln -s /opt/Qt5.8.0/5.8/gcc_64/bin/qmake /usr/lib/x86_64-linux-gnu/qt4/bin/qmake
  • 其他

一些问题

1. could not get lock /var/lib/dpkg/lock -open

用apt-get命令安装一些软件包时,总报错:E:could not get lock /var/lib/dpkg/lock -open等,出现这个问题的原因可能是有另外一个程序正在运行,导致资源被锁不可用11。而导致资源被锁的原因,可能是上次安装时没正常完成,而导致出现此状况。解决方法:

sudo rm /var/cache/apt/archives/locksudo rm /var/lib/dpkg/lock

2. runtime library xxx in xxx may be hidden by files in…

在CMake是出现以下警告:

CMake Warning at CMakeLists.txt:19 (add_executable):  Cannot generate a safe runtime search path for target xxx because files  in some directories may conflict with libraries in implicit directories:    runtime library [libmpi.so] in /usr/lib may be hidden by files in:      /usr/lib/x86_64-linux-gnu/openmpi/lib  Some of these libraries may not be found correctly.

可能在make是出现以下错误:

make[2]: *** No rule to make target '/usr/lib/libmpi.so', needed by 'joinMap'.  Stop.

一些技巧

  • 在 Gnome 桌面中,可以按 Alt+F7 进入移动窗口状态,然后用上下左右键移动,用回车键结束移动;Alt+F8,再利用方向键改变窗口大小。
  • 命令行清空:ctrl+L只是在前面的输入后面加了很多空行,可输入clear清空
  • 环境变量名都是大写,Linux区分大小写。环境变量名有时加$(获取变量值的时候),有时不加(设置变量值的时候)。
  • 项目make install之后,可以make clean清除上次make命令所产生的object文件(后缀为“.o”的文件)及可执行文件。
  • 在Linux中库文件分为静态库和共享库两种,静态库以.a为后缀名,共享库以.so为后缀;静态库每次被调用都会生成一个副本,而共享库只有一个副本(更省空间)
add_library( hello libHelloSLAM.cpp ) #添加静态库hello.oadd_librayr( hello SHARED libHelloSLAM.cpp ) #添加共享库hello.so
  • nautilus 文件夹名在图形化界面中打开文件夹(图形化桌面包括了一个叫做 Nautilus 的文件管理器)
  • -

一些有趣的事

apt:Advanced Packaging Tool
sudo: SuperUser do
pwd: print working directory
vi: VIsual edit
vim: Vi IMproved
chmod:CHange MODe改变文件读写权限
evince:Evince is a document viewer for PDF, PostScript, DjVu, TIFF, XPS and DVI formats. It was designed for the GNOME desktop environment.
~:Linux系统中~目录是/root目录(以superuser身份登录)或者/home/username目录(以普通用户名登录),可以通过“~&&pwd”命令获取~的地址。用~代位符的目的是对不同的用户有有规可循的地址,保证某些情况下的兼容问题。


  1. http://blog.csdn.net/gaojinshan/article/details/9231853 ↩
  2. http://blog.csdn.net/iamoyjj/article/details/6746347 ↩
  3. https://jingyan.baidu.com/article/25648fc163778e9191fd00c7.html ↩
  4. http://www.linuxdiyf.com/linux/19269.html ↩
  5. Ubuntu.Linux从入门到精通 ↩
  6. http://blog.csdn.net/shangzwz/article/details/10304469 Linux ubuntu批量删除文件 ↩
  7. http://www.cnblogs.com/unflynaomi/p/5704293.html Ubuntu16.04下使用sublime text3搭建Python IDE ↩
  8. Ubuntu系统各种文件的颜色代表的意义 http://blog.csdn.net/u012736455/article/details/14454209 ↩
  9. [Qt安装之后出现qmake命令无法找到] [http://blog.csdn.net/newxbee/article/details/7444827] ↩
  10. [[转载]关于Qt中qmake 的路径是/usr/bin/qmake 的解决办法 ] [http://blog.sina.com.cn/s/blog_8b6c17eb0102wrof.html] ↩
  11. http://alsww.blog.51cto.com/2001924/481496 ↩
原创粉丝点击