创建虚拟机时需注意三点:

  • 在BIOS中开启Intel VT,以支持64位虚拟机系统;
  • 对于Ubuntu 16以上版本,至少分配10G以上初始控件。

  • 增加一块网卡,选择Host-Only网络,用于主机和虚拟机的网络连接。


Ubuntu安装好以后,创建用户和root密码,进入系统。

点击虚拟机面板“管理-全局设定”,将网络地址设置为与主机同一个网段:

进入Ubuntu网络设置(点击右上角图标),把Host-Only网卡设为手动获取IP地址,填入主机同网段IP:

重启一下网络,用主机ping一下虚拟机地址进行验证。

必须注意的是,如果主机使用Wifi网络连接,需要在主机的无线网络属性中勾选Internet连接共享,共享的网段为192.168.137.1,上述设置要随之变化。

接下来安装增强功能,点击“设备-安装增强功能”,将自动加载光盘:

打开终端运行autorun.sh:

sudo ./autorun.sh

共享粘贴板中勾选双向:


First of all,更新一下系统:

sudo apt upgrade

安装FTP:

sudo apt-get install vsftpd

设置FTP路径:

sudo mkdir /usr/ftp

新建一个用于FTP的用户,设置密码以及工作目录:

sudo useradd -d /home/ftp -s /bin/bash ftpuser
passwd ftpuser

接下来有两种方法让ftpuser拥有更改ftp目录的权限,选项一:授予ftpuser用户读写ftp目录权限:

setfacl -R -m u:ftpuser:rwx /usr/ftp

选项二:将ftpuser添加到用户组ftp中,赋予用户组权限:

usermod -a -G ftp ftpuser
chown -R :ftp /usr/ftp
chmod -R g+rwx /usr/ftp
chmod g+s /usr/ftp

检查vsftpd.conf配置文件:

cat /etc/vsftpd.conf | grep -v "#" | more

在配置文件结尾加上如下字段:

write_enable=YES
local_root=/usr/ftp
chroot_local_user=YES
chroot_list_enable=YES

重新启动vsftpd服务:

sudo service vsftpd restart

打开Ubuntu自带浏览器尝试访问即可。


接下来安装Oracle JDK,这里以8u131版本为例,在Oracle官网上下载 jdk-8u131-linux-x64.tar解压到/usr/java目录(可通过上一步安装的FTP来将JDK安装文件传输到虚拟机目录):

sudo tar -xzvf jdk-8u131-linux-x64.tar.gz
sudo mkdir /usr/java
sudo mv usr/ftp/jdk1.8.0_131 /usr/java/jdk1.8

重命名为jdk1.8是为了之后配置环境变量方便,编辑.bashrc文件:

sudo gedit ~/.bashrc

在文件末尾加上以下内容:

# Java
JAVA_HOME=/usr/java/jdk1.8
JRE_HOME=$JAVA_HOME/jre
JAVA_BIN=$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME PATH CLASSPATH

让更改立即生效:

source ~/.bashrc

验证一下是否配置成功:

java -version


虚拟机上的Linux Java开发环境部署记录(VirtualBox+Ubuntu)第一章-基础环境搭建的更多相关文章

  1. redis主从复制以及SSDB主主复制环境部署记录(四)

    redis配置主从和ssdb主主复制 参考:散尽浮华Linux下Redis主从复制以及SSDB主主复制环境部署记录 只做自己查阅. 环境要求:三台虚拟机一台做主,两台做从. 通过SSDB在redis做 ...

  2. 虚拟机上的Linux学习

    title: 虚拟机上的Linux学习 date: 2018-08-08 15:48:28 updated: tags: [Linux,学习笔记] description: keywords: com ...

  3. windows下使用远程工具登录虚拟机上的Linux、访问虚拟机上的服务 、端口转发、win7 telnet登陆虚拟机

    首先要清楚virtual box如何设置端口转发: 一篇文章: 如何使用VirtualBox进行端口转发 由于默认的方式是用NAT来做虚拟机网络的,因此如果从外网想访问虚拟机的应用会比较麻烦.以前一直 ...

  4. 【转载】Linux小白福利:《超容易的Linux系统管理入门书》(三)在虚拟机上安装Linux

    本篇是Linux小白最佳实践第3篇,目的就是让白菜们自己动手安装个Linux玩玩.如果你是Linux小白,请务必亲自动手来安装.不想安装多个操作系统的,虚拟机是最佳选择,一台电脑上可以用虚拟机安装7. ...

  5. Linux下rsyslog日志收集服务环境部署记录【转】

    rsyslog 可以理解为多线程增强版的syslog. 在syslog的基础上扩展了很多其他功能,如数据库支持(MySQL.PostgreSQL.Oracle等).日志内容筛选.定义日志格式模板等.目 ...

  6. 网络基础 利用vnc viewer访问在vmware虚拟机上的linux

    利用vnc viewer访问在vmware虚拟机上的linux by:授客 QQ:1033553122 Linux服务器为架设在VMware之上的虚拟机,那么可以直接使用VMware自带的vnc,而不 ...

  7. MySQL高可用架构-MHA环境部署记录

    一.MHA介绍 MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebook公司) ...

  8. Centos7下ELK+Redis日志分析平台的集群环境部署记录

    之前的文档介绍了ELK架构的基础知识,日志集中分析系统的实施方案:- ELK+Redis- ELK+Filebeat - ELK+Filebeat+Redis- ELK+Filebeat+Kafka+ ...

  9. MySQL高可用架构-MMM环境部署记录

    MMM介绍MMM(Master-Master replication manager for MySQL)是一套支持双主故障切换和双主日常管理的脚本程序.MMM使用Perl语言开发,主要用来监控和管理 ...

随机推荐

  1. Nginx(一)安装及启停

    目录 1 nginx安装 2 nginx启停 我发现很多博客排版杂乱,表达不清,读者看了往往云里雾里.我此前的博客也是如此,我自己很不满意.今起,每一篇博客都会用心写,此前的博客我也会尽力修改.至少要 ...

  2. Linux时间命令

    Linux一般有系统时间和硬件时间之分,date命令是显示和操作系统时间:hwclock用来操作硬件时间(日期).日期和时间很重要,比如错误的日期和时间会导致你不能编译程序. 1 date 用法:   ...

  3. tomcat与jboss等容器的区别

    1.JBoss 是 J2EE 应用服务器,而 Tomcat 只是一个 Servlet 容器,或者说是一个简单的 J2EE 应用服务器. JBoss 中的 Servlet 容器还是 Tomcat. 与  ...

  4. 在PHP中使用MySQL Mysqli操作数据库 ,以及类操作方法

    先来操作函数部分,普遍的MySQL 函数方法,但随着PHP5的发展,有些函数使用的要求加重了,有些则将废弃不用,有些则参数必填... ================================= ...

  5. IOS第三方之SVProgressHUD

    这个第三方和MBProgressHUD差不多,也挺简单的. // // ViewController.m // ProgressHUD // // Created by City--Online on ...

  6. CocoaPods管理第三方

    之前听伟哥说用CocoaPods做第三方库的管理很方便,今天看了下自己做了下感觉确实不错.下面开始,Let's go!! 1.安装CocoaPods之前,先确保本地有Ruby环境,因为CocoaPod ...

  7. cordova打包APK,SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode ...

    javascript 严格模式 第一次接触let关键字,有一个要非常非常要注意的概念就是”javascript 严格模式”,比如下述的代码运行就会报错: let hello = 'hello worl ...

  8. Shell脚本编写5-----Shell 基本运算符

    算术运算符 原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用.expr 是一款表达式计算工具,使用它能完成表达式的求值操作.例如: 两个数相加 ...

  9. 自己实现一个双向绑定的Vue

    我们知道双向绑定是Vue的核心之一,接下来我们自己仿照Vue实现一个基本的功能. 项目代码在GitHub上: https://github.com/zhangKunUserGit/zk-vue

  10. WinForm通过操作注册表实现限制软件使用次数的方法

    1.创建注册表文件: 打开记事本,输入一些内容: ? 1 2 3 REGEDIT4 [HKEY_CURRENT_USER/Software/MyRegDataApp] "UseTime&qu ...