Linux是基于Unix的开源免费的操做系统,因为系统的稳定性和安全性几乎成为程序代码运行的最佳系统环境。Linux是由Linus Torvalds(林纳斯·托瓦兹)起初开发的,因为源代码的开放性,如今已经衍生出了千上百种不一样的Linux系统。
Linux系统的应用很是普遍,不只能够长时间的运行咱们编写的程序代码,还能够安装在各类计算机硬件设备中,好比手机、平板电脑、路由器等。尤为在这里说起一下,咱们熟知是Android程序最底层就是运行在linux系统上的。java
(1)Linux根据市场需求不一样,基本分为两个方向:
1)图形化界面版:注重用户体验,相似window操做系统,但目前成熟度不够
2)服务器版:没有好看的界面,是以在控制台窗口中输入命令操做系统的,相似 于DOS,是咱们假设服务器的最佳选择node
(2)Linux根据原生程度,又分为两种:
1)内核版本:在Linus领导下的内核小组开发维护的系统内核的版本号
2)发行版本:一些组织或公司在内核版基础上进行二次开发而从新发行的版本mysql
(3)Linux发行版本不一样,又能够分为n多种:linux
1.虚拟机的安装
由于Linux也是一个系统,本质上跟咱们电脑的Window没有区别,因此咱们要学习Linux就首先将咱们电脑的Window系统换成Linux系统,或者在咱们电脑上安装双系统,听上去是否是很可怕。其实咱们能够在咱们电脑上安装一个软件,这个软甲能够模拟一台或多台虚拟的电脑机器,这就是虚拟机
虚拟器经常使用的有两种:c++
VMware(威睿)公司的虚拟机软件,功能强大,收费产品程序员
VitrualBox 虚拟机软件 Oracle公司的虚拟机软件,免费商品web
因为市场上VMware使用率很高,因此咱们安装VMware 《VMware安装手册》sql
2.CentOS的安装
CentOS是一个Linux的发行版本,是目前企业中用来作应用服务器系统的主要版本,CentOS的安装,实际上是将该系统安装到VMware虚拟机软件中,让VMware虚拟机软件模拟出一台Linux系统的电脑。CentOS6.5安装请见《CentOS安装手册》vim
服务器版的Linux安装完毕了,但没有图形化界面,咱们只能经过控制台去操做系统,咱们就要使用相似DOS命令的Linux命令去操做系统,那么下面咱们就进行Linux的命令的学习。Linux命令成百上千,课程不能一一涉及,也没有必要一一涉及,根据咱们程序员在平常工做中的需求,总结出以下几种供学习。segmentfault
window中经过图形化界面和鼠标能够任意切换须要进入的目录,但Linux必须经过cd命令切换目录。但在学习cd命令以前,咱们有必要分清Linux的目录结构(linux目录结构详细说明)
cd usr 切换到该目录下usr目录
cd …/ 切换到上一层目录
cd / 切换到系统根目录
cd ~ 切换到用户主目录
cd - 切换到上一个所在目录
命令:mkdir 目录名称
示例:在根目录 / 下 mkdir test,就会在根目录 / 下产生一个test问目录
命令:ls [-al] 父目录
示例:在根目录 / 下使用ls,能够看到该目录下的全部的目录和文件
示例:在根目录 / 下使用ls -a,能够看到该目录下的全部文件和目录,包括隐藏的
示例:在根目录 / 下使用ls -l,能够看到该目录下的全部目录和文件的详细信息
注意:ls -l 能够缩写成ll
命令:find 目录 参数
示例:查找/root下的与test相关的目录(文件) find /root -name ‘test*’
命令:mv 目录名称 新目录名称
示例:test目录下有一个oldTest目录,使用mv oldTest newTest命令修改
注意:mv的语法不只能够对目录进行重命名并且也能够对各类文件,压缩包等进行 重命名的操做
命令:mv 目录名称 目录的新位置
示例:在test下将newTest目录剪切到 /usr下面,使用mv newTest /usr
注意:mv语法不只能够对目录进行剪切操做,对文件和压缩包等均可执行剪切操做
命令:cp -r 目录名称 目录拷贝的目标位置 -----r表明递归拷贝
示例:将/usr下的newTest拷贝到根目录下的test中,使用cp -r /usr/newTest /test
注意:cp命令不只能够拷贝目录还能够拷贝文件,压缩包等,拷贝文件和压缩包时不 用写-r递归
命令:rm [-rf] 目录
示例:删除/usr下的newTest,进入/usr下使用rm -r newTest
示例:删除/test下的newTest而不须要询问强制删除,在/test下使用rm -rf newTest
注意:rm不只能够删除目录,也能够删除其余文件或压缩包,为了加强你们的记忆, 不管删除任何目录或文件,都直接使用rm -rf 目录/文件/压缩包
命令:touch 文件名称 ----- 空文件
示例:在test目录下建立一个空文件 touch aaa.txt
命令:cat/more/less/tail 文件
示例:使用cat查看/etc/sudo.conf文件,只能显示最后一屏内容
示例:使用more查看/etc/sudo.conf文件,能够显示百分比,回车能够向下一行, 空格能够向下一页,q能够退出查看
示例:使用less查看/etc/sudo.conf文件,可使用键盘上的PgUp和PgDn向上 和向下翻页,q结束查看
示例:使用tail -10 查看/etc/sudo.conf文件的后10行,Ctrl+C结束
注意:命令 tail -f 文件 能够对某个文件进行动态监控,例如tomcat的日志文件, 会随着程序的运行,日志会变化,可使用tail -f catalina-2016-11-11.log 监控 文 件的变化
命令:vim 文件
示例:编辑/test下的aaa.txt文件,使用vim aaa.txt
但此时并不能编辑,由于此时处于命令模式,点击键盘i/a/o进入编辑模式,能够 编辑文件
编辑完成后,按下Esc,退回命令模式
此时文件虽然已经编辑完成,可是没有保存,需输入冒号:进入底行模式,在底行模 式下输入wq表明写入内容并退出,即保存;输入q!表明强制退出不保存。
总结:
vim编辑器是Linux中的强大组件,是vi编辑器的增强版,vim编辑器的命令和快捷方式有不少,但此处不一一阐述,你们也无需研究的很透彻,使用vim编辑修改文件的方式基本会使用就能够了。附:《vi使用方法介绍》和《vim命令合集》
关于vim使用过程:
在实际开发中,使用vim编辑器主要做用就是修改配置文件
vim 文件------>进入文件----->命令模式------>按i进入编辑模式----->编辑文件 ------->按Esc进入底行模式----->输入:wq/q!
(4)删除文件(删)
同目录删除:熟记 rm -rf 文件 便可
(1)打包并压缩文件
Linux中的打包文件通常是以.tar结尾的,压缩的命令通常是以.gz结尾的。
而通常状况下打包和压缩是一块儿进行的,打包并压缩后的文件的后缀名通常.tar.gz。
命令:tar -zcvf 打包压缩后的文件名 要打包压缩的文件
其中:z:调用gzip压缩命令进行压缩
c:打包文件
v:显示运行过程
f:指定文件名
示例:打包并压缩/test下的全部文件 压缩后的压缩包指定名称为xxx.tar.gz
tar -zcvf xxx.tar.gz aaa.txt bbb.txt ccc.txt
或:tar -zcvf xxx.tar.gz /test/*
(2)解压压缩包(重点)
命令:tar [-xvf] 压缩文件
其中:x:表明解压
示例:将/test下的xxx.tar.gz解压到当前目录下
tar -xvf xxx.tar.gz
示例:将/test下的xxx.tar.gz解压到根目录/usr下
tar -xvf xxx.tar.gz -C /usr------C表明指定解压的位置
(1)显示当前所在位置
pwd
(2)搜索命令
命令:grep 要搜索的字符串 要搜索的文件
示例:搜索/usr/sudu.conf文件中包含字符串to的行
示例:搜索/usr/sudu.conf文件中包含字符串to的行 to要高亮显示
(3)管道命令
命令:| 将前一个命令的输出做为本次目录的输入
示例:查看当前系统中全部的进程中包括system字符串的进程
(4)查看进程
命令:ps -ef
示例:查看当前系统中运行的进程
(5)杀死进程
命令:kill -9 进程的pid
(6)网络通讯命令
查看当前系统的网卡信息:ifconfig
查看与某台机器的链接状况:ping
查看当前系统的端口使用:netstat -an
权限是Linux中的重要概念,每一个文件/目录等都具备权限,经过ls -l命令咱们能够 查看某个目录下的文件或目录的权限
示例:在随意某个目录下ls -l
第一列的内容的信息解释以下:
文件的类型:
d:表明目录
-:表明文件
l:表明连接(能够认为是window中的快捷方式)
后面的9位分为3组,每3位置一组,分别表明属主的权限,与当前用户同组的 用户的权限,其余用户的权限
r:表明权限是可读,r也能够用数字4表示
w:表明权限是可写,w也能够用数字2表示
x:表明权限是可执行,x也能够用数字1表示
修改文件/目录的权限的命令:chmod
示例:修改/test下的aaa.txt的权限为属主有所有权限,属主所在的组有读写权限,
其余用户只有读的权限
chmod u=rwx,g=rw,o=r aaa.txt
上述示例还可使用数字表示:
chmod 764 aaa.txt
实际开发中,Linux服务器都在其余的地方,咱们要经过远程的方式去链接Linux并操做它,Linux远程的操做工具备不少,企业中经常使用的有Puttty、secureCRT、SSH Secure等。课程中咱们使用SSH Secure工具进行远程链接,该工具是免费的图形化界面及命令行窗口集一身的远程工具。安装包以下:
安装后,会出现两个图标:
点击图形化界面图标:
进入界面:
关于远程工具乱码的解决:
使用远程工具进行链接时,若是linux有中文文件或目录,显示时会出现乱码,缘由是linux编码是UTF-8,而远程工具默认是当前系统本地编码即GBK。因此解决方案是统一二者编码就OK了,可是该SSH Secure工具不能设置编码,因此经过修改linux的系统编码的方式进行统一编码。
在linux的/etc/sysconfig目录下有一个i18n的文件表明linux的系统编码
将其从UTF-8修改为GBK重现链接linux便可:
注意:rpm与软件相关命令 至关于window下的软件助手 管理软件
步骤:
1)查看当前Linux系统是否已经安装java
输入 rpm -qa | grep java
2)卸载两个openJDK
输入rpm -e --nodeps 要卸载的软件
3)上传jdk到linux
4)安装jdk运行须要的插件yum install glibc.i686(选作)
5)解压jdk到/usr/local下 tar –xvf jdk-7u71-linux-i586.tar.gz –C /usr/local
6)配置jdk环境变量,打开/etc/profile配置文件,将下面配置拷贝进去
JAVA_HOME=/usr/local/jdk1.7.0_71
CLASSPATH=.:JAVA_HOME/lib.tools.jar PATH=JAVAHOME/lib.tools.jarPATH=JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
7)从新加载/etc/profile配置文件 source /etc/profile
步骤:
1)查看CentOS自带的mysql
输入 rpm -qa | grep mysql
2)将自带的mysql卸载
3)上传Mysql到linux
4)安装mysql的依赖(选作)
yum -y install libaio.so.1 libgcc_s.so.1 libstdc++.so.6
yum update libstdc+±4.4.7-4.el6.x86_64
5)解压Mysql到/usr/local/下的mysql目录(mysql目录须要手动建立)内
cd /usr/local
mkdir mysql
tar -xvf MySQL-5.6.22-1.el6.i686.rpm-bundle.tar -C /usr/local/mysql
6)在/usr/local/mysql下安装mysql
安装服务器端:rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm
安装客户端:rpm -ivh MySQL-client-5.6.22-1.el6.i686.rpm
7)启动mysql
service mysql start
8)将mysql加到系统服务中并设置开机启动
加入到系统服务:chkconfig --add mysql
自动启动:chkconfig mysql on
9)登陆mysql
mysql安装好后会生成一个临时随机密码,存储位置在/root/.mysql_secret
msyql –u root -p
10)修改mysql的密码
set password = password(‘root’);
11)开启mysql的远程登陆
默认状况下mysql为安全起见,不支持远程登陆mysql,因此须要设置开启 远程登陆mysql的权限
登陆mysql后输入以下命令:
grant all privileges on_._to ‘root’ @’%’ identified by ‘root’;
flush privileges;
12)开放Linux的对外访问的端口3306
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
/etc/rc.d/init.d/iptables save —将修改永久保存到防火墙中
步骤:
1)上传Tomcat到linux上
2)解压Tomcat到/usr/local下
3)开放Linux的对外访问的端口8080
/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
/etc/rc.d/init.d/iptables save
4)启动关闭Tomcat
进入tomcat的bin下启动:./startup.sh
进入tomcat的bin下关闭:./shutdown.sh
步骤:
1)将java项目打包成war包
2)将项目war包提交到服务器的tomcat的webapp目录下
3)启动tomcat,在浏览器经过IP地址:端口号/项目名称访问
须要完整执行脚本的或者更多资料的,请点赞评论转发,并私信博主获取