首页 > 系统相关 >Linux基础学习详细版(嵌入式开发必学)

Linux基础学习详细版(嵌入式开发必学)

时间:2024-04-02 20:33:18浏览次数:29  
标签:tar Linux 必学 嵌入式 gec 命令 释义 ubuntu

一、Linux简介

什么是Linux?Linux就是跟平时大家接触的Windows 操作系统软件一样,Linux 也是一个操作系统软件,Linux跟Windows 不同之处在于,Linux 是一套开放源代码程序的、可以自由传播的类 Unix 操作系统软件。什么是开源?开源就是开放源代码,指的是将Linux系统的源代码公开,允许任何人查看、修改、使用和重新分发的一种软件开发和发布模式。因为Linux开源和免费,所以拿到源码的开发者,原则上可以经过定制、裁剪,使得Linux可以适应任何硬件平台,所以我们看到Linux的适用领域非常宽广,从个人穿戴设备、到工业控制,从家用电视机电盒、智能路由到企业智能设备,从汽车娱乐系统、到大型服务器集群,几乎所有带智能的电子设备都可以看到Linux的身影。

Linux最初是1991年由芬兰的Linus Torvalds发起,目的是为了避开当时的类Unix的版权问题。第 1 版本于 1991 年 9 月发布,当时仅有 10 000 行代码。Linux从一开始就是开源的,由网上组织松散的开发者协作完成,并在1994年开始遵循GPL许可协议。

                                                Linux、Git创始人 —— 林纳斯·托瓦兹

                                                             这是真大佬,同学们要记住他! 

1、Linux的优点

①大量可用软件及免费软件

Linux 系统上有着大量的可用软件,且绝大多数是免费的,比如 Apache、Samba、PHPMySQL 等。

②可移植性及灵活性

Linux 系统有良好的可移植性,它几乎支持所有的 CPU 平台,这使得它便于裁剪和定制。我们可以把 Linux 放在 U 盘、光盘等存储介质中,也可以在嵌入式领域广泛应用。

③稳定性和安全性

因为Linux 开放源代码,将所有代码放在网上,全世界的程序员都看得到,有什么缺陷和漏洞,很快就会被发现,从而成就了它的稳定性和安全注。

命令行界面

Linux提供了强大的命令行界面(CLI),使用户能够高效地执行复杂的任务。这对于系统管理员和高级用户来说是一个巨大的优势。

强大的网络功能

Linux在网络方面表现出色,支持各种网络协议和服务。它被广泛用于服务器领域,包括Web服务器、文件服务器和数据库服务器等。(呃我后面估计会写网络编程也是基于Linux的)

社区支持

Linux有一个庞大的全球社区,用户可以在其中寻求帮助、分享经验和解决问题。这意味着当遇到问题时,用户通常可以快速找到解决方案。

2、Linux的缺点

①学习曲线

对于初学者来说,Linux可能有一定的学习曲线。特别是对于那些不熟悉命令行界面的用户来说,可能需要一些时间来适应。

软件兼容性

虽然Linux支持大量的软件和应用程序,但与Windows相比,某些特定软件(如某些游戏和专业应用程序)可能无法在Linux上运行或需要额外的配置。

硬件支持

尽管Linux对大多数硬件都有良好的支持,但在某些情况下,特定的硬件设备或驱动程序可能不如在Windows上那样容易找到或安装。

3、Linux的发行版本

我们平时接触的Ubuntu、Red Hat、CentOS等等直接说成 Linux 其实不是很专业的,它们是 Linux 的发行版本,更确切地说,应该叫作“以Linux为核心的操作系统软件”。为什么不能直接叫成Linux?因为李纳斯•托瓦兹大神开发的 Linux 只是一个内核。内核指的是一个提供设备驱动、文件系统、进程管理、网络通信、内存管理、虚拟文件系统等功能的系统软件,内核并不是一套完整的操作系统,它只是操作系统的核心。一些组织或厂商将 Linux 内核与各种软件和文档包装起来,并提供系统安装界面和系统配置、设定与管理工具,就构成了 Linux 的发行版本。

Linux有众多的发行版本,每个版本都有其特定的用途和特点,比如:

  1. Ubuntu:Ubuntu是最受欢迎的Linux发行版之一,以其易用性和稳定性而闻名。它拥有强大的社区支持和友好的用户界面,适合Linux新手入门。Ubuntu的软件仓库庞大且持续更新,涵盖了大多数常用的应用程序和工具。

  2. CentOS:CentOS是专注于服务器环境的Linux发行版,以稳定性、安全性和支持周期长而受到企业用户的青睐。它是基于Red Hat Enterprise Linux(RHEL)的源代码构建的,提供了与RHEL相同的特性和功能,但没有商业支持。

本教程也是基于Ubuntu来讲解的,包括后面我打算写的文件IO、系统编程、网络编程也是基于Ubuntu。Ubuntu及Vmware软件在我的Linux基础专栏已有详细的教程。

二、Linux目录结构、Ubuntu终端使用说明

开始学习Linux之前,跟同学们废话一下。大多数初学者已经习惯了使用 Windows 的图形界面来完成操作,但是我们在学习和日后使用 Linux 时基本上在命令行模式下来完成操作的,所以刚开始会比较困难。其实用多了敲多了就会熟悉了,我刚开始学的时候也是比较困难,有些命令记不住还要去翻书才会敲。这里初学者会问什么是命令行模式?Linux命令行模式,即Linux终端,是一种命令提示符页面,用户可以通过输入命令来操作系统、运行程序、管理文件等。它是用户与操作系统内核之间的接口,提供了一个纯“字符”形式的操作环境,可以使用各种字符化命令对系统发出操作指令。window也有命令行模式,win键+R会打开Windows系统的“运行”对话框,然后出入cmd就会打开命令行模式。有哪些命令后面会给大家一一写好。

Linux系统的目录结构中,不同的文件夹分属不同的功能,列表如下:

目录名

功能

/

根目录,所有的分区和文件的起点

/bin

普通用户可用的命令所在路径

/sbin

超级用户可用的命令所在路径

/etc

各种配置文件所在路径

/home

所有普通用户的家目录所在路径

/lib

系统库文件所在路径

/boot

系统内核镜像文件所在路径

/dev

设备节点所在路径

/usr

第三方库和服务默认安装路径

/proc

系统进程数据在文件系统中的挂载路径

/sys

系统内核数据在文件系统中的挂载路径

/var

存放一些“易变”的文件,例如安装包、系统日志等

/mnt

默认的分区挂载路径

1、linux和windows系统文件系统不同

2、为什么Linux系统叫根路径结构呢?

3、ubuntu终端的使用方法:

1、打开Ubuntu终端

快捷命令:ctrl + alt + t

2、打开同样路径的终端

快捷命令:ctr + shift + n

3、分屏打开/关闭终端

打开分屏快捷命令:ctrl + shift + t

关闭分屏快捷命令:ctrl + shift + w

4、全屏显示终端

全屏终端:F11

5、快速定位命令行光标位置

快速定位到命令末尾: ctrl + e 快速定位到命令开头: ctrl + a

6、快速复制粘贴

复制终端的文本:选中即已复制         // 快捷命令:ctrl + shift + c

文本粘贴到终端:按下鼠标滚轮         // 快捷命令:ctrl + shift + v

7、放大和缩小终端

放大终端:ctrl + shift + "+" 缩小终端:ctrl + "-"

8、杀死某个进程

一、杀死前台进程: ctrl + c(快捷键)

二、杀死后台进程: ps            // 调出进程,显示进程号

kill      进程号                                 // 轻轻地杀

kill -9  进程号                             // 狠狠地杀

// 前台:直接在终端上运行的程序

// 后台:在终端上运行的程序后面加个&符号

9、调出之前的命令快捷键

按击键盘的上下键,即可调出之前敲过的命令。

10、补全命令快捷键(帮你补全命令或路径名等)

// 建议:在终端上每敲一个命令,都用tab键检测一下,可以让我们避免很多命令或路径错误

11、解决Ubuntu终端的的路径名的过长的问题

三、Linux基础命令 

Linux命令是有很多的,目前大概有六七百个,但很多都是工作或者学习上用不到的(除非你想当Linux运维工程师),我带同学们学习,工作和学习使用频率很高并且必须记住的命令。(带*是必须记住的)

①基本命令

1、ls命令*
  • 释义:list,列出目录中文件的信息
  • 常见用法:

1. ls ==> 列出当前目录的文件名

2. ls -l ==> 列出文件详情

3. ls -a ==> 列出文件名(含隐藏文件(.开头的文件))

4. ls -la ==> 列出文件详情(含隐藏文件(.开头的文件))

5. ls /etc ==> 列出指定目录 /etc 的文件

2、alias命令
  • 释义:给一个命令取一个别名
  • 常见用法:

1. alias l='ls -l' ==> 给ls -l取个别名叫l

3、cd命令*
  • 释义:change directory,切换当前路径
  • 常见用法:

1. cd /etc ==> 切换到 /etc

2. cd ==> 切换到家目录

3. cd - ==> 切换到刚刚去过的地方

4. cd .. ==> 切换到上一级目录

5. cd ../../ ==> 切换到上上级目录

4、clear命令*
  • 释义:清屏
  • 常见用法:

1. clear

5、date命令
  • 释义:设置或查看日期时间
  • 常见用法:

1. date                                 ==> 查看当前日期时间

2. date -s "2020/12/12"        ==> 设置日期

6、echo命令*
  • 释义:回显,即将字符打印到屏幕上
  • 常见用法:

1. echo abcd ==> 输出字符串"abcd"

2. echo $PATH ==> 输出环境变量PATH的值

7、man命令*
  • 释义:manual,帮助手册
  • 常见用法:

1. man ls                 ==> 查阅关于 ls 的帮助信息

2. man -f read         ==> 列出所有有关 read 的帮助手册

3. man 2 read         ==> 查阅第2册中 read 的帮助信息

注意:man手册总共有9册,Ubuntu默认只安装了1册,其余的需要手工安装,指令如下:

sudo apt install manpages

sudo apt install manpages-dev

sudo apt install manpages-posix

sudo apt install manpages-posix-dev

8、pwd命令*
  • 释义:present work directory(printf working directory),显示当前工作路径
  • 常见用法:

gec@ubuntu:~$ pwd ==> 显示当前路径,简单易用,童叟无欺

9、sort命令
  • 释义:对文件内容按行排序并输出
  • 常见用法:

gec@ubuntu:~$ sort file.txt ==> 按默认ASCII码升序排列

gec@ubuntu:~$ sort file.txt -r ==> 按ASCII码降序排列

gec@ubuntu:~$ sort file.txt -n ==> 按数值升序排列

gec@ubuntu:~$ sort file.txt -nr ==> 按数值降序排列

10、uniq命令
  • 释义:unique,去除文件中重复的相邻的行(包括空格行)
  • 常见用法:

gec@ubuntu:~$ uniq file.txt

11、which命令*
  • 释义:查看命令所在路径(除了cd)
  • 常见用法:

1. 查看默认命令 ls 所在路径

gec@ubuntu:~$ which ls

2. 查看命令 qmake 的所有可能路径

gec@ubuntu:~$ which -a qmake

12、dpkg
  • 释义:手工安装 deb 软件包
  • 常见用法:

1. dpkg -i x.deb ==> 安装x.deb软件包

②文件管理命令

1、文件显示
a、 cat命令*
  • 释义:catch,显示文本文件的内容
  • 常见用法:

gec@ubuntu:~$ cat file.txt ==> 显示文本文件内容

gec@ubuntu:~$ cat -n a.c ==> 显示文本文件内容(并显示行号)

gec@ubuntu:~$ cat -A a.c ==> 显示文本文件内容(含不可见字符)

  • 注意:

在某些情况下,我们可能需要检测文件中那些不可见的字符。比如在Windows系统中编辑了程序源文件,放到Ubuntu系统中编译可能会出现字符错误,这是因为Windows系统中的某些回车符、制表符跟Ubuntu系统的不一致,导致无法编译,而这些字符是不可见的,因此可以使用上述 cat -A 来识别。

b、head/tail
  • 释义:查看指定文件的头部/尾部内容
  • 常见用法:

gec@ubuntu:~$ head file.txt

gec@ubuntu:~$ head -n file.txt // n是查看前面几行

gec@ubuntu:~$ tail file.txt

gec@ubuntu:~$ tail -n file.txt // n是查看后面几行

c、less/more命令
  • 释义:以分页方式查看长文件
  • 常见用法:

gec@ubuntu:~$ less file.txt           // 无百分比,但是可以看到输入,输入q退出

gec@ubuntu:~$ more file.txt         // 有百分比,不可以看到输入,输入q退出

d、od命令*
  • 释义:查看二进制文件
  • 常见用法:

gec@ubuntu:~$ od -x file ==> 以十六进制查看file

gec@ubuntu:~$ od -o file ==> 以八进制查看file

gec@ubuntu:~$ od -d file ==> 以十进制查看file

gec@ubuntu:~$ od -b file ==> 以二进制查看file

 2、文件复制
a、cp命令*
  • 释义:copy,复制文件或者复制整个目录
  • 常见用法:

gec@ubuntu:~$ cp file1 file2         ==> 将文件file1复制为file2

gec@ubuntu:~$ cp dir1/ dir2/ -r     ==> 将目录dir1/复制为dir2/

gec@ubuntu:~$ cp file1 dir2/ -r      ==> 将目录dir1/复制为dir2/

注意:如果file2或者dir2已存在,那么它们将会被覆盖。

          目录名称 dir1/ 和 dir2/ 末尾的"/"是可选的,可写可不写,写上去只是为了强调 dir1 和 dir2 是目录,别无他意。

 3、创建与删除
a、touch命令*
  • 释义(创建文件):
    1. 在文件存在的情况下:将文件最近修改时间更新为当前时间
    2. 在文件不存在的情况下:创建一个空文件
  • 常见用法:

#假设文件a.txt已存在

gec@ubuntu:~$ touch a.txt ==> 更新a.txt的最近修改时间到当前时间

#假设文件b.txt不存在

gec@ubuntu:~$ touch b.txt ==> 创建b.txt

b、mkdir/rmdir命令*
  • 释义(创建目录):make/remove directory,创建/删除空目录
  • 常见用法:

gec@ubuntu:~$ mkdir a ==> 创建空目录a

gec@ubuntu:~$ mkdir b/c -p ==> 创建嵌套空目录b/c

gec@ubuntu:~$ rmdir a ==> 删除空目录a

  • 注意:

如果目录不为空,则不能用rmdir删除,而只能用rm,比如上述的目录b,由于b中有c,因此b不是空目录,此时只能这么删除:

gec@ubuntu:~$ rm b -r

c、rm命令*
  • 释义:remove,删除文件或目录
  • 常见用法:

gec@ubuntu:~$ rm file gec@ubuntu:~$ rm dir/ -r

4、查找  
a、find命令*
  • 释义:在指定目录中,按指定条件寻找文件
  • 常见用法:

gec@ubuntu:~$ find /usr -name "*.h"         ==> 在/usr中查找以.h结尾的文件

gec@ubuntu:~$ find /tmp -type s               ==> 在/tmp中查找类型为套接字的文件

b、grep命令*
  • 释义:在指定文件或目录中,按指定条件寻找字符串
  • 常见用法:

gec@ubuntu:~$ grep 'apple' /usr -rn ==> 在/usr中查找包含apple的文件

③其它 

a、diff命令
  • 释义:difference,检测两个文件或目录的差异信息
  • 常见用法:

gec@ubuntu:~$ diff file1 file2                  ==> 检测文件file1和file2的差异信息

gec@ubuntu:~$ diff dir1/ dir2/ -urN         ==> 检测目录dir1/和dir2/的差异信息

b、file命令*
  • 释义:检测指定文件的格式信息
  • 常见用法:

gec@ubuntu:~$ file a.tar.bz2         ==> 检测文件a.tar.bz2的格式

gec@ubuntu:~$ file a.out               ==> 检测文件a.out的格式

c、mv命令*
  • 释义:move,移动文件,或给文件重命名
  • 常见用法:

gec@ubuntu:~$ mv file dir/ gec@ubuntu:~$ mv file1 file2

d、wc命令
  • 释义:计算字符数、单词数和行数
  • 常见用法:

gec@ubuntu:~$ wc ==> 计算从键盘输入的数据,以ctrl+d结束

gec@ubuntu:~$ wc file.txt ==> 计算文件file.txt的数据

④压缩与解压命令 

Linux下最常用的压缩包格式是:

  • gz
  • bz2
  • zip
  • xz

其中,gz和bz2格式一般都是通过tar命令来控制的,xz和zip格式各自由它们的同名命令控制。

1、tar命令
  • 释义:归档、释放与压缩、解压
  • 常见用法:

第一,归档与释放:

gec@ubuntu:~$ tar -cf a.tar dir/* ==> 将目录dir中的所有文件归档成a.tar

gec@ubuntu:~$ tar -tf a.tar ==> 查看归档文件a.tar

gec@ubuntu:~$ tar -xf a.tar ==> 释放归档文件a.tar

第二,压缩与解压:

gec@ubuntu:~$ tar -czf a.tar.gz dir/* ==> 将目录dir中的所有文件归档并压缩为gz格式 gec@ubuntu:~$ tar -tf a.tar.gz ==> 查看压缩文件a.tar.gz

gec@ubuntu:~$ tar -xzf a.tar.gz ==> 解压压缩文件a.tar.gz

gec@ubuntu:~$ tar -cjf a.tar.bz2 dir/* ==> 将目录dir中的所有文件归档并压缩为bz2格式 gec@ubuntu:~$ tar -tf a.tar.bz2 ==> 查看压缩文件a.tar.bz2

gec@ubuntu:~$ tar -xjf a.tar.bz2 ==> 解压压缩文件a.tar.bz2

第三,指定路径:

gec@ubuntu:~$ tar -xf a.tar -C /tmp ==> 将文件释放到/tmp

gec@ubuntu:~$ tar -xzf a.tar.gz -C /tmp ==> 将文件解压到/tmp

gec@ubuntu:~$ tar -xzf a.tar.bz2 -C /tmp ==> 将文件解压到/tmp

  • 注意:
  • 归档只是简单的将文件归拢到一起,不涉及压缩算法,文件不会变小
  • 压缩会用到压缩算法,文件总体会变小。
  • 指令说明

x: 解压/释放

c: 压缩/归档

t: 查看

f: 表明其是个文件

z: 解压/压缩都为gz格式

j: 解压/压缩都为bz2格式

-C: 指定解压的路径

2、xz命令
  • 释义:压缩与解压
  • 常见用法:

gec@ubuntu:~$ xz a.tar ==> 将文件a.tar压缩成a.tar.xz

gec@ubuntu:~$ xz --decompress a.tar.xz ==> 解压a.tar.xz

  • 注意:
  • xz只能压缩单个文件,因此xz一般与tar配合使用,即:先用tar将要压缩的若干文件或目录归档成一个tar包,然后用xz将tar包压缩成xz格式压缩包。

3、zip命令

zip不是系统自带的命令,一般需要自己手工安装:

gec@ubuntu:~$ sudo apt install zip

  • 释义:压缩与解压
  • 常见用法:

gec@ubuntu:~$ zip a.zip file dir/ ==> 将指定的文件和目录压缩成a.zip

gec@ubuntu:~$ unzip a.zip ==> 解压a.zip

 ⑤权限和用户管理命令

1、权限管理命令
a、chmod命令*
  • 释义:修改文件权限
  • 常见用法:

gec@ubuntu:~$ chmod 644 file         ==> 将文件权限改为644

gec@ubuntu:~$ chmod 755 dir/         ==> 将目录权限改为755

在Linux中,文件的权限一般用rwx来表示:

  • r 代表read,可读
  • w 代表write,可写
  • x 代表excute,可执行
  • - 代表没有权限

对于某个文件而言,系统中的所有用户被分成三类,它们是文件的所有者,文件的所属组成员和其他人。这三类用户对这个文件的rwx权限,可以由命令 ls -l 来查看:

gec@ubuntu:~$ ls -l -rw-rw-r-- 1

查看结果:

gec gec 127 Oct 30 14:41 a.c -rwxrwxr-x 1

gec gec 8768 Oct 30 14:41 a.out

在上述列子中,rwx三组权限对应了三种用户。当我们需要修改这些权限的时候,为了便于描述,一般用三个八进制数来对应这些权限为,如下表所示:

如此,权限 644 就代表了 rw-r–r–,权限 755 就代表了 rwxr-xr-x。

b、chown命令
  • 释义:change owner,修改文件的所有者
  • 常见用法:

gec@ubuntu:~$ sudo chown jack a.txt ==> 将文件a.txt的所有者修改为jack

注意:

修改文件所有者信息,须以管理员身份才能执行,因此在命令的前面要加sudo,并在随后执行是要输入管理员密码。另外要注意,输入管理员密码时系统默认是不回显的。

c、chgrp命令
  • 释义:change group,修改文件的所属组
  • 常见用法:

gec@ubuntu:~$ sudo chgrp gec a.txt ==> 将文件a.txt的所属组修改为gec

 2、用户管理命令
a、adduser/deluser命令*
  • 释义:添加/删除系统用户
  • 常见用法:

gec@ubuntu:~$ sudo adduser jack ==> 添加用户jack

gec@ubuntu:~$ sudo deluser jack ==> 删除用户jack

提醒:

gec@ubuntu:~$ 系统所有的用户清单统一放在 /etc/passwd 中

gec@ubuntu:~$ 删除用户后,默认会残留用户的家目录,如果想要连带家目录也一锅端,可以使用这个命令:

sudo deluser --remove-home jack

b、addgroup/delgroup命令
  • 释义:添加/删除系统用户组
  • 常见用法:

gec@ubuntu:~$ sudo addgroup gec ==> 添加用户组gec

gec@ubuntu:~$ sudo delgroup gec ==> 删除用户组gec

提醒:

系统所有的用户组清单统一放在 /etc/group 中

c、whoami/id命令
  • 释义:查看当前用户/相关ID
  • 常见用法:

gec@ubuntu:~$ whoami ==> 显示当前用户名

gec@ubuntu:~$ id ==> 显示与当前用户相关的ID信息

d、usermod
  • 释义:修改用户相关信息
  • 常见用法:

gec@ubuntu:~$ usermod jack -a -G gec ==> 将jack添加入用户组gec中

⑥进程管理命令 

1、ps命令(静态)*
  • 释义:process state,获取进程当前状态
  • 常见用法:

gec@ubuntu:~$ ps -ef // 详细将所有进程列出来

gec@ubuntu:~$ ps aux

gec@ubuntu:~$ ps ajx

2、top命令(动态)*
  • 释义:持续跟踪进程状态
  • 常见用法:

gec@ubuntu:~$ top                     // 将所有动态进程列出来

gec@ubuntu:~$ top -p PID         // 单独将某个动态进程列出来,PID是进程号

注意:

top可以通过左右箭头翻页          // 旧版Ubuntu系统可能需要加上ctrl

3、kill命令*
  • 释义:向指定进程发送信号
  • 常见用法:

gec@ubuntu:~$ kill -l ==> 查看系统所支持的所有的信号列表

gec@ubuntu:~$ kill -s SIGXXX PID ==> 向进程PID发送信号SIGXXX

gec@ubuntu:~$ kill -n PID ==> 向进程PID发送第n号信号

⑦系统管理命令 

1、df -h命令*
  • 释义:查看系统分区信息
  • 常见用法:

gec@ubuntu:~$ df -h

文件系统         总大小         已用         剩余         使用率%         挂载点

udev                 916M             0         916M                  0%         /dev

tmpfs 1               88M         11M        178M                   6%         /run

/dev/vda1           50G         6.8G          40G                 15%         /

tmpfs                937M         48K         936M                  1%         /dev/shm

tmpfs                 5.0M             0          5.0M                   0%        /run/lock

tmpfs                937M             0          937M                  0%         /sys/fs/cgroup

cgmfs                100K             0           100K                  0%         /run/cgmanager/fs

tmpfs                  88M             0           188M                  0%         /run/user/500

2、du命令
  • 释义:查看当前系统分区信息
  • 常见用法:

gec@ubuntu:~$ du // 列出当前空间各个文件的大小

gec@ubuntu:~$ du -sh // 查看当前空间占多大空间

3、fdisk命令
  • 释义:查看/设置硬盘分区
  • 常见用法:

gec@ubuntu:~$ sudo fdisk -l                 ==> 查看当前系统已识别的分区。

提醒:

df只能查看已经识别且挂载了的分区,而fdisk可以查看未挂载的分区

实际上,在系统识别出了分区之后,一般需要使用fdisk来查看分区的名称,然后才能使用mount来挂载,然后才能使用df查看到。

4、mount / umount命令*
  • 释义:挂载/卸载分区
  • 常见用法:

1、格式化未挂载的分区/dev/mmcblk0p7

mkfs.vfat         /dev/mmcblk0p7

2、在根目录中创建一个新目录,作为挂载的目录

cd /                                         // 进入根目录

mkdir my_dir                           // 创建my_dir文件夹

3、挂载分区: mount -t vfat /dev/mmcblk0p7 /my_dir

// 如果要永久挂载,需要将上面的挂载命令写在/etc/profile文件中

4、卸载分区:

gec@ubuntu:~$ umount /dev/mmcblk0p7         ==> 将分区sdb卸载

gec@ubuntu:~$ umount /my_dir                 ==> 将挂载点/mnt/u卸载

⑧网络管理命令 

1、hostname命令
  • 释义:查看系统主机名
  • 常见用法:

gec@ubuntu:~$ hostname

ubuntu

gec@ubuntu:~$

2、ifconfig命令
  • 释义:查看/设置系统IP地址
  • 常见用法:

# 查看当前活跃的网络接口

gec@ubuntu:~$ ifconfig

# 查看所有的网络接口

gec@ubuntu:~$ ifconfig -a

# 设置指定的网络接口的IP地址

gec@ubuntu:~$ ifconfig ens33 192.168.1.100       // ens33是虚拟网卡名

使用ifconfig设置的IP是临时的,如要使得设置效果永久有效,则需要修改系统的 /etc/networking/interfaces 文件,将IP地址设置进去。例如:

gec@ubuntu:~$ cat /etc/network/interfaces

# interfaces(5) file used by ifup(8) and ifdown(8)

auto lo

iface lo inet loopback

auto ens33

iface ens33 inet static

address 192.168.1.100

netmask 255.255.255.0

gateway 192.168.1.1

3、ifup / ifdown命令
  • 释义:启停指定网络接口卡
  • 常见用法:

gec@ubuntu:~$ sudo ifdown ens33         ==> 禁用网络接口卡ens33

gec@ubuntu:~$ sudo ifup ens33              ==> 启用网络接口卡ens33

4、ping命令
  • 释义:向指定主机发送要求回应的ICMP数据包
  • 常见用法:

gec@ubuntu:~$ ping 192.168.1.200           // ping内网(局域网)

gec@ubuntu:~$ ping www.qq.com              // ping外网(看看能不能上网)

提醒:

一般而言,如果网络是畅通的,那么ping命令将会看到数据包返回的延迟时间,否则如果看不到延迟时间,那么网络就是不通的。

今天就写到这吧,同学们记得要多敲命令,命令跟代码一样多敲就会熟悉了!有什么问题私信或者留言。

标签:tar,Linux,必学,嵌入式,gec,命令,释义,ubuntu
From: https://blog.csdn.net/weixin_71330973/article/details/137265219

相关文章

  • ZCMU操作系统课程实验 - 实验1-Linux的使用
    登录1.打开这个东西2. 在  文件->打开    中打卡机房里VMOS文件里的这个东东 3.然后依次操作下去好了,有红色的选项,我都是选的"Donothing"。完成后就会出现这样一个黑框框。4.让你登录。输入:root。密码:superuser    。注意输入密码的时候,密......
  • 配置Linux上的MySQL
    MySQL数据库环境搭建和编程MySQL环境安装设置ubuntu环境安装mysql-server和mysql开发包,包括mysql头文件和动态库文件,命令如下:sudoapt-getinstallmysql-server=》安装最新版MySQL服务器sudoapt-getinstalllibmysqlclient-dev=》安装开发包ubuntu默认安装最新的mysq......
  • 嵌入式学习Day4
    一、输入一个数判断是否回数代码:运行结果:二、输入一个数判断是否完美数代码:运行结果:三、图形打印打印以下两个图形  *       **** **       *** ***        ******         *代码:运行结果......
  • 嵌入式学习Day5
    一、请简述什么大端存储和小端存储?大端存储:低位存储数据的高位,高位存储数据的低位小端存储,低位存储数据的低位,高位存储数据的高位二、请简述gcc的分步编译?1.预处理:展开头文件,替换宏,删除注释:gcc-Efile.c-ofile.i2.编译:检查语法的正确性,生成汇编文件:gcc-S file.i -o......
  • Linux上使用python处理docx转pdf教程
      今天在使用flask将生成好的docx文档转化为pdf的过程中,遇到了一些问题,本来在windows上转化的好好的,但是到了Linux上却是直接报错显示ModuleNotFoundError:Nomodulenamed'win32com'。  很明显他说的是在Linux系统下并没有win32com这个模块,所以通过百度发现python使用pdf2......
  • 8、linux安装orace11g报[FATAL][INS32035]无法在指定位置创建新产品清单
    目录linux安装orace11g报·[FATAL]·[INS32035]无法在指定位置创建新产品清单1、执行静默安装命令后报错:提示如下2、解决方案:3、重新执行静默安装命令linux安装orace11g报·[FATAL]·[INS32035]无法在指定位置创建新产品清单1、执行静默安装命令后报错:提示如下正在启动Oracle......
  • 10分钟带你了解 Linux 系统中的 Top 命令
    前言作为一个测试工程师,可能我们并不需要像运维人员那样时时刻刻去关注系统的运行情况,但是对于一些查看系统运行情况,以及性能情况的命令,我们还是需要了解并掌握的,本文就来给大家介绍一下Linux系统重非常重要的top命令。什么是top命令在Linux系统中,top命令是一个非常实用的......
  • 【Linux】服务器时间ntp同步(chrony)
    一、简介Chrony是一个开源自由的网络时间协议NTP的客户端和服务器软软件。它能让计算机保持系统时钟与时钟服务器(NTP)同步,因此让你的计算机保持精确的时间,Chrony也可以作为服务端软件为其他计算机提供时间同步服务。Chrony由两个程序组成,分别是chronyd和chronycchronyd是一个......
  • Lock Linux是一个基于Linux的操作系统,它主要关注于系统安全和隐私保护
    LockLinux是一个基于Linux的操作系统,它主要关注于系统安全和隐私保护。LockLinux采用了SELinux(Security-EnhancedLinux)和AppArmor等安全机制,以确保系统的安全性。此外,它还提供了一些额外的功能,如加密的文件系统、安全的网络连接和强制访问控制等。以下是关于LockLinux......
  • Linux 编译升级内核
    要在CentOS上手动编译并安装Linux内核4.19.311,你需要遵循一系列步骤。以下是一个简化的流程概述,但请注意实际操作时需要根据你的CentOS版本、内核源码以及实际情况稍作调整:准备工作:登录到具有足够权限的用户(最好是root或使用sudo)。更新系统:sudoyumupdate-y安装编译......