以前遇到的一些小问题,grub,编译kernel喝mysql的字符设置

来源:互联网 发布:政府文件管理系统源码 编辑:程序博客网 时间:2024/05/22 12:27

1。双系统中把linux给删掉了,通过下面的grub命令可以进入xp。

grub> rootnoverify (hd0,0)
grub> chainloader +1
grub> boot

 

2。Ubuntu下编译内核过程。

打开终端获得root权限:sudo su
然后安装编译内核时需要的工具:
apt-get install build-essential kernel-package libncurses5-dev libqt3-headers


 build-essential  (基本的编程库(gcc, make等)
 kernel-package   (Debian 系统里生成 kernel-image 的一些配置文件和工具)
 libncurses5-dev  (meke menuconfig要调用的)
 libqt3-headers   (make xconfig要调用的)
其他工具在升级过程中可以按提示安装


第二步:下载内核源代码linux-2.6.34.tar.gz
请到www.kernel.org官网下载最新版本linux-2.6.34.tar.gz内核
假设下载在root目录,然后解压到/usr/src/linux-2.6.34目录里
cd /usr/src
tar zxvf /root/linux-2.6.34.tar.gz
解压后会在/usr/src生成新文件夹linux-2.6.34


第三步:配置
把正在使用中的内核配置文件/usr/src/linux-headers-2.6.32-22-generic/.config 拷到/usr/src/linux-2.6.34目录下
cp /usr/src/linux-headers-2.6.32-22-generic/.config /usr/src/linux-2.6.34
执行:
cd /usr/src/linux-2.6.34
make menuconfig
终端会弹出一个配置界面
注意主菜单最后有两项:load a kernel configuration...
                  save a kernel configuration...
先选第一项load ....,意思是,利用当前的内核配置详单来设置将要编译的内核,然后选save这一项保存,最后退出配置界面。


第四步:开如编译安装新内核
执行:sudo make mrproper   (清除以前曾经编译过的旧文件,如果你是第一次编译,可不执行)
执行:sudo make     (编译,可以加-j4,如果你CPU是双核心,够牛的话,因为可以提高速度)
然后:sudo make install 
再:sudo make modules  (编译模块)
再:sudo make modules_install  (安装模块)
最后创建initrd文件:
mkinitramfs -o /boot/initrd.img-2.6.34


第五步:更新配置GRUB引导列表
sudo gedit /boot/grub/grub.cfg
我的grub.cfg添加如下:
menuentry 'Ubuntu 10.04,Linux 2.6.34' --class ubuntu --class gnu-linux --class gnu --class os {
 recordfail
 insmod ext2
 set root='(hd1,9)'
 search --no-floppy --fs-uuid --set 501d3a42-1d52-4438-99bf-e679da605867
 linux /vmlinuz-2.6.34 root=UUID=33883099-83a5-49f3-9c12-ee6a4d90da9e ro   quiet splash
 initrd /initrd.img-2.6.34
}
#以下是原2.6.32内核启动项
menuentry 'Ubuntu,Linux 2.6.32-22-generic' --class ubuntu --class gnu-linux --class gnu --class os {
 recordfail
 insmod ext2
 set root='(hd1,9)'
 search --no-floppy --fs-uuid --set 501d3a42-1d52-4438-99bf-e679da605867
 linux /vmlinuz-2.6.32.16 root=UUID=33883099-83a5-49f3-9c12-ee6a4d90da9e ro   quiet splash
 initrd /initrd.img-2.6.32-16
}

 

        到此为止,整个内核的编译就全部完成啦。

        不过也许你重启系统时,虽然启动菜单中增加了新内核2.6.34的启动项,但极可能会启动失败,出现以下提示:


warning:can't open directory /lib/modules/2.6.34/modules.dep,no such files or directory


        此时不应气馁,玩LINUX要有敢食螃蟹的勇气和毅力,哈哈。静下心,选择从旧内核启动登录系统,然后执行以下命令(为了避免输入错误,最好复制下面的命令)修改后就能成功启动新内核了。


######################################
sudo su  (保证获得root权限,否则会提示权限不够,不能成功完成任务哦)
cd /boot
cp initrd.img-2.6.34 initrd-2.6.34.old (先做一个备份以防万一,哈哈)
depmod -a
update-initramfs -k 2.6.34 -c
cd /tmp
gzip -dc /boot/initrd.img-2.6.34| cpio -id
touch lib/modules/2.6.34/modules.dep
find ./ | cpio -H newc -o > /boot/initrd.img-2.6.34.new
gzip /boot/initrd.img-2.6.34.new
cd /boot
mv initrd.img-2.6.34.new.gz initrd.img-2.6.34
update-grub

3。mysql的字符编码设置:

 1.在my.ini文件的中设置所有数据库编码
default-character-set=utf8
2.单独设置某个数据库:
alter database testdb character set utf8;
查看mysql支持的编码:
show character set;

 

原创粉丝点击