Linux操作系统
Java 是第一大编程语言和开发平台。它有助于企业降低成本、缩短开发周期、推动创新以及改善应用服务。如今全球有数百万开发人员运行着超过 51 亿个 Java 虚拟机,Java 仍是企业和开发人员的首选开发平台。
课程内容的介绍
1. Linux安装介绍
2. Linux常用命令
3. Linux中常用软件安装
一、Linux的安装介绍
1.什么是Linux操作系统
Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。
2.最火的发行版Centos
CentOS是免费的、开源的、可以重新分发的开源操作系统 [1] ,CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一。
CentOS Linux发行版是一个稳定的,可预测的,可管理的和可复现的平台,源于Red Hat Enterprise Linux(RHEL)依照开放源代码(大部分是GPL开源协议 [2] )规定释出的源码所编译而成。
自2004年3月以来,CentOS Linux一直是社区驱动的开源项目,旨在与RHEL在功能上兼容。
3.虚拟机安装
我们没法在电话上面独立的安装一个Centos操作系统,我们可以通过虚拟化的技术在当前电脑上通过虚拟化的工具比如VMWare来安装相关的虚拟机。
3.1 创建一个新的虚拟机
实现创建第一个Centos虚拟机。
稍后指定镜像文件。
完成后的效果。
下载centos的镜像文件。
关联iso文件。
3.2 虚拟化问题
在window系统中通过VMWare安装Linux系统我们需要在window系统中开启虚拟化技术,如果不开启,我们在启动的时候会报错。如图。
接下来我们看下怎么开启虚拟化
先把电脑关机,再重启电脑 按(F1)键(根据电脑的版本不同按键就不同,如果F1不行可以在百度上找)我用的是Thinkpad的电脑所以是F1,在重启电脑的时候要一直按在F1按键上,因为跳过电脑开机的时候的图标就是操作失败了,所以只要电脑黑屏就要一直按在F1上面,成功后就会跳到这个界面,然后找到Config点进去。
进到Config界面以后再找到CPU点击进去。
进到CPU界面以后再找到Intel ® UT-d Feature [Enter] 然后点击 [Enter]。
点击[Enter] 以后就会跳出一个如下图的小模块然后选择Enabled。
就会跳出一个如下的界面选择[Yes]就行了,然后就会电脑黑屏,再重启电脑就行了,然后在按照之前的软件安装步骤安装linux虚拟机就可以了。
HP电脑设置。
选择第三个选项。
Virtualization Technology选中。
注意:不同的电脑选项可能有差异,在相关选项中多看下。
3.3 虚拟机安装
安装直接点击开启虚拟机 即可。
然后等待即可。
有红色提示的选项需要我们自己手动设置下。
开始安装。
统一设置密码为123456。
安装完成,重启即可。
启动成功,输入账号密码:root 密码:123456。
4.虚拟机的网络配置
4.1 VMWare配置
NAT设置。
点击确定即可。
4.2 静态IP配置
进入/etc/sysconfig/network-scripts目录。
cd /etc/sysconfig/network-scripts
该目录下就存在一个ifcfg-ens33这个文件,我们要做的就是编辑这个文件。
vi ifcfg-ens33
vi操作步骤:
1. 按键盘 i 键 进入编辑模式。
2. 按 esc 退出编辑模式。
3. 保存 :wq。
注意:选项中的内容必须都是大写。
保存并退出。
通过cat命令可以查询文本信息。
配置完成后,需要重启网络服务。
service network restart
![](https://i-blog.csdnimg.cn/blog_migrate/d0b686c8b25c51ebdd3f0efa2a83510c.png)
测试ping百度是否能通。
![](https://i-blog.csdnimg.cn/blog_migrate/85a894f15037c4719ebae92639af5bc9.png)
说明网络配置是成功的!!!
4.3 xshell工具
xshell 是一款非常好用的Linux客户端连接工具,但是是收费的,我们可以使用它的 家庭和学校用户的免费许可证 。但是需要我们去官网注册。
获取到对应的安装软件直接安装即可。
4.4 xshell的配置
安装成功后会有一个XShell的图标,然后双击启动即可。
配置连接虚拟机。
点击 新建。
连接。
输入账号 root。
输入密码 :123456。
确定后就连接成功。
我们就可以通过XShell来操作我们的Linux系统。
二、Linux常用命令
1.修改基本配置
1.1 修改主机名
vi /etc/sysconfig/network
vi /etc/hostname
保存重启系统即可 reboot 命令可以快速重启虚拟机。
1.2 ip地址修改
vi /etc/sysconfig/network-scripts/ifcfg-ens33
1.3 修改ip和主机名的映射
如果我们要设置ip和主机名的映射关系,只需要修改 /etc/hosts 文件即可。
1.4 关闭防火墙
查看ip。
centos6.5
ifconfig
查看。
centos7.0
ip addr
查看。
查看防火墙状态。
firewall-cmd --state
表示防火墙运行中。
停止防火墙。
systemctl stop firewalld.service
系统重启后防火墙又会打开。
我们可以选择禁止防火墙开机启动。
在centos6.5版本下的防火墙操作命令。
临时关闭
service iptables stop
service iptables start
永久关闭
chkconfig iptables on
chkconfig iptables off
查看防火墙状态
service iptables status
重启:reboot
2.常用快捷键
3.日常操作命令
4.文件操作命令
4.1基本命令
cd:切换目录。
ls:显示文件夹下的所有文件。
ll:命令
实际上是 ls -l 的一个别名。
[root@hadoop-node01 ~]# ll
总用量 2036
drwxr-xr-x. 3 root root 4096 2月 25 00:21 app
-rw-r--r--. 1 root root 106609 2月 24 23:44 a.txt
drwxrwxr-x. 6 root root 4096 12月 12 20:25 redis-5.0.3
-rw-r--r--. 1 root root 1959445 12月 12 20:26 redis-5.0.3.tar.gz
drwxr-xr-x. 2 root root 4096 1月 7 23:09 shellfile
1234567
如果缺少某些命令插件我们可以通过yum快速安装。
yum install -y tree
tree命令:
以树形结构展示文件夹及文件,比较直观(如果没有安装:yum install -y tree)。
![](https://i-blog.csdnimg.cn/blog_migrate/5d25bede0faebc75d9bbd9bac3b8147b.png)
4.2文件夹命令
mkdir
创建文件夹。
rmdir
只能删除空目录。
rm
命令可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉。
mv命令
用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。source表示源文件或目录,target表示目标文件或目录。如果将一个文件移到一个已经存在的目标文件中,则目标文件的内容将被覆盖。
cp命令
cp a.log /root/
cp – help 查看命名帮助
-R 递归复制
4.3创建文件
touch命令
有两个功能:
一是用于把已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将原封不动地保留下来;
二是用来创建新的空文件。
echo命令
将信息输出到控制台。
[root@hadoop-node01 ~]# echo hahaha
hahaha
12
我们可以通过重定向符号将内容写入到新的文件中,如果文件不存在就会新建此文件。
>:创建新的文件或者覆盖。
>>:创建新的文件或者追加。
cat命令
1. 显示文件内容。
2. 创建新的文件。
只能创建新文件,不能编辑已有文件。
cat s1.sh > d.txt
3. 文件拼接。
cat a.txt b.txt > c.txt
tac命令:和cat刚好相反 将内容倒序输出。
more命令:分页显示。
tail:显示底部的内容。
head:显示头部的内容。
4.4vi命令
最基本的用法
vi somefile.4
退出命令
常用快捷键
在一般模式下使用
查找与替换
在底行命令模式中输入
4.5vim介绍
它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。
vim的这些优势主要体现在以下几个方面:
1. 多级撤消
我们知道在vi里,按 u只能撤消上次命令,而在vim里可以无限制的撤消。
2. 易用性
vi只能运行于unix中,而vim不仅可以运行于unix,windows ,mac等多操作平台。
3. 语法加亮
vim可以用不同的颜色来加亮你的代码。
4. 可视化操作
就是说vim不仅可以在终端运行,也可以运行于x window、 mac os、 windows。
5. 对vi的完全兼容
某些情况下,你可以把vim当成vi来使用。vi和vim都是Linux中的编辑器,不同的是vim比较高级,可以视为vi的升级版本。vi使用于文本编辑,但是vim更适用于coding。
5.文件权限命令
5.1格式解析
drwxr-xr-x (也可以用二进制表示 111 101 101 --> 755)
drwx r-x r-x
1 1 1 1 1 0 1 1 0 1
_ _ _ _ |_ _ _ |_ _ _
5.2修改文件权限
将一个文件夹的所有内容权限统一修改,则可以-R参数 chmod -R 770 aaa/。
6.用户管理
添加用户命令
useradd dpb1
设置密码
passwd dpb1
[root@bobo01 home]# passwd dpb1
更改用户 dpb1 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
sudo的设置
就是在某些情况下我们可能临时需要获取root权限,这时我们可以通过sudo命令来实现,但是我们需要提前配置下。
因为这是一个只读文件,我们需要通过:wq!退出。
当用户有配置sudo权限那么我们可以通过该用户执行 sudo -i 切换到root账号,也可以通过 su dpb1 从root账号切换回普通账号。
7.打包和压缩
7.1压缩和解压缩
gzip命令用来压缩文件。gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多处“.gz”扩展名。
gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式。据统计,gzip命令对文本文件有60%~70%的压缩率。减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。
压缩
gzip a.txt
解压gz文件
gzip -d a.txt.gz
7.2tar打包解压
tar命令可以为linux的文件和目录创建档案。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。
首先要弄清两个概念:打包和压缩。打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。
为什么要区分这两个概念呢?这源于Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令)。
tar -cvf log.tar log2012.log 仅打包,不压缩!
tar -xvf myfirsttarball.tar 拆包。
7.3一次性打包&&压缩
产生压缩包
tar -zcvf my.tar.gz aaa/
解压缩包
tar -zxvf my.tar.gz
递归解压缩到其他目录
tar -zxvf my.tar.gz -C abc/
8.文件传输
8.1上传
yum install lrzsz -y
1
安装成功后。
rz 命令根据弹出窗口选择上传文件。
或者将文件拖拽进去。
8.2下载
sz命令 文件下载。
9.进程命令
后台服务管理
1. 服务操作
service network status 查看指定服务的状态
service network stop 停止指定服务
service network start 启动指定服务
service network restart 重启指定服务
service --status-all 查看系统中所有的后台服务
2. 设置后台服务的自启配置
chkconfig 查看所有服务器自启配置
chkconfig iptables off 关掉指定服务的自动启动
chkconfig iptables on 开启指定服务的自动启动
最后
Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的。
源码放哪里?
/usr/src:系统级的源码目录。
/usr/local/src:用户级的源码目录。
三、常用软件安装
1.JDK的安装
JDK是我们非常重要的一个基础环境,所以我们首先来安装JDK。
1.1.下载JDK文件
1.2 上传安装文件
将获取的JDK的安装文件xftp或者rz命令上传到Linux系统的 /usr/local 目录下即可。
1.3 解压缩安装文件
tar -zxvf jdk-8u60-linux-x64.tar.gz
解压缩后可以删除压缩文件,同时重命名。
1.4 安装后测试
在解压缩成功后,我们进入bin目录下同样可以执行 java和javac命令来验证JDK的安装。
我们只能够在jdk的安装目录的bin目录下执行,如果我们要在系统的任意位置使用jdk那么我们同样的需要在Linux系统中设置JDK的环境变量信息。
1.5 JDK环境变量配置
修改profile文件
vim /etc/profile
export JAVA_HOME=/usr/local/jdk
export PATH=$PATH:$JAVA_HOME/bin
修改了profile文件后我们要执行 source操作来使更新生效。
source /etc/profile
我们在系统的任意位置都可以执行到Java的JDK程序了。那说明JDK的安装是成功的!
2.Tomcat安装
2.1 安装软件下载
2.2 软件上传
我们将Tomcat的安装文件上传到 opt目录下。
2.3 解压缩
tar -zxvf apache-tomcat-8.0.18.tar.gz
2.4 测试
启动Tomcat服务,进入bin目录下执行startup.sh 程序即可。
[root@bobo01 bin]# sh startup.sh
Using CATALINA_BASE: /opt/tomcat
Using CATALINA_HOME: /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME: /usr/local/jdk8
Using CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@bobo01 bin]#
要查询服务启动的日志信息可以进入bin目录同级目录的logs中查看。
验证是否启动成功,访问页面即可
就表示Tomcat启动成功!
3.MySQL数据安装
3.1 官网下载
上传安装文件到 /usr/local目录下。
解压缩并重命名。
3.2 安装
因为我们安装的是mini版的centos,所以缺少了很多c程序的依赖,那么需要首先安装这些依赖。
yum -y install numactl perl perl-devel libaio-devel autoconf
安装mysql数据库我们需要添加mysql组和mysql用户。
groupadd mysql
useradd -r -g mysql mysql
进入mysql的安装目录。
cd /usr/local/mysql
修改当前目录拥有者为mysql用户。
chown -R mysql:mysql ./
执行安装命令。
./scripts/mysql_install_db --user=mysql
修改当前用户的拥有者为root。
chown -R root:root ./
修改当前的data目录拥有者为mysql用户。
chown -R mysql:mysql data
3.3 配置
将mysql服务添加到开机启动项中。
cp support-files/mysql.server /etc/init.d/mysql
启动mysql服务。
service mysql start
启动报错。
没有这个路径也没有权限,那么我们创建该路径和文件并授权即可。
查看数据库的状态。
service mysql status
设置密码。
./bin/mysqladmin -u root -h bobo01 password '123456'
登录mysql
./bin/mysql -u root -h bobo01 -p123456
![](https://i-blog.csdnimg.cn/blog_migrate/eb43b618f1be6368465f11f5eb595cef.png)
3.4 远程连接
授权命令。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;
客户端连接测试。