第1步:安装Stow

在这个例子中,我们使用的是CentOS,因此我们需要扩展的EPEL库。您可以使用以下命令安装它们:
yum install epel-release
然后,下面这段命令:
yum install stow
按Y确认安装:

现在已经安装了stow,我们必须选择存储包文件的位置。

第2步:选择存储包文件的位置

正常的“make install”命令将包文件复制到各种位置。Stow的工作原理是将它们全部放在一个目录中的一个位置,然后创建符号链接到它们原本应该去的位置。

所以我们需要为stow保存所有包文件的目录选择一个目录。按照惯例,这通常是:
/usr/local/stow/
在这个位置,每个包都有一个目录。因此,如果我们要安装我们在上一篇文章中用作示例的“hello”程序,则文件将存储在:
/usr/local/stow/hello
这个位置可以是任何东西。只是为了表明,我们将把文件存储在以下位置:
/home/bhagwad/stow/

第3步:使用“make install”和“prefix”选项
我们在上一篇文章中看到,从源代码安装需要以下命令:

./configure
make
make install

要使用stow进行安装,我们只需将最后一步更改为:
make install prefix=/home/testuser/stow/hello

“prefix”选项告诉我们将包放在给定的位置。此位置只是步骤2中选定的目录,其中包名称作为单独的文件夹添加。这会导致文件安装到给定位置,如下所示:

现在我们将包中所需的所有文件放在stow目录的文件夹中。

第4步:使用stow完成安装

要安装软件包,首先将“cd”放入stow目录,如下所示:
cd /home/testuser/stow
确保包含文件的文件夹只是当前位置下的一个目录。现在输入:
stow hello
该软件包现已安装在您的系统上。这是“hello”命令的截图:

第5步:删除包

关于装载最酷的部分是从系统中移除包装是多么容易。无需保留源包或任何东西。只需导航到stow目录,如步骤4所示,然后输入:
stow --delete hello
已经完成了!您可以在下面看到该命令在此步骤后不再有效:

就系统而言,包已被完全删除!记住文件实际上并没有消失是件好事。他们仍然在“hello”目录中。您可以使用stow命令再次轻松地安装软件包。如果您不再需要这些文件,只需删除“hello”文件夹,系统就干净了!

参考:如何在Linux中轻松删除源安装的软件包?

如何在Linux中轻松删除源安装的软件包?的更多相关文章

  1. 如何在Linux中自动删除或清理/tmp文件夹内容?

    每个Linux系统都有一个名为的目录/tmp,该目录已挂载了单独的文件系统. 它具有称为tmpfs的特殊文件系统.这是一个虚拟文件系统,操作系统将在系统引导时自动挂载/tmp挂载点. 如果要根据应用程 ...

  2. 如何在linux中从源代码编译安装nodejs?

    $ sudo yum groupinstall 'Development Tools'安装开发环境$ wget https://nodejs.org/dist/v0.12.2/node-v0.12.2 ...

  3. Linux 中如何卸载已安装的软件(转载)

            Linux 中如何卸载已安装的软件. Linux软件的安装和卸载一直是困扰许多新用户的难题.在Windows中,我们可以使用软件自带的安装卸载程序或在控制面板中的“添加/删除程序”来实 ...

  4. Linux 中如何卸载已安装的软件

    Linux 中如何卸载已安装的软件. Linux软件的安装和卸载一直是困扰许多新用户的难题.在Windows中,我们可以使用软件自带的安装卸载程序或在控制面板中的“添加/删除程序”来实现.与其相类似, ...

  5. 如何在 Linux 中查看可用的网络接口

    在我们安装完一个 Linux 系统后最为常见的任务便是网络配置了.当然,你可以在安装系统时进行网络接口的配置.但是,对于某些人来说,他们更偏爱在安装完系统后再进行网络的配置或者更改现存的设置.众所周知 ...

  6. Linux 中如何用源代码安装软件,以及如何卸载它

    https://www.linuxidc.com/Linux/2017-12/149839.htm http://www.openssh.com/ http://www.openssh.com/por ...

  7. 【转】如何在 Linux 中查看可用的网络接口

    原文:https://www.cnblogs.com/qianpangzi/p/10563979.html 查看ubuntu系统当前的可用的网络接口.方法如下 -------------------- ...

  8. 如何在Linux中查看所有正在运行的进程

    如何在Linux中查看所有正在运行的进程 FROM:http://os.51cto.com/art/201101/244090.htm 进程是一个其中运行着一个或多个线程的地址空间和这些线程所需要的系 ...

  9. 如何在Linux中使用Firejail运行应用程序

    有时您可能希望使用在不同环境中未经过良好测试的应用程序,但您必须使用它们.在这种情况下,关注系统的安全性是正常的.在Linux中可以做的一件事是在沙箱中使用应用程序. “沙盒”是在有限环境中运行应用程 ...

随机推荐

  1. 前端笔记之移动端&响应式(下)默认样式&事件&惯性抛掷&swiper&loaction对象

    一.移动端默认样式 ·IOS和Android下触摸元素时出现半透明灰色遮罩 a,input,button{ -webkit-tap-highlight-color: transparent; } ·I ...

  2. 旅行商问题(Traveling Salesman Problem,TSP)的+Leapms线性规划模型及c++调用

    知识点 旅行商问题的线性规划模型旅行商问题的+Leapms模型及CPLEX求解C++调用+Leapms 旅行商问题 旅行商问题是一个重要的NP-难问题.一个旅行商人目前在城市1,他必须对其余n-1个城 ...

  3. 数据分析之matplotlib.pyplot模块

    首先都得导模块. import numpy as np import pandas as pd import matplotlib.pyplot as plt from pandas import S ...

  4. C# 默认访问权限

    声明类.方法.字段.属性时不加访问权限修饰符时的访问权限是什么呢?1. 声明命名空间.类,前面不加限制访问修饰符时,默认访问权限为internal——访问仅限于当前程序集. 2. 声明类成员(域.属性 ...

  5. ACCP8.0 HTML标签

    ACCP8.0 HTML标签 第一章1.HTML超文本标记语言2.网页<html></html>3.网页头部<head></head>4.网页标题< ...

  6. 【转载】 Sqlserver限制最大占用内存

    在Sqlserver数据库管理软件中,Sqlserver对系统内存的管理原则是:按需分配,并且分配完成后为了查询有更好的性能,并不会立即自动释放内存,数据取出后,还会一直占用着内存,所以在Sqlser ...

  7. C#连接基于Java开发IM——Openfire

    Openfire简介    Openfire 是开源的.基于可拓展通讯和表示协议(XMPP).采用Java编程语言开发的实时协作服务器.Openfire的效率很高,单台服务器可支持上万并发用户.    ...

  8. PhP数据库 Mysql dos命令

    mysql 这是一个关系型数据库,存在表的概念. 结构 数据库可以存放多张表,每个表可以存放多个字段,每个字段可以存放多个记录. dos命令操作数据库 phpstudy使用终端打开数据库 第一步: 第 ...

  9. 20190421-那些年使用过的CSS预处理器(CSS Preprocessor)

    写在前面的乱七八糟的前言: emmm,不得不说,早上七点是个好时间,公园里跳广场舞的大妈,街边卖菜刀看报的大爷,又不得不说,广州图书馆是个好地方,该有的安静,该有的人气,听着楼下小孩子的声音,看着周围 ...

  10. 46.Odoo产品分析 (五) – 定制板块(2) – 为业务自定义odoo(1)

    查看Odoo产品分析系列--目录 在这一章节中,将学习到如何设置"开发者模式"以及备份数据库:然后学习如何添加字段到数据库并在表单和视图中显示. 1 了解odoo的构架 每一个应用 ...