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”命令获取~的地址。用~代位符的目的是对不同的用户有有规可循的地址,保证某些情况下的兼容问题。
- http://blog.csdn.net/gaojinshan/article/details/9231853 ↩
- http://blog.csdn.net/iamoyjj/article/details/6746347 ↩
- https://jingyan.baidu.com/article/25648fc163778e9191fd00c7.html ↩
- http://www.linuxdiyf.com/linux/19269.html ↩
- Ubuntu.Linux从入门到精通 ↩
- http://blog.csdn.net/shangzwz/article/details/10304469 Linux ubuntu批量删除文件 ↩
- http://www.cnblogs.com/unflynaomi/p/5704293.html Ubuntu16.04下使用sublime text3搭建Python IDE ↩
- Ubuntu系统各种文件的颜色代表的意义 http://blog.csdn.net/u012736455/article/details/14454209 ↩
- [Qt安装之后出现qmake命令无法找到] [http://blog.csdn.net/newxbee/article/details/7444827] ↩
- [[转载]关于Qt中qmake 的路径是/usr/bin/qmake 的解决办法 ] [http://blog.sina.com.cn/s/blog_8b6c17eb0102wrof.html] ↩
- http://alsww.blog.51cto.com/2001924/481496 ↩
- Ubuntu笔记
- ubuntu 笔记
- ubuntu 笔记
- Ubuntu笔记
- ubuntu笔记
- ubuntu笔记
- ubuntu笔记
- ubuntu笔记
- Ubuntu笔记
- [Ubuntu] Ubuntu使用笔记
- ubuntu 安装笔记
- Ubuntu使用笔记
- ubuntu 6.10 使用笔记
- Ubuntu安装笔记
- Ubuntu配置笔记
- ubuntu 学习笔记
- ubuntu 学习笔记
- Ubuntu试用笔记
- 对SAP角色大量导入事务代码工具
- 坐标系之间的旋转平移变换与对应变换矩阵的关系
- 【面试题】剑指offer09--菲波那切数列中的变态青蛙问题
- spring 验证框架出现错误ValidationMessages not found排查
- SSM(spring,springMVC,mybatis)框架开发环境整合
- Ubuntu笔记
- mysql插入千万条随机数据
- The prefix "p" for attribute "p:myservice-ref" associated with an element type "bean" is not bound.
- 【VS开发】WaitForSingleObject 和 WaitForMultipleObjects函数 (让线程挂起等待事件)
- HTML5入门
- Android 图片加载框架Glide4.0源码完全解析(二)
- 全国路网数据、全国水系矢量 行政区划边界(省市区县)、行政地名 矢量数据
- 因为你,我愿意
- iOS NO scheme的解决方法