Linux编译覆盖安装:如何避免重复劳动? (linux 编译覆盖安装)

Linux系统的优点之一是开放源代码,使其成为开发人员和技术专家的首选操作系统。然而,编译和安装软件包是Linux系统中常见的任务。尤其是在进行软件调试、升级或添加新功能的时候,这些任务变得更加频繁。由于Linux软件包的不同版本在编译和安装过程中的区别,经常会造成重复劳动,浪费资源的情况。本文将介绍Linux编译覆盖安装的概念及其实现方法,以帮助大家避免重复劳动。

一、什么是Linux编译覆盖安装

Linux编译覆盖安装是在Linux系统上覆盖现有安装,而不是从头开始安装软件包的过程。这种方法旨在保留软件包与系统互动的配置,而让软件包版本刷新到新的版本。这种方式避免了手动进行配置的繁琐步骤。通过覆盖安装,用户能够得到一个更新、完整的软件包版本,而不向系统中添加任何新的构建依赖项。

二、如何准备编译覆盖安装

在进行编译覆盖安装之前,有几个准备工作需要注意:

1.备份配置文件:由于覆盖安装将删除现有软件包,包括配置文件等所有内容。因此,需要对其配置文件进行备份,以便随时恢复到先前的配置状态。

2.检查版本:在实际安装之前,必须检查现有软件包的版本,然后确定是否有可用的更新版本。可以查看官方网站上的最新版本,或使用包管理器(例如yum,apt-get等)中的工具。

3.准备必要文件:需要下载软件包的源代码,并在Linux系统的本地计算机上预先安装编译工具集(例如gcc,make等)。

三、该如何进行编译覆盖安装

1.卸载旧包:在安装新软件包之前,先卸载旧版本软件包,需要确保该软件包没有在运行。命令格式如下:

$ sudo yum remove package_name

2.下载新包:需要下载最新的软件包源代码,可以到官方网站上下载或使用包管理器(例如yum,apt-get等)中的工具下载。

3.编译软件:需要使用工具链对软件包进行编译,以生成可执行文件等。通常,编译的命令格式如下:

$ ./configure

$ make

$ sudo make install

注意:在编译之前,请使用预备工具集进行检查,以确保系统中安装了所需的库和工具。

4.配置文件备份和恢复:为了保留旧配置文件并恢复到安装最新软件包之前的状态,可以使用下列命令:

$ cp /etc/old_openssh_config /etc/ssh/ssh_config

$ cp /etc/old_openssh_config /etc/ssh/sshd_config

5.升级服务:如果所安装的软件包提供服务,可能需要升级守护进程以让新配置的生效。通常,此过程涉及“重启”守护进程的命令,例如:

$ sudo systemctl daemon-reload

$ sudo systemctl restart sshd

四、

Linux编译覆盖安装是在Linux系统上进行覆盖现有安装的一种方法,以更新软件包为目的,避免了新建构建的步骤。在进行编译覆盖安装之前,需要进行准备工作和备份,以保证安装过程的顺利。需要注意的是,在完成覆盖安装之后,必须验证所安装软件包的功能和性能,否则可能会发生意外的结果。本文介绍的方法适用于大多数的Linux操作系统版本,让Linux开发人员可以更方便地在Linux系统上进行软件包的开发和部署。

相关问题拓展阅读:

如何在Linux系统中编译安装Mono笔记

一、安装依赖关系包

  代码如下:

  yum install gcc bison pkgconfig glib2-devel gettext make gcc-c++ libstdc++-devel libgdiplus-devel

  二、下载源码并解压

  代码如下:

  #下载地址在

  #我下载的是2.10.2《/p》 《p》cd /usr/local/src

  wget -c

mono-2.10.2.tar.bz2

  逗型tar xf mono-2.10.2.tar.bz2

  cd mono-2.10.2

  三、编译安装

  代码如下:

  。/configure –prefix=/usr/local/mono

  make

  make install

  四、为使用mono的用户增加环境变量

  代码如下:

  #在这个用户的~/.bash_profile时增加

  export PKG_CONFIG_PATH=/usr/local/mono/lib/pkgconfig:

  export

PATH=/usr/local/mono/bin:/usr/kerberos/in:/usr/kerberos/bin:/usr/local/in:/usr/粗指轮local/bin:/in:/bin:/usr/in:/usr/bin:/root/bin

  #重新加载一下

  source ~/.bash_profile

  五、测试

  代码如下:

  /usr/local/mono/bin/mono-test-install

  Active Mono: /usr/local/mono/bin/mono《/p》 《p》Your have a working System.Drawing setup

  Your file system watcher is: System.IO.InotifyWatcher

  如果没有做第四步会发现报下边这个错误:

  代码如下:

  /usr/local/mono/bin/mono-test-install

  Active Mono:

  Warning: pkg-config could not find mono installed on this system

  No dotnet pkgconfig found, Windows.Forms, System.Drawing and others will not work

  上岩信面就是Linux服务器下编译安装mono笔记的方法介绍了,按照上面的步骤就能快速的编译安装mono笔记,是不是很方便

linux系统怎么编译安装mysql

linux系统怎么编译安装mysql

不同linux版本,安装不山厅同版本的mysql方法各不相同,下面以CentOS 6.5编译安装MySQL 5.6.16介绍:

一.准备工作

1.yum安装各个依赖包

# yum -y install gcc gcc-devel gcc-c++ gcc-c++-devel autoconf* automake* zlib* libxml* ncurses-devel ncurses libgcrypt* libtool* cmake openssl openssl-devel bison bison-devel unzip

2.新建mysql组和用户

# groupadd mysql

# useradd -g mysql -s /in/nologin mysql

3.目录准备

# mkdir -p /webserver/mysql/etc

# mkdir -p /webserver/mysql/data

# mkdir -p /webserver/mysql/tmp

# chown -R mysql.mysql /webserver/mysql

4.解压MySQL并进入安装目录

# tar zxvf mysql-5.6.16.tar.gz

# cd mysql-5.6.16

二.编译并安装

1.编译MySQL

# cmake -DCMAKE_INSTALL_PREFIX=/webserver/mysql \

> -DSYSCONFDIR=/webserver/mysql/etc \

> -DMYSQL_DATADIR=/webserver/mysql/data \

> -DMYSQL_TCP_PORT=3306 \

> -DMYSQL_UNIX_ADDR=/webserver/mysql/tmp/mysqld.sock \

> -DMYSQL_USER=mysql \

> -DEXTRA_CHARSETS=all \

> -DWITH_READLINE=1 \

> -DWITH_SSL=system \

> -DWITH_EMBEDDED_SERVER=1 \

> -DENABLED_LOCAL_INFILE=1 \

> -DWITH_INNOBASE_STORAGE_ENGINE=1 \

> -DENABLE_DOWNLOADS=1

2.如果出现以下早贺错误

则需要

# cd source_downloads/

# unzip gmock-1.6.0.zip

# ./configure

# make

# cd ..

然后删除mysql-5.6.16目录下的CMakeCache.txt重新使用cmake进行编译安装

2.安装

# make && make install

编译过程会比较漫长,编译时间取决于机器的性能

三.MySQL配置

1.客户端库文件的链接(未执行此步骤的话,在PHP编译时会提示找不到MySQL文件)

# ln -s /webserver/mysql/lib/libmysqlclient.so.18 /逗睁隐usr/lib64/libmysqlclient.so.18

ps:我使用的是64位CentOS,如果使用的是32位请使用ln -s /webserver/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18

2.MySQL启动文件的配置

# cp support-files/mysql.server /etc/init.d/mysqld

# chmod +x /etc/init.d/mysqld

# vim /etc/init.d/mysqld

basedir=/webserver/mysql

datadir=/webserver/mysql/data

//修改以上这2行的路径即可

3.设置MySQL配置文件

# cp support-files/my-default.cnf /webserver/mysql/etc/my.cnf

# rm -rf /etc/my.cnf

# ln -s /webserver/mysql/etc/my.cnf /etc/my.cnf

4.初始化数据库

# cd /webserver/mysql

# ./scripts/mysql_install_db –user=mysql –basedir=/webserver/mysql –datadir=/webserver/mysql/data

5.链接MySQL命令(这一步可以让我们方便很多,可以不用写出命令的路径,也可以写入/etc/profile的PATH中)

# cd /usr/in

# ln -s /webserver/mysql/bin/* .

6.启动MySQL并设置为开机启动

# service mysqld start ;chkconfig mysqld on

Starting MySQL.. SUCCESS!

7.设置MySQL root用户的密码

# mysqladmin -u root password

这里将MySQL的root密码设置为123456,强烈不建议将数据库的密码设的简单

8.删除用户密码为空的用户

# mysql -u root -p

Enter password:

mysql> use mysql;

mysql> select Host,User,Password from user;

++——+-+

| Host | User | Password |

++——+-+

| localhost | root | *6BB4837EBEE4568DDA7DC67ED2CA2AD9 |

| webserver | root ||

| 127.0.0.1 | root ||

| ::| root ||

| localhost | ||

| webserver | ||

++——+-+

6 rows in set (0.00 sec)

mysql> delete from user where password=””;

Query OK, 5 rows affected (0.00 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

mysql> select Host,User,Password from user;

++——+-+

| Host | User | Password |

++——+-+

| localhost | root | *6BB4837EBEE4568DDA7DC67ED2CA2AD9 |

++——+-+

1 row in set (0.00 sec)

mysql> exit;

完毕。

下载个编译软件就好

关于linux 编译覆盖安装的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » Linux编译覆盖安装:如何避免重复劳动? (linux 编译覆盖安装)