使用 Debian

最初是在 x240(个人笔记本,便携、屏幕小)上安装的双系统,因为某些原因一直未能进行实际、有效的练习。曾经考虑是否将其卸载,恢复为原始 windows 系统,使用 windows 的 boot manager。毕竟使用双系统开机启动略有不便,按电源键到进入系统也会慢很多。但后来放弃了,就这样子将就着吧,一方面恢复单系统需要重新花费时间精力,另一方面 x240 上我没有安装虚拟机,有个 Debian 多一个选择。

后来,在 E431(公司笔记本)安装虚拟机,在虚拟机中安装 Debian8.1,使用的是官方社区下载的 ISO 镜像。在默认安装中文语言、图形界面之后,因为习惯使用 xshell 进行操作,所以其图形界面对我来说意义不大,在虚拟机中也很吃资源,一直想关之;从网上搜索,自己折腾,最终还是没有找到理想的解决方法,所以又在虚拟机中重新安装了一个,命名 Debian8Light,安装时没有选择图形界面。后来在 Debian 上的一些测试一直使用后者,前者在我刚刚接触 Debian 使用图形界面安装应用时起到了一定价值。

1
2
3
4
sys:
root/Debian.lyw
niel/nie123
vimer/vimer

最近,在 Bandwagon 中重装了 Debian8,估计是最小化安装,所以没有图形界面,系统环境也是英文的。硬件限制,甚至不如在虚拟机上的配置。不过最满意在这台 vps 上折腾了,毕竟它不会直接对我的系统造成影响,崩溃了重装(一键操作,官网也提供备份镜像)就是,而且只要有网它就一直是在线的,另一种意义上的便携。

启动流程

了解 Linux 的启动流程,对于理解运行级别、配置文件、shell 类别有很重要的指导意义。阮一峰的博客很不错:Linux 的启动流程,作者也是以 Debian 来介绍的。

觉得好牛逼,可是到自己 Debian8.1 系统上一看,擦嘞,咋没有 /etc/inittab 文件呀,然后就凌乱了……同时,参考安装Debian 6.0之后首先做的几件事 中使用 sysv-rc-conf 命令(需要先安装)使系统默认从命令行启动,操作后无效;参考 Debian开机不进入图形界面的方法 想达到上述目的,也无法操作……

然后就了解到了 Linux初始化系统(init),知道了:

传统的 sysvinit 已经淡出历史舞台,新的 init 系统 UpStart 和 systemd 各有特点,而越来越多的 Linux 发行版采纳了 systemd。

不同的 Linux 发行版在这些 sysvinit 的基本工具基础上又开发了一些辅助工具用来简化 init 系统的管理工作。比如 RedHat 的 RHEL 在 sysvinit 的基础上开发了 initscripts 软件包,包含了大量的启动脚本 (如 rc.sysinit) ,还提供了 service,chkconfig 等命令行工具,甚至一套图形化界面来管理 init 系统。其他的 Linux 发行版也有各自的 initscript 或其他名字的 init 软件包来简化 sysvinit 的管理。

通过查看Debian8.1系统进程,PID为1的也的确是systemd进程。知道了存在systemd 这么个东东,那就好办啦,去网上搜呗。还是阮一峰的博客:Systemd 入门教程:命令篇Systemd 入门教程:实战篇

1
2
# 设置启动时的默认 Target
$ sudo systemctl set-default multi-user.target

so,在 systemd 作为初始化系统的版本中,以 sysvinit 为基础的 ckconfigsysv-rc-conf 等命令很可能就没有意义。(有些命令如 init 运行等级 是兼容的)

安装应用

  1. 安装 Debian 之后:

    • Debian 默认是不允许 root 用户登录图形界面的,所以不要认为自己用 root 登录输错了密码而频繁尝试;
    • 墙内访问不了官方源,可以使用 apt-spy 寻找最快源;
    • 切换图形界面和命令行;使系统直接从命令行启动

安装应用,在 wiz 中《Linux 安装应用》写的很详细。直接参考就是。

在这里介绍一下,关于debian发布周期和各库的作用

图像界面和运行级别

在虚拟机上使用的经历,我迫切地想在某一次的登录中关掉图形界面服务,需要时再重新打开。当初认为在网上没有找到理想的解决方案,现在反思发现这其实是一件小事,也很容易达到目的。——类似init0 关机、init6 重启,**init3 / init5切换运行级别**。

以下几个链接是在当初想关图形界面时保存下来的:(如果系统使用的还是最早的 sysvinit 的 init 系统,可以参考;如果是 upstart 或者 systemd,其参考价值有限。毕竟运行级别是 sysyvinit 中的概念。)

  1. Debian的运行级别,结合下一条理解Debian体系和RedHat体系在运行级别上的差异
  2. 关于DEBIAN、UBUNTU运行级别和图形界面

在 systemd 的世界里不要再讲运行级别了!所以,关于运行级别知道就可以了,需要深入了解的是 systemd。

总结

身处这个更新换代迅速的互联网时代,真是眼花缭乱啊。刚刚了解 sysvinit,可它基本上快被 systemd 淘汰掉了。

就好像在看我们这个世界,一代人老去,新的一代带着横扫一切的气概登上舞台,还没有喊出他们最有力的口号,更猛的一代已经把聚光灯和所有的目光带走