统信UOS部署Memcached需按五步操作:一、apt安装(推荐);二、源码编译(定制需求);三、配置监听与防火墙;四、设非root用户安全运行;五、配置systemd服务并开机自启。

如果您在统信UOS系统上需要部署Memcached缓存服务,但尚未完成安装与基础配置,则可能是由于缺少依赖、包源未适配或服务监听限制所致。以下是针对统信UOS平台的多种可行安装与配置路径:
一、使用apt命令安装Memcached(推荐)
统信UOS基于Debian/Ubuntu生态,官方源已预置memcached软件包,该方法最简捷稳定,适用于快速验证和开发环境。
1、更新系统软件源列表,确保获取最新可用包信息:
sudo apt update
2、安装memcached主程序及开发头文件(便于后续C/C++扩展集成):
sudo apt install -y memcached libmemcached-dev
3、验证安装是否成功并查看版本:
memcached -h | head -n 5
4、检查默认配置文件是否存在:
ls -l /etc/memcached.conf
二、从源码编译安装Memcached(高定制需求)
当需启用特定编译选项(如自定义内存对齐、启用SASL认证、或适配UOS内核特性)时,应采用源码安装方式。此方法可完全控制构建参数与运行时行为。
1、安装必要编译依赖:
sudo apt install -y build-essential libevent-dev libssl-dev autoconf automake libtool
2、下载最新稳定版Memcached源码(以1.6.15为例):
wget http://www.memcached.org/files/memcached-1.6.15.tar.gz
3、解压并进入源码目录:
tar -zxvf memcached-1.6.15.tar.gz
cd memcached-1.6.15
4、配置安装路径为/usr/local/memcached,并启用事件驱动优化:
./configure --prefix=/usr/local/memcached --enable-64bit --with-libevent=/usr
5、编译并安装:
make -j$(nproc)
sudo make install
6、创建软链接便于全局调用:
sudo ln -sf /usr/local/memcached/bin/memcached /usr/local/bin/memcached
三、配置监听地址与远程访问权限
统信UOS默认启用防火墙且memcached.conf中绑定127.0.0.1,若需局域网其他设备访问,必须显式修改监听地址并放行端口。
1、编辑配置文件:
sudo vim /etc/memcached.conf
2、定位到-l参数行,将原内容-l 127.0.0.1修改为:
-l 0.0.0.0
3、确认端口未被占用且允许外部连接:
sudo ss -tuln | grep :11211
4、开放系统防火墙11211端口(UOS使用ufw):
sudo ufw allow 11211/tcp
sudo ufw reload
5、重启memcached服务使配置生效:
sudo systemctl restart memcached
四、设置非root用户安全运行
避免以root身份长期运行缓存服务是安全基线要求。通过创建专用低权限用户并赋权,可显著降低潜在提权风险。
1、创建memcache系统用户(无登录Shell、无主目录):
sudo useradd -r -s /bin/false memcache
2、修改配置文件中的运行用户参数:
sudo sed -i 's/-u memcached/-u memcache/g' /etc/memcached.conf
3、调整memcached二进制文件属主(若为源码安装):
sudo chown root:memcache /usr/local/memcached/bin/memcached
sudo chmod g+s /usr/local/memcached/bin/memcached
4、赋予memcache用户对pid与日志目录的写入权限:
sudo mkdir -p /var/run/memcached
sudo chown memcache:memcache /var/run/memcached
sudo mkdir -p /var/log/memcached
sudo chown memcache:memcache /var/log/memcached
五、启用systemd服务管理并设为开机自启
统信UOS使用systemd作为初始化系统,通过标准service单元管理memcached进程,可实现健康检查、自动拉起与日志归集。
1、确认memcached已注册为systemd服务:
systemctl list-unit-files | grep memcached
2、若未注册,手动创建服务文件:
sudo vim /etc/systemd/system/memcached.service
3、填入以下内容(适配apt安装路径):
[Unit]
Description=Memcached Daemon
After=network.target
[Service]
Type=simple
User=memcache
Group=memcache
ExecStart=/usr/bin/memcached -u memcache -p 11211 -m 64 -c 1024 -l 0.0.0.0
Restart=always
RestartSec=5
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
4、重载systemd配置并启用服务:
sudo systemctl daemon-reload
sudo systemctl enable memcached
sudo systemctl start memcached
5、验证服务状态与资源占用:
sudo systemctl status memcached -l
sudo systemctl show memcached --property=MemoryCurrent

















