1.Linux与Windows的区别html
Windows是桌面OS。Linux是做为服务器的OS。Linux做为服务器是更安全更稳定的。java
2.虚拟机的理解linux
学习java的时候有个java虚拟机JVM。若是想要在windows上运行java程序,须要安装java虚拟机JVM。java程序就是运行在java虚拟机上的。ubuntu
一样的道理,若是想要在windows上运行Linux,也是须要安装虚拟机的,这个虚拟机是VMWare。Linux就是运行在VMWare上的。windows
3.几个概念:tomcat
Windows:宿主机安全
VMWare:虚拟机服务器
Linux:Client机(能够有不少的)网络
4.Windows上安装VMWareeclipse
(1)使用管理员的身份运行包
(2)点击下一步
选择“自定义”,选择虚拟机安装的位置。
关于大数据的安装的软件,尽可能都是选择64位的软件,兼容性好,没办法的时候安装32位的软件。
(3)选择 “将共享虚拟机存储到”存储的位置(选择客户机安装的位置)
由于虚拟机里面能够安装不少的Linux客户机,这些客户机是很是占用内存的,因此要为客户机找一个100G左右的空间。
(4)不勾选:“启动时选择版本更新”、“帮助改善”、
(5)破解注册:打开生成的VMWare Workstation,在顶部的工具条中找到“帮助”--à”输入许可证秘钥”,输入下面的注册码:
若是注册码有问题去网上搜索新的注册码。
5.VMWare上安装ubuntu
(1)下载ubuntu的iso镜像文件
(2) 在vmware中“文件”--à“新建虚拟机”,选择“典型推荐”,选择镜像文件。(不勾选稍后启动操做系统不用管)。
(3)填写Linux主机名,用户名和密码:
记住这里的用户名和密码,这里就是登录到建立的这个客户机的用户名和密码。
(4)填写建立的这个客户机的名称,选择安装的位置(前面设置的100G左右的空间)。
(5)“最大磁盘大小—40G”,“将虚拟磁盘存储为单个文件”(就是咱们平时说的硬盘)。而后点击完成。进入系统以后输入用户名和密码就Ok了。
6.操做命令
默认是进入文本模式:
文本模式切换到鼠标的快捷键:Alt+Ctrl。
第一个表示的是用户名,第二个表示的是主机名:
7.Linux文件夹结构
(1)Windows是经过驱动器(就是常说的C盘、D盘)将磁盘的物理结构进行分区。
(2)Linux不使用驱动器,使用的是逻辑结构。“/”表示的是根目录,这个目录下有不少的子目录。
/:根目录
/bin:二进制目录,里面有不少的Linux命令,都是属于root用户(最高权限用户)的。
/sbin:也有不少的执行命令。
(上面的两个目录都在linux的环境变量中配置了。)
/dev:设备目录,好比磁盘、光驱、分区(Linux中一切都是文件/文件夹)
/etc:配置文件目录,能够理解为环境变量的目录
/lib:库文件,存放不少的.so文件(共享文件),是Linux须要的一些动态连接库文件。Windows也有一个动态连接库,存放不少须要的dll文件。
/lib64:就是64位的Linux须要的一些动态连接库文件。
/home:主目录,就是通常一个用户在Linux上就有一个家,家的位置就是/home,Linux能够有不少的用户,每个用户的家都是/home。好比ubuntu用户的家:/home/ununtu,ubuntu2用户的家就是/home/ubuntu2。~表示的就是当前用户的家:/home/ubuntu。
/root:root是最高权限的用户,他的家不在/home下,这个特殊用户的家是/root
涉及到的bin或者sbin目录里面都是有和命令有关的可执行文件,因此他们的路径在path中都有配置:
区分跟目录下的bin/sbin、usr下的bin/sbin、/usr/local下的bin/sbin:
(1)bin/sbin是老祖宗的命令;
(2)usr下的bin/sbin是ubuntu产品的命令
(3)/usr/local下的bin/sbin是用户自定义的命令
从path中的命令的顺序能够知道先加载loacal下的,而后是usr下的,最后才是根目录下的,因此若是本身添加的可执行文件有和系统命令同名的状况,就能够把本身的命令放在local里面的bin或sbin下优先执行。
其余的目录就不具体的去看了。
8.Linux基本命令
Windows Linux
Cd cd //改变目录,进入制定目录
Cd /? XXX –-help() //查看命令的帮助(help是两个杠,h是一个杠)
cd /? Man XX //也是查看命令的帮助
cd /? info XX //也是查看命令的帮助
Dir ls //显示制定目录的所有文件,不包括文件权限、大小、所属用户/组等信息。
Ls -al://显示所有文件,包括以“.”开头的文件(隐藏文件)
Ls -l://显示所有文件,不包括以“.”开头的文件
ls -al | more //查看一个屏幕大小的文件列表。|表示的是管道(前面的输出做为后面的输入)。more的做用是只显示一个屏幕大小的数据。按空格键翻到下一屏。q是退出。好比查看一个屏幕大小的ls帮助的使用:Ls –-help | more (两个线)。
ls -alh //人性化显示所有文件:
cls clear //清屏
whoami//查看用户名
which XXX//查看命令的位置
echo %java_home% echo $path //查看环境变量(windows不区分大小写,Linux区分大小写)
echo AAA echo AAA //输出字符
cd ~ //回到当前用户的家目录--à /home/ubuntu
pwd //如今当前位置的路径
Sudo passwd //为root用户设置密码
su root//切换用户。须要输入密码,可是默认开始的时候是没有给root用户设置密码的,因此要首先为root用户设置了密码以后,才能进行用户的切换。切换以后能够看到用户变化了:
Ipconfig ifconfig //查看ip
Ping XX ping XX //查看网络链接状况
Man mkdir //查看mkdir命令的使用方法
Mkdir a//建立文件夹
Mkdir -p b/c/d //建立文件夹。包括子文件夹
Ls b/c/d//查看b/c/d下的文件和文件夹
Tree find . //查看当前目录下的所有的文件、文件夹(.表示当前目录)
Find . | grep a//使用管道|(前面的输出做为后面的输入),使用过滤grep,查当前目录下全部包含a的文件或文件夹
固然也能够管道以后再管道:
Del rm -rf //删除文件
Rmdir rm -rf a/b //删除文件夹,删除a里面的b
echo Touch hello.txtx //建立空的文件
echo hello > hello.txt echo hello > hello.txt //建立文件并添加内容 ,覆盖模式
echo hello >> hello.txt echo hello >> hello.txt //建立文件并添加内容 ,追加模式
type cat hello.txt // 查看文件内容
Nano 命令编辑文件内容(小文件):Nano 命令(ubuntu自带的编辑器):
Ctrl+O+回车:保存
Ctrl+X:退出
Ctrl+K :剪切
Ctrl+U:将剪切的内容复制出来
Ctrl+K:删除
Ctrl+W:在文件中查找串
Copy a.txt b.txt cp a.txt b.txt//拷贝文件并重命名
Copy a.txt .. cp a.txt ../a/b //拷贝文件到上一个目录下的某个目录下,保持原来的名字
Copy a.txtx ../aa.txt cp a.txt ../a/b/aa.txt //拷贝文件到上一个目录下的某个目录下,并重命名
Cp -R b ../ //拷贝目录(R是大写的)到上级目录下
Mv a aa //移动目录并重命名(就只剩下aa了)
Mv a ../ 移动目录,保持原来的名字
Head hello.txt //显示文件的前10行
Head -3 hello.txt //显示文件的前3行
tail -3 hello.txt //显示文件的后3行
ps -ef //查看进程,通常结合管道使用:ps -ef | grep java
hostname//查看主机名
cat /etc/hostname //查看配置文件配置的主机名是什么
sudo XXX命令 //让当前用户用root用户的身份操做命令,若是这样仍是不行的话,就直接切换到root用户下去操做命令:su root
cd /etc,echo kubuntu > hostname //修改主机名(也能够用nano命令),(须要切换到root用户下进行操做)而后须要从新启动机器:reboot(须要权限,因此使用sudo reboot),而后就能够看到新的主机名了:
Sudo reboot //重启机器
Sudo shutdown -P now //关机并关闭电源(P大写)
Sudo shutdown -r now //重启机器
Uname -a //查看系统内核信息
>> //表示重定向,tar –-help >> text.txt 想要查看tar命令的使用方式,能够将查看的内容放在一个文件中方便进行总体的查看。
Tar -cvf //文件/文件夹归档(归档不是压缩)(获得的文件是.tar格式的):
Tar -tf //查看归档文件,可是不解归档:
Tar -rf //向归档文件中追加文件/文件夹:
Tar -xvf //解归档:
注意:归档文件是.tar ,压缩文件是.jar或者.war
Gzip -1 //压缩文件,原来的非压缩文件会删除(压缩以后的格式是.gz)
Gzip -d //解压缩(也可使用gunzip命令),原来的压缩文件删除
Tar -xzvf //解压缩,原来的压缩文件会保留(通常的时候都是解压缩gz格式的)
Find . | grep XX //find是以递归的形式查找目录下的所有文件或者文件夹。|是管道命令,前面的输出做为后面的输入,grep的做用是过滤,因此这个命令的意思就是找到包含XX串的文件/文件夹:
Xargs命令//将管道的输出内容放在一行并用空格分开,由于find执行的结果文件名是用换行符分开的,可是cp命令若是想拷贝多个文件,这多个文件必须放在一行用空格分开,因此若是想获得一行数据而且是用空格分开的,就用xages命令。注意“· · “这两个符合是与”~“放在一块儿的符号,叫作反引号,不是单引号,他的做用是将xargs视为命令:
“· · “反引号//将里面的内容视为命令,实现命令的嵌套,好比echo hostname是一个命令会输出hostname字符串,可是如今我想输出hostname的执行结果,就用反引号包起来,就是命令里面使用命令:
Mount//光驱的挂载(后面有介绍)
Umount //光驱的解挂载(后面有介绍)
Ln//建立连接
Ps -ef | grep tomcat//经过管道查看某个应用的进程,这里是查看tomcat
jobs //查看正在运行的做业:
netstat -ano | more //查看端口启动状况:
Kill -9 PID//杀死进程,PID是进程号
Dirname//查看文件/文件夹所在目录;
Basename//输出文件的基本名称
“``“(反引号)或者$//实如今命令中使用命令,就是能够把一个串解析为一个命令:
好比a.txt文件中内容是hostname,则想嵌套执行命令:
可是不能连着使用反引号,效果不行:
& //启动某个程序的时候让他后台运行,好比安装配置好eclipse后,后台启动eclipse :eclise &
网上还有不少推荐的Linux经常使用的命令,好比:
https://www.cnblogs.com/yjd_hycf_space/p/7730690.html
https://www.cnblogs.com/gaojun/p/3359355.html
若是想使用windows的黑窗口命令和linux同样,能够在windows上安装一个软件,好比CygwinPortable工具,网上一大堆。
9.Linux的光驱
能够看到Linux如今有使用的光驱(能够看到是链接的状态):
(1)修改Linux使用的光驱
Linux可使用新的光驱,上面的第二个图标右键选择“设置“,添加新的景象文件(光驱):
一路选择“肯定“,而后选择第二个图标”创建链接“:
链接以后的状态是有绿色的小对勾的,这样就使用了新的光驱(镜像文件):
如今我想查看这个光驱里面的文件,就必须把这个光驱挂载到一个文件夹下。
(2)光驱的挂载
切换到root用户下,在/mnt/hgfs下建立cdrom文件夹用来存放挂载以后的内容。光驱里面的文件是存储在/dev/cdrom中的,可是不能在这个路径下直接查看,因此使用mount命令将光驱挂载到指定文件夹下,就可使用ls查看光驱里面的内容了:
(3)光驱的解挂载
挂载以后的光驱有能够进行解挂载。回到挂载的目录/mnt下,用umount命令进行解挂载,解挂载以后在/mnt/cdrom中就能够看到没有内容了,解挂载成功:
10.Linux的连接
(1)连接的分类
Linux的连接分为符号连接和硬连接。
(1_1)硬连接:就相似于双胞胎,一个变化了,另外一个会跟着变化,是实时的变化。
建立一个硬连接:
能够看到文件类型和文件大小是同样的,可是颜色仍是黑色的(相似于文件的复制):
若是对一个文件进行了修改,另外一个文件也会实时的进行变化:
可是若是删除一个文件,另外一个文件不会删除:
(1_2)符号连接
如今来建立一个符号连接,能够看到颜色是青色的:
而且能够看到文件类型和文件大小是不同的,可是他们存储的内容仍是同样的:
由于符号连接其实是快捷方式,因此他的内存确定是小的,原来的文件是不能删除的。平时在Linux中使用符号连接的状况比较多,简化文件的书写。简化路径。有的时候常常要去一个目录,可是层次不少,好比:/a/b/c/d,一个简单的方式就是为这个路径建立一个符号连接:
---去到符号连接指定的位置,显示的仍是符号连接:
---去到符号连接对应的物理位置,显示的是实际的位置:
11.查看环境变量值的几种方式(Linux是区分大小写的)
(1)Linux
注意:Linux的环境变量中的分隔符是冒号“:”。推荐使用${}。后面还能够加字符串。
(2)Windows
注意:Windows的环境变量中的分隔符是分号“;”
12.export命令
他是ubuntu的内置命令,内置命令的意思就是说没有对应的命令可执行文件。export的命令是导入环境变量。如今导入一下:
查看一下导入的环境变量:
注意:使用这种方式导入的环境变量是临时的,从新启动虚拟机以后导入的这个环境变量就消失了。
设置一个变量=系统的环境变量+自定义的环境变量(注意PATH大写,由于Linux是区分大小写的):
export中使用相似三元运算符(若是env为空就设置为evn2的值):
由于PATH存在,因此下面取的值是PATH的值:
清空自定义的环境变量: