debootstrap是debian/ubuntu下的一個工具,用來構建一套基本的系統(根文件系統)。生成的目錄符合Linux文件系統標準(FHS),即包含了/boot、/etc、/bin、/usr等等目錄,但它比發行版本的Linux體積小不少,固然功能也沒那麼強大,所以,只能說是「基本的系統」。linux
fedora下(centos亦可用)有相似功能的工具:febootstrap。觀察這兩個工具名稱,能夠看到debootstrap使用debian前綴「de」,而febootstrap使用fedora前綴「fe」,bootstrap含義爲「引導」,並若是作過LFS的話,對它瞭解會比較多,而在編譯gcc編譯器時也有涉及到這個概念。不過debootstrap或febootstrap彷佛沒有表達出「引導」的意思。bootstrap
在已經安裝loongnix系統的環境下安裝Debian,安裝loongnix時分了兩個分區,而且預留一部分的空間。ubuntu
一、安裝debootstrap:vim
# sudo apt-get install debootstrap
二、debootstrap的使用centos
sudo debootstrap --arch [平臺] [發行版本代號] [目錄] 例: sudo debootstrap --arch i386 trusty /mnt 便是構建x86(32位)平臺ubuntu最新發行版14.04(代號爲trusty)的基本系統,存放到/mnt目錄下 當前debian維護三個發行版本:stable、testing、unstable sudo debootstra[ --arch mips64el stable /mnt 當前debootstrap支持的發行版本能夠在/usr/share/debootstrap/scripts查看,而各發行版代號,能夠到http://en.wikipedia.org/wiki/List_of_Ubuntu_releases查看。好比gutsy是7.10的代號,precise是12.04的代號等。
下載成功後的文件在/mnt/var下,如:工具
$ tree . ├── debootstrap │ ├── debootstrap.log │ └── debpaths └── var ├── cache │ └── apt │ └── archives │ ├── adduser_3.113+nmu3ubuntu3_all.deb │ ├── apt_1.0.1ubuntu2_i386.deb
三、下面使用chroot進入/mnt目錄oop
latelee@ubuntu:~$ cd /mnt/ latelee@ubuntu: /mnt$ ls bin boot dev etc home lib media mnt opt proc root run sbin srv sys tmp usr var latelee@ubuntu: /mnt$ sudo -s [sudo] password for latelee: root@ubuntu: /mnt# chroot .
此時只完成了一部分(簡單的根文件系統到本地中,但它只具外形而未能實際運用價值。由於只下載了一個最基本的系統,換言之,deboostrap並無幫你作內核、引導的事情)。測試
添加用戶(不添加不行,不然啓動新系統,沒法登錄): 添加loongson用戶,密碼也是loongson: # adduser loongson # addgroup –system admin # adduser loongson admin # passwd loongson Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully 添加root用戶密碼(不建議): # passwd root Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully 查看/etc/shadow看看root密碼是否設置了。若是沒有設置,是沒有一堆亂碼的。下面是加了密碼的文件: # cat /etc/shadow root:$6$0apsPMDz$rG8PKojxmE/F/nh0WBA25eDsBL31H5sWQllF2OKp2/xy/xS47q37diFQXVQY/wl3FYEVvDooLTZZOFrUbJlCi.:16351:0:99999:7:::
安裝經常使用編譯工具: apt-get install build-essential apt-get install vim tree 若是要編譯內核,則要安裝ncurses庫: apt-get install libncurses5-dev libncurses5
(其它的,自行安裝)ui
1)原來的硬盤分區fdisk -l sda1:/ sda2:swap交換分區 2)新建分區sda三、sda4 # fdisk /dev/sda 這裏我分了2個區,sda3是交換區,大小爲4GB,剩下的是sda4分區。 其實分區的操做很簡單的,輸入上面命令後,只須要輸入如下內容便可(感謝強大的「默認」功能)。 n 回車 回車 回車 +4GB (第一個分區OK) n 回車 回車 回車 回車 (第二個分區OK) p (查看分了幾個區) w (寫入分區表並退出) 格式化: mkswap /dev/sda3 格式化爲交換分區 mkfs.ext4 /dev/sda4 將上面/mnt下的新系統拷貝到sda4中。 cd /mnt mkdir /tmp/tmp mount /dev/sda4 /tmp/tmp cp -a * /tmp/tmp
如沒有多餘空間可利用dd製做大文件系統代替添加增長分區(未測試是否可行)es5
du -sh originfile //先看看須要製做的源文件夾大小,假如15M dd if=/dev/zero of=new_img.img bs=1024 count=20000 //生成20M的文件,bs是一塊的大小,count是塊的數量,創建一個new_img.img用0填充內容 mkfs.ext4 new_img.img //將new_img.img 格式化爲exit4的文件系統 mount new_img.img /mnt/new cp originfile /mnt/new -R umount /mnt/new // new_img.img文件裏面就包括了originfile
內核能夠本身編譯,也能夠直接拿已有系統的。
若是使用默認配置編譯,大概有4000多個模塊。佔用空間約1.8GB,是比較龐大的。爲了省事,能夠直接用fedora21自帶的內核。
一、把loongnix的fedora21的內核的相關模塊拷到debian系統裏。
[root@localhost loongson]# cp -a /lib/modules /mnt/lib [root@localhost loongson]# cp -a /lib/firmware /mnt/lib
二、用dracut製做debian的啓動鏡像:
1)vim /etc/apt/sources.list //修改源爲http;//mirrors.ustc.edu/debian 2)#apt install dracut //安裝dracut
/boot# dracut initrd-3.10.84-17.debian.mips64el.img vmlinuz-3.10.84-17.fc21.loongson.mips64el //dracut根據已經安裝的系統製做initrd啓動鏡像文件
進入debian的/boot目錄下應有下面該項:
initrd-3.10.84-17.debian.mips64el.img
三、安裝debian自帶的啓動鏡像文件
#apt-get install linux-image-loongson-3
生成如下四個文件:
System.map-4.9.0-4-loongson-3 config-4.9.0-4-loongson-3 initrd.img-4.9.0-4-loongson-3 vmlinux-4.9.0-4-loongson-3
拷貝四個文件到/dev/sda1下的/boot目錄下
#mount /dev/sda1 /mnt #cp System.map-4.9.0-4-loongson-3 config-4.9.0-4-loongson-3 initrd.img-4.9.0-4-loongson-3 vmlinux-4.9.0-4-loongson-3 /mnt/boot
2和3選一種(使用第2種方式製做的啓動鏡像編譯JDK的配置文件時阻塞)
四、配置相關文件
1)配置啓動菜單(/dev/sda1分區): vim /boot/boot.cfg 配置以下:
title Debian kernel (wd0,0)/boot/vmlinux-4.9.0-4-loongson-3 initrd (wd0,0)/boot/initrd.img-4.9.0-4-loongson-3 args root=/dev/sda4 ro rhgb quiet loglevel=0 LANG=zh_CN.UTF-8
2)配置fstab文件:/etc/fstab(/dev/sda4分區)
root=/dev/sda4 / ext4 defaults 1 1 root=/dev/sda3 swap swap defaults 0 0
apt-get install gnome apt-get update //更新資源網址 apt-get install x-window-system-core gnome-core 安裝登陸界面 sudo apt-get install mate-desktop-environment lightdm
配置您的本地化設定,以便使用英語之外的語言,須要安裝 locales 支持軟件包,而後進行配置:
# aptitude install locales # dpkg-reconfigure locales
一、在配置文件(/etc/network/interfaces)中添加以下配置:
auto lo iface lo inet loopback allow-hotplug enp5s0 auto enp5s0 iface enp5s0 inet static address 10.10.41.224 netmask 255.255.255.0 gateway 10.10.41.254 dns-nameservers 8.8.8.8
而後重啓網卡:
service networking restart
二、安裝resolvconf服務,在機器重啓或 resolvconf 服務重啓 均可以保證配置會寫到/etc/resolv.conf 裏面
apt-get install resolvconf