第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中自动删除或清理/tmp文件夹内容?
每个Linux系统都有一个名为的目录/tmp,该目录已挂载了单独的文件系统. 它具有称为tmpfs的特殊文件系统.这是一个虚拟文件系统,操作系统将在系统引导时自动挂载/tmp挂载点. 如果要根据应用程 ...
-
如何在linux中从源代码编译安装nodejs?
$ sudo yum groupinstall 'Development Tools'安装开发环境$ wget https://nodejs.org/dist/v0.12.2/node-v0.12.2 ...
-
Linux 中如何卸载已安装的软件(转载)
Linux 中如何卸载已安装的软件. Linux软件的安装和卸载一直是困扰许多新用户的难题.在Windows中,我们可以使用软件自带的安装卸载程序或在控制面板中的“添加/删除程序”来实 ...
-
Linux 中如何卸载已安装的软件
Linux 中如何卸载已安装的软件. Linux软件的安装和卸载一直是困扰许多新用户的难题.在Windows中,我们可以使用软件自带的安装卸载程序或在控制面板中的“添加/删除程序”来实现.与其相类似, ...
-
如何在 Linux 中查看可用的网络接口
在我们安装完一个 Linux 系统后最为常见的任务便是网络配置了.当然,你可以在安装系统时进行网络接口的配置.但是,对于某些人来说,他们更偏爱在安装完系统后再进行网络的配置或者更改现存的设置.众所周知 ...
-
Linux 中如何用源代码安装软件,以及如何卸载它
https://www.linuxidc.com/Linux/2017-12/149839.htm http://www.openssh.com/ http://www.openssh.com/por ...
-
【转】如何在 Linux 中查看可用的网络接口
原文:https://www.cnblogs.com/qianpangzi/p/10563979.html 查看ubuntu系统当前的可用的网络接口.方法如下 -------------------- ...
-
如何在Linux中查看所有正在运行的进程
如何在Linux中查看所有正在运行的进程 FROM:http://os.51cto.com/art/201101/244090.htm 进程是一个其中运行着一个或多个线程的地址空间和这些线程所需要的系 ...
-
如何在Linux中使用Firejail运行应用程序
有时您可能希望使用在不同环境中未经过良好测试的应用程序,但您必须使用它们.在这种情况下,关注系统的安全性是正常的.在Linux中可以做的一件事是在沙箱中使用应用程序. “沙盒”是在有限环境中运行应用程 ...
随机推荐
-
PHP结合Linux的cron命令实现定时任务
PHP死循环 来处理定时任务的效率是很低的.(众多网友评价)大家都建议使用Linux内置的定时任务crontab命令来调用php脚本来实现. PHP定时任务的两种方法:1.web方式调用php网页,但 ...
-
qstring.h赏析
https://github.com/qtproject/qtbase/blob/dev/src/corelib/tools/qstring.h C:\Qt\Qt5.3.2_min\5.3\mingw ...
-
【微服务】之二:从零开始,轻松搞定SpringCloud微服务系列--注册中心(一)
微服务体系,有效解决项目庞大.互相依赖的问题.目前SpringCloud体系有强大的一整套针对微服务的解决方案.本文中,重点对微服务体系中的服务发现注册中心进行详细说明.本篇中的注册中心,采用Netf ...
-
MySQL之存储过程和函数
存储过程和函数: 1.创建存储过程和函数: 存储过程: delimiter $$ create procedure proc_name() BEGIN 查询语句; // 记得加分号 END $$ de ...
-
Android性能测试--垃圾回收频次统计的作用
频繁的垃圾回收有可能暗示着内存泄露,在我手机统计数据,每次垃圾回收会占据100ms左右,这对内存和事件响应要求严格的程序(游戏等)来讲是可观的性能损耗.
-
[SQLite][Error Code] 21 misuse
若使用SQLite API時,出現错误代码21(misuse),可能是你的SQLiteConnection同時打開(Open)了兩個相同的Data source,所造成的错误. 解決方法:检查代码 ...
-
httpclient 连接管理器
连接操作器 连接操作是客户端的底层套接字或可以通过外部实体,通常称为连接操作的被操作的状态的连接. OperatedClientConnection接口扩展了HttpClientConnection接 ...
-
切换composer国内镜像
composer config -g repo.packagist composer https://packagist.phpcomposer.com
-
Maven 基础知识
Maven MavenMaven 简介 Maven MavenMaven 是 Apache Apache Apache 软件基金会组织维护的 软件基金会组织维护的 软件基金会组织维护的 软件基金会组织 ...
-
VB与C#的区别(转载)
由于工作原因要熟悉这两门编程语言.网上找的. VB.NET Program Structure C# Imports System Namespace Hello Clas ...