
linux 学习笔记
lifelikes
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
使用g++编译.c 文件时,报错 sorry, unimplemented: non-trivial designated initializers not supported
因为黑心老板要我写的工程需要实现一个功能,而我只在网上找到了c++的开源库。 为了使用这个库,必须使用g++编译。 而我原来是用c写的。 因为c的结构体初始化很方便。 问题具体介绍: https://www.cnblogs.com/rohens-hbg/p/11357603.html c++是不支持乱序初始化的,想要在声明的时候初始化就必须按结构体里的顺序依次初始化。 解决方法也很简单,不能在声明...原创 2019-10-23 10:17:01 · 4079 阅读 · 0 评论 -
编译执行make,提示undefined reference to `XXXXXXXXXXXXXX'
根据以往的经验,一开始就觉得是没找到动态链接库的原因, 只要在gcc命令后添加pkg-config fuse3 zlib --cflags --libs 就可以了。 但我是真的蠢,加错地方了,结果从下午3点折腾到晚上8点。 我太难了。 正确: 错误: ...原创 2019-10-23 10:11:01 · 1464 阅读 · 0 评论 -
vim和gedit写入操作
被无良老师狠狠压榨的写文件系统中,发现了一些以前不会注意过的东西,这里记下来。 gedit的保存操作是 新建一个文件,把内容写入这个文件,再将这个文件覆盖掉原文件。 vim 是 打开文件的时候会生成一个~临时文件,写回操作时,先将临时文件删除,再按照原地址写回一次。 巧了,我写的文件系统对这俩都有bug。 ...原创 2019-10-19 23:33:46 · 484 阅读 · 0 评论 -
inode和super_block 初步理解 学习笔记
参考资料:https://zhuanlan.zhihu.com/p/79727391 Inode,super_block 再探:Inode整体上被分为两种,存在于内存中的inode和存在于磁盘中的inode 内存中的inode 通常是vfs inode VFS inode包含文件访问权限、属主、组、大小、生成时间、访问时间、最后修改时间等信息。 它是linux管理文件系统的最基本单位,也是文件系...原创 2019-10-14 19:39:42 · 424 阅读 · 0 评论 -
linux文件系统学习笔记 ----- dentry inode 文件的读写过程代码分析
复习dentry相关内容文件目录是一个树形的结构,为了保存这个树形结构 ,需要有一个合理的数据结构。这个数据结构就是dentry,dentry是一个纯粹的内存结构,由文件系统在提供文件访问的过程中在内存中直接建立 其中对于文件夹 d_subdirs 存放了其子文件,与给定目录下的所 有文件和子目录相关联的dentry实例,都归入到d_subdirs链表(在目录对应的dentry实例中)。子 ...原创 2019-10-14 14:44:00 · 548 阅读 · 0 评论 -
以模块的方式在内核中注册文件系统的大致代码过程介绍
先放参考代码: myfs.c 来自于 https://github.com/ljrkernel/linuxmooc # include <linux/module.h> # include <linux/fs.h> # include <linux/dcache.h> # include <linux/pagemap.h> # include <...原创 2019-10-12 16:47:34 · 732 阅读 · 0 评论 -
在ubuntu上使用BusyBox和qemu搭建linux内核调试环境的具体步骤
完成任务: 熟悉了解了如何进行linux内核的调试。 基本方法: 使用qemu创建虚拟机,进行调试。 所遇问题 busybox 出现问题 make install 没有出现_install 文件夹 而是在上级目录生成了install文件夹里会生成的东西。 用这些文件构建的虚拟磁盘无法正常启动虚拟机。 显示无法找到init文件。重新下载busybox后问题得到解决 linux内核文件一开...原创 2019-09-29 17:50:09 · 753 阅读 · 0 评论 -
TSL1.3 学习笔记(1)
最初的握手 (EC)DHE handshake 客户端会首先向服务器发送 一些加密参数,包括 用于建立会话的秘钥(随机数) 新生成的Diffie - Hellman(DH)的keyshares(关键部分?)以及相关联的信息集合。(ClientKeyShare) 服务器回复其选择的加密参数,包括 服务器随机数,客户端选择的group (共同组成ServerHello) 还会发送自己生成的DH的key...原创 2019-03-28 22:02:59 · 745 阅读 · 0 评论 -
学习笔记
关于系统用户的创建 useradd 和adduser是有区别。 useradd不会创建家目录。 adduser更像是人机对话,会一步步引导用户完成新用户的创建 ACL (访问控制表) setfacl 可以设置该文件的权限 getfacl 可以读取该文件的权限信息 getfacl 读取的文件格式 有一行 mask权限 所有文件的权限一定是mask权限的子集。 关于用户的切换 切换成root 时...原创 2019-03-23 14:21:32 · 212 阅读 · 0 评论 -
linux 学习笔记 Day3
了解了 Shell 是提供用户操作系统的一个接口 ,然后关于shell的内容就再也看不懂了。 先战略性放弃。 wget [ URL ] 命令 下载文件 正规表示法: grep -n ‘the’ regular_express.txt 查找 文件 regular_express.txt 中的 the 并打印行号(-n) grep -vn ‘the’ regular_expres...原创 2019-03-18 20:09:27 · 158 阅读 · 0 评论 -
linux学习笔记 day1
linux命令 大小写敏感。 Tab 键 按一次是补全命令 按两次是显示所有以 已经书写的字符串为前缀的命令。 ctrl + c 停止当前程序 ctrl + d 相当于exit man 命令 和 --help 作用差不多 linux下 文件权限很重要 使用 ls -al 命令 可以查看所有文件的权限开放情况 如 drwxr-xr-x 4 root ...原创 2019-03-17 14:05:35 · 177 阅读 · 0 评论 -
linux用户权限文件格式初步了解
PS: 感觉自己看的还是太粗了,很多东西都没看太懂。 linux下 每个用户都有两个ID 用于识别其身份 和权限 分别为 用户 ID 和 组群ID 在 etc/passwd 文件下 存有linux的所有账号信息 格式如下 daemon : x:1: 1: daemon: /usr/sbin: /usr/sbin/nologin 用户名 早期的密码字段 UID ...原创 2019-03-20 18:58:30 · 181 阅读 · 0 评论 -
day4
ps:vim真难用 1.shell script shell脚本语言跟直接在命令行里打命令效果差不多。 脚本文件后缀为.sh 可以使用sh 命令或者source命令执行脚本 两者的区别在于 sh命令执行完后,所有变量会被清除 而source不会 2. test命令 用于检测文件的相关属性 如是否存在等。 用处很大,也很方便。 3. [ ](中括号) 用于算数比较 如 if[条件判断]; then ...原创 2019-03-19 15:52:46 · 111 阅读 · 0 评论