Linux基础.docx
《Linux基础.docx》由会员分享,可在线阅读,更多相关《Linux基础.docx(24页珍藏版)》请在冰豆网上搜索。
Linux基础
Linux基础
教学导航
教学目标
1、了解Linux的简介与安装
2、掌握Linux常用的命令
3、掌握Linux系统上JDK、Mysql、Tomcat的安装
教学方法
一、Linux的简介
1.Linux的概述
Linux是基于Unix的开源免费的操作系统,由于系统的稳定性和安全性几乎成为程序代码运行的最佳系统环境。
Linux是由LinusTorvalds(林纳斯·托瓦兹)起初开发的,由于源代码的开放性,现在已经衍生出了成千上百种不同的Linux系统。
Linux系统的应用非常广泛,不仅可以长时间的运行我们编写的程序代码,还可以安装在各种计算机硬件设备中,比如手机、平板电脑、路由器等。
尤其在这里提及一下,我们熟知是Android程序最底层就是运行在linux系统上的。
图1林纳斯·托瓦兹图2linux的logo
2.Linux的分类
(1)Linux根据市场需求不同,基本分为两个方向:
1)图形化界面版:
注重用户体验,类似window操作系统,但目前成熟度不够
2)服务器版:
没有好看的界面,是以在控制台窗口中输入命令操作系统的,类似于DOS,是我们架设服务器的最佳选择
(2)Linux根据原生程度,又分为两种:
1)内核版本:
在Linus领导下的内核小组开发维护的系统内核的版本号
2)发行版本:
一些组织或公司在内核版基础上进行二次开发而重新发行的版本
(3)Linux发行版本不同,又可以分为n多种:
二、Linux的安装
1.虚拟机的安装(软件)
因为Linux也是一个系统,本质上跟我们电脑的Window没有区别,所以我们要学习Linux就首先将我们电脑的Window系统换成Linux系统,或者在我们电脑上安装双系统,听上去是不是很可怕。
其实我们可以在我们电脑上安装一个软件,这个软甲可以模拟一台或多台虚拟的电脑机器,这就是虚拟机
虚拟器常用的有两种:
VMware(威睿)公司的虚拟机软件,功能强大,收费产品
VitrualBox虚拟机软件Oracle公司的虚拟机软件,免费商品
由于市场上VMware使用率很高,所以我们安装VMware
2.CentOS的安装
CentOS是一个Linux的发行版本,是目前企业中用来做应用服务器系统的主要版本,CentOS的安装,其实是将该系统安装到VMware虚拟机软件中,让VMware虚拟机软件模拟出一台Linux系统的电脑。
CentOS6.7安装请见
三、Linux的基本命令
服务器版的Linux安装完毕了,但没有图形化界面,我们只能通过控制台去操作系统,我们就要使用类似DOS命令的Linux命令去操作系统,那么下面我们就进行Linux的命令的学习。
Linux命令成百上千,课程不能一一涉及,也没有必要一一涉及,根据我们程序员在日常工作中的需求,总结出如下几种供学习。
1.目录切换命令
window中通过图形化界面和鼠标可以任意切换需要进入的目录,但Linux必须通过cd命令切换目录。
但在学习cd命令之前,我们有必要分清Linux的目录结构()
cdusr切换到该目录下usr目录
cd../切换到上一层目录
cd/切换到系统根目录
cd~切换到用户主目录
cd-切换到上一个所在目录
2.目录的操作命令(增删改查)
linux的命令遵循结构:
命令-[参数]
(1)增加目录操作(增)
命令:
mkdir目录名称
示例:
在根目录/下mkdirtest,就会在根目录/下产生一个test问目录
(2)查看目录(查)
命令:
ls[-al]父目录
示例:
在根目录/下使用ls,可以看到该目录下的所有的目录和文件
示例:
在根目录/下使用ls-a,可以看到该目录下的所有文件和目录,包括隐藏的
示例:
在根目录/下使用ls-l,可以看到该目录下的所有目录和文件的详细信息
注意:
ls-l可以缩写成ll
(3)搜索目录(查)
命令:
find目录参数文件名称
示例:
find/root-name‘test*’
(4)修改目录的名称(改)
命令:
mv目录名称新目录名称
示例:
test目录下有一个oldTest目录,使用mvoldTestnewTest命令修改
注意:
mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行重命名的操作
(5)移动目录的位置---剪切(改)
命令:
mv目录名称目录的新位置
示例:
在test下将newTest目录剪切到/usr下面,使用mvnewTest/usr
注意:
mv语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作
(6)拷贝目录(改)
命令:
cp-r目录名称目录拷贝的目标位置-----r代表递归
示例:
将/usr下的newTest拷贝到根目录下的test中,使用cp-r/usr/newTest/test
注意:
cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不用写-r递归
(7)删除目录(删)
命令:
rm[-rf]目录
示例:
删除/usr下的newTest,进入/usr下使用rm-rnewTest
示例:
删除/test下的newTest而不需要询问强制删除,在/test下使用rm-rfnewTest
注意:
rm不仅可以删除目录,也可以删除其他文件或压缩包,为了方便大家的记忆,无论删除任何目录或文件,都直接使用rm-rf目录/文件/压缩包
3.文件的操作命令(增删改查)
(1)文件的创建(增)
命令:
touch文件名称-----空文件
示例:
在test目录下创建一个空文件touchaaa.txt
(2)文件的查看(查)
命令:
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-fcatalina-2016-11-11.log监控文件的变化
(3)修改文件的内容(改)
命令:
vim文件
示例:
编辑/test下的aaa.txt文件,使用vimaaa.txt
但此时并不能编辑,因为此时处于命令模式,点击键盘i/a/o进入编辑模式,可以编辑文件
编辑完成后,按下Esc,退回命令模式
此时文件虽然已经编辑完成,但是没有保存,需输入冒号:
进入底行模式,在底行模式下输入wq代表写入内容并退出,即保存;输入q!
代表强制退出不保存。
总结:
vim编辑器是Linux中的强大组件,是vi编辑器的加强版,vim编辑器的命令和快捷方式有很多,但此处不一一阐述,大家也无需研究的很透彻,使用vim编辑修改文件的方式基本会使用就可以了。
附:
和
关于vim使用过程:
vim文件-------->命令模式--------->输入i---------->编辑模式----------->编辑文件----------->按下Esc--------->命令模式--------->按下:
---------->底行模式----------->输入wq保存并退出/q!
强制退出不保存
(4)删除文件(删)
同目录删除:
熟记rm-rf文件即可
4.压缩文件的操作命令
(1)打包并压缩文件
Windows的压缩文件的扩展名.zip/.rar
linux中的打包文件:
.tar
linux中的压缩文件:
.gz
linux中打包并压缩的文件:
.tar.gz
Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。
而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。
命令:
tar-zcvf打包压缩后的文件名要打包的文件
其中:
z:
调用gzip压缩命令进行压缩
c:
打包文件
v:
显示运行过程
f:
指定文件名
示例:
打包并压缩/test下的所有文件压缩后的压缩包指定名称为xxx.tar.gz
tar-zcvfxxx.tar.gzaaa.txtbbb.txtccc.txt
或:
tar-zcvfxxx.tar.gz/test/*
(2)解压压缩包(重点)
命令:
tar[-xvf]压缩文件
其中:
x:
代表解压
示例:
将/test下的xxx.tar.gz解压到当前目录下
tar-xvfxxx.tar.gz
示例:
将/test下的xxx.tar.gz解压到根目录/usr下
tar-xvfxxx.tar.gz-C/usr------C代表指定解压的位置
5.其他命令
(1)显示工作目录
命令:
pwd
(2)查看进程
命令:
ps-ef---显示所有的进程
(3)kill命令
命令:
kill-9pid(pid是进程的id)
(4)搜索命令
命令:
grep要搜索的字符串要搜索的文件
示例:
搜索/usr/sudu.conf文件中包含字符串to的行
示例:
搜索/usr/sudu.conf文件中包含字符串to的行to要高亮显示
(5)管道命令
命令:
|将前一个命令的输出作为本次目录的输入
示例:
查看当前系统中所有的进程中包括system字符串的进程
(6)网络通信命令
查看当前系统的网卡信息:
ifconfig
查看与某台机器的连接情况:
ping
查看当前系统的端口使用:
netstat-an
(7)关机命令
重启命令:
reboot
立即关机:
halt
6.Linux的权限命令
权限是Linux中的重要概念,每个文件/目录等都具有权限,通过ls-l命令我们可以查看某个目录下的文件或目录的权限
示例:
在随意某个目录下ls-l
第一列的内容的信息解释如下:
文件的类型:
d:
代表目录
-:
代表文件
l:
代表链接(可以认为是window中的快捷方式)
后面的9位分为3组,每3位置一组,分别代表属主的权限,与当前用户同组的用户的权限,其他用户的权限
r:
代表权限是可读,r也可以用数字4表示
w:
代表权限是可写,w也可以用数字2表示
x:
代表权限是可执行,x也可以用数字1表示
属主(user)
属组(group)
其他用户
r
w
x
r
w
x
r
w
x
4
2
1
4
2
1
4
2
1
修改文件/目录的权限的命令:
chmod
示例:
修改/test下的aaa.txt的权限为属主有全部权限,属主所在的组有读写权限,
其他用户只有读的权限
chmodu=rwx,g=rw,o=raaa.txt
上述示例还可以使用数字表示:
chmod764aaa.txt
四、远程连接工具的使用
实际开发中,Linux服务器都在其他的地方,我们要通过远程的方式去连接Linux并操作它,Linux远程的操作工具有很多,企业中常用的有Puttty、secureCRT、SSHSecure等。
课程中我们使用SSHSecure工具进行远程连接,该工具是免费的图形化界面及命令行窗口集一身的远程工具。
安装包如下:
安装后,会出现两个图标:
点击图形化界面图标:
进入界面:
关于远程工具乱码的解决:
使用远程工具进行连接时,如果linux有中文文件或目录,显示时会出现乱码,原因是linux编码是UTF-8,而远程工具默认是当前系统本地编码即GBK。
所以解决方案是统一两者编码就OK了,但是该SSHSecure工具不能设置编码,所以通过修改linux的系统编码的方式进行统一编码。
在linux的/etc/sysconfig目录下有一个i18n的文件代表linux的系统编码
将其从UTF-8修改成GBK重现连接linux即可:
五、Linux的软件安装
1.JDK安装
注意:
rpm与软件相关命令相当于window下的软件助手管理软件
步骤:
1)查看当前Linux系统是否已经安装java
输入rpm-qa|grepjava
2)卸载两个openJDK
输入rpm-e--nodeps要卸载的软件
3)上传jdk到linux
4)解压jdk到/usr/local下tar–xvfjdk-7u71-linux-i586.tar.gz–C/usr/local
5)配置jdk环境变量,打开/etc/profile配置文件,将下面配置拷贝进去
#setjavaenvironment
JAVA_HOME=/usr/local/jdk1.7.0_71
CLASSPATH=.:
$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:
$PATH
exportJAVA_HOMECLASSPATHPATH
6)重新加载/etc/profile配置文件source/etc/profile
2.Mysql安装
步骤:
1)查看CentOS自带的mysql
输入rpm-qa|grepmysql
2)将自带的mysql卸载
3)上传Mysql到linux
4)解压Mysql到/usr/local/下的mysql目录(mysql目录需要手动创建)内
cd/usr/local
mkdirmysql
tar-xvfMySQL-5.6.22-1.el6.i686.rpm-bundle.tar-C/usr/local/mysql
5)在/usr/local/mysql下安装mysql
安装服务器端:
rpm-ivhMySQL-server-5.6.22-1.el6.i686.rpm
安装客户端:
rpm-ivhMySQL-client-5.6.22-1.el6.i686.rpm
6)启动mysql
servicemysqlstart
7)将mysql加到系统服务中并设置开机启动
加入到系统服务:
chkconfig--addmysql
自动启动:
chkconfigmysqlon
8)登录mysql
mysql安装好后会生成一个临时随机密码,存储位置在/root/.mysql_secret
msyql–uroot-p
9)修改mysql的密码
setpassword=password('root');
10)开启mysql的远程登录
默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启远程登录mysql的权限
登录mysql后输入如下命令:
grantallprivilegeson*.*to'root'@'%'identifiedby'root';
flushprivileges;
11)开放Linux的对外访问的端口3306
/sbin/iptables-IINPUT-ptcp--dport3306-jACCEPT
/etc/rc.d/init.d/iptablessave---将修改永久保存到防火墙中
3.Tomcat安装
步骤:
1)上传Tomcat到linux上
2)解压Tomcat到/usr/local下
3)开放Linux的对外访问的端口8080
/sbin/iptables-IINPUT-ptcp--dport8080-jACCEPT
/etc/rc.d/init.d/iptablessave
4)启动关闭Tomcat
进入tomcat的bin下启动:
./startup.sh
进入tomcat的bin下关闭:
./shutdown.sh