文章目录
Linux概述
Linux简介
- 自由软件之父:理查德·斯泰尔曼(Richard Stallman)起草并撰写GNU计划为保证GNU软件的可以自由地使用、复制、修改和发布。
- Linux之父: 林纳斯•本纳第克特•托瓦兹(Linus Benedict Torvalds)根据UNIX修改,在1991年10月首次发布0.0.1版本。
- Linux的特点: 完全免费,多用户多任务,良好的可移植性,良好的界面,设备独立性,完全稳定。
- Linux体系结构: Linux内核,系统程序及运行期库,shell,应用程序。(由内而外)
- Linux发行版本:
Debian(debian、deepin、Ubuntu)
Red hat(Redhat、CentOS、Fedora)
其他发行版本(Gentoo、arch Linux、slack ware) - Ubuntu的发行版本:
Ubuntu是基于Debian发行版和GNOME桌面环境的一款Linux发行版,
Ubuntu的由南非企业家马克·夏特沃斯(Mark Shuttleworth)所创立,开发由英国Canonical有限公司主导。 - Linux应用领域: IT服务器,个人桌面应用,嵌入式系统应用。
Linux内核版本号
- 命名规则:
主版本号.次版本号.修正
- 注意:主版本号和次版本号标志着重要的功能变动,修正号表示较小的功能变更。
- 例如:以4.17.6版本为例,4代表主版本号,17代表次版本号,6代表修正号。
- 次版本特定的意义:
若是偶数数字,表示该内核是一个可以放心使用的稳定版;
若是奇数数字,则表示该内核加入了某些测试的新功能,是一个内部可能存在着BUG测试版。
如2.5.74表示是一个测试版的内核,2.6.22表示是一个稳定版的内核。
网络与配置
- tools安装
方法一:VMware虚拟机——>VMware tools安装。
方法二:ifconfig
工具安装。
命令:sudo apt install net-tools
/sudo apt-get update
。 - VMware网络配置:
桥接模式:将虚拟机直接连接到外部网络。
NAT模式:与虚拟机共享主机IP地址。
仅主机模式:在装用网络内连接虚拟机。 - SSH配置:
检测网络是否通畅:ping [网址(如:www.baidu.com)]
远程连接检查ssh是否安装:ssh localhost
安装ssh:sudo apt install openssh-serve
开启ssh:sudo /etc/init.d/ssh start
查看是否正确启动:ps -e|grep ssh
开发工具
- Vi编辑器
Vi编辑器的三种模式:命令模式、插入模式、底行模式。
1、命令→插入的命令
i
光标所在字符前开始插入。
a
光标所在字符后开始插入。
o
光标所在行的下面另起一新行插入。
I
光标所在行的行首开始插入,如果行首有空格则在空格之后插入。
A
光标所在行的行尾开始插入。
O
光标所在行的上面一行开始插入。
S
删除光标所在行并插入。
2、插入→命令的命令esc
3、底行→命令的命令自动切换(删除键)
4、命令→底行::或/
5、命令模式下的命令:
kjgl
对应上下左右。
x
删除光标所在的单个字符。
dd
删除光标所在的当前行。
n+dd
删除包括光标所在行的后边n行内容。
d+$
删除光标位置到行尾的所有内容。
yy
复制当前行。
p
粘贴。
6、底行模式下的命令
:q
退出vi编辑器。
:w
保存编辑后的内容。
:wq
保存并退出vi编辑器。
:q!
强行退出vi编辑器。
:wq!
强制保存文件并退出vi编辑器。
⚠️ 刚进入Vi编辑器是命令模式。vim相比vi更高级,是vi升级版,更适用于coding(编码)。 - GCC编辑器
GCC编辑过程分为四个步骤,分别是-E
预处理,-S
编译,-o
汇编和连接。
单文件编译 :gcc [可执行文件名]
文件编译并指定可执行文件名:gcc -o [编辑文件] [可执行文件名]
Linux基础操作
- X窗口系统(基于X的桌面环境)
X窗口系统是一种以位图方式显示的软件窗口系统。
KDE桌面环境
GNOME桌面环境
Xfce桌面环境
lxde桌面环境
Xorg桌面环境
注释:Ubuntu使用的桌面环境就是GNOME桌面环境。 - Gedit文本编辑器
简介:类似Windows文本,但优于Windows文本。 - 命令行界面
命令解释器:Shell
命令处理器:Bash(类似于Windows的cmd) - 终端中获取帮助
① help命令: 查看内建命令的作用和使用方法。
help 命令名
② 帮助选项: 查看外部命令的帮助文档。
命令名 --help
③ man命令: 查看在线文档帮助
man 命令名
注释:q
退出man。 - Nano编辑器
输入nano
直接打开。输入N
不会保存,上面有使用快捷键,ctrl键组合使用。
nano 文件名
:打开文件。
文件系统基础
文件系统概述
- 硬件组成及分区
硬盘:机械硬盘和固态硬盘。
机械硬盘:由盘片、磁头、主轴、电机、机械臂等几个部分组成。
固态硬盘:具有低功耗、无噪音、抗震动等特点,读写速度远高于传统硬盘。 - 常见的文件系统
FAT文件系统:能够支持4GB的单个文件,最大2TB的硬盘。
NTFS文件系统:单个文件最大支持2TB。
EXT系列文件系统:EXT4单个文件最大支持16TB,ext4是Linux默认文件系统。
VFS文件系统:Linux引入的虚拟文件系统。
其他文件系统:MINIX、UMSDOS、MSDES、FAT32、NTFS、PROC、STUB、NCP、HPFS、AFFS以及UFS等多种文件系统。
目录与路径
- 文件系统层次结构标准: FHS 3.0
- 目录:即文件夹。Ubuntu只有一个根目录(目录树起点)
- 特殊目录符号:
.
当前目录,..
上层目录,~
当前账户主目录,-
上一个工作目录,~
accountaccount账户的。 - 相对路劲和绝对路径: 相对路径不从根开始
./
,绝对路径直接从根开始/
。 - PATH环境变量:
echo $PATH
- cd切换目录:
cd [路径]
目录管理(操作)
- 显示当前目录的绝对路径:
pwd
- ls命令
语法格式:ls [选项] [参数]
作用:查看目录与文件。
常用选项:
-l
显示当前目录下文件详细信息。
-h
显示转换之后的大小(转换成以K、G、M为单位)。
-a
显示当前目录下的全部文件(包含隐藏文件)。
-d
查看目录属性。
-t
按创建时间顺序列出文件。
-i
输出问价你的inode编号。
-R
列出当前目录下的所有文件信息,并以递归方式显示各个子目录的文件和子目录信息。
注释:ls
默认打印当前路径下的文件名,.
表示当前目录,..
表示上一级目录。 - mkdir命令
语法格式:mkdir [选项] 参数
作用:创建文件夹(直接后缀文件名:创建一个当前目录下目录)。
常用选项:
-p
可以一次性创建多层目录(如mkdir -p a/b/c
)。
-v
查看文件创建过程。 - cp命令
语法格式:cp [选项] 源文件或目录 目标目录
作用:复制文件或目录。
常用选项:
-r
递归处理,复制源目录所有内容(大小R都行)。
-p
复制的同时复制其所有文件属性。
-f
强行复制文件或目录,无论目的文件或目录是否已经存在。
-s
创建快捷方式。
注释:目标目录可以从命名,且必须复制的是当前目录下的目录或源文件。 - mv命令
语法格式:mv 源文件或目录 目标目录
作用:移动文件或目录,也可以用来重命名。
重命名:mv a.txt b.txt
移动:mv b.txt ../
移动且重命名:mv b.txt ../a.txt
注意:可以用 mv xx /tmp 的方式来将文件放入临时文件夹,系统重启后会自动删除。
(rm命令太危险,尽量不要用rm命令删除) - rm命令
语法格式:rm [选项] 文件或目录
作用:删除文件或目录。
常用选项:
-f
强制删除文件或目录。
-r
用来删除文件或目录。
-i
在删除文件或目录时对要删除的额呢绒逐一进行确认(y/n)。
文件管理
- 文件类型
-
普通文件:按照文件内容,大致可以分为:纯文本文档、二进制文件、数据格式文件。
d
目录:(directory)文件夹。
l
连接文件:(link)快捷方式。
b
块设备:(block)硬盘、U盘、SD卡等设备。
c
字符设备:(character)一些串口端口的接口设备,如鼠标、键盘等。
s
套接字:(sockets)数据接口文件,常用在网络上的数据连接。
p
管道:(pipe)主要目的在于解决多个程序同时访问一个文件造成的错误问题,是一种先进先出的队列文件。
查看文件类型:
①ls -l|grep -w newyear
②file newyear
⚠️ ls前的d和file的directory是文件类型,newyear指定的文件夹名。 - 管道
最基本的进程通信机制,实质是由内核管理的一个缓冲区。
Linux操作系统有匿名管道、命名管道两种管道。
|
匿名管道,使用如下:ls -l|grep -w newtyear
。
作用:连接两个及以上命令,将前一个命令的输出导入第二命令作为输出参数,起辅助作用。
FIFO
命名管道,使用如下:mkfifo teud1_fifo
(创建命名管道)。 - which命令
作用:只能查找命令绝对路径位置。
语法格式:which 命令
三种搜索命令
- file命令
语法格式:file [选项] 文件名
作用:查看文件的类型和信息。
-b
列出辨识结果时,不显示文件名称。
-c
详细显示指令执行过程。
-L
直接显示符号连接所指向的文件的类别。
-v
显示版本信息。
-z
尝试去解读压缩文件的内容。 - grep命令
语法格式:grep [选项] "模式" [文件]
作用:搜索筛选命令(关键字即模糊查找)。
常用选项:
-a
不要忽略二进制数据。
-b
除显示查找到的行号外还显示匹配字符所在的整个文档的位置。
-c
显示匹配关键词的内容的行数合计。
-e
指定关键词,使用该选项可以指定多个关键词。
-E
指定正则表达式。
-i
查找时不区分大小写。
-n
显示匹配行的行号。
-w
显示和关键词完全匹配的内容。
-o
只输出文件匹配到的内容。 - locate命令.
语法格式:locate 文件名
-c
输出超找到的文件数。
-l
输出查找到的前n个文件。
注释:可以模糊查询,且搜索到的是绝对路径。 - find命令.