Linux安装包 | Git使用 | NFC搭建

在这里插入图片描述

dpgt使用

当谈到基于 Debian 的操作系统中的软件包管理工具时,dpkg 是一个重要的工具。它是 Debian 系统中用于安装、升级、配置和卸载软件包的命令行工具。以下是对 dpkg 的详细介绍:

  1. 软件包管理:dpkg 可以管理系统中的软件包。它可以安装单个或多个软件包,并处理软件包之间的依赖关系。通过 dpkg -i 命令,可以安装软件包;通过 dpkg -r 命令,可以卸载已安装的软件包;通过 dpkg -l 命令,可以列出系统中已安装的软件包。

  2. 软件包查询:使用 dpkg -s 命令,可以查询已安装软件包的详细信息,包括软件包的状态、描述、版本号、维护者等。这对于了解软件包的当前状态和属性非常有帮助。

  3. 配置和修改:dpkg-reconfigure 命令提供了重新配置已安装软件包的功能。通过这个命令可以重新运行软件包的配置脚本,以更改软件包的设置和选项。

  4. 依赖关系管理:dpkg 可以处理软件包之间的依赖关系。当安装或卸载软件包时,dpkg 会检查并满足依赖关系,以确保软件包的正确安装和功能。

  5. 包数据库管理:dpkg 维护一个软件包数据库,记录了系统中已安装的软件包的信息。这个数据库包含有关软件包的元数据,例如名称、版本号、维护者等。

  6. 软件包文件操作:除了软件包管理之外,dpkg 还提供了对软件包文件的操作。通过 dpkg -c 命令,可以查看软件包文件的内容列表;通过 dpkg -L 命令,可以列出软件包中的文件和目录。

总之,dpkg 是一个功能强大的软件包管理工具,它在基于 Debian 的操作系统中起着关键的作用。它可以安装、升级、卸载软件包,处理依赖关系,查询软件包信息,配置软件包,管理软件包数据库等。通过 dpkg 可以方便地管理和维护系统中的软件包。

apt使用

apt(Advanced Package Tool)是一个在基于 Debian 的操作系统中用于管理软件包的高级包管理工具。它提供了一组命令行工具,用于搜索、安装、更新、升级和卸载软件包,并处理软件包之间的依赖关系。以下是对 apt 的详细介绍:

  1. 软件包管理:apt 可以轻松地搜索、安装、更新、升级和卸载软件包。通过 apt install 命令,可以安装新的软件包;通过 apt removeapt purge 命令,可以卸载已安装的软件包;通过 apt update 命令,可以更新可用的软件包列表;通过 apt upgrade 命令,可以升级已安装的软件包。

  2. 依赖关系解决:apt 能够自动解决软件包之间的依赖关系。在安装或升级软件包时,apt 会检查并自动安装或升级所需的依赖项,以确保系统的完整性和稳定性。

  3. 仓库管理:apt 使用软件源(repositories)来获取软件包。它可以管理系统中的软件源,并允许用户添加、删除或切换软件源。通过配置适当的软件源,用户可以获取官方维护的软件包,以及第三方软件包。

  4. 软件包缓存管理:apt 在本地维护一个软件包的缓存,以便在安装或升级软件包时快速访问。通过 apt clean 命令,可以清理软件包缓存,释放磁盘空间。

  5. 软件包信息查询:apt 可以提供软件包的详细信息。通过 apt show 命令,可以查看软件包的描述、版本号、维护者等信息。

  6. 软件包统计和更新通告:apt 可以提供有关软件包使用状况和可用更新的信息。通过 apt list --installed 命令,可以列出已安装的软件包;通过 apt list --upgradable 命令,可以列出可升级的软件包。

总结起来,apt 是基于 Debian 的操作系统中的一种高级包管理工具,它提供了一组命令行工具,用于管理软件包的安装、升级、卸载、搜索和依赖关系解决。它还可以管理软件源、软件包缓存,并提供软件包的详细信息和统计数据。

Git使用

概念

Git 是一个分布式版本控制系统,它用于跟踪文件的变化和协调多人在同一个项目上的工作。它是由 Linus Torvalds 在2005年创建的,最初是为了管理 Linux 内核开发而设计的。

Git 的主要特点如下:

  1. 分布式:与其他版本控制系统(例如集中式版本控制系统)不同,Git 是一种分布式版本控制系统。这意味着每个人在自己的本地计算机上都有一个完整的代码仓库,不依赖于中央服务器。这种架构使得多人协作更加灵活,并且即使在没有网络连接的情况下,仍然可以进行代码的历史记录和版本控制。

  2. 强大的分支管理:Git 提供了强大的分支管理功能,使得创建、合并和切换分支变得非常容易。它可以轻松地创建新的分支来开发新功能,然后将分支合并回主分支,以保持代码的稳定性和一致性。

  3. 快速和高效:Git 在处理大型项目和大量文件时表现出色,具有快速的提交、分支切换和代码合并等操作。

  4. 版本控制:Git 跟踪文件的每个更改,并保留完整的版本历史记录。这使得开发人员可以查看以前的版本、回滚到以前的状态或者比较不同版本之间的差异。

  5. 具有完整性和完整性检查:Git 将文件的每个版本都以快照的形式存储在仓库中,并使用哈希值来确保文件内容的完整性。通过哈希值,可以检查文件是否被篡改或损坏。

Git 可以用于个人项目、开源项目和企业项目的版本控制。它提供了强大的工具和命令来管理代码的版本,并支持多人协作和代码的并行开发。

安装git

sudo apt install git -y

使用方法

在 Linux 操作系统下,Git 的使用与其他操作系统并没有太大区别。您可以按照以下步骤来使用 Git:

  1. 安装 Git:首先,确保您的 Linux 系统中已经安装了 Git。您可以通过在终端中运行 git --version 命令来检查 Git 是否已经安装,并显示 Git 的版本号。如果 Git 没有安装,您可以使用适合您的 Linux 发行版的包管理器来安装 Git。

  2. 初始化仓库:在您的项目目录中,使用 git init 命令初始化一个新的 Git 仓库。这将会在当前目录下创建一个 .git 文件夹来存储仓库的版本历史和元数据。

  3. 添加文件:使用 git add <file> 命令将文件添加到 Git 的暂存区。您可以使用 git add . 命令添加所有修改过的文件。如果您只想添加特定类型的文件,可以使用通配符,例如 git add *.txt

  4. 提交更改:使用 git commit -m "<message>" 命令将暂存区的更改提交到本地仓库,并附加一条提交消息来描述更改内容。例如,git commit -m "Add new feature"

  5. 查看状态:使用 git status 命令查看当前仓库的状态,包括已修改、已暂存和未跟踪的文件。

  6. 查看历史:使用 git log 命令查看提交历史记录,显示先前的提交和相关信息,例如提交作者、日期和提交消息。您可以按 Q 键退出日志查看。

  7. 创建分支:使用 git branch <branchname> 命令创建一个新的分支,其中 <branchname> 是分支的名称。

  8. 切换分支:使用 git checkout <branchname> 命令切换到指定的分支,开始在该分支上进行工作。

  9. 合并分支:使用 git merge <branchname> 命令将指定分支的更改合并到当前分支。

  10. 拉取更新:使用 git pull 命令从远程仓库拉取最新的更改,并自动合并到当前分支。

  11. 推送更改:使用 git push 命令将本地的提交推送到远程仓库。

  12. 撤销更改:使用 git revert <commit> 命令撤销先前的提交,恢复到旧的版本。

还有许多其他 Git 命令和功能,例如标签管理、分支管理、远程仓库配置等。您可以使用 git --help 命令查看 Git 的帮助手册,获取更详细的信息和使用说明。

git克隆

git clone 是一个 Git 命令,用于克隆远程 Git 仓库到本地计算机。它会将远程仓库的所有代码、历史记录和分支等内容复制到本地。

克隆仓库的基本语法如下:

git clone <repository>

其中 <repository> 是远程仓库的 URL 或路径。远程仓库可以是位于本地计算机上的其他目录,或者是位于远程服务器上的 Git 仓库。

例如,要克隆一个名为 “my-repo” 的远程仓库,您可以使用以下命令:

git clone https://github.com/username/my-repo.git

这将在当前目录下创建一个名为 “my-repo” 的文件夹,并将远程仓库的内容复制到该文件夹中。

您也可以指定克隆后的目标目录,例如:

git clone https://github.com/username/my-repo.git my-folder

这将在当前目录下创建一个名为 “my-folder” 的文件夹,并将远程仓库的内容复制到该文件夹中。

如果克隆的远程仓库需要身份验证,Git 会要求您提供认证信息,例如用户名和密码或访问令牌,以进行克隆操作。

NFS服务器搭建

NFS服务器概念

NFS(Network File System)是一种用于在网络上共享文件的协议和服务。NFS 服务器是运行 NFS 服务的计算机,它提供文件共享功能,使其他计算机可以通过网络访问共享的文件和目录。

NFS 服务器允许客户端计算机像访问本地文件一样访问远程的文件。通过 NFS,客户端可以从 NFS 服务器读取、写入和执行文件,就好像这些文件存在于本地文件系统一样。

NFS 服务器的工作原理如下:

  1. 客户端发送文件访问请求给 NFS 服务器,该请求包括文件名和所需操作,例如读取、写入或执行文件。

  2. NFS 服务器接收到请求后,检查访问权限和身份验证,然后执行请求的操作。

  3. 如果请求是读取文件,NFS 服务器将文件内容传输到客户端。

  4. 如果请求是写入文件,NFS 服务器将接收客户端发送的数据,并将其写入到文件中。

  5. 客户端和服务器之间的通信通过网络进行,通常使用 TCP/IP 协议。

NFS 是一种常见的文件共享协议,适用于许多不同的操作系统,如 Unix、Linux、macOS 等。它提供了高性能和可靠的文件访问,并支持远程文件系统的透明访问。

要使用 NFS 服务器,您需要在服务器上安装和配置 NFS 服务,并设置共享的文件和目录。客户端计算机则需要进行相应的配置,以便能够访问 NFS 服务器上的共享文件。

NFS服务端配置

要配置 NFS 服务器,您需要完成以下步骤:

  1. 安装 NFS 服务器软件:在您的服务器上安装 NFS 服务器软件。具体安装方法取决于您使用的操作系统。对于 Ubuntu,可以使用以下命令安装 NFS 服务器软件:
sudo apt-get update
sudo apt-get install nfs-kernel-server
  1. 创建共享目录:选择您要共享的目录,并确保在服务器上已创建该目录。例如,您可以创建一个名为 /shared 的目录作为共享目录:
sudo mkdir /shared
  1. 配置 NFS 共享:编辑 NFS 服务器的共享配置文件。对于 Ubuntu,该文件位于 /etc/exports。使用您喜欢的文本编辑器打开此文件:
sudo nano /etc/exports

在配置文件中,添加一行来定义共享的目录和允许的客户端访问权限。例如,如果您要将 /shared 目录共享给所有客户端,可以添加以下内容:

/shared  *(rw,sync,no_subtree_check)

这将允许所有客户端以读写方式访问 /shared 目录。

  1. 启动 NFS 服务器:保存并关闭配置文件后,启动 NFS 服务器:
sudo systemctl start nfs-kernel-server
  1. 验证共享:检查 NFS 服务器是否成功共享目录。您可以使用以下命令查看已共享的目录:
sudo exportfs -arx

这将显示当前已共享的目录列表。

  1. 设置开机自启动:如果您希望 NFS 服务器在系统启动时自动启动,可以使用以下命令设置开机自启动:
sudo systemctl enable nfs-kernel-server

至此,您已经完成了 NFS 服务器的配置。现在,客户端可以通过 NFS 来访问和挂载您共享的目录。

请注意,上述步骤仅提供了基本的 NFS 服务器配置示例。根据您的需求,您可能需要进一步配置 NFS 服务器,如设置访问控制列表(ACL)或进行其他高级配置。

NFS客户端配置

要配置 NFS 客户端以访问 NFS 服务器上的共享目录,您需要完成以下步骤:

  1. 安装 NFS 客户端软件:在您的客户端计算机上安装 NFS 客户端软件。具体安装方法取决于您使用的操作系统。对于 Ubuntu,可以使用以下命令安装 NFS 客户端软件:
sudo apt-get update
sudo apt-get install nfs-common
  1. 创建挂载点:选择一个目录作为 NFS 共享的挂载点。挂载点是客户端上的一个目录,用于访问和操作共享的文件。例如,您可以在客户端上创建一个名为 /mnt/nfs 的目录作为挂载点:
sudo mkdir /mnt/nfs
  1. 挂载 NFS 共享:使用 mount 命令将 NFS 共享目录挂载到客户端的挂载点上。以下是挂载的基本语法:
sudo mount -t <NFS服务器IP地址或主机名>:<共享目录路径> <挂载点路径>

例如,如果 NFS 服务器的 IP 地址是 192.168.1.100,共享的目录是 /shared,而挂载点是 /mnt/nfs,您可以使用以下命令挂载共享目录:

sudo mount 192.168.1.100:/shared /mnt/nfs

如果 NFS 服务器设置了访问控制(ACL),您可能需要指定特定的选项来进行身份验证和权限设置。例如:

sudo mount -o rw,sync 192.168.1.100:/shared /mnt/nfs

这将以读写方式挂载共享目录。

  1. 验证挂载:使用以下命令验证 NFS 共享是否成功挂载到客户端:
df -h

检查输出列表中是否显示了您挂载的 NFS 共享。

  1. 自动挂载:如果您希望每次系统启动时自动挂载 NFS 共享,可以编辑客户端的 /etc/fstab 文件,添加相应的挂载配置。例如,可以使用以下命令打开 /etc/fstab 文件进行编辑:
sudo nano /etc/fstab

添加以下行到文件的末尾,进行挂载配置:

<ServerIP>:/shared  /mnt/nfs  nfs  defaults  0  0

替换 <ServerIP> 为 NFS 服务器的 IP 地址。保存并关闭文件。

至此,您已经完成了 NFS 客户端的配置。现在,您可以在客户端上通过挂载点 /mnt/nfs 访问和操作共享的文件。

请注意,上述步骤仅提供了基本的 NFS 客户端配置示例。根据您的需求,您可能需要进一步配置客户端,如添加额外的挂载选项或设置访问权限等。

希望这些步骤对您有帮助。如果您有其他问题,请随时提问。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/80470.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Aztec.nr:Aztec的隐私智能合约框架——用Noir扩展智能合约功能

1. 引言 前序博客有&#xff1a; Aztec的隐私抽象&#xff1a;在尊重EVM合约开发习惯的情况下实现智能合约隐私 Aztec.nr&#xff0c;为&#xff1a; 面向Aztec应用的&#xff0c;新的&#xff0c;强大的智能合约框架使得开发者可直观管理私有状态基于Noir构建&#xff0c;…

LeetCode2.两数相加

一看完题&#xff0c;我的想法是先算出这两个链表表示的数&#xff0c;然后相加&#xff0c;然后把这个数一位一位的分配给第三个数组&#xff0c;这种方法应该很简单但是要遍历三次数组&#xff0c;于是我就想直接一遍遍历&#xff0c;两个链表同时往后面遍历&#xff0c;把这…

基础篇之SDK编译

文章目录 一、 Ubuntu系统固件下载1. 固件下载2 放入SDK根目录中 二、编译SDK三、说明 一、 Ubuntu系统固件下载 1. 固件下载 在资源下载页面下载Ubuntu Rootfs固件&#xff0c;文件夹有三个文件&#xff0c;其区别如下&#xff0c;根据情况进行选择下载 资源名称作用Ubuntu2…

MySQL里的查看操作

文章目录 查看当前mysql有谁连接查看数据库或者表 查看当前mysql有谁连接 show processlist;查看数据库或者表 列出所有数据库&#xff1a; show databases;查看正在使用的数据库&#xff08;必须大写&#xff09;&#xff1a; SELECT DATABASE();列出数据库中的表&#xf…

免费开箱即用的微鳄任务管理系统

编者按&#xff1a;基于天翎低代码平台实现的微鳄365任务管理系统&#xff0c;包括有发起任务、重点关注、日程、项目管理等功能&#xff0c;支持私有化部署&#xff0c;免费开箱即用。任务管理系统是组织工作中不可或缺的工具&#xff0c;可以提高工作效率、促进协作、增强任务…

强大的JTAG边界扫描(5):FPGA边界扫描应用

文章目录 1. 获取芯片的BSDL文件2. 硬件连接3. 边界扫描测试4. 总结 上一篇文章&#xff0c;介绍了基于STM32F103的JTAG边界扫描应用&#xff0c;演示了TopJTAG Probe软件的应用&#xff0c;以及边界扫描的基本功能。本文介绍基于Xilinx FPGA的边界扫描应用&#xff0c;两者几乎…

华为云云耀云服务器 L 实例评测|配置教程 + 用 Python 简单绘图

文章目录 Part.I IntroductionChap.I 云耀云服务器 L 实例简介Chap.II 参与活动步骤 Part.II 配置Chap.I 初步配置Chap.II 配置安全组 Part.III 简单使用Chap.I VScode 远程连接华为云Chap.II 简单绘图 Reference Part.I Introduction 本篇博文是为了参与华为“【有奖征文】华…

Makefile基础

迷途小书童 读完需要 4分钟 速读仅需 2 分钟 1 引言 下面这个 C 语言的代码非常简单 #include <stdio.h>int main() {printf("Hello World!.\n");return 0; } 在 Linux 下面&#xff0c;我们使用下面的命令编译就可以 gcc hello.c -o hello 但是随着项目的变大…

【第200篇原创文章】解决低于1%概率出现的芯片VPSS模块跑飞的问题

在发布SDK内测的时候&#xff0c;我们发现在切换视频分辨率的时候有低概率出现VPSS模块跑飞的情况&#xff0c;概率低于1%&#xff0c;试个两三百次&#xff0c;能出1~2次。切换视频分辨率这个功能在安防产品上也确实存在需求&#xff0c;网络带宽不大好的地方分辨率可以适当下…

CKA真题分析-2023年度

补充信息 #补全 # apt install bash-completion source <(kubectl completion bash)# kubectl config get-contexts # cat ~/.kube/config |grep current# kubectl config current-context kubectl config use-context复制粘贴 ctrlshiftc ctrlshiftv # edit编辑时只能使…

Windows开机密码破解

Windows11以及Windows10(21H2)以上版本 先开机&#xff0c;不进行任何操作&#xff0c;静静的等待登录界面 按住Shift重启 进入“选择一个选项”界面&#xff0c;点击疑难解答 点击高级选项 点击命令提示符 输入两行命令 copy C:\windows\system32\uti1man.exe C: \Window…

竞赛 基于机器视觉的银行卡识别系统 - opencv python

1 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 基于深度学习的银行卡识别算法设计 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c;学长非常推荐&#xff01; &#x1f9ff; 更多资料, 项目分享&#xff1a; https://gitee.com/dancheng…

C【动态内存管理】

1. 为什么存在动态内存分配 int val 20;//在栈空间上开辟四个字节 char arr[10] {0};//在栈空间上开辟10个字节的连续空间 2. 动态内存函数的介绍 2.1 malloc&#xff1a;stdlib.h void* malloc (size_t size); int* p (int*)malloc(40); #include <stdlib.h> #incl…

Web服务(Web Service)

简介 Web服务&#xff08;Web Service&#xff09;是一种Web应用开发技术&#xff0c;用XML描述、发布、发现Web服务。它可以跨平台、进行分布式部署。 Web服务包含了一套标准&#xff0c;例如SOAP、WSDL、UDDI&#xff0c;定义了应用程序如何在Web上实现互操作。 Web服务的服…

类与对象的创建

package com.mypackage.oop.later;//学生类 //类里面只存在属性和方法 public class Student {//属性&#xff1a;字段//在类里面方法外面定义一个属性&#xff08;或者说是变量&#xff09;&#xff0c;然后在方法里面对他进行不同的实例化String name; //会有一个默认值&…

Android studio 断点调试、日志断点

目录 参考文章参考文章1、运行调试2、调试操作3、断点类型行断点的使用场景属性断点的使用场景异常断点的使用场景方法断点的使用场景条件断点日志断点 4、断点管理区 参考文章 参考文章 1、运行调试 开启 Debug 调试模式有两种方式&#xff1a; Debug Run&#xff1a;直接…

windows下C++的反射功能

概述 c/c如果在日志中查看某个结构体/类的每个变量名&#xff0c;变量值信息&#xff0c;只能通过printf逐个格式化&#xff0c;非常繁琐&#xff0c;如何做到类似protobuff转json的序列化功能呢&#xff1f;该dll库先通过分析pdb文件获取结构体/类的变量名称、变量地址&#…

Linux内核 6.6版本将遏制NVIDIA驱动的不正当行为

Linux 内核开发团队日前宣布&#xff0c;即将发布的 Linux 6.6 版本将增强内核模块机制&#xff0c;以更好地防御 NVIDIA 闭源驱动的不正当行为。 Linux 内核开发团队日前宣布&#xff0c;即将发布的 Linux 6.6 版本将增强内核模块机制&#xff0c;以更好地防御 NVIDIA 闭源驱…

Golang反射相关知识总结

1. Golang反射概述 Go语言的反射&#xff08;reflection&#xff09;是指在运行时动态地获取类型信息和操作对象的能力。在Go语言中&#xff0c;每个值都是一个接口类型&#xff0c;这个接口类型包含了这个值的类型信息和值的数据&#xff0c;因此&#xff0c;通过反射&#x…

win11 Windows hello录入指纹失败解决方法

刚换了xps&#xff0c;启用了administrator账号&#xff0c;win11专业版&#xff0c;发现使用Windows hello录入指纹时&#xff0c;只要一录指纹就立即出错 尝试卸载重装设备驱动--无效 把Windows update更新到最新--无效 最后查到&#xff0c;是Windows对administrator账户进…