Linux换源+编译内核总结
换源:
我用的是CentOS,所以下面以其为例,其它OS做法类似,可作参考;
在主机能联网的情况下
cd /etc/yum.repos.d
mv ./CentOS-Base.repo ./CentOS-Base.repo.bak
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
mv CentOS6-Base-.repo CentOS-Base.repo
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo -O CentOS-Base.repo
yum makecache
yum update
cd /etc/yum.repos.d
rz
rm CentOS-Base.repo
mv CentOS6-Base-.repo CentOS-Base.repo
yum makecache
yum update
rz
xz -dk linux-3.19..tar.xz
//如果提示xz not found,请帮yum换源,再用yum install xz安装
tar xvf linux-3.19..tar
cd linux-3.19.
yum install -y gcc make bison ncurses-devel rpm-build
cp /boot/config-`uname -r` .config
sh -c 'yes "" | make oldconfig'
make menuconfig
make bzImage
make modules
make modules_install
//上面三步也可以写成这样:
//make bzImage && make modules && make modules_install
make install
vi /etc/grub.conf
//将default=1改为default=0,保存退出
reboot
uname -a
make mrproper
//make clean
cp include/linux/hidraw.h /usr/include/linux/ cp include/linux/hid.h /usr/include/linux/ vi samples/hidraw/hid-example.c
#include <linux/types.h>
#include <linux/input.h>
#include <linux/hidraw.h> #include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
vi /usr/include/linux/input.h
#define BUS_VIRTUAL 0x06
#define BUS_ATARI 0x1B
#define BUS_SPI 0x1C
make menuconfig
vi samples/hidraw/hid-example.c
#include <arpa/inet.h>
#include <netinet/in.h>
错误分析:initrd-*.*.img文件有问题;未能成功挂载真正的根文件系统。
解决方法:请你确认执行了make install 命令
Mountingrootfilesystem
mount :error2 mounting ext3
mount :error 2mountingnone
switch root mount failed:22
umount /initrd/dev failed :2
kernel panic-not synicncing :Attempted to kill init .
错误分析:
1、根文件系统找不到挂载点 ,修改grub.conf文件为 root=/dev/ *
2、硬盘驱动未能找到,请看看你机器的硬盘是都是 SATA盘,是的话同样恭喜你本文对你有帮助。
错误解决:
1.、修改grub.conf文件试试,具体修改点
root=/dev/*
// * 指的是原系统中/分区的挂载点。
Mounting root filesystem
mount :error6 mounting ext3
mount :error 2 mountingnone
switchroot mount failed:22
umount /initrd/dev failed :2
kernel panic-not synicncing :Attempted tokil linit .
如果真的跪了,继续看好了~
内核选项是这样的
Device Drivers--------SCSI
device support------SCSI
low-level drivers----Serial ATA(SATA)support 选为 M,
然后再选择相应的子选项Intel PIIX/ICH SATA support (new)
错误五:
错误提示:Enforcing mode requested but no policy loaded. Halting now.
kernel panic - not syncing: Attenpted to kill init!
错误分析:原内核中启用了selinux,新内核未选择selinux的选项,不能成功启动。
解决方法:修改grub.conf文件,在root=LABEL=/ 后加入 enforcing=0
错误六:
编译完重启后出现:
switchroot: mount failed: 22
umount /initrd/dev failed: 2
kernel panic - not symcing: Attempted to kill init!
的错误,
解决办法:
重新make menuconfig, 使CONFIG_SYSFS_DEPRECATED_V2=y
也可以打开文件.config做修改和验证;
再执行:
# make bzImage
# make modules
# make modules_install
# make install
# shutdown -r "now"
Linux换源+编译内核总结的更多相关文章
- Linux换源
Linux换源 前言 最近学校的ipv6坏了,导致从deepin本身获取的源速度极慢,笔者实在忍无可忍,随后在同学指导下换了清华大学ipv4的源 步骤 sudo gedit /etc/apt/sour ...
- linux 解决Ubuntu编译内核uImage出现问题“mkimage” command not found - U-Boot images will not be built问题
解决Ubuntu编译内核uImage出现问题“mkimage” command not found - U-Boot images will not be built问题 http://www.lin ...
- linux 换源
Ubuntu换源 ubuntu 的默认源是美国的,所以下载起来特别慢.更换国内源:用vi和gedit 打开 /etc/apt/sources.list 将其中的us.archive 全部替换为 cn. ...
- LInux 2.6 编译内核出现Question
问:在make menuconfig配置完之后(选的默认配置),然后就make出现如下错误:root@org:/usr/src/linux-2.6.32.27# make CHK include/li ...
- python pip 升级 或者换源
1. 临时换源python -m pip install --upgrade pip -i https://pypi.douban.com/simple pip国内的一些镜像 阿里云 https ...
- Ubuntu 编译安装 Linux 4.0.5 内核,并修复 vmware 网络内核模块编译错误
. . . . . 今天把 Ubuntu 14.04 升级到了最新的 4.0.5 的内核版本,本来不打算记录下来的,但是升级的过程中确实遇到了一些问题,所以还是记录下来,分享给遇到同样问题的猿友. 先 ...
- Linux下编译内核配置选项简介
Code maturity level options代码成熟度选项 Prompt for development and/or incomplete code/drivers 显示尚在开发中或尚未完 ...
- linux内核编译,内核参数修改
核心(kernel):/boot/vmlinuz-version version 带发行包版本,本地版本内核模块(kernel object): /lib/modules/version/ 内核设计: ...
- linux内核学习之二:编译内核
在linux内核学习系列的第一课中讲述了搭建学习环境的过程(http://www.cnblogs.com/xiongyuanxiong/p/3523306.html),环境搭好后,马上就进入到下一环节 ...
随机推荐
- Eclipse web项目引用其它项目时的部署问题
地址:http://blog.csdn.net/testcs_dn/article/details/43764497
- No.020:Valid Parentheses
问题: Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the ...
- Maven+SSM框架实现简单的增删改查
Spring介绍: spring 使用基本的 JavaBean 来完成以前只可能由 EJB 完成的事情.然而, Spring的用途不仅限于服务器端的开发.从简单性.可测试性和松耦合的角度而言,任何Ja ...
- ahjesus自定义隐式转换和显示转换
implicit 关键字用于声明隐式的用户定义类型转换运算符. 如果可以确保转换过程不会造成数据丢失,则可使用该关键字在用户定义类型和其他类型之间进行隐式转换. 参考戳此 explicit ...
- 事件委托 documentFragment
如果有一个列表页,页面结构是外面一个BODY, 里面有一万个子DIV,每个DIV里面有一些文字,这些文字都不相同.需求是,点击一个DIV,要求弹个alert框,将DIV里的文字显示出来.你会怎么做. ...
- Properties+重温Map+本地计数器
昨天想写一个记账本,发现并不能把项目名称与内容关联起来,于是乎我想到了map,可是又不知道map储存到文件中又怎么读出来,幸好今天遇到了properties Properties是Hashtable的 ...
- 【干货分享】Node.js 中文学习资料和教程导航
这篇文章来自 Github 上的一位开发者收集整理的 Node.js 中文学习资料和教程导航.Node 是一个服务器端 JavaScript 解释器,它将改变服务器应该如何工作的概念,它的目标是帮助程 ...
- 【iScroll源码学习01】准备阶段
前言 我们昨天初步了解了为什么会出现iScroll:[SPA]移动站点APP化研究之上中下页面的iScroll化(上),然后简单的写了一个demo来模拟iScroll,其中了解到了以下知识点: ① v ...
- 前端安全之XSS攻击
XSS(cross-site scripting跨域脚本攻击)攻击是最常见的Web攻击,其重点是“跨域”和“客户端执行”.有人将XSS攻击分为三种,分别是: 1. Reflected XSS(基于反射 ...
- JS 事件代理
事件处理器:onclick.onmouseover.... 在传统的事件处理中,你需要为每一个元素添加或者是删除事件处理器.然而,事件处理器将有可能导致内存泄露或者是性能下降——你用得越多这种风险就越 ...