概述
Linux是一套免费使用的操作系统,是一个多用户、多任务、支持多线程和多CPU的操作系统
内核版:内核是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程 序,它提供了一个在裸设备与应用程序间的抽象层。我们平常说的 linux 指的是 linux 内核,在具体使用时,需要明确使用的发行版,不 同的版本略有不同
发行版:在Linux内核的基础上,增加了一些功能,方便用户使用,常见几个版本:Ubuntu、RedHat、CentOS
特点:
1、免费的/开源/稳定
2、支持多线程/多用户/处理高并发
3、安全性好
4、对内存和文件管理优越
学习 Linux 的用途:
Linux 运维工程师(专门负责服务器管理)
C语言嵌入式开发
大数据,java,python...项目运行
如何拥有Linux操作系统:
- 在自己电脑安装两个操作系统,开机时自己选择
- 在Windows中安装虚拟机,在虚拟机中安装Linux
- 直接使用云服务器,安装Linux
安装 Xshell
- 去官网下载免费版本 家庭/学校免费 - NetSarang Website (xshell.com)
- 下载 安装(安装地址要注意)
- 端口号和密码提前记住
linux目录概念:没有盘符概念,只有一个根目录,根目录下面有很多个子级的目录,etc 系统配置文件目录,home 用户目录,opt安装用户程序,usr 资源共享
常用命令
shutdown -h now 关机
shutdown -h 1 1 分钟后关机
reboot 重启
logout 注销
cat /etc/redhat-release 查看 centos 版本
cd 后接文件名 切换到指定目录
ls -l显示当前目录下所有的文件或文件夹
ll 是ls -l的别名,可以输出目录文件的详细信息
pwd输出当前目录所在的完整目录
mkdir文件夹名字 新建文件夹
rmdir删除文件,前提为空
re -rf文件夹名字 可以删除此目录中的所有的文件和文件夹
touch 文件名 创建文件
rm -f 文件名 删除文件
cat 文件名 查看文件,无法编辑
find -name 文件名 搜索文件
mv 文件名/文件夹名 新文件名/新文件夹名 重命名
mv 文件名/文件夹名 /新地址 剪切
cp 文件名 /新地址 文件复制
ifconfig:查看网络配置ip
clear: 清屏
free -m: 查看内存占用情况,以 MB 为单位
linux -- CentOS下的软件安装
1.基于rpm(RedHat Package Manager)包安装,缺点是不能自动解决依赖问题.
2.yum安装 也是基于rpm包的,可以自动的添加依赖
3.源码包安装, 首先下载源码,然后进行编译获得安装包,最后安装
linux中vi/vim编辑器
vi/vim 文件名
打开后进入到命令模式
输入 i 进入到编辑模式
编辑完成后 按esc 回到命令模式
输入: 进入底线模式
底线模式输入 q(没有对文件作出任何修改)
q!(强制离开不保存)
w 保存文件,不退出
wq(保存并离开)
安装
jdk安装
使用xftp上传jdk源码包
解压
配置环境变量
source /etc/profile 使文件生效
tomcat配置
解压
进入到bin目录
./startup.sh 启动命令
在腾讯云后台放行8080端口
使用ip+端口访问
Linux安装redis
cd /opt/src/ 在线下载 或者 在官网下载
wget https://download.redis.io/releases/redis-6.2.4.tar.gz
或者 上传 解压:
tar -zxvf redis-6.0.8.tar.gz
cd redis-6.0.8
预编译: make
创建文件: mkdir -p /opt/redis
安装到指定目录: make install PREFIX=/opt/redis
进入安装文件 bin 目录:cd /opt/redis/bin
./redis-server 启动服务
基本设置
从 redis 的源码目录中复制 redis.conf 到 redis 的安装目录
cp redis.conf /opt/redis/bin/
修改 redis.conf 文件 vim redis.conf
1.后台运行: daemonize no 改为 daemonize yes.
2.设置密码:requirepass 你的密码.
文件内查找: /你搜索的内容 回车 n 下一个 N 上一个.
3.注释 绑定的 id,默认只能本机访问,这样就可可以远程访问了.
启动命令: ./redis-server redis.conf
查看 Redis 运行状态: ps -ef | grep redis
进入客户端模式: ./redis-cli
输入密码 auth 密码
测试 ping
ctrl+c 退出客户端模式
redis数据类型
数据类型指的是值的类型,key只是一个字符串
string字符串
一个key对应一个value
512MB最大
key : string类型的值
单值缓存
Xsheell
用法1:单值存储
set key value
get key value
set name jim ,set age 4,会覆盖值,key*(显示全部的)
del age 删除
用法2:对象缓存(不对对象中数据操作时可以使用
user:{name:jim,age:2}
用法三:计数器
set newsid1 0
incr newsid1(newsid+1自增)
decr newsid1(自减)
get newsid1(获得值)
类型2Hash类型
用来存储对象数据,而且可以对数据进行修改
key
属性1:值1
属性2:值2
hset key 属性名 值1
hget key 属性名 值2
hset user1 name1 jim
hget user1 name1(获得name1的值
批量获取
hmset user1 name1 zhangsan age2 2
hget user1 name2
hmget user1 name1 age2(获得两个值)
hdel user1 name1 删除name1的值
实际案例
存储用户的购物车信息
cat1001用户1001的用户信息
商品id作为属性
数量作为属性的值
hset cat1001 100 1
hset cat1001 101 2
hincrby cat1001 100 1(1是增量)(100号增加一
hincrby cat1001 100 -1(数量减一
hlen cat1001(返回总共有几个属性
hdel cat1001 100 (删除100号的商品信息
hgetall cat1001(获取到此key下所有的商品的属性值
List 列表
可以重复存书院是
可以控制添加元素的位置
lpush a 1添加元素到表头
rpush 添加元素到表尾
lpop k 删除并返回第一个元素
rpop k 删除并返回最后一个元素
可以使用list实现队列和栈结构
set 不重复无序的集合
sadd b 2 添加多个
sadd b 3
smembers b
srem b 1(删掉了1
scard b(获取集合b的元素个数
Zset有序集合:不重复但有序
可以为元素添加分数,用分数来排序
zadd key score value
zadd c 1 b
zadd c 3 a
zrange c 0 3
1,3是分数,按照分数排序
设置key的有效时间
set name tom EX 10 (10秒失效
ttl name(查看还剩多久失效,以秒为单位
pttl key (查看还剩多少时间,以毫秒为单位
EX 秒 PX 毫秒
-1永久存在(不写EX和PX)