Ubuntu下软件安装方式、PATH配置、查找安装位置
Ubuntu 18.04,
安装方式
目前孤知道的Ubuntu下安装软件方式有3种(命令):
1.make
2.apt/apt-get
3.dpkg
方式1基于软件源码安装,需要经历配置(可选)、编译、安装,获取源码可以直接从软件官网下载,或者,使用wget命令下载;
方式2可以安装Ubuntu的软件源(sources)中的软件,在配置文件/etc/apt/sources.list中有定义软件源,可以修改、添加自己的,其中,deb开头的为deb安装包,deb-src开头的为源码,需要注意的是,软件源的配置(URL后面部分)需要根据自己的Ubuntu版本进行,配置完软件源后,需要使用update更新(抱歉自己理解的不是很透彻,更新到哪里呢?);
方式3来自Debian系统,而Ubuntu源于Debian,用于安装deb安装包,没有使用过,貌似deb安装包可以在Ubuntu下双击打开进行安装(第4种安装方式吗?);
实践:
前面使用源码安装Redis时,并没有执行./configure、make install,直接解压后执行make即可,这与其Makefile文件中制定的流程有关系;
参考资料:
Ubuntu修改apt-get源(这篇文章讲解了source的一些配置)
因为对apt/apt-get用的比较多——绝大部分,因此,下面做了一个统计:
apt开头的命令有哪些、apt命令的子命令有哪些、apt-get的子命令有哪些……另外,apt-cache也是非常有用的命令,自己展示简单地试用了一下。
下面展示RHEL、Debian类系统的安装进化:最初都是从源码包安装,后来,Debian现行一步开发了安装包管理系统,然后,大发展。
Debian是不是太厉害了?
还有一个aptitude,要是加上这个工具,就是第4种安装方式了!不过,Ubuntu中默认没有安装,自己更是从未使用过,看网文介绍,它挺厉害的。
参考链接:
原来,包管理器在很多系统、平台中都有使用啊!微软的、Google的~~还有一个很著名的系统CentOS,其用到的包管理器叫做yum,没用过。
配置环境变量PATH
疑问:
前面使用make安装了下载的Redis 4.0.10,可是,Redis的相关命令都存在于源文件包的src下,启动Redis服务器和客户端需要使用./src/redis-server、./src/redis-cli命令,必须要添加“./”表明执行当前目录下的命令。这就和自己期望的不一致了,希望直接输入命令执行。在Windows中是将命令所在目录添加到path环境变量中,在Windows中呢?也是需要添加到环境变量中,但环境变量的名称是大写的PATH,可以使用echo $PATH获得其当前值:
之前使用sudo apt-get install安装的MongoDB的命令却已经存在于PATH中的/usr/bin中了:
当然,这个问题也和Redis的Makefile文件的编写有关系,其完全可以在Makefile文件中设置环境变量的,但它没有。
参考链接:
Linux环境变量文件environment, profile, bashrc含义
Linux 下三种方式设置环境变量(这篇文章中有安装JDK的示例)
查找安装位置
安装方式有了,配置环境变量也有了,最后,想知道程序安装在哪里了吗?whereis、which等,下面的文章还介绍使用find、dpkg、locate、mongo来查找,但孤尚未试过。
参考链接:
后记
经过一下午的努力,大概知道了Ubuntu下怎么安装软件、怎么配置环境变量PATH、怎么查找软件安装位置了,剩下的,就要靠动手实践来熟悉了。
任务:安装MySQL、Kafka、RabbitMQ、Apache、Nginx、Memcached等各种软件吧;
对了,自己对Linux真的不熟悉,各个文件夹、文件的作用都“忘记了”——曾经也学过,看来,还需要补补;
还有就是各种Linux命令,今天还学了一个wc命令,统计字数、行数的,很有用!
下午看了几个配置文件,好像完全不知道里面的代码什么意思,只记得,很久很久之前,自己也有花时间专门学过Bash编程的,只是……也要补补啊!
熟悉Linux,一个很艰巨的任务!否则,怎么玩Python呢!
Ubuntu下软件安装方式、PATH配置、查找安装位置的更多相关文章
- 基于Ubuntu下以Docker方式gitlab软件的部署
基于Ubuntu下以Docker方式gitlab软件的部署 目录 基于Ubuntu下以Docker方式gitlab软件的部署 1.安装Docker Compose 1.1 下载curl 1.2 安装c ...
- Ubuntu下软件安装的几种方式,apt,dpkg工具的使用
通常 Linux 上的软件安装主要有四种方式: 在线安装 从磁盘安装deb软件包 从二进制软件包安装 从源代码编译安装 这几种安装方式各有优劣,而大多数软件包会采用多种方式发布软件,所以我们常常需要全 ...
- Ubuntu下软件的搜索与安装
本文为笔者原创,首发于简书(点击这里查看). 小白玩转linux的第一个拦路虎就是软件的安装了.本文结合自己在Ubuntu14.04下软件安装经验做一个总结. 1.如何搜索软件? apt-cache ...
- linux下软件的种类和对应的安装及卸载的方式
转: 一个Linux应用程序的软件包中可以包含两种不同的内容: 1)一种就是可执行文件,也就是解开包后就可以直接运行的.在Windows中所 有的软件包都是这种类型.安装完这个程序后,你就可以使用,但 ...
- ubuntu下搭建android开发环境核心篇安装AndroidStudio、sdk、jdk
本文系转载http://blog.csdn.net/lsyz0021/article/details/52215996 一.安装前的准备 1.1.如果你还没有安装ubuntu 14.04 LTS系统, ...
- Ubuntu下的Selenium爬虫的配置
在服务器Ubuntu系统上跑爬虫,爬虫是基于Selenium写的,遇到好几个问题,现在这里记录一下. 1. 安装环境 阿里云,Ubuntu16.04,因为没有界面,所以远程命令行操作.爬虫是基于Sel ...
- ubuntu下的数据库和python存储库安装——MySQL,MongoDB,Redis
MySQL 的安装 sudo apt-get updatesudo apt-get install -y mysql-server mysql-client 启动.关闭和重启MySQL 服务的命令如下 ...
- ubuntu下firefox浏览器flash player插件的安装
自从装了双系统后,ubuntu下的音乐软件只能选择网页播放器了,这无疑是需要播放插件的,这个插件就是falsh player. 当初使用usb启动盘安装的,在安装的过程中还会报找不到CD-rom的错, ...
- Ubuntu 下 Galera cluster for MySQL 集群安装
mysql galera cluster官网:http://galeracluster.com/documentation-webpages/ 相关安装教程:(不一定管用) http://blog.c ...
随机推荐
- BZOJ 3527 力 | FFT
BZOJ 3527 力 | 分治 题意 给出数组q,$E_i = \sum_{i < j} \frac{q_i}{(i - j) ^ 2} - \sum_{i > j} \frac{q_i ...
- Unhandled rejection RangeError: Maximum call stack size exceededill install loadIdealTree
npm安装时候报这个错误,解决方法如下: 删除项目中的 package-lock.json 文件 和 node_modules 文件夹,然后再尝试 npm install 详细参考
- aapt命令说明
这里借用一下百度百科,我比较懒 1.列出apk包的内容 aapt l[ist] [-v] [-a] <你的应用> -v 以table形式列出来 -a 详细列出内容 例如:aapt l &l ...
- OneProxy实现mysql读写分离
OneProxy for MySQL可以复用不同应用到后端数据库的连接,有效降低数据库的并发连接数:可以即时踢除不可用的节点,将应用请求转发到其他可用节点,保证业务服务的稳定性. 可透明地将查询语句分 ...
- Kubernetes--kubectl
一.Kubectl命令行说明 类型 命令 描述 基础命令 create 通过文件名或标准输入创建资源 expose 将一个资源公开为一个新的kubernetes服务 run 创建并运行一个特定的镜 ...
- NLP分词
英文分词: #英文分词 import nltk sentence="hello,world" tokens=nltk.word_tokenize(sentence) print(t ...
- (转) linux下vim和bash配置文件
1.注释版 ~/.vimrc "去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限 set nocompatible set autoread " 文件修改之后自动载入 ...
- 超简单将Centos的yum源更换为国内的阿里云源
自己的yum源不知道什么时候给改毁了……搜到了个超简单的方法将yum源更换为阿里的源 完全参考 http://mirrors.aliyun.com/help/centos?spm=5176.bbsr1 ...
- [转载]bootstrap 2.3版与3.0版的使用区别
http://www.weste.net/2013/8-20/93261.html bootstrap已经推出了3.0的新版,看起来2.3.x版本也不会再更新了.那么bootstrap 2.3版与3. ...
- Java容器Map接口
Map接口容器存放的是key-value对,由于Map是按key索引的,因此 key 是不可重复的,但 value 允许重复. 下面简单介绍一下Map接口的实现,包括HashMap,LinkedHas ...