1、Ubuntu,适用于大数据,数据分析,个人pc领域
2、CentOS,软件开发领域。服务器
android,Macos,黑苹果
特点:
1、免费,全世界程序员
2、多用户多任务,多线程
一、基本指令
二、环境搭建(JDK,Mysql,Redis,Nginx,Tomcat...)
VMWare
CentOS7,CentOS6.8
多用户管理方式
默认提供了一个用户root,权限最高的管理员用户
管理员显示的是#,普通用户显示的是$
Linux中没有盘符的概念,文件夹
万事万物皆文件。键盘,,网卡,环境变量,声卡......
根路径/
Linux命令:
1、严格区分大小写
2、使用命令加选项和参数
Linux的目录结构:
bin:可执行二进制文件【重要】
sbin:可执行二进制文件,只有root才能访问
etc:存放系统配置文件【重要】
usr:用于存放共享的系统资源【重要】
home:家目录,当前登录的用户的默认落脚点【重要】
root:root用户的家目录
dev:存放设备文件
lib:存放根文件系统中的程序运行所需要的共享库
mnt:系统管理员安装临时文件系统的安装点
boot:存放系统引导时的临时文件
tmp:各种临时文件
var:运行时需要改变的数据的文件
常用命令一:
ls:查看当前文件目录下的文件及文件夹。 ls /bin查看bin目录
ls -l(ll):查看当前目录下的文件及文件夹详细信息 ll
ls -a:包含隐藏文件
ls -R:递归显示子目录中的文件
ls -la:查看详细的文件信息(包含隐藏文件)
cd:切换目录
pwd:显示当前所在目录
cd 空格:回到家目录 cd ~,cd 家目录
who am i (who):显示当前登录的用户
常用命令二:
操作文件的命令:【重要】
touch:新建一个文件,如果文件不存在,则创建。如果文件存在,则修改时间,不覆盖,可以创建多个文件
vi:编辑文件的内容
Tab自动补全
mkdir:新建一个目录。只能创建一级目录。可以创建多个目录
mkdir -p:创建多级目录
cp:复制粘贴
cp -r:无论是否为空,都可以拷贝(递归拷贝)
mv:移动文件或目录
mv -f:强行覆盖
rm:删除文件,会有提示
rm -f:强行删除,不提示
rm -rf: 递归删除,强行删除目录及目录下的文件
rm -rf *.txt:使用通配符删除所有以txt结尾
rmdir:删除目录(只能删除空目录,很少用)
rm rf *:删除所有文件
cat:显示文本内容
more:只能向下翻页
less:可以向上或向下翻页 PgUp和PgDn
head:查看文件的前n行
tail:查看文件的后n行
tail -f:卡住
echo:向文件中输入内容
echo 内容->aa.txt:每次都覆盖
echo 内容:
10位:
1、第一个信息(一位):
d:当前文件类型为目录
-:当前文件类型为文件
l:当前文件类型为链接(类似于快捷方式)
2、第二个信息(总数为9位):
a:第一个3位:代表当前文件创建者拥有的权限 r 读 w 写 x 可执行
b:第二个3位:代表当前文件创建者的组拥有的权限
c:第三个3位:代表其他普通用户拥有的权限 other
3、第三个信息 链接数
一般文件链接数为1
一般目录链接数为2
4、第四个信息 当前文件的创建者
5、第五个信息:当前文件的创建者所在的组
6、第六个信息:当前文件的大小
7、第七个信息:当前文件的最后一次修改时间
8、第八个信息:文件名
网络相关:(centos7)
ip addr(ip a):查看那当前系统的ip地址。
ifconfig(centos6)
ping:测试网络连通性
压缩:压缩和打包
-c:建立一个压缩文件
-x:解开一个压缩文件
-z:是否需要压缩
-v:压缩的过程中显示文件
-f:使用文件名file
通常情况下组合使用 tar -zcvf
打包不压缩:tar -cf linux.tar aa.txt bb.txt cc.txt
解包:tar -xvf linux.tar
打包时显示日志:tar -cvf linux.tar aa.txt bb.txt cc.txt
打包时压缩文件(常用):tar -zcvf linux.tar aa.txt bb.txt
解压(最常用):tar -zxvf linux.tar
查看系统的运行情况:
systemct1服务命令(centos7)
systemctl status 服务名 mysql network firewalld
systemctl start 服务名
systemctl stop 服务名
systemctl restart 服务名
查看当前的进程:
ps -aux:查看当前运行的所有进程 ,包括后台进程
ps -ef:查看系统中运行的进程,可以显示父进程
pid 进程号 1:代表进程的主进程
ps -aux | tomcat :根据关键字来搜索进程
|:代表管道服务
top:动态显示进程
ctrl+c:强制退出
ps -aux|grep network 搜索某个进程(重点) 管道服务
kill:根据进程id来终止
kill -9:强制终止!!!
vi命令:编辑模式
vi/vim:文本编辑器
三种模式:
编辑模式:编辑文本文件的内容
命令模式:保存退出,不保存退出,强制退出....
末行模式:用来书写命令
当进入文本编辑器,
i:在光标前去进行插入。
I:在光标当前行开始位置插入
a:在光标后插入
A:在光标行行末尾插入
o:在光标当前行的下一行插入
O:在光标当前行的上一行插入
:set nu:查看行号
:set nonu:取消行号
:n:跳到第n行
gg:到文本的第一行
G:到文本的最后一行
重点:
u:undo,撤销上一步
Ctrl+r:前进
重点:
Shift+zz:保存退出
:q:退出不保存
:q!:强制不保存退出
:wq:保存退出
:wq!:强制保存退出
rpm指令:安装程序
常用参数:
i:安装应用程序(install)
e:卸载应用程序(erase)
vh:显示安装进度
U:升级软件
qa:显示已安装的软件包
rpm -ivh xxxxxx.rpm
rpm -evh xxxxxx
rpm -Uvh xxxxx
rpm -qa
yum安装命令:不需要下载安装包,必须联网
在线安装。
yum install xxxxxx
yum remove xxxxx
yum update xxxxx
用户和组相关的命令:(了解)
查看当前用户:who am i
查看当前用户: who -q --count 显示当前用户的登录数量
退出登录:exit
创建组:groupadd user
删除组:groupdel user
创建用户同时指定组:useradd xiaoqiang -g user
给用户指定密码:passwd xiaoqiang
切换用户:su root
从root用户切换到其他用户不需要输入密码,从其他用户切换到root用户,需要验证root用户密码。
权限相关命令:(文件权限)
Linux三种权限:rwx
chmod:
all =user+group+other
u:user
g:group
o:other
a:all
+-=
+:增加权限
-:减少权限
=:设定权限
421规则:
r=4
w=2
x=1
chmod 777 aa.txt
chmod 764 aa.txt
开启centos的联网功能
配置网卡信息
重点*****
编辑网卡信息:
vi /etc/sysconfig/network-scripts/ifcfg-ens33
需要修改最后一行ONBOOT=yes,保存退出
1、重启当前Linux
2、重启网络服务
默认对外暴露的一个端口号:2
使用远程连接工具操作centos
xshell(收费)
finalshell(github,免费)
CRT(收费)
安装jdk:
tar包:把tar包上传到usr目录,使用tar -zxvf进行解压,解压后可以进入jdk的bin目录,输入./java进行测试。./代表在当前目录下执行java命令。(推荐)
rpm文件:类似于windows的exe,默认安装到usr/java
配置JDK环境变量:配置 /etc/profile,配置完成之后需要重新启动服务器或者重新加载配置文件。
(source /etc/profile)
1、配置JAVA_HOME
vi /etc/profile
添加新的环境变量 G:跳到最后一行
export JAVA_HOME=/usr/jdk1.8.0_171
:wq!保存退出
2、配置PATH:export PATH=$PATH:$JAVA_HOME/bin
yum安装vim编辑器:yum install -y vim
安装tomcat并启动:
linux防火墙:需要让防火墙放行8080端口。
放行端口:
1、修改防火墙的文件(不建议)
2、使用指令来关闭防火墙
3、使用指令来放行端口号(推荐)
https://www.cnblogs.com/nhdlb/p/11910615.html
安装mysql
(1)本地安装,下载好了rpm文件,使用rpm命令本地安装
(2)在线安装,yum安装。
a.添加官方的yum源,并且要编辑mysql-community.repo文件
b.把mysql相关的安装信息粘贴到文件里
c.执行安装命令 yum install -y mysql-communtiy-server
mysql5.7之前的版本和5.7以后的版本。
5.7及以后的版本:默认的root用户是有密码的,
Linux中mysql连接navicat:
1、释放端口号3306
2、重启防火墙
3、mysql允许远程连接。【授权语句:grant all privileges on *.* to 'root'@'%' identified by 'Root_123' with grant option;】
开启mysql的远程连接
重启mysql服务:systemctl restart mysqld
切换库:
VMware有一个功能:快照,备份,还原
在安装mysql之前,需要删除服务器中已有的mysql相关的软件包
redis安装:
1、上传tar包到服务器
2、解压
3、redis是用c语言写的,安装c语言的依赖 yum install -y gcc
4、编译安装包 :make MALLOC=libc
5、安装redis:make install PREFIX=/usr/redis
启动redis
exit退出,
vim redis.conf可以用来修改其端口号:
更改bind 0.0.0.0
加载配置文件:
redis主从复制和哨兵模式:
搭建主从复制: