再谈debian的发布策略
软件包首先会进入unstable(开发代号sid),这是唯一真正的每天滚动更新,相当于软件的trunk。风险是随时会挂掉,很久之前我就栽过一次,但据官方说bug修复也很快,一般几天就能恢复。
日常情况下在unstable中十天左右的软件包会合并到testing。testing要比unstable稳定,但万一挂掉可能要数十天甚至一个月才能修复,因为修复也要等十天才会进到testing。
testing日常情况下也是每天滚动更新与unstable同步,然后到了冻结。冻结时testing不再与unstable同步,仅允许小的更新和bug fix。注意冻结的是testing本身,而不是所指的版本代号,不存在只冻结开发代号而将testing分支到新版本的情况。
最后testing改名为stable,然后分支出新的testing解除冻结,再慢慢将unstable里的软件同步过来。总结一下就是testing会被冻结个半年,解冻的时候apt upgrade相当于大升级。
好多地方都没有说清testing冻结的真正过程,官方这里写的很详细。https://www.debian.org/doc/manuals/debian-faq/ch-choosing.en.html
发行版与桌面选择
如果是需要一个平时使用的系统,推荐Ubuntu,更推荐Mint。但是笔者是搞开发的,前段时期用的Mint Debian(LMDE)其实很不错。但是笔者又是重度精简强迫症患者,嫌LMDE中不需要的软件太多,所以又滚回了debian。中途尝试了一下Arch,然后突然觉得,都是基本系统那么一两百个包的话还在乎毛线的发行版区别,果断滚回熟悉的apt与init.d,毕竟openwrt也是类debian的。
现在觉得适用于编译和开发还是基本系统+桌面环境的组合比较好,考虑到经常是在虚拟机里跑,性能和易用性上还是gnome2最好,也就是现在的MATE。由于是mint项目组负责维护,美化上有了很大的进步。
testing比unstable要相对稳定,比如不会出现依赖更新了一半(例,某底层软件包升级了大版本,但上层依赖还没有修改到新的上,upgrade后就完蛋了),但是testing作为需要被发布的版本,在发布周期末尾及会强迫症发作,比如ffmpeg的当前作者因为官方就是不给合并到即将明年发布的testing里而在bugs邮件列表里和官方吵了几个月。现在系统又给弄成了sid,不过比起上次加了apt-listbugs护身,看看哪天会更新后再次挂掉。
基本系统安装
如果是安装testing或unstable一般使用daily镜像启动以确保最新。有两种镜像,一个是netinst,280M左右,包含了安装程序和基本系统,可脱机安装;另外是mini,30M,只包含内核启动,安装程序组件和基本系统都在线下载。netinst只打包testing,如果要装sid需要安装后改sources.list到sid然后dist-upgrade;mini可以在安装时选择stable、testing和unstable。
如果使用mini镜像,则必须确保是daily镜像,而不能使用beta发布版,正确的下载地址是http://d-i.debian.org/daily-images/amd64/daily/netboot/mini.iso。因为安装程序需要在线下载必要的驱动,不是最新版的话会出现内核不兼容而无法加载硬盘驱动。
要想得到最基本的系统,需要在启动项里选expert install,安装时手动跳过“安装软件”这一步,否则会启动tasksel并自动安装task-laptop里的软件。
安装时不要启用root帐号,否则不会安装sudo。locales安装时建议只选择英语,因为基本系统安装后要在纯控制台下安装桌面等软件。
配置与安装软件
开启root帐号:
sudo passwd && su
MATE桌面环境:
apt-get install xorg lightdm mate
桌面中文与字体美化:
dpkg-reconfigure locales添加中文区域并设为默认。
mate桌面环境会自动安装dejavu和droid字体,中文支持很不错,不要像以前那样装什么xfonts*,文泉驿也不用装,装了反而会抽。
进入外观设置,将应用程序字体改为9号,另外依个人喜好调整一下truetype渲染。
开终端的时候顺便把终端配置改成黑底灰字,matrix爱好者可用黑底绿字(其实只适合拍电影不适合日常使用),debian常年来默认的白底是要瞎眼的节奏。
VirtualBox Guest Additions:
目前版本仓库里可以直接apt-get install virtualbox-guest-x11。
也可手动安装:
apt-get install build-essential linux-headers-amd64
mount /dev/cdrom /mnt
/mnt/VBoxLinuxAdditions.run
umount /mnt
桌面自动挂载的似乎有执行权限的问题,所以这里是手动挂载光驱。
一些软件:
network-manager-gnome:gnome网络配置,真机要用这个连无线
mozo:mate的主菜单编辑器
apt-listbugs:sid升级护身符
fcitx fcitx-googlepinyin:输入法。一些依赖会自动安装
bash-completion:bash自动完成,用于apt-get软件包tab键补完
gvfs-backends:gnome文件浏览中smb等协议的支持
iceweasel iceweasel-l10n-zh-cn:“冰熊”浏览器,不吐槽了
chromium chromium-l10n:chrome浏览器
vlc:很NB但是很丑的播放器
i386支持:
需要运行x86程序的话(这个概率其实非常小),最新debian采用多架构的方案。
dpkg –add-architecture i386
apt-get update
apt-get install libc6:i386。