Linux安装软件通用办法总结及注意事项(全局运行、守护进程、自启动,开放服务端口)

一、自带软件工具安装软件

安装软件推荐用系统自带的工具(如Centos的yum、Ubuntu的apt)

1.1 查询软件源提供的关于所需软件的信息

bash 复制代码
sudo apt list xxxx

1.2 安装软件

bash 复制代码
sudo apt install xxxx

1.3 卸载软件

bash 复制代码
sudo apt uninstall xxxx

1.4 更新软件源信息

sudo apt update xxxx

二、源码编译安装

2.1 根据填写配置生成Makefile

bash 复制代码
configure XXXXX XXXXXX XXXXXXXXXX

2.2、根据Makefile编译

bash 复制代码
make

2.3、安装-----安装时一般已经实现了全局可执行、变为服务等等

bash 复制代码
make install

三、 针对很多软件只提供了可执行文件的情况

  1. 要让可执行文件全局可执行办法

    1.将可执行文件放到bin目录下sudo cp <binary-name> /usr/local/bin/或在bin目录下建立软连接sudo ln -s /absolute/path/to/<binary-name> /usr/local/bin/<binary-name>

    2.将所在目录加入环境变量echo "export PATH=/home/wzy/go/bin:$PATH" >> ~/.profile && source ~/.profile

  2. 守护进程的办法(将程序变为服务)

    复制代码
        # 编辑配置文件
        vim /usr/lib/systemd/system/cloudreve.service

以cloudreve为列,根据自己需求修改此文件

bash 复制代码
[Unit]
Description=Cloudreve
Documentation=https://docs.cloudreve.org
After=network.target
After=mysqld.service
Wants=network.target

[Service]
#User=cloudreve #为了安全最好新建一个cloudreve用户
WorkingDirectory=/PATH_TO_CLOUDREVE
ExecStart=/PATH_TO_CLOUDREVE/cloudreve
Restart=on-abnormal
RestartSec=5s
KillMode=mixed

StandardOutput=null
StandardError=syslog

[Install]
WantedBy=multi-user.target
bash 复制代码
# 更新配置
systemctl daemon-reload
bash 复制代码
# 启动服务
systemctl start cloudreve
  1. 将服务设置为自启动
bash 复制代码
systemctl enable cloudreve

4、如果对外提供网络服务防火墙开放服务端口----如果是阿里云等还要在网页管理端安全组里开放端口

Ubuntu的ufw防火墙

bash 复制代码
ufw enable#开启防火墙
ufw default deny
bash 复制代码
sudo ufw allow 22/tcp # 开放22端口

让配置生效

bash 复制代码
sudo ufw reload

Centos的firewall防火墙

bash 复制代码
systemctl start firewalld.service  #开启防火墙
bash 复制代码
firewall-cmd --zone=public --add-port=22/tcp --permanent   # 开放22端口

让配置生效

bash 复制代码
firewall-cmd --reloaad

四、根据软件的官方文档提供配置文件

相关推荐
城北徐宫3 分钟前
Linux信号深度解剖:5种产生、3张表、4次切换
linux·c++·学习
倔强的石头1064 分钟前
【Linux指南】Linux快捷键与系统实用技巧
linux·运维·服务器
番茄地瓜7 分钟前
Linux 配置静态 IP 步骤
linux·运维·服务器
liulilittle11 分钟前
论 Linux 内核态全局稳态带宽的卡尔曼估计与工程实现
linux·服务器·网络·c++·计算机网络·tcp·通信
Irissgwe1 小时前
五、应用层协议HTTP
linux·网络·网络协议·http·状态码·url
.千余1 小时前
【Linux】 传输层协议UDP:从端口号到传输机制
linux·运维·udp
囚~徒~2 小时前
轻量化的虚拟机
linux·运维·服务器
SteveSenna2 小时前
Ubuntu 20.04 安装 Isaac Sim 4.5 + Isaac Lab
linux·运维·服务器
开开心心就好2 小时前
支持多显示器的Windows高效分屏工具
运维·python·科技·游戏·计算机外设·ocr·powerpoint
lizhihai_993 小时前
股市学习心得-A股服务器/算力服务器龙头
大数据·运维·服务器·人工智能·科技·学习