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

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

相关推荐
飘忽不定的bug4 小时前
ubuntu22.04部署ROS2-humble
linux·ubuntu·ros2
坚定信念,勇往无前5 小时前
Alibaba Cloud Linux 4.0安装mongodump
linux·运维·服务器
qq_310658515 小时前
janux源码走读(五)Janus事件处理模块(events/)
服务器·c++·音视频
虹梦未来5 小时前
【运维心得】Ubuntu2404编译nginx隐藏Server信息
运维·服务器·nginx
hello_2505 小时前
排查K8s Pod Core Dump问题
linux·docker·kubernetes
TG:@yunlaoda360 云老大5 小时前
华为云国际站代理商NAT网关的私网NAT网关有哪些优势?
服务器·数据库·华为云
iAkuya5 小时前
(leetcode)力扣100 21搜索二维矩阵2(z型搜索)
linux·leetcode·矩阵
chalmers_155 小时前
将单个 WebSocket 客户端封装为实例
服务器·websocket·网络协议
Ghost Face...5 小时前
DQ与DQS的90°相位关系:从原理到图像的完整解析
linux
可爱又迷人的反派角色“yang”5 小时前
docker(三)
linux·运维·网络·docker·容器·云计算