第三章 文件I/O 第四章 文件和目录 第三章 文件I/O open(const char *pathname, int oflag, .../*mode_t mode*/) oflag除了熟悉的O_CREATE, O_RDONLY, O_WRONLY, O_RDWR外, 还有 O_APPEND 追加 O_EXCL 如果存在就会报错,不存在就创建,原子性操作 O_SYNC 保证数据一定落到硬盘上,但实际上很多系统并没有实现这个 O_TRUNC 成功打开后,且有写权限时,把长度截断到0 进程关闭时会自动关闭进程打开的所有fd. 可利用lseek来把cur位置往后移动,创建空洞文件,中间全为0. read和write是不带buff的,最优buff通常都是4096字节,即页大小. 文件的i节点中记录了文件的所有者,文件长度,文件所在的设备等,所以多个进程同时写一个文件时,相当于对i节点做原子操作. 由于历史原因,O_RDONLY,O_WRONLY并不是恰好不同的二进制位,所以要判断时必须 val & O_ACCMODE . int dup(fd) 用于从fd复制一个新的,并返回,等价
发表于 2018-04-23 08:41:48 | 条评论 | 阅读次数:14
目标:A电脑连接B电脑无需密码 第一步:生成私钥/公玥对 ssh-keygen -t rsa -P '' ssh连接是默认开启通过公钥和私钥这种连接方式连接的。 ‘’里面是私钥的密码,用于使用私钥时的二次验证,我们目的是不输入任何密码,所以这里留空。 默认生成的公钥地址为.~ssh/id_rsa.pub,默认生成的私钥地址为~ssh/id_rsa 私钥应存在A电脑中,然后我们把公钥复制到B电脑里去,如放到~/id_rsa.pub 第二步:修改权限, 添加私钥 这一步非常的重要,否则会一直失败。 保证两台电脑的.ssh的权限为700,A电脑中的私钥为600 A电脑使用命令 ssh-add ~/.ssh/id_rsa 把私钥添加到ssh中 第三步:配置B电脑的公钥 cat ~/id_rsa.pub >> ~/.ssh/authorized_keys 即在authorized_keys中追加这次的公钥 第四步:连接 A电脑直接ssh B电脑,如果前面的配置正确,就能做到无密码登录。 如果之前第一步的-P中填了二次验证的密码,只需要输入二次验证的密码,就能登录。
发表于 2017-11-02 14:09:56 | 条评论 | 阅读次数:65
Copyright © 2017 - 2018 qwb's blog
blog.csustacm.com All Rights Reserved
Powered by qwb Contact me