曾经有一段时间,升级 Linux 内核让很多用户打心里有所畏惧。在那个时候,升级内核包含了很多步骤,也需要很多时间。现在,内核的安装可以轻易地通过像 apt 这样的包管理器来处理。通过添加特定的仓库,你能很轻易地安装实验版本的或者指定版本的内核(比如针对音频产品的实时内核)。
Linux kernel官网:https://kernel.org/ Active kernel releases(查看EOL信息):https://kernel.org/category/releases.html
rpm 包格式: 软件名称-软件版本.系统版本.平台.rpm 如: vim-common-7.4.10-5.el7.x86-64.rpm
2)Openssl版本:1.0.1e-15.el6,由于升级到openssh_6.7p1,需要OpenSSL的版本在0.9.8f以上,所以这里就不用升级openssl了。直接升级openssh就行了。
Ubuntu 15.04已经发布,下班后回家的第一件事就是访问 Ubuntu 的官网,很可惜,没有提供下载。今天一打开电脑,就弹出自动升级的提示。以前安装 Ubuntu 都是下载完整的光盘镜像进行安装,今天体验了一下升级安装。升级过程非常顺利,升级完成后,以前安装的程序以及我所有的配置文件都完整地得到了保留,重启系统也没有发现什么 Bug。
仅测试过debian10.2.0与deepin15.11 笔记本型号为magicbook 2500u 2018款
链接: https://pan.baidu.com/s/1W1Bc6GYuwgzNG0uW6i2__w
这几天因为安全漏洞扫描,扫描到时大量OpenSSH漏洞,需安全加固,主要是升级版本,以前对于升级打补丁总是不在意的,可这次中间遇到一些小问题整理成册,希望对大家有点帮助,以下是具体实现方法:
最近一段时间shell脚本写得很溜,很有成就感,一想到被自己落下的Python就感到十分心虚。开始坚持学习Python!先将自己的测试机器的Python升级到Python 3.6.6。简单整理、记录一下!
OpenSSL其实是一个开源的C函数库,多用于加密依赖,很多程序的编译,需要OpenSSL作为依赖包。
这里就不想自己一个一个地配了,故直接将当前Ubuntu 14.04.1 LTS的kernel配置copy过来用。
大家好,今天我们学习一下如何从Elrepo或者源代码来安装最新的Linux内核4.0。代号为‘Hurr durr I'm a sheep’的Linux内核4.0是目前为止最新的主干内核。它是稳定版3.19.4之后发布的内核。4月12日是所有的开源运动爱好者的大日 子,Linux Torvalds宣布了Linux内核4.0的发布,它现在就已经可用了。由于包括了一些很棒的功能,例如无重启补丁(实时补丁),新的升级驱动,最新的 硬件支持以及很多有趣的功能都有新的版本,它原本被期望是一次重要版本。但是实际上内核4.0并不认为是期望中的重要版本,Linus 表示期望4.1会是一个更重要的版本。实时补丁功能已经集成到了SUSE企业版Linux操作系统上。你可以在发布公告上查看关于这次发布的更多详细内容。
接下来一步最重要! 这样才能使这次升级真正生效!否则python命令还是原来的2.6.6版
今天,产品那边发来需求,说有个 APP 的 IOS 版本下载包需要新增 https 协议,在景安购买了免费的 SSL 证书。当我往 nginx 上新增 ssl 时,发现服务器上的 nginx 居然没编译 SSL 模块! 看了下旧版本 nginx 的 configure 选项: linux-gz215:# /usr/local/sbin/nginx -V nginx version: nginx/1.0.11 built by gcc 4.1.2 20070115 (prerelease) (SUSE Lin
一、gcc gcc是Linux上面最标准的C语言的编译程序,用来源代码的编译链接。 gcc -c hello.c 编译产生目标文件hello.o gcc -O hello.c 编译产生目标文件,并进行优化 gcc -o hello hello.c 生成hello这个可执行的二进制文件 缺点:命令的冗余性,如果 C 语言程序中包含对其他函数或者程序的引用,那么其他程序也要编译成目标文件,然后一起编译成可执行文件,才能运行成功。一个大的程序引用是非常多的,所以用gcc来编译,显得很冗余。 二、make 用mak
glibc是gnu发布的libc库,即c运行库,glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现。很多linux的基本命令,比如ls,mv,cp, rm, ll,ln等,都得依赖于它,如果操作错误或者升级失败会导致系统命令不能使用,严重的造成系统退出后无法重新进入,所以操作时候需要慎重,升级之前保存好重要资料。
在启用HTTPS过程中,在生成CSR(证书请求文件)时,报错了,说Python2.6已被Python团队抛弃了,所以升级Python到2.7。
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin --disable-sanity-checks --disable-werror
经过一个多星期的内核折磨,今天终于可以写下自己移植内核的一些心得,网上有很多博客论坛都有谈到,但是这些又说的方式有些模糊,这里我综合的几个博客在重新说下内核替换编译的步骤、以及如何更新启动项grub。替换linux的内核一共有两种方式,第一种方式是下载官方kernel提供的源码包,进行编译替换;第二种直接下载内核安装包deb,进行升级替换。
我们是做后台开发的,虽然我们的svr都泡在tlinux上,但是大部分同学写代码/看代码还都是在windows下。
wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.0.tar.bz2
不论是前面分享过的《开源云真机平台-Sonic》,还是《流马测试平台》、《一站式开源持续测试平台Metersphere》,似乎都会用到一些如JDK、ADB、MySQL、Docker、Python等各类环境,像一些前后端分离项目可能还会用到NodeJS。环境搭建是一切开发调试、编译构建、自动化测试的前提,也是开发测试人员必不可少的基础技能。但是很多平台工具往往会卡在看似简单的环境部署环节,甚至影响继续下去的信心。所谓工欲善其事必先利其器,高效的搭建效率往往能提供一个好的开始,而好的开始是成功的一半!
wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-ml-5.5.9-1.el7.elrepo.x86_64.rpm
Linux下软件安装的方式主要有源码安装,rpm安装,yum安装,而常用的安装包主要有以下三种: tar包:例如software-1.2.3-1.tar.gz。它是使用UNIX系统的打包工具tar打包的。 rpm包,如software-1.2.3-1.i386.rpm。它是Redhat Linux提供的一种包封装格式。(现在用的全称叫RPM Package Manager,以前叫Redhat Package Manager) dpkg包,如software-1.2.3-1.deb。它是Debain Lin
包管理器是方便软件安装、卸载,解决软件依赖关系的重要工具,在不同发行版本的Linux系统中,有着不同的软件包管理器:
linux系统的安全加固,一般都会将openssh服务升级到最新版本,加强远程连接的安全性。
要注意,这个 commit id 的 runc 至少需要 go 1.16 来编译的,之前我的版本是 go 1.15 所以编译失败了。下面是编译过程,过程是比较丝滑的,没什么问题。
本文适用于CentOS 6.4, CentOS 6.5,估计也适用于其他Linux发行版。
另一个关于内核升级的文档:《NFS》目录里《centos5.5 x86-64升级内核到2.6.20,安装iotop及fscache》
1、首先确认Linux操作系统中自带的python 版本时候与自己所需要的版本一致
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
编译内核的目的在于把纷繁复杂的内核源码编译成一个可执行的镜像文件。当然,内核功能复杂,并不是所有的 功能都需要用到,所以,我们在使用make对其编译前,要做一件事——配置。kconfig和make就好比将军和士兵。kconfig是指导方向的,make是干活的。kconfig对内核进行配置,告诉make,哪些功能需要编译进内核,哪些功能要作为模块编译,make便根据配置文件来进行编译。 ###编译步骤 获取内核源码(这几天kernel.org被黑了,该步骤方法暂时用不了): 1、使用git工具: ubuntu
通过这篇文章,我们将以简明易懂的语言风格,一步步引导你学会如何在 Linux 上安装和卸载软件。
注意:一定要执行 cd linux-6.5.2 命令,因为接下的操作默认都是这该目录下操作的。
本文主要介绍在Linux(CentOS)下将Python的版本升级为3.5.2的方法
NTP升级,升级RedHat时很顺利,升级完成后会默认覆盖掉原有文件,重启服务后,使用ntpd --version查看验证上即可,可在升级SUSE Linux时却发现错误频频,以下是我再升级时遇到的一些问题,小结之后希望有和我遇到同样错误的亲们可以作为参考:
一、Linux内核概览 Linux是一个一体化内核(monolithic kernel)系统。 设备驱动程序可以完全访问硬件。 Linux内的设备驱动程序可以方便地以模块化(modularize)的形式设置,并在系统运行期间可直接装载或卸载。 1. linux内核 linux操作系统是一个用来和硬件打交道并为用户程序提供一个有限服务集的低级支撑软件。 一个计算机系统是一个硬件和软件的共生体,它们互相依赖,不可分割。 计算机的硬件,含有外围设备、处理器、内存、硬盘和其他的电子设备组成计算机的发动机。 但是没有软件来操作和控制它,自身是不能工作的。 完成这个控制工作的软件就称为操作系统,在Linux的术语中被称为“内核”,也可以称为“核心”。 Linux内核的主要模块(或组件)分以下几个部分: . 进程管理(process management) . 定时器(timer) . 中断管理(interrupt management) . 内存管理(memory management) . 模块管理(module management) . 虚拟文件系统接口(VFS layer) . 文件系统(file system) . 设备驱动程序(device driver) . 进程间通信(inter-process communication) . 网络管理(network management . 系统启动(system init)等操作系统功能的实现。 2. linux内核版本号 Linux内核使用三种不同的版本编号方式。 . 第一种方式用于1.0版本之前(包括1.0)。 第一个版本是0.01,紧接着是0.02、0.03、0.10、0.11、0.12、0.95、0.96、0.97、0.98、0.99和之后的1.0。 . 第二种方式用于1.0之后到2.6,数字由三部分“A.B.C”,A代表主版本号,B代表次主版本号,C代表较小的末版本号。 只有在内核发生很大变化时(历史上只发生过两次,1994年的1.0,1996年的2.0),A才变化。 可以通过数字B来判断Linux是否稳定,偶数的B代表稳定版,奇数的B代表开发版。C代表一些bug修复,安全更新,新特性和驱动的次数。 以版本2.4.0为例,2代表主版本号,4代表次版本号,0代表改动较小的末版本号。 在版本号中,序号的第二位为偶数的版本表明这是一个可以使用的稳定版本,如2.2.5; 而序号的第二位为奇数的版本一般有一些新的东西加入,是个不一定很稳定的测试版本,如2.3.1。 这样稳定版本来源于上一个测试版升级版本号,而一个稳定版本发展到完全成熟后就不再发展。 . 第三种方式从2004年2.6.0版本开始,使用一种“time-based”的方式。 3.0版本之前,是一种“A.B.C.D”的格式。 七年里,前两个数字A.B即“2.6”保持不变,C随着新版本的发布而增加,D代表一些bug修复,安全更新,添加新特性和驱动的次数。 3.0版本之后是“A.B.C”格式,B随着新版本的发布而增加,C代表一些bug修复,安全更新,新特性和驱动的次数。 第三种方式中不使用偶数代表稳定版,奇数代表开发版这样的命名方式。 举个例子:3.7.0代表的不是开发版,而是稳定版! linux内核升级时间图谱如下:
一、安装 Zlib 1、下载最新版本 Zlib Zlib 官方网站:http://www.zlib.net/ # cd /usr/local/src # wget -c http://www.zlib.net/zlib-1.2.3.tar.gz 2、编译安装 Zlib # tar xzvf zlib-1.2.3.tar.gz # cd zlib-1.2.3 # ./configure --prefix=/usr/local/zlib # make # make install 这样,就把 zlib 编译安装在 /usr/local/zilib 中了。 二、安装 OpenSSL 1、下载最新版本 OpenSSL OpenSSL 的官方网站:http://www.openssl.org # cd /usr/local/src # wget -c http://www.openssl.org/source/openssl-0.9.8d.tar.gz 2、编译安装 OpenSSL # tar xzvf openssl-0.9.8d.tar.gz # cd openssl-0.9.8d # ./Configure --prefix=/usr/local/openssl # make # make test(这一步很重要哦!是进行 SSL加密协议的完整测试,如果出现错误就要一定先找出哪里的原因,否则一味继续可能导致最终 SSH 不能使用,后果很严重哦!) # make install 三、安装 OpenSSH 1、下载最新版本 OpenSSH OpenSSH 的官方网站:http://www.openssh.com # cd /usr/local/src # wget -c ftp://ftp.it.net.au/mirrors/OpenBSD/OpenSSH/portable/openssh-4.5p1.tar.gz 2、编译安装 OpenSSH # tar xzvf openssh-4.5p1.tar.gz # cd openssh-4.5p1 # ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/openssl --with-md5-passwords (注意,如果 configure 时提示 PAM 有错误,那一般是因为系统中没有安装 pam-devel RPM 包,找到安装光盘,安装 pam-devel 就可以解决啦) # make # make install 这样就完成了整个安装 SSH 的工作,在安装完成后,我们还需要修改一下 OpenSSH 的配置文件进一步提升安全性。通过以上步骤完成的安装工作,OpenSSH 的配置文件在 /etc/ssh 下,其中 SSH Server 的配置文件是 sshd_config。 # vi /etc/ssh/sshd_config 找到: CODE: #Protocol 2,1修改为: Protocol 2这样就禁用了 ssh v1 协议,只使用更安全的 ssh v2 协议。 X11Forwarding yes修改为: X11Forwarding no禁用 X11 转发。 修改后保存退出。 ● 生成ssh服务管理脚本 进入ssh解压目录 #cd /contrib/redhat #cp sshd.init /etc/init.d/sshd #chmod +x /etc/init.d/sshd #chkconfig --add sshd 最后,启动 SSH 服务使修改生效: # /etc/init.d/sshd restart 重启后确认一下当前的 OpenSSH 和 OpenSSL是否正确: # ssh -v 如果看到了新的版本号就没问题啦!
接下来我们用gcc编译器来运行一下,当然不是要完全编译,而是先让他预处理一下:
目前最新的稳定版本是5.9.14, 但是编译该版本的内核需要高版本的gcc, 生产环境gcc尽量保持与发行版本一致
三级等保评测中对主机进行漏洞扫描发现linux主机存在高危漏洞,查看发现是OpenSSH版本过低导致,于是对主机系统OpenSSH软件版本进行升级。
在C语言中,我们已经学过程序的编译和链接,在这里将复习一下我们之前所学的内容并引出后续gcc/g++的内容。
2,机器语言--->汇编语言--->C语言--->Java ,C#,PHP,Python
最近升级gcc-9.3 和 gdb-9.2 感觉新版本升级更加方便了,但是编译仍然报各种错误,切换使用root权限make可以顺利通过编译!
引言:由于我是在新的虚拟机上测试学习,正好听到同事讲一个朋友在gcc升级安装导致系统出问题,所以在安装gcc的时候一定要小心。
今天白天,重量网络在群里提醒我,说 Linux 出现了严重的 bash 漏洞,一直在忙也没怎么关注,晚上空闲看了下,发现确实非常严重,必须紧急扩散出去,防止服务器被黑客入群,造成严重的后果! 9 月 25 日消息,继“心脏流血”漏洞之后,安全研究专家又发现了一个危险级别为“毁灭级”(catastrophic)的漏洞,开源软件公司 Red Hat 在一份报告中称,在 Linux 系统中广泛使用的 Bash 软件漏洞有可能让黑客利用攻击一切连入互联网的设备。 该漏洞编号为 CVE-2014-6271,主要存在于
一、关于gcc、glibc和binutils模块之间的关系 1、gcc(gnu collect compiler)是一组编译工具的总称。它主要完成的工作任务是“预处理”和“编译”,以及提供了与编译器紧密相关的运行库的支持,如libgcc_s.so、libstdc++.so等。 2、binutils提供了一系列用来创建、管理和维护二进制目标文件的工具程序,如汇编(as)、连接(ld)、静态库归档(ar)、反汇编(objdump)、elf结构分析工具(readelf)、无效调试信息和符号的工具(strip)等。
嵌入式Linux系统一般是将应用程序与文件系统、内核、资源文件等放在不同的分区,方便后期升级。产品量产后内核、文件系统这些一般不会升级,应用程序可能升级会比较多一些。
由于最近想自己摸索一些linux下的东西,开始玩起了Linux系统,在安装软件的过程中有诸多的不解和困惑,现在终于搞明白了具体是怎么样的安装步骤和过程,先分享给你们同时也方便自己复习查阅。
【转载请注明出处】:https://blog.csdn.net/huahao1989/article/details/107967581
领取专属 10元无门槛券
手把手带您无忧上云