安装Linux
1.下载
2. 移动到虚拟机 /opt目录并解压
这里使用Xshell上传
# Xshell
[cc@localhost opt]$ rz
发送到主目录下 /home/cc
[root@localhost cc]# ls -l
总用量 475652
-rw-r--r--. 1 cc cc 485074552 3月 31 13:19 mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz
-rw-r--r--. 1 cc cc 1985757 4月 21 09:19 redis-5.0.8.tar.gz
drwxr-xr-x. 2 cc cc 6 3月 27 10:15 公共
drwxr-xr-x. 2 cc cc 6 3月 27 10:15 模板
-rw-r--r--. 1 cc cc 1245 3月 27 13:58 实现功能.txt
drwxr-xr-x. 2 cc cc 6 3月 27 10:15 视频
drwxr-xr-x. 2 cc cc 6 3月 27 10:15 图片
drwxr-xr-x. 3 cc cc 18 3月 27 10:28 文档
drwxr-xr-x. 2 cc cc 6 3月 27 10:15 下载
drwxr-xr-x. 2 cc cc 6 3月 27 10:15 音乐
drwxr-xr-x. 2 cc cc 6 3月 27 10:15 桌面
获取权限、或者更改为root用户
[cc@localhost cc]$ su
密码:
[root@localhost cc]#
移动到 /opt目录
[root@localhost cc]# mv redis-5.0.8.tar.gz /opt
[root@localhost cc]# cd /opt
[root@localhost opt]# ls -l
总用量 1940
-rw-r--r--. 1 cc cc 1985757 4月 21 09:19 redis-5.0.8.tar.gz
drwxr-xr-x. 2 root root 6 10月 31 2018 rh
解压
[root@localhost opt]# tar -zxvf redis-5.0.8.tar.gz
解压完成
[root@localhost opt]# ls -l
总用量 1944
drwxrwxr-x. 6 root root 4096 3月 12 23:07 redis-5.0.8
-rw-r--r--. 1 cc cc 1985757 4月 21 09:19 redis-5.0.8.tar.gz
drwxr-xr-x. 2 root root 6 10月 31 2018 rh
3. 安装GCC
查看是否安装过gcc
[root@localhost redis-5.0.8]# gcc -v
Makefile是安装文件
[root@localhost opt]# cd redis-5.0.8/
[root@localhost redis-5.0.8]# ls -l
总用量 272
-rw-rw-r--. 1 root root 118338 3月 12 23:07 00-RELEASENOTES
-rw-rw-r--. 1 root root 53 3月 12 23:07 BUGS
-rw-rw-r--. 1 root root 2381 3月 12 23:07 CONTRIBUTING
-rw-rw-r--. 1 root root 1487 3月 12 23:07 COPYING
drwxrwxr-x. 6 root root 124 3月 12 23:07 deps
-rw-rw-r--. 1 root root 11 3月 12 23:07 INSTALL
-rw-rw-r--. 1 root root 151 3月 12 23:07 Makefile
-rw-rw-r--. 1 root root 6888 3月 12 23:07 MANIFESTO
-rw-rw-r--. 1 root root 20555 3月 12 23:07 README.md
-rw-rw-r--. 1 root root 61797 3月 12 23:07 redis.conf
-rwxrwxr-x. 1 root root 275 3月 12 23:07 runtest
-rwxrwxr-x. 1 root root 280 3月 12 23:07 runtest-cluster
-rwxrwxr-x. 1 root root 373 3月 12 23:07 runtest-moduleapi
-rwxrwxr-x. 1 root root 281 3月 12 23:07 runtest-sentinel
-rw-rw-r--. 1 root root 9710 3月 12 23:07 sentinel.conf
drwxrwxr-x. 3 root root 4096 3月 12 23:07 src
drwxrwxr-x. 11 root root 182 3月 12 23:07 tests
drwxrwxr-x. 8 root root 4096 3月 12 23:07 utils
安装前的准备:GCC
gcc是linux下的一个编译程序,是C程序的编译工具。
有网的环境
# 未安装GCC会报错
[root@localhost redis-5.0.8]# make
cd src && make all
...
make[3]: gcc:命令未找到
# 安装gcc
[root@localhost redis-5.0.8]# yum install gcc-c++
...
# 安装完检查
[root@localhost redis-5.0.8]# gcc -v
使用内建 specs。
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper
目标:x86_64-redhat-linux
配置为:../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
线程模型:posix
gcc 版本 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC)
无网的环境
在虚拟机设置中勾选以下2个单选框
虚拟机桌面光盘——右键打开——进入Packages目录——右键,在终端打开
执行以下rpm安装命令,具体版本由虚拟机自带的光盘镜像中的版本决定
[cc@localhost Packages]$ rpm -ivh cpp-4.8.5-39.el7.x86_64.rpm
[cc@localhost Packages]$ rpm -ivh kernel-headers-3.10.0-1062.el7.x86_64.rpm
[cc@localhost Packages]$ rpm -ivh glibc-headers-2.17-292.el7.x86_64.rpm
[cc@localhost Packages]$ rpm -ivh glibc-devel-2.17-292.el7.x86_64.rpm
[cc@localhost Packages]$ rpm -ivh libgomp-4.8.5-39.el7.x86_64.rpm
[cc@localhost Packages]$ rpm -ivh gcc-4.8.5-39.el7.x86_64.rpm
安装完检查
[root@localhost redis-5.0.8]# gcc -v
4. 安装Redis
[root@localhost redis-5.0.8]# make
由于在没有安装GCC前make过一次,会报错
zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录
使用 make distclean 后,再 make
[root@localhost redis-5.0.8]# make distclean
[root@localhost redis-5.0.8]# make
安装验证
[root@localhost redis-5.0.8]# make install
cd src && make install
make[1]: 进入目录“/opt/redis-5.0.8/src”
CC Makefile.dep
make[1]: 离开目录“/opt/redis-5.0.8/src”
make[1]: 进入目录“/opt/redis-5.0.8/src”
Hint: It's a good idea to run 'make test' ;)
INSTALL install
INSTALL install
INSTALL install
INSTALL install
INSTALL install
make[1]: 离开目录“/opt/redis-5.0.8/src”
5. HelloWorld
/usr是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录
[root@localhost redis-5.0.8]# cd /usr/local/bin
[root@localhost bin]# ls -l
总用量 32772
-rwxr-xr-x. 1 root root 4366792 4月 21 10:30 redis-benchmark
-rwxr-xr-x. 1 root root 8124984 4月 21 10:30 redis-check-aof
-rwxr-xr-x. 1 root root 8124984 4月 21 10:30 redis-check-rdb
-rwxr-xr-x. 1 root root 4807768 4月 21 10:30 redis-cli
lrwxrwxrwx. 1 root root 12 4月 21 10:30 redis-sentinel -> redis-server
-rwxr-xr-x. 1 root root 8124984 4月 21 10:30 redis-server
备份Redis配置文件:redis.conf
[root@localhost bin]# cd /opt
[root@localhost opt]# cd redis-5.0.8/
[root@localhost redis-5.0.8]# ls -l
总用量 276
...
-rw-rw-r--. 1 root root 61797 3月 12 23:07 redis.conf
...
[root@localhost redis-5.0.8]# cd ..
[root@localhost opt]# mkdir myredis
[root@localhost opt]# ls -l
总用量 1944
drwxr-xr-x. 2 root root 6 4月 21 10:35 myredis
drwxrwxr-x. 6 root root 4096 3月 12 23:07 redis-5.0.8
-rw-r--r--. 1 cc cc 1985757 4月 21 09:19 redis-5.0.8.tar.gz
drwxr-xr-x. 2 root root 6 10月 31 2018 rh
[root@localhost opt]# cd redis-5.0.8/
[root@localhost redis-5.0.8]# cp redis.conf /opt/myredis
[root@localhost redis-5.0.8]# cd ..
[root@localhost opt]# cd myredis/
[root@localhost myredis]# ls -l
总用量 64
-rw-r--r--. 1 root root 61797 4月 21 10:38 redis.conf
修改刚才复制的 /opt/myredis/redis.conf 中 daemonize no 改为daemonize yes
[root@localhost myredis]# vim redis.conf
# i进入编辑模式、esc退出编辑、:wq保存退出
################################# GENERAL #####################################
# By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
daemonize yes
查看此时redis是否启动:没有
[root@localhost myredis]# ps -ef|grep redis
root 9374 3004 0 10:48 pts/0 00:00:00 grep --color=auto redis
启动redis,默认6379端口号
[root@localhost myredis]# cd /usr/local/bin
[root@localhost bin]# ls -l
总用量 32772
-rwxr-xr-x. 1 root root 4366792 4月 21 10:30 redis-benchmark
-rwxr-xr-x. 1 root root 8124984 4月 21 10:30 redis-check-aof
-rwxr-xr-x. 1 root root 8124984 4月 21 10:30 redis-check-rdb
-rwxr-xr-x. 1 root root 4807768 4月 21 10:30 redis-cli
lrwxrwxrwx. 1 root root 12 4月 21 10:30 redis-sentinel -> redis-server
-rwxr-xr-x. 1 root root 8124984 4月 21 10:30 redis-server
[root@localhost bin]# redis-server /opt/myredis/redis.conf
[root@localhost bin]# redis-cli -p 6379
127.0.0.1:6379>
再次测试redis是否启动
[cc@localhost bin]$ ps -ef|grep redis
root 9485 1 0 10:50 ? 00:00:00 redis-server 127.0.0.1:6379
root 9496 3004 0 10:50 pts/0 00:00:00 redis-cli -p 6379
cc 9560 9516 0 10:52 pts/1 00:00:00 grep --color=auto redis
HelloWorld
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> set k1 hello
OK
127.0.0.1:6379> get k1
"hello"
停止redis
127.0.0.1:6379> shutdown
not connected> exit
[root@localhost bin]#
此时redis服务关闭
[cc@localhost bin]$ ps -ef|grep redis
cc 9582 9516 0 10:53 pts/1 00:00:00 grep --color=auto redis
6. 查看redis是否启动
3种方式
[root@localhost bin]# ps -ef|grep redis
[root@localhost bin]# lsof -i :6379
[root@localhost bin]# netstat -tunple | grep 6379