变量值D:\Program Files\nodejs\node\_modules, 这里写你安装之后node\_modules所在的路径
下载完Jupyter lab环境,想安装一些插件,于是需要先安装nodejs和npm。 于是进行安装
``errno`` 模块定义了许多的符号错误码, 比如 ``ENOENT`` ("没有该目录入口") 以及 ``EPERM`` ("权限被拒绝"). 它还提供了一个映射到对应平台数字错误代码的字典. [Example 2-21 #eg-2-21] 展示了如何使用 ``errno`` 模块.
一开始是以为权限的问题,后管理员的方式打开命令,也看了很多网上的解决方法,像删除node_modules文件,删除npm缓存 npm cache clean --force,重新 npm install下载也都还是不行。最后通过 cnpm 成功安装了依赖
sys_unlink是删除硬链接的系统调用,引用数为0时底层的文件会被删除sys_unlink是删除硬链接的系统调用,引用数为0时底层的文件会被删除
1)会以O_RDWR | O_CREAT | O_EXCL形式open,若存在的话会返回创建文件失败。
上一篇中介绍了阻塞IO等的一些用法,本来这一篇准备介绍一下poll/select等的一些高级IO操作,后来想想,在实际工作中开发驱动的时候很少会使用到poll/select这些操作,就不再介绍,有兴趣的可以自己查找资料学习一下。这一篇会介绍下相对比较实用的设备文件的存取控制的一些内容。 存取控制主要用于设备的使用控制,只有授权的用户才能访问设备或者同时只有一个进程访问设备。这也是存取控制使用最广的地方。下面分别简单说明。 单open设备 单open设备就是同时只有一个进程允许打开一次所要访问的设备。此种方法
sys_link是创建硬链接的函数,从这个函数的代码中我们看到,硬链接的原理。文件查找和操作函数见之前的文章。这里就不贴了。
生成的pyc可以跨平台使用,但是只能这样用python xxx.pyc,而不能使用./xxx.pyc执行,因为缺少了shebang的支持,不过貌似Binfmt_misc可以解决这个问题,ubuntu下apt-get install binfmt-support可以直接安装。
epoll 是 Linux 系统中常用的多路复用 I/O 组件,一般用于监听 socket 是否能够进行 I/O 操作。那么,epoll 能监听普通文件吗?
当使用参数调用宏时,会将参数替换为宏主体,并与其他输入文件一起检查结果,以进行更多的宏调用,可以将部分来自宏主体和部分自变量的宏调用组合在一起。例如,
安装pm2 npm install pm2 -g 添加系统环境变量 PM2_HOME=C:\Users\PCONE\.pm2 打开新的cmd命令行窗口,执行以下命令来安装服务 pm2-service
我们在linux中安装驱动,有时会遇到受限或冲突,通常解决方式都是要修改blacklist.conf, 那么如何认识和深入了解它呢?下面就解读下 一、blacklist黑名单 对内核模块来说,黑名单是指禁止某个模块装入的机制
在Visual Studio Code的终端控制台里面安装npm install fetch-jsonp模块的时候报出这样的错误:
gitbook 是一款文档编写利器,可以方便地 markdown 输出成美观优雅的 html ,gitbook serve 启动服务器后,原来相貌平平的 markdown 丑小鸭摇身一变就成了倾国倾城的 html 绝色佳人.
安装pm2 npm install pm2 -g 添加系统环境变量 PM2_HOME=C:\Users\PCONE.pm2 打开新的cmd命令行窗口,执行以下命令来安装服务 pm2-service
$ sudo gem update --system // 先更新gem,国内需要切换源
ptrace(2)这个系统调用一般都跟调试离不开关系,它不仅是类Unix系统中本地调试器监控实现的主要机制,而且它还是strace系统调用常用的实现方法。ptrace()系统调用函数提供了一个进程(the “tracer”)监察和控制另一个进程(the “tracee”)的方法,它不仅可以监控系统调用,而且还能够检查和改变“tracee”进程的内存和寄存器里的数据,甚至它还可以拦截系统调用。
调用 mmap 系统调用 , 先检查 " 偏移 " 是否是 " 内存页大小 " 的 " 整数倍 " , 如果偏移是内存页大小的整数倍 , 则调用 sys_mmap_pgoff 函数 , 继续向下执行 ;
使用的是公有云,最近要对k8s版本进行升级,在升级之后发发现从我们的web terminal 进入到容器, 拥有sudo权限的用户无法进行sudo命令,即使使用root通过docker exec 进入到容器,依旧无法sudo
如今的操作系统都是支持多任务、多用户的,计算机的资源是各个用户和任务共享的。操作系统通过setrlimit系统调用提供控制资源使用的方法。该函数的实现在各版本的内核里不尽相同,现在也支持了更多的能力,本文通过1.2.13的内核大致分析资源使用限制的一些原理。 首先在PCB中加了一个字段记录了限制信息。
webstorm saas 注意:mac上自带ruby环境一般不用安装 安装SASS 1.安装rvm sudo curl -L https://get.rvm.io | bash -s stable 安装完成后执行脚本让rvm生效 sudo source ~/.rvm/scripts/rvm 查看rvm版本出现版本号则安装成功 rvm -v 2.用rvm安装ruby sudo rvm install ruby-2.0.0-p648 安装完后查看下gem版本 gem -v 3.用gem安装sass 把gem地
更新macOS的版本后,pod install等命令经常就无效了,或者是出现如下这样的反应:
// 释放pcb的一页内存,重新调度进程 void release(struct task_struct * p) { int i; if (!p) return; for (i=1 ; i<NR_TASKS ; i++) if (task[i]==p) { task[i]=NULL; free_page((long)p); schedule(); ret
里面有两个和mount有关的操作一个是do_kern_mount,一个是 do_add_mount,一个是做mount挂载,一个是将mount挂载的fs添加到mount的列表里
Cephfs的快照功能在官网都很少提及,因为即使开发了很多年,但是由于cephfs的复杂性,功能一直没能达到稳定,这里,只是介绍一下这个功能,怎么使用,并且建议不要在生产中使用,因为搞不好是会丢数据的
多任务共享资源需要互斥,VxWorks里可以使用互斥信号量。Posix也定义类似的概念:用于Thread的Mutex
使用 npm(Node Package Manager)进行包管理时,常常会遇到各种报错信息。这些报错可能源自于网络问题、包依赖、配置错误或系统环境等多种因素。解决这些问题需要一定的经验和技巧。在这篇文章中,我们会介绍一些常见的 npm 报错及其解决方法。
之前遇到过kill( pid, 0 )的情况,由于平常没注意到kill函数的形参为0的情况,不知道它的作用。后面用man 2 kill命令查看了下kill函数的说明,发现可以用来检测进程的存在情况。
版权声明:本文为博主原创文章,转载请注明源地址。 https://blog.csdn.net/10km/article/details/82969947
从 #define EEXIST 17 /* File exists */ 可以获知这个宏定义代表文件已经存在
作者简介:刘斌,云和恩墨高级技术专家,擅长数据库故障诊断分析,数据库性能优化,自动化运维开发,坚持学习、写作、分享, 在Oracle DBA的日常工作中,通过各种跟踪手段,从数据库内外部发现问题,最终
rarp是通过mac地址查询ip的协议,主要用于有mac的主机,但是没有ip的情况。我们先看看rarp协议的协议定义(来自网上的图[1])。
在全局安装jsdom后,在node里按上面的写法是没有问题的,但是我们要在python中使用的话,不能在全局安装
runc 是一个底层容器运行时,我在之前已经写过很多篇文章介绍它了,感兴趣的小伙伴可以翻翻历史文章。上周它发布了 v1.1.4 版本, 这是 v1.1 系列的第 4 个 patch 版本。当前该项目正在积极的进行 v1.2 版本的开发。
之前说过Google为了在user space阻止系统suspend,为Android设计出一套新的电源管理: wakelocks, early_suspend等。此机制修改了Linux原生的susupend流程,定义子自己的休眠接口。起初Android为了合入此patch和Linux内核开发者有一段时间的讨论。比如此地址:http://lwn.net/Articles/318611/
容器化技术在各种生产领域已经得到了广泛的应用,这得益于容器的轻量化(相比于虚拟机而言),安全性(隔离弱于虚拟机,但是权限控制得当的情况下也可以认为是安全隔离的)以及系统级虚拟化带来的高可用性(基于NameSpace和cgroup)。虽然现在各大平台的兼容性有趋同的势头,比如Windows推出了WSL子系统,使得用户在Windows机器上也可以很轻松的搭建Linux环境。但是容器依然保持着它的热度,这说明它的可用性并不是一个系统组件就可以替代的。前面几篇文章中我们介绍过Docker容器和Singularity容器的用法,这里我们再讲讲Singularity容器的非源码安装方法(Manjaro Linux平台),以及修改静态容器镜像文件的方法。
相信需要了解这方面的知识的小伙伴,已经基本对进程间通信和线程间通信有了一定了解。例如,进程间通信的机制之一:共享内存(在这里不做详解):多个进程可同时访问同一块内存。如果不对访问这块内存的临界区进行互斥或者同步,那么进程的运行很可能出现一些不可预知的错误和结果。
1 uboot将Linux DTB二进制文件传递给Linux kernel, Linux kernel在启动过程中,会将DTB二进制文件加载进内存,并将device tree展开,通过深度遍历整棵树,填充每个节点和属性, 调用过程start_kernel() -> setup_arch() -> unflatten_device_tree()
// 新建一个socket结构体,并且创建一个下层的sock结构体,互相关联 static int sock_socket(int family, int type, int protocol) { int i, fd; struct socket *sock; struct proto_ops *ops; for (i = 0; i < NPROTO; ++i) { // 从props数组中找到family协议对应的操作函数集,props由系统初始化时soc
/* * linux/fs/minix/namei.c * * Copyright (C) 1991, 1992 Linus Torvalds */ #ifdef MODULE #include <linux/module.h> #endif #include <linux/sched.h> #include <linux/minix_fs.h> #include <linux/kernel.h> #include <linux/string.h> #include <linux/stat
CocoaPods简介 什么是CocoaPods?每种语言发展到一个阶段,就会出现相应的依赖管理工具。好比Java 语言的 Maven,nodejs 的 npm,Android的grandle。而对于ios平台来说,CocoaPods是ios开发平台一个非常流行的第三方库管理工具。在开发过程中,根据项目复杂程度,通常我们会需要外链很多的第三方库。而添加这些第三方库的过程有时候会变成一场灾难。因此使用CocoaPods来代替我们管理这些库,将可以大幅缩短我们的开发时间。 CocoaPods项目的源码 在
因为最近在闲鱼平台帮助别人远程安装hexo博客框架,弄了几次下来觉得还是自己吧这个过程写下来比较好。 先声明,下文中nodejs的安装路径为D:\Nodejs,所有博客文件放在D:\Blog,github用户名是MYNAME123。
领取专属 10元无门槛券
手把手带您无忧上云