首页 > 系统相关 >漫谈Linux系统的二次定制

漫谈Linux系统的二次定制

时间:2023-08-11 17:04:30浏览次数:39  
标签:Linux 漫谈 版本 Ubuntu 镜像 定制 安装 Debian


拥有一个自己的Linux系统从内核到应用程序的定制这个对于使用Linux的用户和众多的Linux玩家来说在目前的Linux发展的技术成熟度下面已经不是梦想,完全是可以通过通俗的技术条件实现;Linux从开始就逐渐的分化为针对服务器环境应用的server 版本,这个版本基本上是因命令行方式与管理员进行交互,Linux的另外的一个重要的应用环境就是Desktop版本,这个版本完全以图形化的方式与使用者进行全部的鼠标点击操作;

Linux发行版本没有提供针对具体应用或服务的功能上的定制的版本,这个是很多的Linux用户需要反复的进行相同的操作配置,而通过Linux版本的定制可以便捷的在Linux主机安装完成后就可以直接使用某个选择或者是光盘中定制的服务的全部功能 ,无需二次的干预和配置操作;

当然能够实用的到的支持 二次定制的方式,一个是基于Desktop的 remaster 操作,这个可以将全部的环境进行iso打包组装,然后释放到新的磁盘上使用;一个是基于Server版本的方式实现;

下面的问题地址是现在的这个项目的原始ideas,大家可以参考一下

http://linux.chinaunix.net/bbs/thread-1095757-1-6.html独辟蹊径网络安装系列之Redhat衍生版重构初探[09年3月刊] 

定制化的版本有很强的实用性,针对特定的应用场合使用,这个定制的方向应该是很多做SA的成长的过程。目前开源社区中针对Centos的定制应用到语音、邮件、监控等多个方面。


而相对e师傅多功能服务器试用 http://bbs3.chinaunix.net/thread-1503543-1-1.html 活动链接
完全可以通过定制Centos实现全部的功能,通过一张安装介质的方式在不同的机器上实现此类服务的定制安装,安装后就可以直接使用。
这个不是标题党,完全可以实现的,而且定制后的centos 可以按照到任何一个pc上面或者是服务器上面(小型机除外)

选择定制的centos 5.3的系统
整合一套完全的基于yum 源的 支持 主流的支持 ShopEX网上商店系统、ECShop网上商店系统、Discuz!论坛系统、ECMall电子商城系统、Moodle在线教学平台、SupeSite门户系统、X-Space博客系统、SupeV影视博客系统、C3CRM客户关系管理、PpExam在线考试平台、UCenter HOME社会化网络(SNS)软件、UCenter用户中心、项目管理工具Collabtive 运行环境的LAMP 或者是LEMP的结构,同时可以整合好上述系统的最新版本;

对于邮件系统可以直接将那个什么iredmaill整合进去 或者是简单的机遇postfix mysql 的邮件方式做集成,放上一个webmail 的合成 或者是extmail 也是可以作为选择的;

共享上网 这个相对linux是非常简单的 建议一个iptables的脚本 使用tc 做流量控制 

同时可以使用 openldap做为sso的基础

NND 这个是不是已经超乎想象了

之前的那个pa什么go的 也是如此 呵呵

上面描述的  也可以再Ubuntu中完全实现
当然可以将操作系统的 issue修改 可以定制一个内核 (这样更加的有档次 OO)

e师傅多功能服务器试用 从描述上看是没有兼顾到开发应用
通过定制centos 整合cvs cvn 可以为开发提供源码管理 整理Bugzilla 可以进行BUG跟踪
同过定制系统是现在的经济环境下 很好的选择
同时也可以实现开源的存储解决方式



Linux系统的定制既包括server 具体的应用服务的安装设置,也涵括有Desktop的使用体验的设置。

这些是目前的一些方向性的畅谈。

http://linux.chinaunix.net/bbs/viewthread.php?tid=1061374此文章是Linux部署方式系列文章中的第二部分,探讨开源社区的热点Debian/Ubuntu的所特有的软件源问题,以及实现网络安装方式的独特之处。所谓Debian/Ubuntu软件源就是一个应用程序安装库,很多很多的应用软件都在这个库里面。可以是网络服务器,是光盘,甚至是硬盘上的一个目录。作为Debian系的Ubuntu,继承了Debian的deb和apt系统,只要设定好软件源,就能很方便的安装软件了以及实现从网络安装Debian/Ubuntu系统本身。从实现的原理上可以将DVD/CD的介质使用dpkg、apt-move等命令工具结合本地的http、ftp服务可以实现一个本地的源,当此种方式生成的源多数能够完成软件安装工作,对于Debian/Ubuntu基于互联网的实时更新的特性就不能够很好的发挥出来,重要的一点是对从PXE引导的网络安装支持很不理想,对于维护数量众多的Debian/Ubuntu服务器来说不是很好的选择。


本文将讲述基于同步镜像Debian/Ubuntu某个版本一个官方的镜像的方式,实现一个基于局域网本地的Debian/Ubuntu源的网络安装部署Debian/Ubuntu服务器的方式,当然并不是全部镜像,故此只能实现镜像版本的网络安装,此方式已经足够满足网络安装的要求。

Debian官方站点 http://www.debian.org

Ubuntu官方站点 http://www.ubuntu.com 

开始工作工作之前先了解Debian/Ubuntu发行版本的渊源,Debian的开发代号来源于电影《玩具总动员》,而脱胎于Debian的Ubuntu,其开发代号同样很有意思。除前两个版本之外,开发代号命名按字母顺序排列,在动物名之前按照双重字母再选个形容词:Warty Warthog, Hoary Hedgehog, Breezy Badger, Dapper Drake, Edgy Eft, Feisty Fawn, Gutsy Gibbon, Hardy Heron.

表:Debian/Ubuntu发行版本信息,按照发行的先后顺序列出



当访问Debian/Ubuntu的官方源镜像站点是会在dists/目录下看到发行版本代号的目录名称。镜像Deiban/Ubuntu的源中的某个版本也是依据此目录中的代号为依据的。

当前Debian全球镜像站点清单http://www.debian.org/mirror/list;

当然Ubuntu全球镜像站点清单https://launchpad.net/ubuntu/+archivemirrors。


获知这些信息对于镜像某个发行版本或者是修改系统的sources.list 都是可以自行决定的,当然建立了一个自己的源将会更加的便利。补充一下Debian/Ubuntu的镜像都有Archive Mirror和Ubuntu releases之分,前者就是本文所说的软件源,或者就是通常所说的ISO格式的发行光盘介质。



图:浏览Debian软件源dists目录http://air.hanzubon.jp/debian/dists/



图:浏览Ubuntu源dists目录http://de.archive.ubuntu.com/ubuntu/dists/


镜像一个Debian/Ubuntu源的方式有很多,经过尝试排除了apt-mirror 、debmirror方式,选择rsync方式这个是在Debian/Ubuntus上都是适用的镜像发行版的方法。笔者在测试过程中适用的带宽仅为4MB,镜像Debian的etch发行版本用时大约是10天左右,镜像Ubuntu的intrepid版本用时大概2天时间,磁盘空间都是占用非常大的,如果没有500GB的磁盘容量和大于10MB的线路连接建议还是不要轻易尝试。目前无论是Debian还是Ubuntu官方站点都没有名且说明同步某一个或几个特定版本的方式,通过rsync进行同步可以在使用的时候首先要访问进行站点的dists目录,根据该站点使用--exclude排除具体的版本,格式:--exclude=*“发行版本的代号,如intrepid”* --delete-excluded 把这个加入你的参数中即可(注意有两个星号,不能少呀)。以下是测试过的Debian/Ubuntu的同步脚步,进攻参考。

表:Ubuntu rsync同步参考脚步



表:Debian rsync同步参考脚步

将所需要的发行版本同步完成后,只需要在现有的apache的documentroot目录下面建立一个软连接如:ln -s /usr/src/o /var/www/html/ubuntu 就可以通过浏览器访问到本地源。当然也可以使用ftp的方式,ftp在穿越NAT以及防火墙的时候的策略问题,所以不推荐ftp模式。

以下将讲解,在windows环境测试Debian/Ubuntu网络安装过程,进行网络安装需要选择的适合的内核引导文件initrd.gz和linux ,均需要下载本地镜像的netboot.tar.gz。

下载Ubuntu的网络引导文件http://192.168.1.1:11580/ubuntu/dists/intrepid/main/installer-i386/current/images/netboot/boot.img.gz

下载Debian的网络引导文件:http://192.168.1.1:11580 /debian/dists/etch/main/installer-i386/current/images/netboot/netboot.tar.gz

将下载的netboot.tar.gz在windows系统的C盘的根目录下面,(如果是启用PXE安装只需要将netboot.tar.gz文件解压到/tftpboot目录中,此内容将在后续文章讲解)确认系统已经安装grub for dos然后编辑menu.list内容如下:

Debian发行版Ubuntu发行版Debian GNU/Linux 2.0 (hamm)  Ubuntu 4.10 - Warty Warthog(长疣的疣猪) Debian GNU/Linux 2.1 (slink) Ubuntu 5.04 - Hoary Hedgehog(灰白的刺猬) Debian GNU/Linux 2.2 (potato) Ubuntu 5.10 - Breezy Badger(活泼的獾) Debian GNU/Linux 3.0 (woody) Ubuntu 6.06 - Dapper Drake(整洁的公鸭) Debian GNU/Linux 3.1 (sarge) Ubuntu 6.10 - Edgy Eft(急躁的水蜥) Debian GNU/Linux 4.0 (etch) Ubuntu 7.04 - Feisty Fawn(坏脾气的小鹿) 下一代 Debian 正式发行版的代号为 lenny Ubuntu 7.10 - Gutsy Gibbon(勇敢的长臂猿)   Ubuntu 8.04 - Hardy Heron (耐寒的苍鹭)  Ubuntu 8.10 -Intrepid Ibex(无畏的北部高地山羊)  Ubuntu 9.04-Jaunty Jackalope(活泼的怀俄明野兔)

这样重新开机引导就会进入Debian/Ubuntu引导过程


图:Ubuntu intrepid net install Grub 引导选项

因debian/Ubuntu版本的渊源其网络引导过程极为类似,但Ubuntu提供了更多衍生版本的安装选择如Xubuntu desktop、Kubuntu desktop、Edubuntu desktop、Myehuntu 、Ubuntu mobile、Ubuntu MID edition、Basic Ubuntu Server等众多的选择。故此本文的安装过程以演示Ubuntu intrepid版本网络安装的过程为主。

在系统初始化引导结束后将进入语言选择,并开始设置安装的选项与参数。

图:语言选择,本文选择中文(简体)


图:语言选择,本文选择中国



图:语言支持提示,选择否继续图:键盘选择,时候使用自动检测键盘类型,选择否继续




图:键盘选择提示,选择USA


图:键盘选择提示,选择USA


图:网络检测,网卡识别,无DHCP,选择继续执行下部手动配置


图:网络检测,选择手动进行网络设置(这个是必须的)


图:设置IP地址及掩码信息


图:设置网关信息


图:设置DNS服务器信息


图:设置主机名称,默认为ubuntu或者debian


图:设置域名信息,如果局域网没有本地DNS默认为空

以上步骤完成了Debian/Ubuntu安装的基本设置,下一步骤就是要设置使用本地的已经建立好的软件源,进行必要安装选项设置以及必要的文件复制和系统默认配置。以上步骤使用的是网络安装的引导内核,在设置完毕软件源将会下载基本的系统到本地运行。


图:选择Debian/Ubunut安装源,选择手动输入信息


图:输入进行服务器的IP地址和端口,默认80端口无需输入


图:输入镜像目录名称,默认为/debian/或/ubunut/ 请将最后的/符合删除


图:设置web代理服务器信息

此步骤如果看到的信息是不全的或者是以- 、空格等符号显示,说明镜像制作的有问题,需要重新同步。设置好系统的分区后就开始网络安装过程,观察镜像服务器的网卡流量将会增长较大。


图:设置系统分区


图:分区格式化


图:安装基本系统


图:安装基本系统

图:安装基本系统


图:查看到系统安装日志信息 /var/log/syslog

在安装过程,可以通过ALT+F2切换到其它终端窗口查看系统的安装日志信息,可以通过此日志判断问题所在。日志查看命令tail -f /var/log/syslog


图:设置用户和密码,这就是有名的sudo的开始


图:扫描镜像站点,准备下一步的软件配置


图:自动更新选项(根据网络状况选择)


图:软件选择


图:软件选择

上述两图是Debian与Ubuntu版本明显区别的地方,总体感觉Ubuntu的选择会比Debian有很多的便利。如果不使用软件源安装是看不到如此多的软件选择的。


图:软件安装过程


图:设置grub提示,选择是


图:安装Grub过程


图:设置系统时间,完成最后安装配置


图:Debian/Ubuntu安装完成


图:启动过程中的Ubuntu Logo


图:工作中的Ubuntu桌面

到此Debian/Ubuntu通过局域网本地的源进行安装的过程已经全部结束。从整个过程中看,主要问题点在于镜像的同步实现,如果没有足够的带宽这个工作就没有保障性,就会出现失败问题。如果企业使用Debian/Ubuntu作为服务器版本合理的方式就是要在局域网内部配置一个定期同步的本地源,这个方式希望对Linux用户能够有所提示和启发,欢迎就相关问题进行交流。

标签:Linux,漫谈,版本,Ubuntu,镜像,定制,安装,Debian
From: https://blog.51cto.com/u_2198048/7049479

相关文章

  • MT6853天玑720MTK安卓核心板_5G智能模块安卓主板开发板定制
    联发科MT6853天玑720安卓核心板采用台积电7nm制程的5GSoC,具有先天的节能创新是同类产品中效率最高的5G芯片。除了完全集成的5G调制解调器,联发科5GUltraSave提供了一系列额外的节能技术。Dimensity720比替代芯片具有更快的LPDDR4X和更快的UFS2.2级存储。与八核CPU一起,具有两个强......
  • linux下Makefile学习
    概述——什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix......
  • Linux fdisk 命令
    Linuxfdisk是一个创建和维护分区表的程序,它兼容DOS类型的分区表、BSD或者SUN类型的磁盘列表。fdisk[必要参数][选择参数]必要参数:-l列出所有的分区表-u与 -l 搭配使用,显示分区数目选择参数:-s<分区编号>指定分区-v版本信息菜单操作说明m:显示菜单和帮助信息a:活动分区......
  • Linux shell 脚本常用指南
    常用语法变量#!/bin/bash#字符串USER_NAME="shell"#数字AGE=25echo${USER_NAME}echo${AGE}数组#!/bin/bash#普通数组定义USER_IDS=(1234)echo${USER_IDS[0]}echo${USER_IDS[1]}echo${USER_IDS[2]}echo${USER_IDS[3]}USER_IDS[0]=-1echo${USER_IDS[......
  • Linux_CentOS
    windows和macOS是个人桌面操作系统;linux是服务器操作系统一、入门Linux1.1操作系统概述操作系统调度和管理计算机硬件进行工作,调度CPU,内存,硬盘,网卡,音响等发消息-->操作系统-->网卡驱动-->网卡发送数据包-->服务器-->接收计算机由硬件和软件组成,操作系统是软件的一类,主要协助......
  • Linux 系统 基础命令
    目录ls:列出目录下的文件和文件夹名字"mkdir创建新目录(文件夹)//mkdirt01rmdir删除空目录//rmdirt01cd切换目录pwd查看当前所在的工作目录的绝对路径vim文本编辑器touch创建文件cat查看文件全部内容(不用进入内容,只展示内容)(从第一行显示)more命令查看文件内容cp......
  • linux
    目录介绍编号目录含义1/bin存放二进制可执行文件2/boot存放系统引导时使用的各种文件3/dev存放设备文件4/etc存放系统配置文件,比如:安装完毕jdk,安装maven、配置环境变量5/home用户的主目录,存放用户的个人资料的。比如:linux是一个多用户的操作......
  • Linux文件服务器搭建与使用实例
    1.1 NFS是什么?NFS 是网络文件系统 Network FileSystem 的 简称 ,最早是由 Sun 公司 开发 出来 的,目的是想 让 不同的 机器、不同的 操作 系統可以 共享文件。 在 Unix/Linux类的 操作系统 中 可以 用 NFS 来搭建文件服务器。 对于一个真实的运行环境而言......
  • 安装Linux操作系统
    LAMP是一种非常常见的开源软件套件,包括Linux操作系统、ApacheHTTP服务器、MySQL数据库和PHP编程语言。它被广泛应用于构建动态网站和Web应用程序。本文将介绍如何安装和配置LAMP服务器,以实现可靠高性能的网站和应用程序运行环境。一、安装Linux操作系统在安装LAMP之前,首先需要选......
  • JAVA 内存详解 (理解 JVM 如何使用 Windows 和 Linux 上的本机内存)
    级别:中级AndrewHall ,软件工程师,IBM2009年5月11日Java™堆耗尽并不是造成 java.lang.OutOfMemoryError 的惟一原因。如果本机内存 耗尽,则会发生普通调试技巧无法解决的 OutOfMemoryError 。本文将讨论本机内存的概念,Java运行时如何使用它,它被耗......