一、Linux介绍
背景:Java项目通常基于windows系统进行开发、服务器不熟则是基于Llinux
1.1 Linux系统概述
- Linux是一套免费使用、自由传播的类unix操作系统
- 支持多用户、多任何、支持多线程和多CPU的操作系统
- linux通常作为服务器系统使用(windows server也是一个适用于服务器的系统)
1.2 Linux系统的特点
- 性能比window更稳定(宕机概率比较低)
- 完全开源,用户可以自由的进行裁剪、灵活性高、使用成本低
- 技术社区用户多
- Linux核心防火墙组件性能高、配置简单,保证系统的安全
- 对于linux提供纯命令行系统(也可以带有桌面),系统开销比windows小的多
- 综上,Linux比windows更合适用于服务器系统
1.3 Linux系统版本
- RedHat(RedHat公司发行的Linux版本,效率高、高可扩展、高可靠性)
- SUSE(德国SUSE公司推出的Linux发行版)
- DEbian(追求创建自由操作系统,目前有很多的非官方版本,可用性不高)
- Ubuntu(乌班图,基于DEbian发行版,桌面系统,是一个以桌面应用为主的linux系统)
- CentOS(基于RedHat源码编译而成,CentOS完全开源)
- 红旗Linux
- OS X就是一个Linux系统
二、虚拟机
如何获取一个Linux系统?
-
- 基于硬件的安装Linux(安装双系统)
-
- 安装虚拟机:在当前windows环境下,安装一个虚拟机软件,通过这个软件模拟一台计算机(占用资源)
-
- 租用云主机
2.1 虚拟机介绍
- 使用软件模拟硬件环境—虚拟机
2.2 安装VMware
VMware Workstation (威睿工作站)—虚拟机软件,用于创建并管理虚拟机
2.2.1 下载
2.2.2 安装
傻瓜式安装(默认下一步)
2.3 下载CentOS的安装镜像
下载地址:https://www.centos.org/download/
2.4 创建虚拟机
百度即可
2.5 安装CentOS
百度即可
2.6 进入CentOS
-
查看网络配置: applications–>Terminal
ifconfig
-
系统状态切换
init 3 切换到命令行状态 init 5 切换到桌面状态
2.7 虚拟机克隆
2.7.1 克隆
选择目标虚拟机–>右键–>管理–>克隆–>选择完整克隆
2.7.2 修改mac
选择克隆后的虚拟机–>右键–>设置–>网络适配器–>高级–>Mac地址(生成)–>确定
三、云主机
3.1 什么是云主机?
- 云主机是一种类似VPS主机的虚拟化技术,在一台主机(主机集群)虚拟出多个类似独立主机的部分,能够实现单机多用户,每个部分都可以作为单独的操作系统、管理方法同主机一样。
- 云主机是一个建立在多个主机(主机集群)上的虚拟系统,集群中的每台主机都有这个云主机的镜像,从而大大提高了虚拟云主机的安全稳定性
3.2 购买云主机
推荐阿里、腾讯
阿里:24岁以下免学生认证,享受学生优惠政策;超过24的学生需要进行学生认证
腾讯:25岁以下
3.3 云主机管理
- 通过阿里云控制台管理云主机的状态
- 启动、停止、重启
- 设置实例密码
- 自定义实例镜像
- 安全组管理
四、Linux远程工具
xshell 远程终端
xftp 远程资源管理工具
4.1 xftp 资源管理工具
4.1.1 安装
傻瓜式安装
4.1.2 创建连接(连接公网IP)
4.2 xshell 远程终端
4.2.1 安装
默认安装
4.2.2 创建链接(连接公网IP)
五、Linux常用操作指令
5.1 Linux学习流程
- Linux的文件系统
- Linux文件管理
- 目录:进退、创建、删除
- 文件:创建与编辑、复制和粘贴、移动和删除、压缩和解压
- 用户及权限的管理
- 软件管理
- 软件安装
- 软件配置
- 软件卸载
5.2 Linux文件系统
Linux系统不同于windows,在Linux系统中没有盘符,根路径用"/"表示
[root@theo ~]# cd /
[root@theo /]# ls
bin boot dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var
[root@theo /]#
目录 | 说明 |
---|---|
bin | 系统文件夹 |
sbin | 超级管理员的系统命令 |
boot | 系统所需目录(系统启动相关文件) |
etc | 存放系统配置相关的文件(环境变量) |
lib/lib64 | library 存放系统所需的依赖库 |
home | 一般用户所在文件夹(此目录包含了所有普通用户的子目录) |
root | 超级管理员目录(root用户目录) |
media | 媒体(光驱) |
mnt | 挂载(U盘、移动硬盘) |
tmp、opt | 临时的文件存储目录,比如日志存储在tmp或者opt中 |
usr | 用户目录,我们通常安装的软件、用户的一些文件都在此目录下 |
run srv sys var proc dev | 系统相关目录 |
5.3 Linux系统指令语法
指令 选项 参数
- 指定,决定了当前的动作
- 选项,可有可无(对于有些指令,选项是必须的)
- “-” 表示短选项,一个字母代表一个选项
- “–”表示长选项,一个单词代表一个选项
- 参数,指令正常执行所需的数据
man指令(manual:说明书)
- man 指令
- 点击q退出说明书
5.4 文件管理
5.4.1 目录操作指令
-
进入文件夹及退出文件夹
-
cd 目录名称 进入指定的目录(当我们输入目录名称的时候,可以通过Tab进行自动补全)
## 进入到Linux系统跟路径 cd / ## 进入到当前用户的目录 cd ~
-
cd … 退出当前目录
-
pwd (print working directory)查看当前路径
-
-
显示当前目录下的文件列表
- ls 显示文件列表
- ls -a 显示当前目录下所有文件列表(包括隐藏文件)
- ls -l 显示当前目录下文件列表的详细信息
- ll 显示文件列表详细信息
-
目录的创建和删除
- mkdir 目录名 在当前目录下创建新的目录(创建一级目录)
- mkdir -p 目录A/目录B 连同父级目录一起创建 创建目录
- rm 目录 删除当前目录
- rm -rf 目录 强制递归删除目录
- -r recursive 递归
- -f force 强制
- rmdir 目录 专门用于删除目录
5.4.2 文件操作指令
-
创建和修改文件
-
vi (visual) 文件编辑
-
vim (visual improved) 增强文件编辑
# 打开目标文件;如果此文件不存在,则表示先创建此文件再打开 vi a.txt
- 当文件打开之后,点击"i"进入到编辑状态;
- 完成编辑之后,点击“esc”退出编辑状态;
- 退出文件:
- :q 如果未对文件进行任何修改—退出文件
- :q! 对文件内容进行了修改,但是不保存退出
- :wq 保存对文件的修改并退出
-
-
阅读文件
- cat 文件名 阅读文件内容,适合阅读小文件
- more 文件名 阅读文件,带有翻页(一次往下一行,不支持向上翻页)
- less 文件名 阅读文件,适合阅读打文件;可以上下翻页(PgDn/PgUp),退出less阅读模式点击q
- 在less阅读模式下,输入“?查询内容”可以向上查询数据;输入“/查询内容"可以实现向下查询内容
-
查询文件和查询内容
- find 文件名 在前目录查找文件/目录
- find 文件名 目录 在指定的目录中查找文件
- find -name 文件名 在当前目录包括当前目录子目录中查找文件
- grep -n 内容 文件 在指定的文件中查找指定的内容
-
管道命令
- 管道命令:多个命令的组合
- 特征:前面的命令必须有输出,后面的命令使用这个输出
- 实例:cat a.txt | grep Hello| grep 23
-
删除文件
- rm -rf 文件名
-
复制和移动
- cp 文件 目录
- mv 文件 目录
5.4.3 文件压缩和解压
-
windows系统下压缩文件通常是zip、rar等格式;Linux系统压缩文件通常为tar.gz
-
tar 指令 完成linux系统的文件压缩和解压
-
tar -zcvf 压缩
# 对test1目录进行压缩,压缩到test1.tar文件 tar -zcvf test1.tar test1 # 将test1和test2进行压缩,压缩到test.tar文件 tar -zcvf test.tar test1 test2
-
tar -zxvf 解压
# 解压指定的压缩文件 tar -zxvf test.tar
-
-
指令说明:
- z 用gzip工具进行压缩或者解压
- x extract 解压缩
- c compress 压缩
- v verbose显示压缩/解压过程详细信息
- f file 文件
5.5 用户及权限管理
linux中的用户管理,采用的用户组形式
用户组 用户
root root
-
用户组
- groupadd team1 创建用户组
- groupdel team1 删除用户组
-
用户
- useradd -g 用户组 用户名 创建新用户
- passwd 用户名 设置用户密码
- userdel 用户名 删除用户
-
切换用户
- su 用户名 切换至其他普通用户
- su 切换至管理员(需要输入超级管理员密码)
-
权限管理
- 说明:
- 第一个字符表示文件|目录 ,d表示目录,-表示文件
- r 可读(4) w可写(2) x 可执行(1)
- 第一个rwx:表示当前文件的所有者拥有的权限
- 第二个rwx:表示和文件所有者同组用户拥有的权限
- 第三个rwx:表示不同组用户拥有的权限
- 修改权限 chmod
- chmod 775 文件名
- 说明:
5.6 系统与进程
-
查询进程
- lsof -i:port 通过端口查询进程信息
- 如果此指令不可以用,则需要通过 yum install lsof安装指令
- CentOS6 Ubuntu没有此指令
- netstat -apn | grep port 通过端口查询进程信息 (CentOS6)
- ps -ef | grep java 通过进程名称查找进程
- lsof -i:port 通过端口查询进程信息
-
强杀进程
- kill -9 PID 通过进程编号强杀进程
-
系统注销和重启
- logout 注销
- reboot 重启