如果您已经是使用Unix、BSD的用户,或者熟悉MacOSX的命令行,那么推荐您看一下这篇文章。
关于Linux,您需要先了解什么是Linux。
如果您是一位计算机的初学者,或者不熟悉什么叫做命令行,建议您使用入门方法。
而如果对自己有自信,想寻找一些挑战,您可以选择the hard way。
记住,
更困难的方式总是让您有更多的回报 -- 未知
XDDDDDDDDDDDD
有不少发行版比较适合Linux新手,它们带有图形界面、安装简单、系统管理比较符合图形用户的习惯。
- 使用livecd运行! 不少Linux发行版都提供了LiveCD,可以直接从CD/DVD启动而不影响现有系统
- 学会如何把Linux安装到您的PC里,第一步您可以让她原有的操作系统共存
- 学会一些常用的操作软件,例如
- 选择您喜欢的编辑器,例如gedit / kate 等
- 选择您喜欢的浏览器,例如Firefox / Google Chrome / Midori / Konqure
- 选择您常用的办公软件,例如Libreoffice
- 学会如何输入中文
- 学会配置网络,顺利访问网络
- 学会如何访问windows网络共享
- 学会如何配置打印机、闪盘等硬件设备
- 学会如何播放音乐、电影等多媒体文件
- 学会如何查看系统状态
- 学会安装软件
- 知道什么是root用户
- 了解Linux的文件树
- 了解用户、组,和文件的权限
- 学会打开命令行界面
- 学会以下这些命令
cd
ls
pwd
cp
mv
rm
mkdir
rmdir
which
chmod
chown
echo
find
locate
ps
kill
sort
tail
head
cat
top
vmstat
man
- 学会管道 (
|
) - 学会重定向 (
>
,<
,>>
) - 学会如何进程控制
- 学会简单的shell脚本编程
- 阅读「The Linux Command Line」 (英语)
- 阅读「鸟哥的Linux私房菜」
- 阅读「Linux权威指南」 ($)
如果您觉得自己已经入门了,您应该可以
- 安装并顺利进入Linux系统
- 知道在其他系统里的软件,在Linux应该使用什么软件
- 知道如何配置网络,并能够顺利访问网络
如果您觉得自己运用已经比较熟练,您应该可以
- 知道如何配置常用硬件
- 知道如何查看系统当前状态
- 知道如何安装、卸载软件
如果您觉得已经更进一步,您或许还能够
- 知道命令行是什么
- 能够在命令行下做一些常用的操作
- 会写简单的shell脚本
- 或许还会对the hard way里的内容也感兴趣? XDDDDD
选择一种优秀的发行版,适合您的使用习惯,这些发行版对使用者有更高的要求,知道自己需要什么样风格的系统。
LFS比较特殊,从头构建一个Linux系统,需要一个可以运行的Linux系统,7.0以前可以使用提供的LiveCD,而7.0开始LiveCD暂不可用
当然,不使用这些发行版也丝毫不影响您学习Linux的过程
- 学会您认为应该学会easy way里的全部
- 知道Linux其实是指Linux核心,而常见的系统都是使用核心,外围程序、工具,是用户能够访问硬件,完成自己的工作
- 知道Linux的几乎所有工作都是可以在命令行下完成的
- 知道什么是包管理器,知道自己所使用发行版的包管理器是什么
- 知道什么是boot loader
- 知道什么是文件系统
- 学会以下命令的使用
sed
awk
- 按需求学会以下软件的使用
emacs
vim
- 知道什么是环境变量
- 知道下列环境变量的作用
PATH
HOME
TERM
MAIL
SHELL
EDITOR
PAGER
LANG
LC_ALL
CHOST
CFLAGS
CPPFLAGS
CXXFLAGS
LDFLAGS
- 知道Linux下常见软件都是开源、可以自己编译
- 知道什么是编译器、连接器
- 知道make的作用
- 知道什么是工具链
- 知道什么是coreutils
- 知道什么是binutils
- 学会如何从源代码安装软件
- 学会如何编译Linux核心
如果您觉得自己已经入门了,您应该可以
- 工作环境切换到Linux环境下
- 解决常见的系统故障,例如软件错误、网络问题等
- 能够无障碍地在命令行下完成常见工作
- 懂得及时求助man,翻手册,确认参数的用法
如果您觉得自己运用已经比较熟练,您应该可以
- 熟练地使用包管理器,安装、卸载软件,升级系统
- 在命令行熟练查看系统当前配置、状态,管理它们
- 知道如何处理定时任务
- 会从源代码编译安装软件
如果您觉得已经更进一步,您或许还能够
- 熟练使用vim或者emacs
- 您或许已经不再使用Gnome、KDE、Xfce等常见DE
- 会给使用地发行版打包软件,发布
- 通过脚本解决大部分日常工作
当您觉得自己比较深入了,您或许
- 使用源代码发行的Linux,例如LFS
- 构建自己的工具链
- 知道编译参数的优化
- 选择核心的功能
- 使用核心以及库来开发自己的软件
- 「Unix环境高级编程」 ($)