初接触Linux,裁剪出自己的小linux
2014-03-09 22:14
405 查看
今天要给大家带来的是裁剪系统,更深侧次了解linux的工作原理
一、裁剪前的准备工作
1.先给虚拟机创建一个大约20G的虚拟硬盘(我使用的是VMvare,在虚拟机界面直接创建的。)
2.转换命令的一个脚本
1.创建文件分区并挂载
把创建大小为20G的磁盘分区,分成500M和10G
/dev/sdb1 :500M用来装引导程序
/dev/sdb2 :10G是用来安装根文件系统
创建目录/mnt/boot,/mnt/sysroot
# mkdir /mnt/{boot,sysroot}
挂载sdb1至boot
# mount /dev/sdb1 /mnt/boot
挂载sdb2至sysroot
# mount /dev/sdb2 /mnt/sysroot
2.安装引导文件grub
如果像开机运行自己的linux必须,安装引导文件,安装引导文件常见有两个命令
# setup
# grub-install
相比较来说setup比较简单一点,不过在这里我们不能偷懒!!!
#
# sh command.sh
然后输入各种你需要的命令,就会自动转到/mnt/sysroot/bin下,注意记着输入bash
5.测试安装情况
6.试试输入命令
ok!!!。大功告成!
一、裁剪前的准备工作
1.先给虚拟机创建一个大约20G的虚拟硬盘(我使用的是VMvare,在虚拟机界面直接创建的。)
2.转换命令的一个脚本
#!/bin/bash # target=/mnt/sysroot clearCmd() { if which $cmd &> /dev/null; then cmdPath=`which --skip-alias $cmd` else echo "No such command" return 5 fi } cmdCopy() { cmdDir=`dirname $1` [ -d ${target}${cmdDir} ] || mkdir -p ${target}${cmdDir} [ -f ${target}${1} ] || cp $1 ${target}${cmdDir} } libCopy() { for lib in `ldd $1 | grep -o "/[^[:space:]]\{1,\}"`; do libDir=`dirname $lib` [ -d ${target}${libDir} ] || mkdir -p ${target}${libDir} [ -f ${target}${lib} ] || cp $lib ${target}${libDir} done } while true; do read -p "Enter a command: " cmd if [ "$cmd" == 'quit' ] ;then echo "quit" exit 0 fi clearCmd $cmd [ $? -eq 5 ] && continue cmdCopy $cmdPath二、开始裁剪
1.创建文件分区并挂载
把创建大小为20G的磁盘分区,分成500M和10G
/dev/sdb1 :500M用来装引导程序
/dev/sdb2 :10G是用来安装根文件系统
创建目录/mnt/boot,/mnt/sysroot
# mkdir /mnt/{boot,sysroot}
挂载sdb1至boot
# mount /dev/sdb1 /mnt/boot
挂载sdb2至sysroot
# mount /dev/sdb2 /mnt/sysroot
2.安装引导文件grub
如果像开机运行自己的linux必须,安装引导文件,安装引导文件常见有两个命令
# setup
# grub-install
相比较来说setup比较简单一点,不过在这里我们不能偷懒!!!
#
grub-install --root-directory=/mnt /dev/sdb
3.复制内核和init文件
内核和init一般都在/boot目录下
[root@147 grub]# ls /boot config-2.6.32-358.el6.x86_64 grub lost+found System.map-2.6.32-358.el6.x86_64 efi initramfs-2.6.32-358.el6.x86_64.img symvers-2.6.32-358.el6.x86_64.gz vmlinuz-2.6.32-358.el6.x86_64
让我们把内核和init复制到我们/mnt/boot目录下并改名
[root@147 grub]# cp /boot/vmlinuz-2.6.32-358.el6.x86_64 /mnt/boot/vmlinuz [root@147 grub]# cp /boot/initramfs-2.6.32-358.el6.x86_64.img /mnt/boot/init复制完之后,在/mnt/boot下创建grub的配置文件,并修改信息
[root@147 grub]# vim grub.conf default=0 timeout=5 title wang linux root (hd0,0) kernel /vmlinuz ro root=/dev/sda2 quiet selinux=0 init=/bin/bash initrd /init4.创建文件系统文件夹和命令
[root@147 sysroot]# mkdir -pv /mnt/sysroot/{etc/rc.d,usr,var,proc,sys,dev,lib,lib64,bin,sbin,boot,srv,mnt,media,home,root}创建完成后,开始复制命令和其库文件,在本文开头处有移动命令的脚本
# sh command.sh
然后输入各种你需要的命令,就会自动转到/mnt/sysroot/bin下,注意记着输入bash
5.测试安装情况
6.试试输入命令
ok!!!。大功告成!
相关文章推荐
- linux裁剪—定制自己所需要的linux
- linux裁剪—定制自己所需要的linux
- linux裁剪—定制自己所需要的linux 推荐
- 刚接触计算机啊,记录下自己觉得比较好的网络资源,将长期记(内容暂为空,不要点进来)
- 登录app后,拍摄图片后自己裁剪头像图片
- 自己动手制作linux硬盘启动
- 怎样用linux内核生成自己的模块
- Linux 下编译自己的 OpenJDK7 包括JVM和JDK API
- linux下将自己的程序放到系统命令中
- 自己动手搭建 Linux 0.12 编译环境 — Linux主机
- 在 linux 上搭建自己的 git 服务器
- linux裁剪(DOM上)
- (十六)洞悉linux下的Netfilter&iptables:开发自己的hook函数【实战】(下)
- Linux--轻松定义自己的RPM/DEB软件包
- Linux系统裁剪笔记之四busybox
- 欧拉计划37题:找出全部11个这样从左向右和从右向左都可以裁剪的质数,shift函数的学习,从别人的答案提取精华,自己的思路和扩展的思路就是两个思路
- 如何在linux中用“OpenCart”创建自己的在线商店
- linux实现自己的ls
- 自己动手做一个小Linux-2
- Linux学习之————用于编译多个C文件的通用makefile(自己电脑上ok)