Win10无法访问linux上的samba服务问题解决 服务端:Ubuntu20.04, samba版本4.13.17-Ubuntu客户端:Win10问题1:按照教程搭建好samba服务之后,从windows可以ping通linux的情况下,从windows端无法连接samba服务器。解决:通过打开Lanman工作站的启用不安全的来宾登录选项解决无法访问的问题。win+R输入gpedit.msc计算机配置->管理模板->网络->Lanman工作站->启用不安全的来宾登录。问题2:
顺序IO和随机IO 对于从磁盘中读取数据的操作,叫做磁盘IO,分两种情况:随机IO就是读写的内容位于分散在磁盘的不同位置,需要来回查找所以效率低;顺序IO就是读写的内容集中存储在磁盘的一块,从前到后依次读取,免去了查找的过程,所以效率高。机械磁盘的顺序IO和随机IO的性能差异巨大。顺序IO时缓存命中率高,节省寻道时间。随机IO不停寻址,缓存失效。应用:复制文件夹:复制文件夹的时候,如果包含许多小文件,复制速度很慢。为了提高复制速度,可以先打一个包,打包把文件夹变成一个大文件。再复制的时候,变成顺
守护进程(daemon) 守护进程是在后台运行不与控制终端关联的进程。Unix系统有很多后台进程,执行不同的任务管理。守护进程没有控制终端源于它们由系统初始化脚本启动。守护进程也可以从终端启动,这样守护进程必须亲自脱离与控制终端的关联,避免与作业控制终端会话管理、终端产生信号等发送任何不期望的交互,也可以避免在后台运行的守护进程非预期地输出到终端。守护进程启动方法:1)在系统启动阶段,由系统初始化脚本启动;这些脚本位于/etc目录或/etc/rc开头地某个目录。这些脚本启动地守护进程拥有超级用户特权;如:inet
strncpy函数使用注意 与同事互相code review的时候,同事指出我的代码在使用strcpy,建议改为strncpy,避免缓冲区溢出问题。于是不加思索改为strncpy,谁知道不小心遇到strncpy另一个问题,也可能导致缓冲区溢出。先贴上strncpy的函数原型:char *strncpy(char *dest, const char *src, size_t n)和strcpy相比多了一个参数n,意思是最多拷贝n个字节,以避免缓冲区的溢出。我的代码是这样的:char dest[8] = {0};
git pull报错:Your local changes to the following files would be overwritten by merge git pull 从服务器拉取代码的时候,遇到如下错误提示:error: Your local changes to the following files would be overwritten by merge: project/Makefile project/include/TNClientInfoManger.h project/src/main.c test/ut/MakefilePlease, commit your changes or stash ...
第18讲 | DNS协议:网络世界的地址簿 现在网站的数目非常多,如果要访问网站的时候全部使用IP地址,恐怕你很难记住。所以,需要一个地址簿,根据名称查看具体的IP地址。DNS服务器这个网络世界中的地址簿,就是DNS服务器。每个人上网都需使用DNS服务器,因此一旦出故障,整个互联网都讲瘫痪。另外,上网的人分布在世界各地,如果大家都访问同一台服务器,那么时延会非常大。因此,DNS服务器一定要设置成高可用、高并发和分布式的。我们看下DNS树状的层次结构。根DNS服务器:返回顶级域DNS服务器的IP地址 顶级域DNS服务器:返回权
git checkout 与 git clean git 用了好久,但是很多功能都没有用明白。平时主要用的命令是git pull ——从代码服务器拉取最新的代码到本地; git add ——提交到暂存区; git commit ——提交代码; git push ——向服务器推送代码。问题拉取代码的时候和同事的代码冲突了,我本地并没有做过多的修改,因此我的目标是不用保留我本地的修改,解决冲突。解决我用到两个命令:git checkout . git clean -dfgit checkout 的作用是放弃掉还没有加入到暂存区的
序列化和反序列化 总是听到这两个名词,但是又不知道具体是指什么意思,所以带着疑问在网上搜索了一番,将我的理解记录下来。序列化是指把内存中的对象转换为字节序列的过程。反序列化是序列化的逆过程,将字节序列恢复为内存中的对象。凡是离开内存的信息都要进行序列化,比如本地存储或网络传输。为什么要进行序列化/反序列化,不是很麻烦吗?为什么不能直接传输对象呢?答案是内存对象不能直接传输,网络传输或本地存储的内...
C语言逗号运算符优先级 在C语言中逗号运算符(,)是优先级最低的运算符。所谓的优先级是指当有许多运算符在一起的时候,谁先执行的问题。例如:1+2*3,先执行加号运算符还是先执行乘号运算符。赋值运算符(=)是优先级较低的运算符,但逗号运算符的优先级低于赋值运算符(=)。逗号运算符还有以下这些特点:从左向右执行表达式。即(i+1, i*2, i-3)这个表达式先计算最左边的i+1,然后是i*2,最后是i-3。...
第16讲 | 流媒体协议:如何在直播里看到美女帅哥? 最近直播比较火,那一个直播系统里有哪些组成部分,都用了哪些协议呢?无论直播还是点播,都是对于视频数据的传输。这里面涉及到许多的技术名词。三个名词系列名词系列一:AVI、MPEG、RMVB、MP4、MOV、FLV、WebM、WMV、ASF、MKV。是不是很熟悉RMVB和MP4。 名词系列二:H.261、H.262、H.263、H.264、H.265。重点关注H.264。 名词系列三:...
第15讲 | HTTPS协议:点外卖的过程原来这么复杂 HTTP协议用来看新闻没问题,但是到了更严肃的场景,就会存在安全风险。比如,你点外卖要下单支付,如果用HTTP协议,很可能会泄漏安全信息。你发送一个请求,说我要点这个外卖,然后这个包可能被黑客截获了,黑客假装自己是外卖网站,然后回复你一个假消息,让你输入银行卡号、密码等安全信息。如果你真的发给他,那你的安全信息就泄漏了。这个问题怎么解决呢?一般的思路是加密。加密分为两种,一种是对称加密,一...
计算机中的IO这个术语到底是什么意思? 对于计算机中反复出现的IO这个概念不是很清楚,查了一下百度,除了说明是Input/Output之外,其他完全不知所云。然后查了下维基百科,终于有了一点眉目:Incomputing,input/outputorI/O(or, informally,ioorIO) is the communication between an information processing sy...
Linux cp命令拷贝目录中的隐藏文件 使用cp命令拷贝一个目录到另一个目录一般使用:cp -R dir1/* dir2这条命令将dir1目录下的所有文件和子目录拷贝到dir2目录下,但是不会拷贝隐藏文件,例如.gitignore。所以要拷贝隐藏文件需要使用点(.)代替星号(*),即:cp -R dir/. dir2这条命令会将dir1目录下所有文件和子目录拷贝到dir2目录下,包括隐藏文件。...
git pull更新代码时每次都需要输入用户名密码的解决办法 问题:使用git pull命令从代码库更新代码到本地时,每次都要求输入用户名密码,十分不方便。解决办法:在项目目录下输入如下命令:git config --global credential.helper store然后再次使用git pull更新代码时,输入一次用户名密码,此时git会将用户名密码保存下来,以后就不用再输入了。...
第14讲 | HTTP协议:看个新闻原来这么麻烦 HTTP协议,是每个人上网用的第一个协议。当你在浏览器输入http://www.163.com,这其实是个URL,叫统一资源定位符。统一是说访问网络资源都按照这种统一的格式。http表示使用HTTP协议,www.163.com是一个域名,表示互联网的某个位置。正是因为它是统一的,当你输入这个URL时,浏览器才直到怎么去统一处理。HTTP请求的准备浏览器将www.163.com的域名发给...
第13讲 | 套接字Socket:Talk is cheap, show me the code 这一节我们讲基于TCP和UDP协议的Socket编程。TCP和UDP协议分客户端和服务端,Socket编程也同样这么分。Socket,这个单词的含义有插口或者插槽的意思。你可以想象网络通信就是弄一根网线,一头插在客户端,一头插在服务端,然后进行通信。所以通信前双方首先都要建立一个Socket。建立Socket的时候,要设置哪些参数呢?Socket编程进行的是端到端的网络通信,它不知道中...
第12讲 | TCP协议(下):西行必定多妖孽,恒心智慧消磨难 公网是不可靠的,需要很多机制保证传输的可靠性,这里需要恒心,即各种重传的策略,还要有智慧,即各种算法。如何做个靠谱的人?怎么算是个靠谱的人?领导交代的事情到底能不能做到,什么时候完成都要有一个应答,回复。这样,处理过程中有异常,能尽快让领导知道。对应到网络协议上,客户端没发送一个包,服务端都应该有个回复,如果服务端超过一定的时间没有回复,客户端就会重新发送这个包,直到有回复。...
第11讲 | TCP协议(上):因性恶而复杂,先恶后善反轻松 上一讲我们讲了简单的UDP协议,UDP相信网络世界是简单的,所以UDP没有复杂的机制。这次我们讲TCP,TCP是很复杂的,因为它认为网络世界是复杂的,丢包、乱序、拥堵是家常便饭,一不小心数据包就无法送达。TCP包头格式TCP头的格式比UDP复杂许多。首先,源端口号和目的端口号必不可少。如果没有端口号就不知道该发给哪个应用。接下来是序号。为什么需要序号字段?是为了解决乱序的问...