虚拟机ubuntu桥接模式提供固定IP访问及源码安装redis6.2.7
1303
2022-06-05
安装Redis
#下载redis源码安装包到用户目录中
cd /home/{user}/
sudo wget http://download.redis.io/releases/redis-6.2.7.tar.gz
#解压
sudo tar -zxvf redis-6.2.7.tar.gz
#把redis移动到自定义的安装目录
cd /usr/local
mkdir redis
cd redis
cp -r /home/{user}/redis-6.2.7 /usr/local/redis/
#检查gcc是否安装
gcc --version
#安装gcc(可选)
sudo apt-get install gcc
#安装redis
sudo make install
#复制redis配置文件(可以不改名,但后面配置自启动时就要调整自启动配置)
mkdir /etc/redis
cp /usr/local/redis/redis-6.2.7/redis.conf /etc/redis/6379.conf
#修改redis配置文件
sudo vi /etc/redis/6379.conf
主要修改以下几处:
...
#将默认的本机端口注释
# bind 127.0.0.1 -::1
...
#允许远端访问,yes的话只能本机
protected-mode no
...
#端口
port 6379
...
#以后台方式启动
daemonize yes
...
pidfile /var/run/redis_6379.pid
...
#日志保存位置
logfile ""
...
#密码
requirepass 123456
...
将Redis设置为系统服务
#将redis自带的初始化脚本复制到ubuntu启动目录中
sudo cp /usr/local/redis/redis-6.2.7/utils/redis_init_script /etc/init.d/{自定义名称}
#修改启动脚本
vi /etc/init.d/{自定义名称}
具体修改点如下:
REDISPORT=6379【看这里:看需求】
EXEC=/usr/local/bin/redis-server【看这里:一般不用动】
CLIEXEC=/usr/local/bin/redis-cli【看这里:一般不用动】
PIDFILE=/var/run/redis_${REDISPORT}.pid【看这里:如果改了端口,对应目录下的pid文件也要改】
CONF="/etc/redis/${REDISPORT}.conf"【看这里:如果前面不改redis config文件的名称,这里就要改】
case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Redis server..."
$EXEC $CONF &【看这里:加个&表示以后台方式启动】
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$CLIEXEC -a "123456" -p $REDISPORT shutdown【看这里:如果设置了密码,要加-a "密码",否则执行命令时会出现“NOAUTH Authentication required”的错误,并一直等待命令执行】
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
esac
#启用服务(否则以{自定义名称}执行时可能出现Failed to start redis.service: Unit {自定义名称}.service not found.)
systemctl enable {自定义名称}
#安装服务管理程序(可选)
sudo apt-get install sysv-rc-conf
#设置redis服务级别,将{自定义名称}对应的服务的2、3、4、5级别全部勾选
sudo sysv-rc-conf
启动Redis
service redis start
service redis stop
service redis restart
#查看redis后台进程运行情况
ps -ef |grep redis
虚拟机网络设置为桥接模式,提供固定IP访问
VMware设置
编辑->虚拟网络编辑器->更改设置(右下角)->添加网络
虚拟机->设置->网络适配器
ubuntu网络设置
#查看本机网络信息(不一定是ens33,具体看自己的网络情况,ens33是以太网卡)
root@user1:~# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.31.89 netmask 255.255.255.0 broadcast 192.168.31.255
inet6 fe80::20c:29ff:fe43:5b14 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:43:5b:14 txqueuelen 1000 (Ethernet)
RX packets 20500 bytes 4984472 (4.9 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1291 bytes 294287 (294.2 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 103 bytes 7717 (7.7 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 103 bytes 7717 (7.7 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
#修改网络配置
root@user1:~# cat /etc/network/interfaces
auto ens33
#设置ens33为静态地址
iface ens33 inet static
#IP,需要与局域网其他主机同网段
address 192.168.31.89
#网关,同网段
gateway 192.168.31.1
#子网掩码
netmask 255.255.255.0
#DNS,可以看虚拟机所在windows的网络信息ipconfig
dns-nameservers 192.168.31.1
然后重启网络或重启虚拟机(reboot)
ubuntu开启ssh
#安装ssh服务器
sudo apt-get install openssh-server
#修改ssh服务的配置
root@user1:~# cat /etc/ssh/sshd_config
......
#Port 22
......
PermitRootLogin yes
StrictModes yes
......
PubkeyAuthentication yes
......