LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 768|回复: 2

[求助]debian有个在线安装基本系统的命令是什么了?

[复制链接]
发表于 2011-5-26 22:49:49 | 显示全部楼层 |阅读模式
记得squeeze刚出来的时候有人发了讲解如何在线安装基本系统的命令,就是在一台已经安装了debian的电脑上,运行这个程序,这个程序就会自动将debian的基本系统安装到指定的文件夹。
搜了半天没搜到,各位有知道的说一声,谢谢!
 楼主| 发表于 2011-5-26 23:47:26 | 显示全部楼层
找到了是debootstrap squeeze ./squeeze-chroot http://xxx
回复 支持 反对

使用道具 举报

发表于 2011-5-27 05:37:57 | 显示全部楼层
  1. #!/bin/sh        # 该行为语法高亮而设
  2. ################################################################################
  3. #
  4. # Debian 6 squeeze 安装日志        2011-01-21
  5. #
  6. ################################################################################
  7. # 用 ubuntu-10.04.1-desktop-amd64.iso 启动
  8. # 提取光盘 /casper/vmlinuz /casper/initrd.lz
  9. # grub 引导参数
  10. title        ubuntu-10.04.1-desktop-amd64
  11. kernel        /vmlinuz boot=casper iso-scan/filename=/ubuntu-10.04.1-desktop-amd64.iso ro quiet splash vga=normal nomodeset
  12. initrd        /initrd.lz
  13. # 更改 root 口令后打开其登录 shell
  14. # su 不打开登录 shell 或许可行,但 sudo bash 绝不可
  15. sudo passwd root
  16. su -
  17. # 分区
  18. cfdisk /dev/sda
  19. # 交换区(若需)
  20. mkswap -L FB_CP2_SWAP /dev/sdaX
  21. swapon -L FB_CP2_SWAP
  22. # 创建文件系统
  23. mkfs.ext2 -L FB_CP2_BOOT /dev/sda1
  24. mkfs.ext4 -L FB_CP2_ROOT /dev/sda2
  25. tune2fs -c 127 -e remount-ro /dev/sda1
  26. tune2fs -c 127 -e remount-ro /dev/sda2
  27. # 挂载
  28. DEBIAN_INS_DIR="/mnt/debian"
  29. mkdir "$DEBIAN_INS_DIR"
  30. mount LABEL=FB_CP2_ROOT "$DEBIAN_INS_DIR"
  31. mkdir "${DEBIAN_INS_DIR}/boot" "${DEBIAN_INS_DIR}/home"
  32. mount LABEL=FB_CP2_BOOT "${DEBIAN_INS_DIR}/boot"
  33. mount LABEL=FB_CP2_HOME "${DEBIAN_INS_DIR}/home"
  34. # 包缓存脱离根分区(必须用相对路径)
  35. mkdir -p "${DEBIAN_INS_DIR}/var/cache/apt"
  36. ln -s ../../../home/root/archives "${DEBIAN_INS_DIR}/var/cache/apt/"
  37. ln -s . "${DEBIAN_INS_DIR}/boot/boot"
  38. # ==============================================================================
  39. # 下载并安装 debootstrap
  40. wget http://ftp.tw.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.26_all.deb
  41. dpkg -i debootstrap_1.0.26_all.deb
  42. # 运行 debootstrap 安装基本系统,架构 AMD64,版本代号 squeeze
  43. debootstrap --arch amd64 squeeze "$DEBIAN_INS_DIR" http://ftp.tw.debian.org/debian/
  44. # ==============================================================================
  45. # 文件系统表
  46. vi "${DEBIAN_INS_DIR}/etc/fstab" #{
  47. none        /tmp        tmpfs        size=512M                0 0
  48. none        /urd        tmpfs        size=512M,mode=755        0 0
  49. #LABEL=FB_CP2_SWAP        none        swap        sw                0 0
  50. LABEL=FB_CP2_ROOT        /        ext4        commit=360        0 1
  51. LABEL=FB_CP2_BOOT        /boot        ext2        noauto                0 2
  52. LABEL=FB_CP2_HOME        /home        ext4        commit=360        0 2
  53. LABEL=FB_CP2_VM                /vm        ext4        commit=360        0 2
  54. LABEL=FB_CP2_DATA        /data        ext4        commit=360        0 2
  55. #}
  56. mkdir "${DEBIAN_INS_DIR}/urd" "${DEBIAN_INS_DIR}/vm" "${DEBIAN_INS_DIR}/data"
  57. # ==============================================================================
  58. # 网卡
  59. vi "${DEBIAN_INS_DIR}/etc/network/interfaces" #{
  60. auto lo
  61. iface lo inet loopback
  62. allow-hotplug eth0
  63. iface eth0 inet dhcp
  64. #}
  65. # 计算机名:cp2
  66. echo cp2 > "${DEBIAN_INS_DIR}/etc/hostname"
  67. vi "${DEBIAN_INS_DIR}/etc/hosts" #{
  68. 127.0.0.1        localhost cp2
  69. #}
  70. # ==============================================================================
  71. # 其它配置,习惯问题
  72. rm -f "${DEBIAN_INS_DIR}/etc/skel/.profile"
  73. vi "${DEBIAN_INS_DIR}/etc/skel/.bash_profile" #{
  74. . ~/.bashrc
  75. date -u "+%n%F [%u] %R:%S %Z"
  76. df -Th | sed -n '1p;/^\/dev\/sd/p'
  77. #}
  78. vi "${DEBIAN_INS_DIR}/etc/skel/.bash_logout" #{
  79. [ -z "$DISPLAY" ] && clear_console
  80. #}
  81. vi "${DEBIAN_INS_DIR}/etc/skel/.bashrc" #{
  82. if [ -z "$DISPLAY" ]; then
  83.         export LANG=en_US.UTF-8
  84.         PS1='\n\[\e[1m\]>$?<\[\e[0m\] \W\$ '
  85. else
  86.         PS1='\n\[\e]2;\u@\h\a\]\[\e[1m\e[4m\]>$?<\[\e[0m\] \W\$ '
  87. fi
  88. set -o ignoreeof
  89. set -o vi
  90. alias ls="ls -F"
  91. #}
  92. vi "${DEBIAN_INS_DIR}/etc/skel/.inputrc" #{
  93. $if bash
  94. set keymap emacs
  95. "\C-p": history-search-backward
  96. "\C-n": history-search-forward
  97. set keymap vi-insert
  98. "\C-p": history-search-backward
  99. "\C-n": history-search-forward
  100. "\C-k": kill-line
  101. "\C-l": forward-char
  102. "\C-ol": forward-char
  103. "\C-oh": backward-char
  104. "\C-o\C-l": clear-screen
  105. set keymap vi
  106. "\C-p": history-search-backward
  107. "\C-n": history-search-forward
  108. "k": history-search-backward
  109. "j": history-search-forward
  110. "K": previous-history
  111. "J": next-history
  112. "\C-k": kill-line
  113. $endif
  114. #}
  115. rm -f "${DEBIAN_INS_DIR}/root/.profile"
  116. find "${DEBIAN_INS_DIR}/etc/skel" -mindepth 1 -maxdepth 1 -exec cp -r {} "${DEBIAN_INS_DIR}/root" \;
  117. sed -i 's/^\([[:space:]]*\)alias ls=.*/\1alias ls="ls -AF"/' "${DEBIAN_INS_DIR}/root/.bashrc"
  118. # ==============================================================================
  119. # 挂载 /proc 、/sys 和 /dev
  120. mount -t proc proc "${DEBIAN_INS_DIR}/proc"
  121. mount -t sysfs sysfs "${DEBIAN_INS_DIR}/sys"
  122. mount -o bind /dev "${DEBIAN_INS_DIR}/dev"
  123. # 换根
  124. unset LS_COLORS
  125. LANG=C chroot "$DEBIAN_INS_DIR" /bin/bash
  126. ################################################################################
  127. # 设源
  128. vi /etc/apt/sources.list #{
  129. deb http://ftp.tw.debian.org/debian squeeze main contrib non-free
  130. #}
  131. # 刷表
  132. aptitude update
  133. # 更新
  134. # debian 不必,但 ubuntu 必须
  135. aptitude full-upgrade
  136. # ==============================================================================
  137. # 若硬时钟非 UTC
  138. vi /etc/default/rcS #{
  139. UTC=no
  140. #}
  141. # 时区
  142. dpkg-reconfigure tzdata #{
  143. Asia/Shanghai
  144. #}
  145. # 本地化
  146. aptitude install -R locales
  147. dpkg-reconfigure locales #{
  148. en_US.UTF-8
  149. zh_CN.UTF-8        # 默认
  150. zh_TW.UTF-8
  151. #}
  152. # 键盘
  153. aptitude install -R console-data kbd-compat
  154. # 若上一命令执行时设置错了,可再次配置
  155. dpkg-reconfigure console-data
  156. # ==============================================================================
  157. # 内核映象配置文件
  158. vi /etc/kernel-img.conf #{
  159. # Kernel image management overrides
  160. # See kernel-img.conf(5) for details
  161. do_symlinks = yes
  162. relative_links = yes
  163. do_bootloader = no
  164. do_bootfloppy = no
  165. do_initrd = yes
  166. link_in_boot = no
  167. #}
  168. # 引导器
  169. # 若有其它系统则带上 os-prober ,以便 update-grub 能自动发现
  170. aptitude install -R grub-legacy
  171. grub-install /dev/sda
  172. update-grub
  173. sed -i 's/^\([[:space:]]*\)# kopt=.*/\1# kopt=root=LABEL=FB_CP2_ROOT ro nomodeset/;'\
  174. 's/^\([[:space:]]*\)# defoptions=.*/\1# defoptions=iommu=noaperture vga=0x305/' \
  175. /boot/grub/menu.lst
  176. # 内核
  177. aptitude install -R linux-image-2.6-amd64
  178. # 检查或修改 grub 配置
  179. vi /boot/grub/menu.lst
  180. # AMD K8 处理器降频
  181. echo "powernow_k8" >> /etc/modules
  182. # 系统调整
  183. vi /etc/default/rcS #{
  184. RAMRUN=yes
  185. RAMLOCK=yes
  186. #}
  187. vi /etc/default/tmpfs #{
  188. RW_SIZE=16M
  189. SHM_SIZE=32M
  190. RUN_SIZE=32M
  191. LOCK_SIZE=16M
  192. #}
  193. cp /etc/sysctl.conf /etc/sysctl.conf._000_
  194. cat > /etc/sysctl.conf << EOF
  195. kernel.printk = 3 4 1 7
  196. vm.laptop_mode = 5
  197. vm.dirty_expire_centisecs = 36000
  198. vm.dirty_writeback_centisecs = 36000
  199. net.ipv4.ip_default_ttl = 128
  200. EOF
  201. # ==============================================================================
  202. # 设置口令
  203. passwd
  204. # 退出 chroot 环境
  205. exit
  206. # 再次调整一些配置
  207. rm -rf "${DEBIAN_INS_DIR}/tmp" "${DEBIAN_INS_DIR}/var/run" "${DEBIAN_INS_DIR}/var/lock"
  208. mkdir "${DEBIAN_INS_DIR}/tmp" "${DEBIAN_INS_DIR}/var/run" "${DEBIAN_INS_DIR}/var/lock"
  209. chmod 1777 "${DEBIAN_INS_DIR}/tmp" "${DEBIAN_INS_DIR}/var/lock"
  210. # 卸载
  211. umount "${DEBIAN_INS_DIR}/dev" "${DEBIAN_INS_DIR}/sys" "${DEBIAN_INS_DIR}/proc"
  212. umount "${DEBIAN_INS_DIR}/boot" "${DEBIAN_INS_DIR}/home" "$DEBIAN_INS_DIR"
  213. # 退出并重启
  214. exit
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表