Linux基础与搭建

学习目标

  • 了解Linux的简介与安装
  • 掌握Linux常用的命令
  • 掌握Linux系统上JDKMysqlTomcat的安装

 Linux简介

2.1 Unix简介

Unix是一个强大的多用户、多任务操作系统。

1969年在AT&(美国电话电报公司}的贝尔实验室开发。

UNIX的商标权由国际开放标准组织(The Open Group)所拥有。

UNIX操作系统是商业版,需要收费,价格比Microsoft Windows正版要贵一些。不过UNIX有免费版的,例如:NetBSD等类似UNIX版本。

2.2 linux 简介

Linux起源于一个学生的简单需求。Linus Torvalds,Linux的作者与主要维护者,在其上大学时所买得起的唯一软件是Minix. Minix是一个类似Unix,被广泛用来辅助教学的简单操作系统。Linus Minix不是很满意,于是决定自己编写软件。他以学生时代熟悉的Unix作为原型, 在一台Intel 386 PC上开始了他的工作。他的进展很快,受工作成绩的鼓舞,他将这项成果通过互连网与其他同学共享,主要用于学术领域。有人看到了这个软件并开始分发。每当出现新问题时,有人会立刻找到解决办法并加入其中,很快的, Linux成为了一个操作系统。值得注意的是Linux并没有包括Unix源码。它是按照公开的POSIX标准重新编写的。Linux大量使用了由麻省剑桥免费软件基金的GNU软件,同时Linux自身也是用它们构造而成。

Linux是一套免费的类Unix操作系统

Linux是一套免费使用和自由传播的类Unix操作系统,可以任意修改其源

Linux存在着许多不同的Linux、版本,但它们都使用了Linux内核。

Linux可安装在各种计算机硬件设备中,手机、平板、台式、笔记本、大型机和超级计算机。

Linux操作系统诞生于1991105,芬兰大学生林纳斯一托瓦兹[Linux Torvalds)和后来陆续加入的众多爱好者共同开发完成。

Linux的特点:它是多用户,多任务,丰富的网络功能,可靠的系统安全,良好的可移植性。

Linux的基本思想有两点:第一,一切都是文件;第二每个软件都有确定的用途。

1.1 linux的分类

1.1.1 Linux根据市场需求不同,基本分为两个方向:

1)图形化界面版:注重用户体验,类似window操作系统,但目前成熟度不够

2)服务器版:没有好看的界面,是以在控制台窗口中输入命令操作系统的,类似于DOS,是我们部署服务器的最佳选择

1.1.2 Linux根据原生程度,又分为两种:

1)内核版本:在Linus领导下的内核小组开发维护的系统内核的版本号

2)发行版本:一些组织或公司在内核版基础上进行二次开发而重新发行的版本

1.2 Linux主流版本

 

1.2.1 Redhatlinux

Red hat领导着Linux的开发、部署和经营,从嵌入式设备到安全网页服务器,它都是用开源软件作为Internet基础设施解决方案的领头羊。

Red Hat解决方案包括Red Hat Linux、开发人员和嵌入式技术,以及培训、管理和技术支持。(收费)

1.2.2 Ubuntu

    Ubuntu(乌班图)是一个以桌面应用为主的Linux操作系统

    Ubunt的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。为桌面虚拟化提供支持平台

1.2.3 Centos

CentOSLinux发行版之一。

Red  Hat Enterprise Linux提供的源代码编译而成。很多公司使用CentOS替代商业版RedHat 。Red HatCentOS差别不大,Red Hat LinuxCentos系统是免费的. Red Hat Linux服务是收费的』比如免费版本不支持在线升级 

CentOS每个版本服务都是免费的.

安装虚拟机

2.1 什么是虚拟机

虚拟机:指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。可以使你在一台机器上同时运行二个或更多WindowsLINUX系统。它可以模拟一个标准PC环境。这个环境和真实的计算机一样,都有芯片组CPU、内存、显卡声卡网卡软驱、硬盘、光驱串口并口USB控制器

2.1.1 VMware Workstation(中文名“威睿工作站”)

  • 是一款功能强大的桌面虚拟计算机软件,收费的。VMware是全球桌面到数据中心虚拟化解决方案的领导厂商

2.1.2 Virtualbox

是一款开源虚拟机软件。VirtualBox、是由德国Innotek公司开发,由Sun出品的软件,在SunOracle收购后正式更名成Oracle VM VirtualBox

2.2 安装虚拟机

 

 双击打开基本上傻瓜式安装这里不在介绍

2.3 虚拟机上安装centos7

2.3.1 创建配置虚拟机

 

 

 

 

 

 

 

 

2.3.2 打开虚拟机开始安装

 

 

用鼠标点击,然后用上下箭头选中并回车

 

回车 

 

 

 

 

 

 

 

开始安装

2.3.3 设置root密码

 

 

2.3.4 设置普通用户

 

 

 

安装完成以后,重启liunx

3 Linux 目录结构

 

  • Bin存放可执行文件
  • Boot存放用于系统引导使用的各种文件
  • Dev存放设备文件
  • etc 存放系统配置文件
  • Home 存放用户文件的根目录
  • Lib存放和文件系统程序运行所需的共享库及内核模块
  • Proc目录中的数据在内存中如系统核心,外部设备,网络状态由于数据都在内存中,所以不占用磁盘空间
  • Usr应用程序存放的根目录usr/bin 存放应用程序 Usr/share  存放共享数据 usr/local 存放软件升级包
  • Var 放置系统执行过程中经常变化的文件,如随时更改的日志文件var/log

4 Linux基本命令

Linux基本没有图形化页面,一般使用命令去控制操作系统类似dos命令Linux命令很多,这里只介绍常用的命令。

4.1 目录管理

4.1.1 ls

作用列出目录内   语法:Is[参数」【文件或目录]

常用: -a-all列出所有文件和目录.包含隐藏的  -I使用详细格式列表,此命令非常常用  II  /home/ 显示指定目录下的内容  -t用文件和目录的更改时间排序。

           -r反向排序

4.1.2 cd

       作用 切换目录 语法cd 目录

       常用 cd ~   换当前用户目录   cd /  切换到根目录   cd – 切换上一次访问目录  cd .. 切换一级目录  cd   缺省当前用户目录 

4.1.3 pwd

        作用 显示当前工作目录  语法: pwd 

4.1.4 mkdir

作用创建目录  语法mkdir参数    -p父目录不存在情况下先生成父目录(parents)   -v显示命令执行过程中的详细信息 常用mkdir –pv ./a/111

4.1.5 rmdir

作用删除空目录, 必须空目录  语法rmdir 目录名  要想删除空目录 需使用 rm –rf 目录

4.2 文件浏览

4.2.1 cat     作用;显示文件内容        语法cat 文件

4.3 文件或目录操作管理  复制、移动、删除、查找

4.3.1 cp  作用:复制文件或目录   语法cp [参数] [源文件或目录] [目标文件或目录]

-r 递归处理 ,指指定目录下的文件及子文件一并处理    常用: cp  –r ./a  ./c  a 目录下的所有文件拷贝到c目录

4.3.2 mv 作用:移动或更名现有的文件或目录 语法:mv [参数] [源文件或目录][目标文件或目录]

 常用mv  /a/a1.log   b/a1.loga目录下的文件剪切到b 目录下    mv /a/a1.log b/b1.log a目录下的文件剪切到b目录重新命名为b1.log

 mv  a  b 把目录a 名为b

4.3.3 rm  作用删除文件或目录 语法rm [-dfirv] [文件或目录]

 -f 强制删除文件目录   -r 递归处理 常用:rm a.log  有询问是否删除 rm –f a.log直接删除,不询问是否删除  rm –rf a.log 直接级联删除,不询问是否删除

4.3.4 find

作用查找文件目录  语法find [][参数]        -name 指定字符串或寻找文件或目录的范本样式  常用find /usr/ -name ‘ab*’

4.4 文档编辑

4.4.1 Vi vim 命令 作用:对文件进行编辑 语法vim [文件名]

 一般操作步骤如下:

 1) 输入vim文件名”进入“一般模式” 

2) 按下i”从一般模式,进入“插入模式”

3) 按下esc”从“插入模式”退出到“一般模式”

4) “一般模式”下,输入“:wq 保存退出编辑。

常用命令:

 

4.4.2 创建文件

文件的创建(增)

命令:touch 文件名称  ----- 空文件

 

4.5 系统命令

4.5.1 grep

作用用于过滤、搜索特定字符 可配合正表达式使用  语法:grep [option] pattern [file]     -c 输出匹配的行数  -i  忽略大小写

4.5.2 ps

作用用来查看系统进程信息 格式ps [参数]   -e 显示进程  -f 显示UID,PPIP,C,STIME 信息 

们启动一个进程

 

查看该进程

重新打开一个终端

 

4336 就是该进程的端口

4.5.3 kill

作用终止一个进程 语法kill [参数][程序]  常用Kill -9 进程ID  9表示强制终止

,终止上图中的ping 进程

 

4.5.4 Ifconfig

作用显示系统网络命令

常用

 

4.5.5 ping

作用测试网络是否连通   语法pingIP地址

 

4.5.6 tar

 作用压缩命令,文件解压缩

语法tar 命令

一般压缩文件的后缀为.tar.gz

l 压缩

test 的目录的文件进行压缩下面命令

 

l 解压缩

把文件解压缩到当前目录

  

把压缩文件解压缩到指定的目录。-C 后跟 要解压缩的路径

C 字母

 

 

4.5.7 关机重启

重启:reboot

关机halt

4.5.8 修改系统语言

Centos 7已经不采用/etc/sysconfig/i18n这一个文件来做配置cent0s6.5 采用),而改为使用/etc/locale.conf这个来进行语言配置。

使用vim命令进去,vim /etc/locale.conf

进入以后只有简单的一句LANG="en_US.UTF-8" 这个配置

4.5.9 其它常用命令

#以操作防火墙为例子

启动一个服务:systemctl start firewalld.service  #防火墙
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed

配置firewalld-cmd

查看版本: firewall-cmd --version

查看帮助: firewall-cmd --help

显示状态: firewall-cmd --state

查看所有打开的端口: firewall-cmd --zone=public --list-ports

更新防火墙规则: firewall-cmd --reload

查看区域信息:  firewall-cmd --get-active-zones

查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0

拒绝所有包:firewall-cmd --panic-on

取消拒绝状态: firewall-cmd --panic-off

查看是否拒绝: firewall-cmd --query-panic

那怎么开启一个端口呢

第一步:添加

firewall-cmd --zone=public --add-port=80/tcp --permanent

   (--permanent永久生效,没有此参数重启后失效)

第二步:重新载入

firewall-cmd --reload

查看

firewall-cmd --zone= public --query-port=80/tcp

删除

firewall-cmd --zone= public --remove-port=80/tcp –permanent

重启网络;

service network restart

4.6 文件权限

权限是Linux中的重要概念,每个文件/目录等都具有权限,通过ls -l命令我们可以 查看某个目录下的文件或目录的权限

示例:在随意某个目录下ls -l

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的权限为属主有全部权限,属主所在的组有读写权限

其他用户只有读的权限

chmod u=rwx,g=rw,o=r aaa.txt

 

上述示例还可以使用数字表示

chmod 764 aaa.txt

4.7 虚拟机网络配置

三种模式:Bridge桥接模式、NAT模式、Host-only仅主机模式:

4.7.1 桥接模式

虚拟机使用真实网卡进行通信,配置简单;只要和真实计算机在同一个网段内,就可以直接通信;局域网内如果有其他计算机,也可以进行访问。缺点:会占用网段内的一个IP地址。(类似于一台真正独立的计算机)

参考http://blog.csdn.net/ltr15036900300/article/details/48828207

4.7.2 NAT模式

使用虚拟网卡VMnet8进行通信;只能和本机进行通信;在此基础上,虚拟机可通过主机访问互联网

4.7.3 仅主机模式

使用虚拟网卡VMnet1进行通信;只能和本机进行通信;不能访问互联网。

参考:http://blog.csdnnet/ltr15036900300/article/details/4882820

VMwarecentos桥接模式静态ip配置

4.8 远程连接工具 ssh连接该静态ip

实际开发中,Linux服务器都有固定的机房,我们一般要通过远程的方式去连接Linux并操作它,Linux远程的操作工具有很多,企业中常用的有PuttyXshellsecureCRTSSH Secure等。

服务器上 ifconfig---得到主机ip,打开ssh连接输入

IP--------

Root

22

1111111

1、 使用putty 连接

 

 

4.9 安装jdk      ssh中上传下列文件安装

rpm与软件相关命令 相当于window下的软件助手 用来管理软件

4.9.1 卸载openjdk

Centos 默认安装了open jdk , 我们通过命令一下

输入 rpm -qa | grep java

-q :表示查询单个文件

-qa :表示查询所有

 

执行卸载命令: 卸载jdk 1.8 jdk 1.7

rpm -e --nodeps java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64

rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.102-3.b13.el7_2.x86_64

rpm -e --nodeps  java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64

rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64

4.9.2 上传jdk linux

通过工具把windowsjdk上传centos。该工具我们使用

 

点击上图进行 工具安装。

安装完成功以后,运行,输入地址和密码

 

l 把本机的jdk 上传linux

 

页面左侧为windows内容右侧centos 目录,选择要上传的文件,右键上传即.

1.1.1 解压缩jd

把压缩文件解压到 指定的目录 /usr/local/

tar jdk-8u144-linux-x64.tar.gz  -C /usr/local/

4.9.3 配置jdk

 

把下面的文件加入到profile ,如上图

export JAVA_HOME=/usr/local/jdk1.8.0_144

export PATH=$JAVA_HOME/bin:$PATH

4.9.4 加载配置即使配置生效

 

source /etc/profile

4.9.5 测试 jdk配置是否成功

 

出现上面提示表示成功

4.10 安装mysql

4.10.1 安装mysql

1.下载安装包

本教程提供mysql-5.6.37-linux-glibc2.12-x86_64.tar.gz

2.卸载系统自带的Mariadb

打开Terminal终端:

  // 查询出来已安装的mariadb,mariadbmysql 的一个分支

[root@localhost ~]# rpm -qa|grep mariadb

// 卸载mariadb,文件名为上述命令查询出来的文件

 [root@localhost ~]# rpm -e --nodeps [查询出来的文件名]

3、删除etc目录下的my.cnf

[root@localhost ~]# rm /etc/my.cnf

4、执行以下命令来创建mysql用户组

[root@localhost ~]# groupadd mysql

5、执行以下命令来创建一个用户名为mysql的用户并加入mysql用户组

[root@localhost ~]# useradd -g mysql mysql

6、上传安装包

用工具上传到soft

7、把安装包解压放到 /usr/local/ 目录下(通过mv 要移动的文件  /usr/local/)

  1. 解压tar –zxvf /soft/mysql-5.6.37-linux-glibc2.12-x86_64.tar –C /usr/local/
  2. 改名:切到local 目录下

8、将解压好的文件夹重命名为mysql

mv mysql-5.6.37-linux-glibc2.12-x86_64  mysql

9、进入安装mysql软件目录

[root@localhost ~]# cd /usr/local/mysql

[root@localhost mysql]# chown -R mysql:mysql ./       修改当前目录拥有着为mysql用户

[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ 安装数据库

注:若执行以上最后一个命令出现以下问题:

FATAL ERROR: please install the following Perl modules before executing

./scripts/mysql_install_db:Data::Dumper

解决方法 :安装autoconf库

命令: yum -y install autoconf   //此包安装时会安装Data:Dumper模块

安装完成重新执行上述最后一个命令

重新回到上述第三个命令继续操作:

[root@localhost mysql]# chown -R mysql:mysql data 修改当前data目录的拥有者为mysql用户

到此数据库安装完毕!

4.10.2 配置MySQL

1、复制启动脚本到资源目录

[root@localhost mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld

2、增加mysqld服务控制脚本执行权限

[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld

3、将mysqld服务加入到系统服务

[root@localhost mysql]# chkconfig --add mysqld

4、检查mysqld服务是否已经生效

[root@localhost mysql]# chkconfig --list mysqld

命令输出类似下面的结果:

mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off

表明mysqld服务已经生效,在2、3、4、5运行级别随系统启动而自动启动,以后可以使用service命令控制mysql的启动和停止

命令为:service mysqld start和service mysqld stop

5、启动mysqld

[root@localhost mysql]# service mysqld start

6、将mysql的bin目录加入PATH环境变量,编辑 ~/.bash_profile文件

[root@localhost mysql]# vim ~/.bash_profile

在文件最后添加如下信息:

export PATH=$PATH:/usr/local/mysql/bin

然后按ESC键

继续 shift键加冒号打出来=>  :

接下来输入wq回车即可

执行下面的命令是修改的内容立即生效:

[root@localhost mysql]# source ~/.bash_profile

7、以root账户登录mysql,默认是没有密码的

[root@localhost mysql]# mysql -uroot -p

要输入密码的时候直接回车即可。

8、设置root账户密码为root(也可以修改成你要的密码)

mysql>use mysql

mysql>update user set password=password('root') where user='root' and host='localhost';

mysql>flush privileges;

9、设置远程主机登录,注意下面的your username 和 your password改成你需要设置的用户和密码

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH

GRANT OPTION;

10、如果windows客户端要访问mysql .需要执行防火墙的配置

4.10.3 配置防火墙

开放Linux的对外访问的端口3306

firewall -cmd --zone=public –add -port=3306/tcp --permanent

--permanent永久生效,没有此参数重启后失效)

#重新载入

firewall -cmd –reload

4.11 安装tomcat

1)上传Tomcatlinux

2)解压Tomcat/usr/local

3)开放Linux的对外访问的端口8080

添加

firewall-cmd --zone=public --add-port=8080/tcp --permanent    (--permanent永久生效,没有此参数重启后失效)

重新载入

firewall-cmd --reload

 (--permanent永久生效,没有此参数重启后失效)

4)启动关闭Tomcat

进入tomcatbin下启动:./startup.sh

进入tomcatbin下关闭:./shutdown.sh

猜你喜欢

转载自www.cnblogs.com/LPJ-BLOG/p/12306542.html