update debian linux image with backports
来由
因为Shadowsocks-libev的部分功能需要linux高版本的内核才能支持。兴致所起,准备更新一下VPS上的Debian内核版本。
如何查看Linux版本
共有5种方式,具体如下
cat /etc/*-release
lsb_release -a
cat /proc/version
uname -a #uname -mrs
cat /etc/issue
我的Debian更新过,显示是
Debian GNU/Linux 8.1 (jessie)
但是,内核为什么还是
Linux 2.6.32-042stab093.4 i686
好吧,更新,更新!
使用Backports源
对于Debian来说,其稳定版的软件虽然稳定,但是都好OLD啊,但是好在它有个Backports项目
其官方Wiki上面说
Backports是从testing版本 (大部分)和 unstable版本 (可能性极小,例如:安全更新等)重新编译的软件包,因此他们在稳定的debian发行版中不需要新的库就可以运行(无论如何,这是可能的)。推荐你挑选一个能够满足你需求的单个的backports软件源,不要使用所有可用的backports源。
开始更新
更新软件源
首先在apt的sources.list文件中添加Backports源
vi /etc/apt/sources.list
添加如下内容
deb http://ftp.debian.org/debian/ jessie-backports main
deb-src http://ftp.debian.org/debian/ jessie-backports main
更新数据
sudo apt-get update
#sudo apt-get -t jessie-backports upgrade
搜索并安装linux-image文件
安装aptitude,以便搜索最新的linux-image文件
apt-get install aptitude
aptitude search kernel-image
根据搜索出来的内核文件,进行安装,我的是
sudo apt-get -t jessie-backports install linux-image-3.16.0-4-686-pae
#sudo apt-get -t jessie-backports install linux-image-686-pae
显示已安装的linux-image内核版本
显示已经安装的linux-image内核版本
dpkg --get-selections |grep linux-image
删除旧内核
如果要删除旧内核,运行以下命令
sudo apt-get remove linux-image-3.16.0-4-686-pae
更新grub
在/boot/grub/grub.cfg中查看是否已经有新内核3.16,有的话,就已经OK。否则,自己手动更新grub。 sudo update-grub
安装结果
我兴高采烈的在我的RamNode的VPS折腾了半天后,重新Reboot后发现,内核为什么还是2.6.32!!!
Linux 2.6.32-042stab093.4 i686
Google原因
OpenVZ的内核和 Host的内核是一致的 也就是说,由于我的VPS是OpenVZ的,所以我自己更新linux-image的版本是没有用的。。。
结
伤心了 -__- ,于是写下这篇小结,算是个记录。顺便把家里的Debian主机更新了下内核,3.16更新到3.16,小版本也要更新!。。。