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下安装程序的三种方法 by -鸣人-

Ubuntu 下 apt-get 更新源推荐

Ubuntu修改apt-get源(这篇文章讲解了source的一些配置)

因为对apt/apt-get用的比较多——绝大部分,因此,下面做了一个统计:

apt开头的命令有哪些、apt命令的子命令有哪些、apt-get的子命令有哪些……另外,apt-cache也是非常有用的命令,自己展示简单地试用了一下。

下面展示RHEL、Debian类系统的安装进化:最初都是从源码包安装,后来,Debian现行一步开发了安装包管理系统,然后,大发展。

Debian是不是太厉害了?

还有一个aptitude,要是加上这个工具,就是第4种安装方式了!不过,Ubuntu中默认没有安装,自己更是从未使用过,看网文介绍,它挺厉害的。

参考链接:

【Ubuntu】aptitude命令详解

5款最适合新手的包管理器

你需要知道的包管理器(Package Manager)

原来,包管理器在很多系统、平台中都有使用啊!微软的、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下通过源码编译安装程序

Linux环境变量文件environment, profile, bashrc含义

Linux 下三种方式设置环境变量(这篇文章中有安装JDK的示例)

查找安装位置

安装方式有了,配置环境变量也有了,最后,想知道程序安装在哪里了吗?whereis、which等,下面的文章还介绍使用find、dpkg、locate、mongo来查找,但孤尚未试过。

参考链接:

ubuntu16.04查看软件的安装位置

后记

经过一下午的努力,大概知道了Ubuntu下怎么安装软件、怎么配置环境变量PATH、怎么查找软件安装位置了,剩下的,就要靠动手实践来熟悉了。

任务:安装MySQL、Kafka、RabbitMQ、Apache、Nginx、Memcached等各种软件吧;

对了,自己对Linux真的不熟悉,各个文件夹、文件的作用都“忘记了”——曾经也学过,看来,还需要补补;

还有就是各种Linux命令,今天还学了一个wc命令,统计字数、行数的,很有用!

下午看了几个配置文件,好像完全不知道里面的代码什么意思,只记得,很久很久之前,自己也有花时间专门学过Bash编程的,只是……也要补补啊!

熟悉Linux,一个很艰巨的任务!否则,怎么玩Python呢!

Ubuntu下软件安装方式、PATH配置、查找安装位置的更多相关文章

  1. 基于Ubuntu下以Docker方式gitlab软件的部署

    基于Ubuntu下以Docker方式gitlab软件的部署 目录 基于Ubuntu下以Docker方式gitlab软件的部署 1.安装Docker Compose 1.1 下载curl 1.2 安装c ...

  2. Ubuntu下软件安装的几种方式,apt,dpkg工具的使用

    通常 Linux 上的软件安装主要有四种方式: 在线安装 从磁盘安装deb软件包 从二进制软件包安装 从源代码编译安装 这几种安装方式各有优劣,而大多数软件包会采用多种方式发布软件,所以我们常常需要全 ...

  3. Ubuntu下软件的搜索与安装

    本文为笔者原创,首发于简书(点击这里查看). 小白玩转linux的第一个拦路虎就是软件的安装了.本文结合自己在Ubuntu14.04下软件安装经验做一个总结. 1.如何搜索软件? apt-cache ...

  4. linux下软件的种类和对应的安装及卸载的方式

    转: 一个Linux应用程序的软件包中可以包含两种不同的内容: 1)一种就是可执行文件,也就是解开包后就可以直接运行的.在Windows中所 有的软件包都是这种类型.安装完这个程序后,你就可以使用,但 ...

  5. ubuntu下搭建android开发环境核心篇安装AndroidStudio、sdk、jdk

    本文系转载http://blog.csdn.net/lsyz0021/article/details/52215996 一.安装前的准备 1.1.如果你还没有安装ubuntu 14.04 LTS系统, ...

  6. Ubuntu下的Selenium爬虫的配置

    在服务器Ubuntu系统上跑爬虫,爬虫是基于Selenium写的,遇到好几个问题,现在这里记录一下. 1. 安装环境 阿里云,Ubuntu16.04,因为没有界面,所以远程命令行操作.爬虫是基于Sel ...

  7. ubuntu下的数据库和python存储库安装——MySQL,MongoDB,Redis

    MySQL 的安装 sudo apt-get updatesudo apt-get install -y mysql-server mysql-client 启动.关闭和重启MySQL 服务的命令如下 ...

  8. ubuntu下firefox浏览器flash player插件的安装

    自从装了双系统后,ubuntu下的音乐软件只能选择网页播放器了,这无疑是需要播放插件的,这个插件就是falsh player. 当初使用usb启动盘安装的,在安装的过程中还会报找不到CD-rom的错, ...

  9. Ubuntu 下 Galera cluster for MySQL 集群安装

    mysql galera cluster官网:http://galeracluster.com/documentation-webpages/ 相关安装教程:(不一定管用) http://blog.c ...

随机推荐

  1. BZOJ 3527 力 | FFT

    BZOJ 3527 力 | 分治 题意 给出数组q,$E_i = \sum_{i < j} \frac{q_i}{(i - j) ^ 2} - \sum_{i > j} \frac{q_i ...

  2. Unhandled rejection RangeError: Maximum call stack size exceededill install loadIdealTree

    npm安装时候报这个错误,解决方法如下: 删除项目中的 package-lock.json 文件 和 node_modules 文件夹,然后再尝试 npm install 详细参考

  3. aapt命令说明

    这里借用一下百度百科,我比较懒 1.列出apk包的内容 aapt l[ist] [-v] [-a] <你的应用> -v 以table形式列出来 -a 详细列出内容 例如:aapt l &l ...

  4. OneProxy实现mysql读写分离

    OneProxy for MySQL可以复用不同应用到后端数据库的连接,有效降低数据库的并发连接数:可以即时踢除不可用的节点,将应用请求转发到其他可用节点,保证业务服务的稳定性. 可透明地将查询语句分 ...

  5. Kubernetes--kubectl

    一.Kubectl命令行说明 类型 命令 描述 基础命令 create  通过文件名或标准输入创建资源 expose  将一个资源公开为一个新的kubernetes服务 run 创建并运行一个特定的镜 ...

  6. NLP分词

    英文分词: #英文分词 import nltk sentence="hello,world" tokens=nltk.word_tokenize(sentence) print(t ...

  7. (转) linux下vim和bash配置文件

    1.注释版  ~/.vimrc "去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限 set nocompatible set autoread " 文件修改之后自动载入 ...

  8. 超简单将Centos的yum源更换为国内的阿里云源

    自己的yum源不知道什么时候给改毁了……搜到了个超简单的方法将yum源更换为阿里的源 完全参考 http://mirrors.aliyun.com/help/centos?spm=5176.bbsr1 ...

  9. [转载]bootstrap 2.3版与3.0版的使用区别

    http://www.weste.net/2013/8-20/93261.html bootstrap已经推出了3.0的新版,看起来2.3.x版本也不会再更新了.那么bootstrap 2.3版与3. ...

  10. Java容器Map接口

    Map接口容器存放的是key-value对,由于Map是按key索引的,因此 key 是不可重复的,但 value 允许重复. 下面简单介绍一下Map接口的实现,包括HashMap,LinkedHas ...