Linux到底学什么?如何学?

Posted it-artical

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux到底学什么?如何学?相关的知识,希望对你有一定的参考价值。

Linux是一套免费使用和自由传播的类Unix操作系统,是多用户、多任务、支持多线程和多CPU的操作系统。Linux继承了Unix以网络为核心的设计思想,是一个出色的性能稳定的多用户网络操作系统。

技术图片 

现在会点Linux基本操作的人大有人在、多如牛毛,然而,真正把Linux运用到极致的少之又少,这就造成了各大论坛非常火热。

Linux既然这么受欢迎,那么我们该如何去学?到底学什么呢?

首先要说明一点:学Linux切忌意气奋发、心血来潮,所谓“冲动是魔鬼”,这篇文章是写给那些真正想成为Linux高手的,并想运用Linux做事情的人的。

其次,Linux操作系统主要包括两大部分:文件系统常用命令及技巧

一、文件系统(文件类型、文件结构)

1.1文件类型

普通文件(regular file):就是一般存取的文件,由ls -al显示出来的属性中,第一个属性为 [-],例如 [-rwxrwxrwx]。

目录文件(directory):就是目录,第一个属性为 [d],例如 [drwxrwxrwx]。

连接文件(link):类似Windows下面的快捷方式。第一个属性为 [l],例如 [lrwxrwxrwx]。

设备与设备文件(device):与系统外设及存储等相关的一些文件,通常都集中在 /dev目录。通常又分为两种:块设备文件和字符设备文件。

套接字(sockets):这类文件通常用在网络数据连接。第一个属性为 [s],最常在 /var/run目录中看到这种文件类型。

管道(FIFO,pipe):它主要的目的是,解决多个程序同时存取一个文件所造成的错误。FIFO是first-in-first-out(先进先出)的缩写。第一个属性为 [p]。

1.2文件结构

/:根目录,所有的目录、文件、设备都在/之下,/就是Linux文件系统的组织者,也是最上级的领导者。

/bin:bin系统所需要的那些命令位于此目录。

/boot:Linux的内核及引导系统程序所需要的文件目录,比如 vmlinuz initrd.img 文件都位于这个目录中。

/cdrom:可将光驱文件系统挂在这个目录下。例如:mount /dev/cdrom /cdrom

/dev:dev 是设备(device)的英文缩写。在这个目录中包含了所有linux系统中使用的外部设备。

/etc:在这个目录下存放了系统管理时要用到的各种配置文件和子目录。要用到的网络配置文件,文件系统,x系统配置文件,设备配置信息,设置用户信息等等。

/home:用来存放用户的主目录。

/lib:lib是库(library)英文缩写。这个目录是用来存放系统动态连接共享库的。

/lost+found:有时系统发生问题,有很多的文件被移到这个目录中,可能会用手工的方式来修复,或移到文件到原来的位置上。

/mnt:这个目录一般是用于存放挂载储存设备的挂载目录的,比如有cdrom等目录。

/media:挂载那些usb接口的移动硬盘(包括U盘)、CD/DVD驱动器等等。

/opt:这里主要存放那些可选的程序。

/proc:可以在这个目录下获取系统信息。

/root:Linux超级权限用户root的家目录。

/sbin:这个目录是用来存放系统管理员的系统管理程序。

/selinux:对SElinux的一些配置文件目录,SElinux可以让linux更加安全。

/srv服务启动后,所需访问的数据目录,举个例子来说,www服务启动读取的网页数据就可以放在/srv/www中

/tmp:临时文件目录,用来存放不同程序执行时产生的临时文件。/tmp就用来存放临时文件的。/var/tmp目录和这个目录相似。

/usr

这是linux系统中占用硬盘空间最大的目录。用户的很多应用程序和文件都存放在这个目录下。

/usr/local:这里主要存放那些手动安装的软件。

/usr/share :系统共用的东西存放地,比如 /usr/share/fonts 是字体目录,/usr/share/doc和/usr/share/man帮助文件。

/var:可以理解为vary的缩写,/var下有/var/log 这是用来存放系统日志的目录。/var/ www目录是定义Apache服务器站点存放目录;/var/lib 用来存放一些库文件,比如mysql的,以及MySQL数据库的的存放地。

二、常用命令及技巧

在这里只针对通用命令做些介绍,后续更新吧。

1.date :print or set the system date and time

2. stty -a: 可以查看或者打印控制字符(Ctrl-C, Ctrl-D, Ctrl-Z等)

3. passwd: print or set the system date and time (用passwd -h查看)

4. logout, login: 登录shell的登录和注销命令

5. pwd: print working directory

6. more, less, head tail: 显示或部分显示文件内容.

7. lp/lpstat/cancel, lpr/lpq/lprm: 打印文件.

8. 更改文件权限: chmod u+x...

9. 删除非空目录:rm -fr dir

10.拷贝目录: cp -R dir

11. fg jobid :可以将一个后台进程放到前台。

Ctrl-z 可以将前台进程挂起(suspend), 然后用bg jobid 让其到后台运行。

job & 可以直接让job直接在后台运行。

12. kill 的作用: send a signal to a process. eg: kill -9 发送的是SIG_KILL信号。。。 具体发送什么信号 可以通过 man kill 查看。

13. ps 的用法, ps -e 或 ps -o pid,ppid,session,tpgid, comm (其中session显示的sessionid, tpgid显示前台进程组id, comm显示命令名称。

最后,对于初学者还是高手而言,一本工具书至关重要。高手的工具书说白了就是Linux官方的帮助文档。对于初学者,可以参考官方文档或者选择一本适合自己的工具书,经别人介绍的《Linux就该这么学》这本书,pdf格式的,非常不错,作者写书的思路非常清晰,实例比较多,还有助于红帽相关认证的提升,对于初学者来说是个不错的选择。还有Linux命令大全:https://www.linuxcool.com/

 

祝我们能在Linux的世界里自由的翱翔!

以上是关于Linux到底学什么?如何学?的主要内容,如果未能解决你的问题,请参考以下文章

学Linux到底学啥?

学Linux到底需要学什么

Linux从头学07:中断那么重要,它的本质到底是什么?

如果想学Linux,应该怎么学?

程序员到底要学什么?

linux 怎么学啊?