
首先要感谢大康老师对我在Linux操作系统上的教导。
今天来讲一下用途广泛的Linux的基础入门教程
仅仅是做入门使用,如果想更加深入的学习那就需要自己做探索了。
本次例子使用的是kali linux(ARM架构)是基于Debian的Linux发行版本,可能会与其他版本操作有所不同,但是出入并不是很大。比如说现在比较常用的Centos 、RedHat、Ubantu等等。
一.Linux介绍
1.Linux是什么?
Linux是与Windows、MacOS齐驱并驾的三大系统之一。我们现在比较流行的Android手机操作系统一种基于Linux的自由及开放源代码的操作系统。我们现在平常工作接触Windows比较多,而接触Linux操作系统的机会比较少,因为LInux大部分用在服务器端、嵌入式系统等等运用比较广泛,我们能够接触的机会比较少,所以对这个操作系统可能是一点不了解。Linux是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。
2.Linux历史
林纳斯·本纳第克特·托瓦兹,在赫尔辛基大学计算机系时,根据个人兴趣在unix的基础上自己新编出了LInux系统,并且以自己的名字对系统进行命名Linus。

Linus可能是唯一几个计算机类教父中没有秃头的。
他也因为成功地开发了操作系统Linux内核而荣获2014年计算机先驱奖(For pioneering development of the Linux kernel using the open-source approach)。他的获奖创造了计算机先驱奖历史上的多个第一:第一次授予一位芬兰人;第一次授予一位“60后”(其实只差3天,就是“70后”);获奖成果是在学生时期取得的。
3.Linux可以做什么?
- 服务器:做www服务器、ftp服务器、邮件服务器、dns服务器、路由器等等。
- 嵌入式:工业机器中的系统、手机操作系统、像一些学习机、机顶盒等等都是依托于LInux。
- 正常工作中使用:除了可支持的游戏比较少,windows可以使用的功能linux基本都可以。
3.Linux优点
- 源码开源:由全世界许许多多的爱好者们一起维护,发现了系统bug后会被及时处理。
- 丰富的软件支持:因为是全世界的爱好者们一起维护,许多win平台下不支持的软件在Linux都可以完美支持。并且安装Linux系统之后多媒体软件,办公软件无需后期安装。
- 多用户多任务:Linux是真正意义上的多用户多任务,每个用户会有自己的home文件,并且Linux权限规定较为明确,互不影响,用户可以自己调度自己的资源与系统资源。
- 安全性极高:因为Liunx是开源系统,并且拥有大量的维护者且自身带防火墙等,而且权限严格,使Linux操作系统极少受到攻击。
- 完善的网络功能:LInux内部内置了许许多多的网络服务软件、数据库、网页开发工具等等,如:Apache、SQLite、Mysql、ssh、jsp等。这也使Linux在服务器使用方面游刃有余。
- 极高的稳定性:Linux 内核的源代码是以标准规范的32 位(在64 位CPU上是64 位)的计算机来做的最佳化设计,可确保其系统的稳定性。
4.Linux系统常用的版本
- RedHat

- SuSe

- Mandrake

- Ubantu

- Debian

- CentOS

- Kali Linux(基于Debian)

5.Linux实际运用
在这部分我就给大家讲讲我在linux系统上所运用过得相关经验吧。
- 做网站服务器:最初是做了一个静态网站放入,没有实际用途,只能展示不能交互。如果有时间打算合作做一个Jsp做后台的网站。
- 安全测试:这方面一定要注意!不要轻易去做,自己在局域网里攻击自己电脑玩玩就行,不要拿着kali去做坏事!!!这个是非常禁止不提倡的!
- 搭建ftp服务器:这个做起来没什么难度,安装一个vsftpd服务器端就可以。
- 跑代码:写爬虫程序的时候用的不是很长,主要是爬取时间长,所以写好程序放到Linux下跑即可。
- 使用基于Debian发行版本的Raspberry Pi做人脸识别。等等
LInux实际用途特别多,只能你们根据自己兴趣自己去发掘。
二.Linux系统基础
1.操作系统相关知识
略过
2.Linux系统分区命名规则
hda指的是第一个IDE硬盘
hda1指的是第一个硬盘上的第一个分区
hda2指的是第一个硬盘上的第二个分区
hdb指的是第二个IDE硬盘
3.Linux操作系统分区
Linux系统中最多有四个主分区,第一个硬盘的前四个分区为主分区,可有多个逻辑分区。
4.linux操作系统内文件结构


- /bin:bin是Binary的缩写。这个目录存放着普通用户经常使用的命令文件。
- /sbin:s就是Super User的意思。这里存放的是系统管理员使用的系统管理程序。
- /boot:这里存放的是启动Linux时使用的一些核心文件,包括内核、一些链接文件以及镜像文件
- /dev:dev是Device(设备)的缩写。该目录下存放的是设备文件,在Linux中访问外部设备的方式和访问文件的方式是相同的。
- /proc:这个目录是一个虚拟的目录,它是系统内存的映射。我们可以通过直接访问这个目录来获取系统信息。
- /etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录。
- /lib:这个目录里存放着系统最基本的动态链接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
- /lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
- /mnt:在这里面有几个目录,系统提供这些目录是为了让用户临时挂载别的文件系统,我们可以将光驱挂载在/mnt/cdrom上,然后进入该目录就可以查看光驱里的内容。
- /root:该目录为系统管理员(即超级用户root)的用户主目录。
- /home:用以存放普通用户的主目录。在Linux中,每个用户都有一个自己的目录,一般以用户的账号命名。
- /var:这个目录中存放着在不断更新的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种缓冲区和日志文件。
- /tmp:存放暂时文件。
5.系统的登陆

root:当前登陆的用户名。
@:表示地址域名。
kali:表示当前登陆的主机名。
/:当前所在目录(我当前在根目录)
#:管理员用户
$:普通用户。
6.Linux文件类型
这里先讲一下linux中集中常见文件类型,具体后面再说
- 普通文件(-)Linux中最多的一种文件类型, 包括 纯文本文件(ASCII);二进制文件(binary);数据格式的文件(data);各种压缩文件.第一个属性为 [-]。
- 目录文件(d)就是目录。
- 字符设备文件(c)输入设备,如键盘、鼠标。
- 块设备文件(b)就是存储数据以供系统存取的接口设备,简单而言就是硬盘。
- 套接口文件(s)这类文件通常用在网络数据连接。
- 符号链接(l)类似Windows下面的快捷方式。
三.Linux下基本操作
1.重启、关机命令
重启:shutdown -r <time>、reboot、Init6
关机:shutdown -h <time>、halt、Init0、poweroff
Init启动命令:
- init0:关机
- init1:单用户模式
- init2:多用户模式
- init3:完全多用户模式
- init4:安全模式
- init5:进入图形界面
- init6:重启
2.进入文件夹以及显示命令
①cd命令:进入文件夹
eg:进入etc目录下的hellow文件夹
cd /etc/hellow
②ls命令
ls命令常用的选项有-l 和-a
-l:显示文件详细信息

-a是显示隐藏文件
比如我们先普通查看/~

使用-a

可以发现很多隐藏文件也显示出来了。
3.man命令与help命令
man命令和help命令都很相似,都是查看一个命令的选项,比如说我们不知道ls命令是干什么的,我们就可以man ls或者 ls --help。
man ls

ls --help

4.echo命令与printf
echo和printf都是输出命令,printf可以被称为是echo的升级版。用法基本差不多。
如:输出我是全麦圈
echo "我是全麦圈"
printf "我是全麦圈"

从中可以看出printf是不自动换行的 因此需要n来给换行
echo常用的命令选项:
-n:不要打印最后面的换行符。
-e:识别并解释转义字符。
-E:不解释转义字符。
在这个地方介绍一下常用转义字符
n 换行。
r 回车。
t 水平制表符。
5.主机信息与用户
whoami是查看当前用户

uname是查看主机信息
一般uname -a查看详细信息

6.其他基础补充命令
clear:清除屏幕信息。
date:显示日期和时间。

cal:显示日历

expr:算数运算

OK,Linux下基础命令就介绍完了,下面开始进阶。
大全麦圈齁死你:Linux超详细0基础入门篇(二)zhuanlan.zhihu.com