当前位置: 首页 > news >正文

Linux嵌入式自学笔记(基于野火EBF6ULL):3.连网、Linux文件目录

一、连网

注:校园网要用“网络地址转换(NAT)”模式

测试:打开终端:输入ping www.baidu.com ,然后记得输入ctrl+c终止不然就会一直弹

二、文件目录

        1.进入根目录

cd / 

        2.查看子目录

ls

        3.查看具体目录,以查看bin目录文件为例

ls /bin

        

        4.查看整个系统目录层次(?)

        tree命令(未解决)

        5.linux文件系统层次结构标准:FHS3.0(可以去官网下载下来看,50多页英文)

  • /boot 目录:存储系统启动相关的静态文件,例如内核镜像(vmlinuz)、初始化内存盘(initrd/initramfs)以及引导加载程序(如 GRUB)的配置文件。这些文件是系统启动过程中必需的。

  • /dev 目录(device:包含设备文件,用于表示硬件设备或虚拟设备。例如,/dev/sda 表示硬盘,/dev/null 表示空设备。Linux 通过文件系统与设备交互,设备文件分为字符设备和块设备。

  • /bin 目录(binary:存放系统核心的可执行二进制文件,例如常用命令 lscpmv 等。这些命令在单用户模式下也能使用,供基本系统操作。

  • /etc 目录(“et cetera”(拉丁语,意为“等等”):存储系统配置文件,例如网络配置(/etc/network)、用户密码(/etc/passwd)、服务配置等,是系统管理的核心目录。

  • /home 目录:用户的主目录,每个普通用户在此有自己的子目录(如 /home/username),用于存储个人文件和配置文件。

  • /lib 目录(library:包含系统启动和运行所需的核心共享库文件(如动态链接库 .so 文件),支持 /bin/sbin 中的二进制文件。

  • /mnt 目录(mount:临时挂载点,用于挂载文件系统,如 U 盘、移动硬盘等外部存储设备。

  • /opt 目录(optional:存放可选的第三方软件包或手动安装的应用程序,通常是独立软件的安装位置。

  • /proc 目录(process:虚拟文件系统,存储系统运行时的状态信息,例如进程信息(/proc/[pid])、硬件状态(/proc/cpuinfo)等,内容动态生成。

  • /root 目录:超级用户(root)的主目录,区别于普通用户的 /home 目录。

  • /sbin 目录:存储系统管理相关的二进制文件,如 fdiskifconfig 等,通常需要管理员权限运行。

  • /tmp 目录:用于存储临时文件,系统重启后内容通常会被清除,适合短期数据存储。

  • /usr 目录:存放用户安装的程序和数据,包括二进制文件(/usr/bin)、库文件(/usr/lib)、文档(/usr/share/doc)等。

  • /var 目录(variable:存储动态变化的数据,如日志文件(/var/log)、邮件(/var/mail)、数据库文件等。

  • /media 目录:用于自动挂载可移动存储设备(如 U 盘、CD/DVD、移动硬盘等)的挂载点。现代 Linux 发行版(如 Ubuntu)通常通过桌面环境或系统工具(如 udev)自动将插入的设备挂载到此目录下的子目录(如 /media/username/disk)。与 /mnt 不同,/media 更常用于用户友好的自动挂载场景。查看读卡器分区常用。

        点击文件管理器菜单项的最后一项:“其他位置”

        

        然后点开“计算机”

        proc目录下:

        6.查看根目录下的详细子目录情况

ls -l /

        

"drwxr":目录;  "-rw":是普通文件 “->” 表示指针; “lrwx”链接文件 ; 

  

Linux的哲学:“一切皆文件”

        7.系统路径

        Linux 文件系统采用树形结构,路径用于定位文件或目录。路径分为绝对路径相对路径,用于描述文件或目录在文件系统中的位置。

绝对路径
  • 定义:从文件系统的根目录(/)开始,完整描述文件或目录的路径,不依赖当前工作目录。
  • 特点
    • 以 / 开头。
    • 路径固定,无论当前在哪个目录,指向的位置始终相同。
    • 常用于脚本或需要明确指定文件位置的场景。
    • . 表示当前目录,也可以用./表示
  • 示例
    • /home/user/documents/file.txt:表示从根目录到 file.txt 的完整路径。
    • /etc/passwd:指向系统用户密码文件。
相对路径
  • 定义:相对于当前工作目录(通过 pwd 命令查看)的路径,不以 / 开头。
  • 特点
    • 依赖当前所在目录,路径描述基于当前位置。
    • 使用 . 表示当前目录,.. 表示上级目录。
    • 更简洁,适合在当前目录附近操作。
    • .. 表示上一层目录,也可以用../表示
  • 示例
    • 如果当前目录是 /home/user,则 documents/file.txt 指向 /home/user/documents/file.txt
    • ../config 表示当前目录的上级目录中的 config 文件或目录。

三、用户和用户组

UID(用户标识)

定义
  • UID 是 User ID(用户标识号)的缩写,是 Linux 系统中用于唯一标识用户的数字标识。
  • 每个用户(包括普通用户和系统用户)在系统中都有一个唯一的 UID,存储在 /etc/passwd 文件中。

        双击即可打开

        或者终端输入:

sudo gedit  /etc/passwd
作用
  • 身份认证:系统通过 UID 识别用户,确定其权限和访问控制。
  • 文件所有权:文件和目录的所有者以 UID 形式记录,用于权限检查(如读、写、执行)。
  • 进程管理:运行的进程与某个 UID 关联,决定进程的权限范围。
特点
  • 范围
    • UID 通常为非负整数。
    • 0:保留给超级用户(root),具有最高权限。
    • 1-999:通常分配给系统用户或服务(如 daemonbin),用于运行系统进程。
    • 1000+:通常分配给普通用户(视发行版而定,如 Ubuntu 从 1000 开始)。
  • 查看方式
    • 命令 id 或 id <用户名> 显示用户的 UID、GID 及所属群组。
      • 示例:id alice 可能输出 uid=1000(alice) gid=1000(alice) groups=1000(alice),27(sudo)
    • 查看 /etc/passwd 文件,格式为:
      username:x:UID:GID:comment:home_directory:shell 示例:alice:x:1000:1000:Alice User:/home/alice:/bin/bash
示例
  • 用户 alice 的 UID 为 1000,创建文件 /home/alice/file.txt 时,文件的所有者 UID 记录为 1000。
  • 超级用户 root(UID=0)可以访问系统中的任何文件。

GID(群组标识)

定义
  • GID 是 Group ID(群组标识号)的缩写,是 Linux 系统中用于唯一标识用户群组的数字标识。
  • 每个群组有一个唯一的 GID,存储在 /etc/group 文件中。
作用
  • 权限管理:群组用于简化权限分配,同一群组的用户共享某些文件或资源的访问权限。
  • 文件访问控制:文件和目录的群组所有权以 GID 记录,决定群组成员的访问权限。
  • 协作:多个用户可属于同一群组,方便共享资源(如项目文件夹)。
特点
  • 范围
    • GID 也是非负整数,与 UID 类似。
    • 0:通常为 root 群组。
    • 1-999:系统群组,如 admwheel 等。
    • 1000+:普通用户群组。
  • 主群组与附加群组
    • 每个用户有一个主群组(Primary GID),记录在 /etc/passwd 中。
    • 用户还可属于多个附加群组(Secondary Groups),记录在 /etc/group 中。
  • 查看方式
    • 命令 id 显示用户的 GID 和所属群组。
    • 查看 /etc/group 文件,格式为:
      group_name:x:GID:user1,user2,... 示例:sudo:x:27:alice,bob 表示 sudo 群组的 GID 为 27,包含用户 alice 和 bob
示例
  • 用户 alice 的主 GID 为 1000(群组 alice),她还属于 sudo 群组(GID=27)。
  • 文件 /home/project/data.txt 的群组 GID 为 1001(project 群组),project 群组的成员可按权限访问该文件。

UID 和 GID 的关系

  • 用户与群组:每个用户有唯一的 UID 和主 GID,并可加入多个群组(附加 GID)。
  • 文件权限:文件权限分为三类(所有者、群组、其他),通过 UID 和 GID 确定:
    • 所有者(Owner):由文件的 UID 决定。
    • 群组(Group):由文件的 GID 决定。
    • 其他(Others):非所有者和群组成员的用户。
    • 查看文件权限:ls -l,示例输出:
      -rw-r--r-- 1 alice project 1024 Sep 17 2025 data.txt
      • alice(UID=1000)是所有者,project(GID=1001)是群组。
  • 管理命令
    • 添加用户:useradd -u <UID> -g <GID> <用户名> 指定 UID 和主 GID。
    • 添加群组:groupadd -g <GID> <群组名>
    • 修改用户群组:usermod -aG <群组名> <用户名> 添加到附加群组。


文章转载自:

http://OQ1aMseH.Lqypx.cn
http://052GELa7.Lqypx.cn
http://k4uBzw5l.Lqypx.cn
http://OEk8cMpD.Lqypx.cn
http://tho3xtiD.Lqypx.cn
http://q5OQdsZY.Lqypx.cn
http://yHjhw4Ze.Lqypx.cn
http://BYCnxf3A.Lqypx.cn
http://PmpjhTBv.Lqypx.cn
http://Ud4LKYaS.Lqypx.cn
http://DK5sgxKr.Lqypx.cn
http://NkuDrRm1.Lqypx.cn
http://v12kTThh.Lqypx.cn
http://UfSpj3Lv.Lqypx.cn
http://v4S2Epl3.Lqypx.cn
http://zFoZMym2.Lqypx.cn
http://Y6HWCoLp.Lqypx.cn
http://dpTWhYq7.Lqypx.cn
http://HmGgkNyK.Lqypx.cn
http://yNvHDtkA.Lqypx.cn
http://S6OfkvNP.Lqypx.cn
http://qOJYj8lY.Lqypx.cn
http://67ePBOYC.Lqypx.cn
http://aC6NFo8T.Lqypx.cn
http://axl5YeAc.Lqypx.cn
http://839HPfjS.Lqypx.cn
http://akdcaL85.Lqypx.cn
http://scgmx8Z5.Lqypx.cn
http://kMnHOpkw.Lqypx.cn
http://jSdSX4Yc.Lqypx.cn
http://www.dtcms.com/a/387251.html

相关文章:

  • 【高并发内存池——项目】thread cache 讲解
  • InnoDB ACID实现:数据库可靠性的核心秘密
  • python ui框架
  • 【Linux手册】解决多线程共享资源访问冲突:互斥锁与条件变量的使用及底层机制
  • 基于微信小程序跑腿小程序设计与实现
  • 微信小程序-6-页面布局和事件绑定以及页面跳转
  • InnoDB多版本控制:揭秘MVCC核心机制
  • SpringMVC 系列博客(二):核心功能深入 —— 请求映射、返回值与参数绑定
  • HTTPS报文在SSL/TLS证书安全隧道传输的原理
  • 线性回归与 Softmax 回归技术报告
  • 不同团队如何选GIS软件?ArcGIS Pro、GISBox与SuperMap优劣势及适用方案
  • 静态标签云
  • AI解决企业内训之痛-智能企业内训平台解决方案
  • 容器化部署番外篇之docker网络通信06
  • Windows安装ES8.10流程及安装过程中出现的问题
  • 【工具代码】使用Python截取(切割)视频片段,截取视频中的音频,截取音频片段
  • Linux --- 权限
  • netty集成protobuf
  • ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务
  • io_uring最简单的实例io_uring-test.c分析
  • 15.Linux时间管理
  • Linux 系统中的 Crond 服务:定时任务管理全指南
  • JDBC学习笔记
  • LoRA翻译
  • Linux 内存管理章节十五:内核内存的侦探工具集:深入Linux内存调试与检测机制
  • Mysql-主从复制与读写分离
  • bevformer 網絡結構
  • MySQL 基础与实战操作
  • 系统架构设计(二)
  • 【Day 58】Redis的部署