linux编译新内核放在哪,将新文件系统编译到Linux内核中

2023-11-07

我正在努力在Debian上构建一个新的文件系统作为原型,因为现有的文件系统不符合我的某些要求.它旨在成为评估我们所拥有的某些要求的原型.

到目前为止的步骤:

我正在尝试使用provided MakeFile进行项目,但这是我得到的错误.

make -C /home/username/Workspace/testfs M=`pwd` modules

make[1]: Entering directory `/home/username/Workspace/testfs'

make[1]: *** No rule to make target `modules'. Stop.

make[1]: Leaving directory `/home/username/Workspace/testfs'

make: *** [testfs] Error 2

据我所知,它需要内核源代码(在我的/usr/src中).

debian:testfs karun$l /usr/src/

total 74M

drwxr-xr-x 4 root root 4.0K Jan 8 18:34 linux-headers-3.2.0-4-686-pae

drwxr-xr-x 4 root root 4.0K Jan 8 18:34 linux-headers-3.2.0-4-common

lrwxrwxrwx 1 root root 23 Jun 24 2012 linux-kbuild-3.2 -> ../lib/linux-kbuild-3.2

-rw-r--r-- 1 root root 122K Sep 18 20:20 linux-patch-3.2-rt.patch.bz2

lrwxrwxrwx 1 root root 25 Jan 10 20:21 linux-source -> /usr/src/linux-source-3.2

drwxr-xr-x 22 root root 4.0K Sep 18 20:20 linux-source-3.2

-rw-r--r-- 1 root root 74M Sep 18 20:22 linux-source-3.2.tar.bz2

lrwxrwxrwx 1 root root 49 Jan 8 14:29 vboxguest-4.3.6 -> /opt/VBoxGuestAdditions-4.3.6/src/vboxguest-4.3.6

Alterantive尝试尝试使用FS代码编译内核,然后“安装”它.

问题:如何在menuconfig上显示模块,以确保它与源代码一起编译并部署?

我的最终目标是能够将驱动器(HDD卷或闪存驱动器)格式化为我的自定义文件系统(我们称之为CustFS,如NTFS或HFS :),用于存储数据,而不必运行Linux操作系统.我已尽力提出实现此目的的步骤,但我找不到合适的帮助.

根据我的理解,我需要做以下事情

>写下FS代码

>使用内核源代码编译它

>部署新内核

我相信FUSE不会让我实现我想要的.我想在拇指驱动器上创建一个FS(作为测试),然后在HDD上创建一个FS,以便能够扩展它以超越它目前在每个文件夹的文件(少数几个)中的限制.

环境细节:

> Debian 7.3(wheezy)运行VirtualBox

> Linux内核版本3.2.0-4-686-pae(从uname -r转储)

如果您有任何其他问题或需要澄清,请告诉我.指向我需要经历的一些教程/步骤将真正有所帮助.

谢谢!

旁注,我是一名大部分时间都在从事Java工作的程序员.我(相信)我在C/C++方面有很好的工作知识,可以根据需要在顶层建立技能.这是我第一次尝试编译内核,我不知道如何添加模块.

解决方法:

通常,人们可以通过在FUSE中实现文件系统来开始.这使您可以方便地在用户空间中进行开发,这更易于使用.

你几乎可以肯定在FUSE做任何事情,如果你担心性能,你不会使用FUSE的主要原因. ZFS和NTFS都在FUSE中实现.

如果你进入内核路由,你会发现你的文件系统更难调试,开发过程要复杂得多.如果您不知道userland和内核空间之间的真正区别,请避免不惜一切代价制作内核模块.

标签:filesystems,linux,kernel

来源: https://codeday.me/bug/20190708/1406590.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

linux编译新内核放在哪,将新文件系统编译到Linux内核中 的相关文章

  • 云服务器 生物信息学,云服务器 生物信息学

    云服务器 生物信息学 内容精选 换一换 挂载有NVMe SSD盘的Linux弹性云服务器 如P1型云服务器 发生故障时 需联系管理员通过异地重建的方式进行恢复 新建故障弹性云服务器 如果故障弹性云服务器在 etc fstab中设置了NVMe
  • Ant Design 实现图片上传及预览

    Ant Design 实现多图片上传及预览 1 先看效果 2 前端实现方式 1 在代码中添加
  • Megatron-LM:Transformer模型专用分布式张量模型并行方法

    论文标题 Megatron LM Training Multi Billion Parameter Language Models Using Model Parallelism 论文链接 https arxiv org abs 1909
  • 最新某条_signature破解

    今天给大家带来某头条的 signature签名破解 目标URL aHR0cHM6Ly93d3cudG91dGlhby5jb20v 用base64解密得到 图1 1 在推荐模块 这就是我们想要抓取的内容 X条的是下拉XHR请求 所以 抓包看一
  • TCP/IP详解 卷1:协议 学习笔记 第二十八章 SMTP:简单邮件传送协议

    用户与用户代理打交道 有多个用户代理可供选择 Unix上常用用户代理包括MH Berkeley Mail Elm Mush 用TCP进行邮件交换是由报文传送代理MTA Message Transfer Agent 完成的 最普通的Unix系
  • C++(17):获取启动程序的路径

    C 17的filesystem提供了current path可以获得启动程序的目录 include
  • 幂方分解

    问题描述 任何一个正整数都可以用2的幂次方表示 例如 137 27 23 20 同时约定方次用括号来表示 即ab 可表示为a b 由此可知 137可表示为 2 7 2 3 2 0 进一步 7 22 2 20 21用2表示 3 2 20 所以
  • ESP32-搭建可能遇到的问题以及解决方法

    一 安装过程中出现ESP32 TOOLS espressif tools idf python 3 8 7 python exe m pip is not valid ERROR INVALID PIP 解决方法 1 找到报错位置的路径 例
  • ESP8266的使用

    本次博客知识来自于韦东山老师的7天物联网课程 一 预期功能 运用ESP8266模块 使单片机与手机微信的小程序进行通信 实现手机控制LED的亮灭 并且 单片机可以远程控制微信小程序中模拟的门铃开启和关闭 二 硬件设置 本次实验采用STM32
  • c# 中MD5.ComputeHash() aes加密,在Java和golang中的实现

    类似移植C 代码需求 需要加密效果一致 C 中使用了AesCryptoServiceProvider加密 文档链接 AesCryptoServiceProvider 类 下载里面代码在Visul Studio2019中可以针对原加密字符解密
  • vue/cli引入element ui 失败

    在创建好了vue脚手架后 安装了vue cli plugin element插件 然后运行 发现报错 这是element js文件里的代码 这是main js文件里的代码 这是报错 解决方法1 把import Vue from vue 改为
  • 云计算的未来——云计算核心技术

    我们正在经历着一个前所未有的变革时代 信息技术的不断创新也推动着各行业的业务创新 任何规模和类型的组织都需要拥抱最新的 IT 趋势才能保持竞争力与创新力 并关注自身的业务 越来越多的企业将关键运营机制建立在 IT 基础结构之上 从 CIO
  • FolderBrowserDialog提示用户选择文件夹滴

    示例 using FolderBrowserDialog dialog new FolderBrowserDialog dialog Description 请选择存放音乐的文件夹 dialog ShowNewFolderButton fa
  • vite入坑之路:react+vite动态导入报错@vite-ignore的解决方法

    正常的动态组件导入方式 webpack搭建的项目 不管是react还是vue通常引入动态组件基本这么写 const url import pages locale vite不支持 or const url import pages loca
  • 免费的mathematica

    这里说的不是破解版 而是mathematica官方推出的免费版 没有笔记本界面等一些功能 可以在命令行使用 不过可以配置jupyter使用啊 安装 直接按照官方的提示安装就好了 http support wolfram com kb 460
  • 数据库核心

    package com example moni tab import android content ContentValues import android database Cursor import android database
  • taro不同的项目中使用不同版本的taro-cli

    这里写目录标题 preface 解决方案 1 局部安装 tarojs cli 2 测试 局部是否可以使用 tarojs cli preface 我有两个 taro 项目 写的时间前后差距半年多了 现在 taro 版本不一致 分别是 1 3
  • WTL 界面设计篇(CSkinDialog)

    头文件声明 CSkinDialog h pragma once include
  • Yolov5 优化,包括Yolov8 c2f模块

    目录 各种技巧实战测试 decouple head yolo中添加 Yolov5 Yolov7加入Yolov8 c2f模块 小目标涨点 1 加入backbone 2 加入head 各种技巧实战测试 基于Yolov5的道路缺陷识别 加入CVP

随机推荐

  • keil5调试代码常见的警告与错误整理

    1 warning 1295 D Deprecated declaration run c give arg types void run c 原函数 void run c void 改正后 对比前面声明的函数 发现是括号少了一个void
  • Spring Cloud架构的各个组件的原理分析

    点击上方 芋道源码 选择 设为星标 管她前浪 还是后浪 能浪的浪 才是好浪 每天 10 33 更新文章 每天掉亿点点头发 源码精品专栏 原创 Java 2021 超神之路 很肝 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网
  • vue之router钩子函数

    模块一 全局导航钩子函数 1 vue router beforeEach 全局前置守卫 beforeEach的钩子函数 它是一个全局的before 钩子函数 before each 意思是在 每次每一个路由改变的时候都得执行一遍 它的三个参
  • SQL之变量的使用和赋值

    MySQL的用户变量 变量 变量名 比如 var 申明变量 set 变量名 比如 set var 只是申明 不显示 select 变量名 比如 select var 只是申明 显示 select num 字段名 from 表名 where
  • python 人工智能库_基于python的机器学习库 - 全文

    毫无疑问 神经网络和机器学习在过去几年一直是高科技领域最热门的话题之一 这一点很容易看出 因为它们解决了很多真正有趣的用例 如语音识别 图像识别 甚至是乐曲谱写 PyBrain的概念是将一系列的数据处理的算法封装到被称之为Module的模块
  • STM32F407单片机读取USR-WIFI232-B2模块的MAC地址

    最近工程项目需要单片机读取USR WIFI232 B2 WIFI 模块的MAC地址 研究了一下 并成功获取了MAC地址 步骤如下 1 单片机上电 USR WIFI232 B2 WIFI 模块先延时12秒 等待模块准备好 2 单片机给USR
  • 面试小结-那些求职路上的经验分享与感受

    世界那么大 我想去看看 世界那么大 我也想去看看 这个月 小吕完成了一次工作上的跳槽 在这种全民跳槽的月份 小吕的心情显的稍有些浮躁 工作上也怠慢了很多 虽然这个月的工作量也不大 没有心思钻研技术 也不能好好静下心来学习 我不喜欢现在这状态
  • flask昌平区安防摄像头可视化

    flask昌平区安防摄像头可视化 此系统有详细的录屏 下面只是部分截图 需要看完整录屏联系博主 系统开发语言python 框架为flask 数据库mysql 分为爬虫和可视化分析
  • 获取当月天数

    获取当月天数 需要导入import java util Calendar String time 2023 2 14 Calendar calendar Calendar getInstance Date data new SimpleDa
  • osgEarth的Rex引擎原理分析(十)earth文件中都有哪些options

    目标 九 中问题9 通过在earth文件中搜索options 发现主要有这么几种
  • 添加和修改docker容器端口映射的方法

    一 添加docker容器端口映射 以tomcat容器为例 root localhost docker run name mytomcat d p 8888 8080 tomcat name 创建的tomcat镜像名称 d 后台运行 p 将主
  • CTF中phpinfo应注意什么

    CTF中 phpinfo应注意什么 1 allow url fopen和allow url include 这个配置选项可以知道在PHP文件包含中可以使用哪些伪协议 2 PHP版本 3 open basedir 这个配置选项可以知道PHP将
  • eclipse打开之后没有界面

    自己工作的电脑上的eclipse经常打开之后没有界面显示出来 但是后台有eclipse和java的进程在运行 这个时候要进入到当前eclipse选择的工作目录 也就是打不开eclipse界面的那个工作目录 中的 gt metadata pl
  • 深入理解原码、反码和补码及其在计算机中的应用【附代码】

    目录 引言 一 原码 Sign Magnitude 二 反码 One s Complement 三 补码 Two s Complement 四 代码实例 结论 参考资料 引言 在计算机科学中 原码 反码和补码是表示有符号整数的三种常见编码方
  • JSON解析器之Gson、FastJson、Jackson

    文章目录 1 Gson 谷歌 2 FastJson 阿里 3 JackSon JSON解析器 常见的解析器 Jsonlib Gson fastjson jackson 1 Gson 谷歌 最好使用最新jar包 百度搜索Gson然后去GitH
  • NFT相关的常见术语

    NFT 爱好者在谈论这个东西时候总是会有一堆让人眼花缭乱的术语 对非圈内人来说会感觉难以理解 这里整理了23个术语解释来帮助你理解 1 10k 项目 一个 10k 项目是一个由大约 10 000 个头像组成的 集邮 项目 这种类型的 NFT
  • 如何在GitHub上传大文件(≥100M)

    学习工作中 有时会遇到需要将一些资源上传到GitHub的仓库 repository 上去 比如一些训练完的模型 但GitHub对于直接上传的文件有大小限制 超过100M的文件需要使用Git LFS才能上传 以下是我根据各位大神和自己的实操经
  • switch 语句 -- 超详解

    目录 语法结构 在switch 语句中的break default 子句 编程好习惯 语法结构 switch 整型表达式 语句项 那么语句项是什么呢 是一些case语句 如下 case 整形常量表达式 语句 在switch 语句中的brea
  • 论文研读 —— 9. DensePose From WiFi

    文章目录 Authors Bibtex 0 ABSTRACT 1 INTRODUCTION 2 RELATED WORK 3 METHODS 3 1 Phase Sanitization 3 2 Modality Translation N
  • linux编译新内核放在哪,将新文件系统编译到Linux内核中

    我正在努力在Debian上构建一个新的文件系统作为原型 因为现有的文件系统不符合我的某些要求 它旨在成为评估我们所拥有的某些要求的原型 到目前为止的步骤 我正在尝试使用provided MakeFile进行项目 但这是我得到的错误 make