在Linux中误删除了某个文件,但是 ps-ef|grep 文件名 发现某个进程还在使用该文件,那么可以通 过以下方式恢复文件. 例如:创建一个简单文件/tmp/test.txt, 随便向里面写点内容 两个client模拟,client1 负责打开文件less /tmp/test.txt(模拟占用线程) client2 负责恢复文件,恢复步骤(均在client2上执行) 1. 查看/tp/test.txt被占用的进程id [root@host tmp]# ps -ef|grep test.txt…
Linux 利用进程打开的文件描述符(/proc)恢复被误删文件 在 windows 上删除文件时,如果文件还在使用中,会提示一个错误:但是在 linux 上删除文件时,无论文件是否在使用中,甚至是还是在写入,都可以被 rm 简单地删除 :-< 不过,rm 删除时并非是被真正地擦除,特别是当文件还在被进程打开时,是可以完整地恢复的. linux 的每个文件对应一个 inode 号,它有两个计数 i_count (内存引用计数,当前使用这个文件的进程数量) 和 i_nlink (磁盘引用计数,硬链…
文章目录 文件描述符 文件数据结构 共享文件 UNIX域socket实现传递文件描述符 进程间传递打开的文件描述符,并不是传递文件描述符的值.先说一下文件描述符. 文件描述符 对内核来说,所有打开的文件都会通过文件描述符引用,文件描述符在进程中是一个非负整数,文件描述符在进程中是从0开始,默认0与标准输入关联.1与标准输出关联.2与标准出错关联.之后进程每打开一个文件或者创建一个新文件的时候,内核都会向进程返回一个文件描述符来表示这个文件,文件描述符是递增的.文件描述符的值与文件没有必然的联系,…
众所周知,子进程会继承父进程已经打开的文件描述符fd,但是fork之后的是不会被继承的,这个时候是否无能无力了?答应是NO.Linux提供了一个系统调用sendmsg,借助它,可以实现进程间传递文件描述符fd,而且不仅限于父进程到子进程.sendmsg函数的原型如下: #include <sys/socket.h> ssize_t sendmsg(int socket, const struct msghdr *message, int flags); ssize_t recvmsg(int …
先引入一个例子,该程序的目的是子进程向父进程传递文件描述符,并通过该文件描述符读取buf. #include <func.h> int main(){ int fds[2]; pipe(fds); if(!fork()){ close(fds[1]); int fd; read(fds[0], &fd, sizeof(fd)); printf("child fd = %d\n", fd); char buf[128] = {0}; read(fd, buf, siz…
工具类:从一个文件夹中复制jar到另一个文件夹中 需要的小伙伴可以试一试,很爽哦,有时候真的很需要! 需求:当我们拿到一个maven项目时,而maven项目的jar包都是通过pom.xml文件管理的,此时我们需要maven中的jar(很多,目录很复杂,很难手动复制) 有两种方式: 传统方式1.找到本地maven存放的位置,挨个进去复制jar包:(尝试了一下,复制一半花费了1个小时) 便捷方式2. 使用java写个工具帮我们做这件事, 方便快捷   (20s搞定) 有了需求,就有了我这里的工具类,…
在日常的使用电脑的过程中,有时候我们需要比较两个文件夹,查找出两个文件夹中不同的文件以及文件中不同的内容信息,进行内容的校对以及合并等操作.其实使用Beyond Compare软件即可轻松比较,Beyond Compare中文版是一款专业的文本文件对比工具,可以高效的针对文件.文件夹.表格.mp3.图片.数据.注册表等文件并进行比较.合并.同步分析等操作. 以前使用过Beyond Compare来合并两个不同的代码版本信息,通过文件夹的比较很容易的给你标志出两个文件中的文件的不同,并标志出每个文…
先列出框架,具体后继再来分析. 首先是lds文件,该文件设置了各个section在FLASH或RAM中的先后顺序. 位于~/openwrt1407/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.10.49/arch/mips/kernel/vmlinux.lds 另外一个名字相似的,~/openwrt1407/build_dir/target-mips_34kc_uClibc-0.9.33.2/li…
1.用户信息文件  /etc/passwd 示例root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologin 7个字段含义 第1个字段:用户名称第2个字段:密码标志 x表示 用户是有密码的 密码在/etc/shadow第3个字段:UID (用户ID)  0: 超级用户 系统最高级用户…
发布网站至IIS-附加到进程调试 Internet Information Services(IIS,互联网信息服务),是由微软公司提供的基于运行Microsoft Windows的互联网基本服务. 一:发布项目. 1.点击启动项目右键发布,选择自定义. 2.填写配置文件名称 3.选择File System,选择目标路径. 4.选择Debug模式 5.最后预览点击发布. 二:配置IIS. 1Windows7中IIS的配置 开始==>控制面板==>程序和功能 如下图所示: 点击[打开或关闭Win…