MSIAM
V2EX  ›  Linux

想系统进阶一下 Linux 求推荐一下工具书

By MSIAM at 2023 年 7 月 18 日 · 4045 次点击

RT

Linux 一直有断断续续用过。但是感觉一直很浅。 所以想进阶一下。

目前的水平的话: 基本的操作大致都会. 对于文件系统方面的操作只会 cfdisk ,mkfs ,tune2fs 等。 对于 systemd 和 initd 这两个只会最基本的 start 之类的操作。其他基本不熟。 网络方面也不是特别熟悉。 gnome 这种也不熟悉。 进程相关的只会大概 PS ,top 大概会看,kill 勉强会用但是不熟悉。 包管理器方面只熟悉 apt ,opkg 。

比较想进阶的方向就是内核方向,还有 GCC ,Make 之类的。 虽然目前来说有最基本的排障能力但是太弱了。 很多问题都排查得很浅显。

书比较希望是中文的比较好。

另外还想知道一下我目前这个水平大概是什么程度?

23 条回复  •  2023-07-19 13:29:13 +08:00
wudiiiii
   1
wudiiiii  
   2023 年 7 月 18 日   ❤️ 3
工具就是拿来用的,有啥不懂可以问 gpt ,”想要系统学习“是完美主义心态,不可取。

”还有 GCC ,Make 之类的“ 可以看看程序员的自我修养。
121812
   2
121812  
   2023 年 7 月 18 日
《性能之巅》
retanoj
   3
retanoj  
   2023 年 7 月 18 日
man
MSIAM
   4
MSIAM  
OP
   2023 年 7 月 18 日
@wudiiiii 的确有在用的,但是感觉有很多东西不明白。想买一本合适一点的用来作为类似词典的用法吧。
而且还是感觉缺少了很多的基本概念。比如 k3s ,qemu 之类的东西是什么。知道这些东西,,但是我用的都是别人打包好的成品系统,所以完全没关心过这方面的东西、
MSIAM
   5
MSIAM  
OP
   2023 年 7 月 18 日
@MSIAM 严格来说是只用过几个发行版,例如 ubuntu ,TrueNAS ,Unraid ,Openwrt ,群晖,AIX ,
drvDPqg5nO7kZWhv
   6
drvDPqg5nO7kZWhv  
   2023 年 7 月 18 日
看 windows 核心编程
MSIAM
   7
MSIAM  
OP
   2023 年 7 月 18 日
@guilinxiaobing 草,这不是 Windows 的吗
drvDPqg5nO7kZWhv
   8
drvDPqg5nO7kZWhv  
   2023 年 7 月 18 日
@MSIAM 没错,看完就觉得 linux 简单多了
MSIAM
   9
MSIAM  
OP
   2023 年 7 月 18 日
@guilinxiaobing 倒不是觉得 Linux 难,只是没有思路。没有一个学习路径
drvDPqg5nO7kZWhv
   10
drvDPqg5nO7kZWhv  
   2023 年 7 月 18 日
如果仅仅是使用,那也够了,没必要深入;
那些使用得多的工具命令自然也熟悉;
像上面这些工具命令,不就和在 windows 新建文件夹、打开进程管理器,打开服务管理器这此鼠标双击的工作吗。
如果要深入了解,自然是先了解平台的 api ,然后开发应用程序(工具),再深入的到驱动。
ltkun
   11
ltkun  
   2023 年 7 月 18 日
关键学了干嘛 正常么 windows 怎么用 linux 也可以 很多地方可以做的更好
Evovil
   12
Evovil  
   2023 年 7 月 18 日   ❤️ 1
实践是最好的学习和进阶的方法

"比较想进阶的方向就是内核方向,还有 GCC ,Make 之类的。 虽然目前来说有最基本的排障能力但是太弱了。 很多问题都排查得很浅显。"

看表述是想精进内核和原理相关,看上面的表述就基本运维水准(可能都没到)。。

要想对 linux 有深度理解,还是写程序吧。
先在 linux 下写一点用户态程序,摸清楚基本的 api ,posix 接口,网络,文件操作 IO 之类的
再进阶就是内核相关的,写一点驱动之类的。

自己不写,光看,看完就忘。。
在实际使用中遇到什么再去看什么,当需要研究网络相关就去看 TCP/IP 卷 1234 ,有驱动需求可以看 unix 环境高级编程之类的,也可以看源码解决问题,把问题解决了才会收获知识。

你要系统学习,数据结构,计算机原理,算法开始看起来,当然你会问这些问题,肯定默认你不会看的完这些了。从实践开始吧,先培养兴趣,获得成就感。
LindsayZhou
   13
LindsayZhou  
   2023 年 7 月 18 日
内核跟应用软件关系不大,你举的例子都不是内核里的东西。所有才有人强调要叫 "GNU/Linux" 。
各个发行版内核可能会有一些小修改,只用来学习都没什么问题。

我在看这本书 [深入 Linux 内核架构]( https://book.douban.com/subject/4843567/ ) 。
个人感觉压力不是很大。只是看代码实现的部分的时候,需要自己拿纸笔画一下,不然函数变量什么的太多,只靠脑子理不清楚。
mineralsalt
   14
mineralsalt  
   2023 年 7 月 18 日   ❤️ 1
学不完, 根本学不完, 需要什么就去查什么
zjsxwc
   15
zjsxwc  
   2023 年 7 月 18 日
如果你要搞 linux 内核,建议时常逛逛 https://kernelnewbies.org/Documents
如果和我一样工作不涉及 kernel 、驱动之类的,只是使用与运维,建议看 arch wiki 。
KingHL
   16
KingHL  
   2023 年 7 月 18 日
unix 环境高级编程
unix 网络编程卷
MSIAM
   17
MSIAM  
OP
   2023 年 7 月 18 日
@Evovil 明白了,多谢
Perfect1zsh1t
   18
Perfect1zsh1t  
   2023 年 7 月 18 日
unix 环境高级编程
unix 网络编程卷

上面老哥推荐的这些挺不错的,推荐看看,除此之外在学习网络编程的时候推荐看看游双的《 Linux 高性能服务器编程》这本书,这些学完大概对 Linux 系统调用的使用有一个认识,也能更深入理解这些 Shell 命令背后的实现,同时对网络通信有一定认识。
acerphoenix
   19
acerphoenix  
   2023 年 7 月 19 日
linux 大致分三种吧,第一种玩的,折腾各种桌面啊,工具啊,原始构建啊;第二种运维的,之前看鸟哥私房菜基本够了或者把他当目录方向,毕竟比较久远了。第三种系统开发的, 那就得从 c 语言计算机组成操作系统看起了,然后再看 linux 内核设计实现,unix 高级编程啥的。
rickiey
   20
rickiey  
   2023 年 7 月 19 日
unix 环境高级编程
unix 网络编程卷
skyrem
   21
skyrem  
   2023 年 7 月 19 日   ❤️ 1
建议折腾一下 Gentoo ,自我感觉折腾完以后对 Linux 的认知提升了许多
tomychen
   22
tomychen  
   2023 年 7 月 19 日
@skyrem #21 我之前有跟朋友提过折腾一下 gentoo 能对系统的“结构”有一个更深的理解。但后来被一些理论跟击溃了,就不提这事儿了。
MSIAM
   23
MSIAM  
OP
   2023 年 7 月 19 日
@acerphoenix 多谢多谢,这个答案对于我来说的确很准确了。明示了三条路。
Distributions
› Ubuntu
› Fedora
› CentOS
中文资源站
› 网易开源镜像站
© 2026 V2EX · 43ms · 3.9.8.5