第一章----Ubuntu基础

VMware与Ubuntu

在学习嵌入式Linux之前,我们首先要安装好Ubuntu系统,那么我们是直接把我们的电脑系统更新为Ubuntu吗,或者安装双系统?其实并不是这样的,因为我们在日常的使用中,还是Windows比较方便,如果安装为双系统,那么当我们需要切换系统的时候,就需要频繁的开关机来切换系统,这样会很麻烦,因此我们会在Windows中安装VMware这款软件,这款软件可以模拟出一个电脑虚拟机,我们只需要在模拟中的电脑上安装Ubuntu系统即可,这样我们就可以在Windows中像打开其他应用程序一样,打开一个Ubuntu的系统,这个过程很像是电脑上打开手机模拟器这个软件的这么一个过程。通过这种方式,我们就不必来回的关机开机来切换系统了。

VMware与Ubuntu的安装以及破解在网络上有很多教程,在此我们就不再过多赘述了。但是需要注意一点是,我们需要在当前的电脑上不是虚拟机,开启虚拟化,大部分的电脑都会自动开启虚拟化,具体查看方式是:打开任务管理器->性能->CPU->虚拟化已启用,若没有启用需要去BIOS中开启虚拟化,不同的电脑型号的BIOS不尽相同,我们也没办法一一举例如何开启,具体的开启方式,需要按照自己电脑的型号去网上查询。

下面我们正式进入Linux的基础知识部分的讲解。

Linux常用命令

Linux Shell 简介 Shell 的意思是"外壳",在 Linux 中它是一个程序,比如/bin/sh、 /bin/bash 等。它负责接收用户的输入,根据用户的输入找到其他程序并运行。 比如我们输入"ls"并回车时,shell 程序找到"ls"程序并运行,把结果打印 出来。 Shell 有很多种实现,我们常用 bash。

文件和目录操作命令

  1. pwd:查看当前所在目录
  2. cd <路径>:进入输入的路径
  3. mkdir <文件夹名>:创建文件夹
    a. mkdir -p <目录以及子目录>:递归的创建目录以及子目录,例如 mkdir -p div1/div2,在当前目录中创建div1文件夹,在div1文件夹下创建div2文件夹。
  4. ls:展示本目录下的文件夹以及文件
    a. -a:展示全部文件
    b. -l:展示文件详细信息
    c. -h:以K,M,G展示文件大小
    注意:命令的参数都可以组合使用,例如ls -alk
  5. cp <文件夹1> <文件夹2>:将文件夹1复制,并且命名为文件夹2,默认复制到所在目录下,也可以在文件夹1/2之前填写路径,会复制到目的路径下,当然cp也可以复制文件。
    a. -r:递归的复制
    b. -f:如果目的路径下有同名文件夹/文件,则强制覆盖
    c. -d:如果复制的是链接文件类似于windows中的快捷方式,则只复制链接文件,而不会把链接的文件也复制过去。
  6. rm <文件/文件夹>:删除文件/文件夹。
    a. -r:递归的删除目录下所有文件/文件夹
    b. -f:强制删除所有文件/文件夹
  7. cat <文件>:串联的展示文件,例如cat file1.txt file2.txt,在屏幕上串联的展示两个文件的内容。
  8. touch <文件>:修改文件时间为当前时间/若文件不存在则创建新的文件。

改变文件的权限和属性

  1. chgrp:改变文件所属用户组。
  • -R递归的改变文件夹中所有文件的所属组

    示例:
    chgrp ht file1.txt 将file1.txt的用户组改为hy,注意hy必须要在/etc/group中存在才可以

  1. chown:改变文件所有者
  • -R递归的改变文件夹中所有文件的拥有者

    示例:
    chown root /var/run/httpd.pid 将文件的拥有者改为root
    chown runoob:runoobgroup file1.txt 将文件的拥有者设置为runoob,群体使用者为runoobgroup

  1. chmod:改变文件的权限

    示例:
    chmod 777 file1.txt
    读,写,执行:4,2,1

查找搜寻命令

  1. find [路径] [匹配条件] [动作]

    示例:
    find . -name file1.txt 查找当前目录下名为file1.txt的文件
    find . -name "*.c" 查找当前目录以及子目录下所有文件后缀为.c的文件
    find . -type f 查找当前目录以及子目录下所有的文件

  2. grep [options] pattern [files]

    示例:
    grep hello file.txt 在file.txt中查找hello
    grep -r -n pattern dir/ 在文件夹dir中递归查找所有文件中匹配正则表达式pattern的行,并且打印匹配行所在的文件名和行号
    echo "hello world" | grep -c world 在标准输出中查找字符串world,并且只打印匹配的行数

压缩与解压缩命令

压缩格式:gzip,bzip2,bzip2的压缩效率高

压缩命令:

  1. tar czf 目标文件名 源文件 gzip格式
  2. tar cjf 目标文件名 源文件 bzip2格式
    解压缩命令:
  3. tar xzf 目标文件名 gzip格式
  4. tar xjf 目标文件名 bzip2格式
    ● -C:后面可以指定路径

Linux下的磁盘管理

Linux的磁盘管理体系与windows有很大的区别,Windows下经常会遇到分区这个概念,但是再Linux中,我们叫做挂载点,挂载点就是将一个硬盘的一部分做成文件夹的形式,这个文件夹的名字就叫挂载点。

在图中有四个磁盘设备文件,其中 sd 表示是 SATA 硬盘或者其它外部设备,最后 面的数字表示该硬盘上的第 n 个分区,比如/dev/sda1 就表示磁盘 sda 上的第一个分区。图 2.8.1.2 中都是以/dev/sda 开头的,说明当前只有一个硬盘。如果再插上 U 盘、SD 卡啥的就可能会出现 /dev/sdb,/dev/sdc 等等。如果你的 U 盘有两个分区那么可能就会出现/dev/sdb1、dev/sdb2 这样 的设备文件。

  1. fdisk [参数]
    -b<分区大小>:指定每个分区的大小
    -l:列出指定设备的分区别
    -s<分区编号>:将指定的分区大小输出到标准的输出上,单位为块
    -u:搭配-l参数,会使用分区数目取代柱面数目,来表示每个分区的起始地址。
  2. mkfs [参数] [-t 文件系统类型] [分区名称]
    fs:指定建立文件系统时的参数
    -V:显示版本信息和简要的使用方法
    -v:显示版本信息和详细的使用方法
    mkfs命令是用来格式化分区的,或者说用来选择分区的文件系统。当我们分区后,必须要格式化/选择文件系统
  3. mount [参数] -t [类型] [设备名称] [目的文件夹]
    -V:显示程序版本
    -h:显示辅助信息
    -v:显示执行过程详细信息
    -o ro:只读模式挂载
    -o rw:读写模式挂载
    -s-r:等于-o ro
    -w:等于 -o rw
    挂载点是一个文件夹,因此再挂在之前要先创建一个文件夹,一般我们把挂载点放到/mnt目录下,再/mnt下创建一个tmp文件夹,然后将/dev/sdb1分区挂载到文件夹下。
  4. umount [参数] -t [文件系统类型] [设备名称]
    -a:卸载/etc/mtab中的所有文件系统
    -h:显示帮助
    -n:卸载时不要把信息存入/etc/mtab文件中
    -r:如果无法成功卸载,则尝试以只读方式重新挂载
    -t<文件系统类型>:进卸载选项中指定的文件系统
相关推荐
重生之我在20年代敲代码3 小时前
【Linux第三弹】Linux基础指令 (下)
linux·运维·服务器
路溪非溪3 小时前
Linux中死锁问题的探讨
linux·运维·服务器
二进制杯莫停3 小时前
shell逐行读取文件 & 远程操作服务器
运维·服务器
apocelipes3 小时前
go语言实现终端里的倒计时
linux·golang·linux编程
中东大鹅3 小时前
Linux 的at定时任务
linux·服务器·网络
大小科圣4 小时前
lamp平台介绍
运维
李白同学4 小时前
Linux:vim快捷键
linux·运维·vim
多云的夏天4 小时前
ubuntu24.04-系统重装
linux·运维·ubuntu
塔能物联运维5 小时前
塔能科技:工厂智慧照明,从底层科技实现照明系统的智能化控制
大数据·运维
北冥有鱼被烹5 小时前
【微知】命令行如何对Centos关机?如何完全关机?(shutdown -h now、poweroff; halt、init 0)
linux·服务器·centos