第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. ASP.NET Core中使用GraphQL - 第三章 依赖注入

    ASP.NET Core中使用GraphQL ASP.NET Core中使用GraphQL - 第一章 Hello World ASP.NET Core中使用GraphQL - 第二章 中间件 SOL ...

  2. Spring入门(二):自动化装配bean

    Spring从两个角度来实现自动化装配: 组件扫描(component scanning):Spring会自动发现应用上下文中需要创建的bean. 自动装配(autowiring):Spring会自动 ...

  3. MySQL via EF6 的试用报告

    1.如何通过 EF6 来连接 MySQL? 2.如何通过 EF6 来实现 CRUD? 2.1.Create 添加 2.2.Retrieve 查询 2.3.Update 修改 2.4.Delete 删除 ...

  4. .Net Core Web Api 上传女朋友的照片到微软云Azure Storage

    前言 实现一个Web Api,把女朋友照片保存到Azure云的storage里. Image Upload Api 在对应的Api Controller里,加上attribute: [Consumes ...

  5. &,^,|,的简化计算与理解

    (全部和2进制有关 , 凡是2的次方数都是独立数列,都要先分解再计算的,该计算方式仅供手工计算理解,电脑会自动进行换算的) (第二个等号后面为2进制的结果,不够位在前面补0,1为真,0为假)   A^ ...

  6. C#--深入理解类型

    今日无事,回顾了一下C#基础知识,颇有收获,就自己的理解,写了这篇文章,如有不对,欢迎指正. C#中的类型可以分为两类:值类型与引用类型,如下图所示. 值类型通常被分配到线程的堆栈上,而引用类型则被分 ...

  7. 基础知识:编程语言介绍、Python介绍、Python解释器安装、运行Python解释器的两种方式、变量、数据类型基本使用

    2018年3月19日 今日学习内容: 1.编程语言的介绍 2.Python介绍 3.安装Python解释器(多版本共存) 4.运行Python解释器程序两种方式.(交互式与命令行式)(♥♥♥♥♥) 5 ...

  8. SpringBoot打包项目成war包,并部署到服务器的tomcat上

    最近遇到项目需要上线部署到服务器,需要讲自己的SpringBoot项目打包成war包,部署到tomcat上. 下面记录下打包部署的过程. (1) 将SpringBoot项目打包成war包, 一.修改打 ...

  9. HeadFirst设计模式读书笔记之工厂模式

    1. 简单工厂 1. 你开了一家披萨店,点披萨的方法可能是这样: public Pizza orderPizza(String type) { Pizza pizza; if (type.equals ...

  10. ASP.NET Core 部署IIS及 OFFSET 附近有语法错误解决

    今天自己开发了一个订机票的微信公众号,功能基本已经完成,然后想部署到服务器实际测试下.结果部署上去出现各种问题.先安装asp.net core模块,然后发现数据库并不像在开发时一样,执行ef的命令行语 ...