unix下的ACL】的更多相关文章

acl可以针对user,组,目录默认属性(mask)来控制. acl需要文件系统支持,ext2/3,jfs,xfs等都支持. getfacl setfacl 对于mac os X系统的acl 可以使用ls -e查看文件或目录的acl属性,带+号的表示含有acl属性. 可以使用chmod设置acl. 传统unix权限存储在metadata里,os x的acl是存储在ext attributes里的. …
UNIX下的LD_PRELOAD环境变量 也许这个话题并不新鲜,因为LD_PRELOAD所产生的问题由来已久.不过,在这里,我还是想讨论一下这个环境变量.因为这个环境变量所带来的安全问题非常严重,值得所有的Unix下的程序员的注意. 在开始讲述为什么要当心LD_PRELOAD环 境变量之前,请让我先说明一下程序的链接.所谓链接,也就是说编译器找到程序中所引用的函数或全局变量所存在的位置.一般来说,程序的链接分为静态链接和 动态链接,静态链接就是把所有所引用到的函数或变量全部地编译到可执行文件中.…
今天测试shell脚本时,执行报错: ./report.sh: /tmp/tmp.E8ekx6r5Qq/report.sh: /bin/bash^M: bad interpreter: No such file or directory 找半天原因,结果发现是Windows和Unix下的编码问题,不兼容 在Linux下用vi编辑文本,在命令模式下用命令set ff=Unix  ,问题就解决了. Linux下测试经常会遇到这种情况,报错 ^M的一般就是编码问题解析不了.…
http://blog.chinaunix.net/uid-25324849-id-247813.html 1. I/O模型 Unix下共有五种I/O模型 a. 阻塞I/O b. 非阻塞I/O c. I/O复用(select和poll) d. 信号驱动I/O(SIGIO) e. 异步I/O(Posix.1的aio_系列函数) 1). 阻塞I/O模型 应用程序调用一个IO函数,导致应用程序阻塞,等待数据准备好. 如果数据没有准备好,一直等待.... 数据准备好了,从内核拷贝到用户空间 I/O函数返…
Windows上写好的文件,在Linux或者Unix下打开,每一行都会出多出^M这样的字符,这是因为Windows与*nix的换行符不同所致,我们看看文件格式有什么不同. 在Linux下查看文件格式: # file filename # 20140304110001.csv: ISO-8859 text //不带有^M # 20140304110002.csv: ISO-8859 text, with CRLF line terminators //带有^M Windows下处理的文件就带有CR…
linux下通过acl配置灵活目录文件权限(可用于ftp,web服务器的用户权限控制) 发表于2012//07由feng linux 本身的ugo rwx的权限,对于精确的权限控制很是力不从心的,acl是一个好东西,有了它可以很完美且优雅的控制目录权限.acl的基础知识,这里不再详述,有兴趣可以参看此文(通过实践学习linux ACL基本用法/Linux ACL 体验) 一个很可能遇到的实际问题: linux下的web站点,该站点开启ftp上传下载:web与ftp以不同的用户运行,分别是web,…
10分钟 教你学会Linux/Unix下的vi文本编辑器 vi编辑器是Unix/Linux系统管理员必须学会使用的编辑器.看了不少关于vi的资料,终于得到这个总结.不敢独享,和你们共享. 首先,记住vi编辑器的两个模式:1.命令模式 2.编辑模式. 在一个UNIX/Linux的shell命令或者一个以斜杠(/).问号(?)或冒号(:)开始的vi命令后面用户需要键入回车键,而要切换到vi命令模式需要按Esc键.注意,以冒号(:)或者斜杠(/) 开始的vi命令会显示在屏幕底部,但其他命令都不会显示在…
OTL介绍:OTL 是 Oracle, Odbc and DB2-CLI Template Library 的缩写,是一个C++编译中操控关系数据库的模板库,它目前几乎支持所有的当前各种主流数据库,例如Oracle, MS SQL Server, Sybase, Informix, MySQL, DB2, Interbase / Firebird, PostgreSQL, SQLite, SAP/DB, TimesTen, MS ACCESS等等.OTL中直接操作Oracle主要是通过Oracl…
UNIX下改动时间简单一例 仅仅输入date就显示当前的工作站时间,假设有root超级用户权限,加上參数能够改动 工作站的时间. 格式:date mmddHHMM[cc]yy mm--月份,dd--日期,HH--小时,MM--分钟,cc--世纪(可选),yy--年份  比如: #date 1023153098 将把工作站系统时间改为1998年10月23日15点30分…
前言:unix下一切东西都是文件,一共有7种不同的文件,前一篇博客已经讲解的很清楚了,不懂的可以看看这里.当然,博主知道有些朋友比忙,没时间看,那我就简单点讲讲这7中文件都有哪些吧. 文件类型包括在stat结构的st_mode成员中,下面是这7种文件类型的判断方法:        宏                                     文件类型 S_ISREG(m)                 普通文件(is it a regular file?) S_ISDIR(m)…
在windows下编写的shell脚本文件,直接放到linux下运行,是不行的. infiniDB的倒库脚本文件load.sh,将tbl文件导入infiniDB,怎么运行不成功,不建job.运来,是windows 的文件不能放到linux下直接执行. vi编辑器打开文件,发觉每一行的最后有浅蓝色的字符'^M'. DOS下的文本文件是以\r\n作为断行标志的,表示成十六进制就是0D 0A.而Unix下的文本文件是以\n作为断行标志的,表示成十六进制就是 0A.DOS格式的文本文件在Linux底下,…
Unix下I/O模型主要分为5种: (1)阻塞式I/O (2)非阻塞式I/O (3)I/O复用(select和poll) (4)信号驱动式I/O (5)异步I/O 1.阻塞式I/O模型 unix基本的套接字接口,例如:connect.accept.read/write.recv/send.recvfrom/sendto.recvmsg/sendmsg,它们默认是阻塞的. 2.非阻塞式I/O模型 调用fcntl可以把一个套接字设置成非阻塞式. 3.I/O复用模型 I/O复用是通过调用select或…
在linux/unix下使用telnet hostname port连接上主机后会提示Escape character is '^]' 这个提示的意思是按Ctrl + ] 会呼出telnet的命令行,出来telnet命令好之后就可以执行telnet命令,例如退出出telnet是quit. 其他常用的telnet命令功能描述: close关闭当前连接 logout强制退出远程用户并关闭连接 display显示当前操作的参数 mode试图进入命令行方式或字符方式 open连接到某一站点 quit退出…
Unix下共有五种I/O模型: 1. 阻塞式I/O  2. 非阻塞式I/O  3. I/O复用(select和poll)  4. 信号驱动式I/O(SIGIO)  5. 异步I/O(POSIX的aio_系列函数)  io请求分两步: 1. 先将数据从存储介质(磁盘,网络等)拷贝到内核缓冲区,此时称为数据准备好,可以被用户应用程序读取. 2. 由用户应用程序拷贝内核缓冲区中的数据到用户缓冲区. ① 阻塞I/O模型            进程一直阻塞,直到数据拷贝完成 我们将函数recvfrom视为…
在linux/unix下使用telnet hostname port连接上主机后会提示Escape character is '^]' 这个提示的意思是按Ctrl + ] 会呼出telnet的命令行,出来telnet命令好之后就可以执行telnet命令,例如退出出telnet是quit. 其他常用的telnet命令功能描述: close关闭当前连接 logout强制退出远程用户并关闭连接 display显示当前操作的参数 mode试图进入命令行方式或字符方式 open连接到某一站点 quit退出…
poll函数 在上文unix下网络编程之I/O复用(二)中已经介绍了select函数的相关使用,本文将介绍另一个常用的I/O复用函数poll.poll提供的功能与select类似,不过在处理流设备时,它能够提供额外的信息. poll函数原型: 1 2 3 #include<poll.h>    int poll (struct pollfd * fdarray , unsigned long nfds , int timeout);    //返回:就需描述字的个数,0——超时,-1——出错…
UNIX下遍历日期,date 没有 -d 的参数,所以需要自己处理. 下面使用时差的方法进行计算,遍历的日期是降序的 #!/usr/bin/ksh . $HOME/.profile timelag= cycle= begindate=$ enddate=$ Usage() { print "Usage: batch_miniestore.sh 开始日期 结束日期" print " 注意:开始时间 >= 结束时间,使用递减方式遍历" print " e…
这部分我要学习的是Unix下的网络编程,参照的书籍是W. Richard. Stevens的<Unix网络编程>卷一和卷二,由于本身现在从事的工作是java后台开发,对客户端-服务器的这种通信并不陌生. 学习Unix下网络编程开发不是以后要从事这方面工作,是想学一下计算机网络知识,包括其中各种概念的厘清,和熟悉C编程.网络编程. 网络编程说白了很简单,就是两个对象(机器.应用程序)之间相互通信.通信是一个信息交换的过程,像我们人与人之间交流说话就是一种通信过程,因为几乎每天都会与人交流,导致我…
在Unix下进行C语言开发有一套工具,主要有: 编译器:cc,gcc,clang SSH登录工具:putty,xshell就不说了,尼玛还有后门 make工具:跟Maven一样是项目构建工具,这个使用稍微复杂些 调试工具:gdb 编辑工具:vi,vim,emacs C语言的开发过程就是:编辑程序,编译程序,执行程序和调试程序.…
From: https://blog.csdn.net/haoel/article/details/1602108 警惕UNIX下的LD_PRELOAD环境变量 前言 也许这个话题并不新鲜,因为LD_PRELOAD所产生的问题由来已久.不过,在这里,我还是想讨论一下这个环境变量.因为这个环境变量所带来的安全问题非常严重,值得所有的Unix下的程序员的注意. 在开始讲述为什么要当心LD_PRELOAD环境变量之前,请让我先说明一下程序的链接.所谓链接,也就是说编译器找到程序中所引用的函数或全局变量…
介绍 当TCP客户端同时处理两个输入时:标准输入和TCP套接字,当客户端fgets(在标准输入上)被阻塞并且服务器进程被终止时,我们遇到了问题.服务器TCP正确地将FIN发送到客户端TCP,但由于客户端进程被禁止从标准输入读取,所以它从没有看到EOF,直到它从套接字读取(可能更晚). 如果一个或多个 I/O 条件准备好(即,输入准备好被读取,或者描述符能够获得更多输出),我们希望得到通知.此功能称为 I/O 多路复用,由select和poll函数以及前者的较新POSIX变体提供,称为pselec…
一.UNIX下socket通信: socket套接字是一种可以进行网络通信的内核对象,它是一个唯一的标示符,一般称它为socket描述符. 注意:UDP通信需要客户端先发送消息,服务端先进行等待客户端发送的消息,记录下客户端的地址,才能向客户端发送消息.= =! int socket(int domain,int type,int protocol) 功能:创建socket对象 1.domain通信地址类型: a.AF_UNIX/AF_LOCAL:本地进程通信 b.AF_INET:使用ipv4地…
为什么要并发处理 以Apache为代表的web服务器中,如果不支持并发,则在一个客户端连接的时候,如果该客户端的任务没有处理完,其他连接的客户端将会一直处于等待状态,这事不可想象的,好像没有为什么要不要这一说,是必须有的. 常用的集中并发处理模式 通过生成多个进程 不通过进程,使用线程 监控输入事件,在事件发生时进行切换处理,即可以使用单线程进行并发处理,这是事件驱动的处理模式 Apache的并发处理模块 Apache以模块化的方式组合了多种功能,并发处理的核心部分也是以模块化的方式来出现,通常…
注意getch()是从console读取,(非标准函数) getch()需要的头文件是<conio.h>. 而getchar()是从stdin,一般是指键盘 windows平台下ENTER键会产生两个转义字符 \r\n, \r : 回到开头的地方. \n : 去到下一行开头 因此,getch()读到 \r 时就会返回他的ASCII码13.(后面的被无视了) 奇怪的问题是为什么getchar()会返回10呢? 前面不是说过返回第一个字符吗? 这的确会让人费解.实际上产生这个结果的原因是, get…
我现在的老板曾要求我为企业内部的Web服务提供一种标准的身份验证方法.我遇到的一个主要问题就是我们公司主要使用了两种平台:UNIX和.所以,我的第一个想法并不很成功:它要求每个员工都使用UNIX或者Linux而放弃. 我认为解决现在的UNIX/Windows问题的最好方法就是利用PHP的LDAP特性.由于LDAP,要求我使用现有的系统,主要指的是一个巨大的 Microsoft Exchange Server系统.我非常高兴使用Exchange,它很可靠,而且LDAP特性的使用和配置也极为简单.不…
所有环境变量名都是大写小写,系统会当作shell script自定义变量,而不会当作环境变量 [root@mac-home macg]# echo $path                                                                         [root@mac-home macg]# echo $PATH/usr/kerberos/sbin:/usr/kerberos/bin:/usr/bin:/bin:/usr/X11R6/bin:…
Unix系统提供了cron和at命令,使系统和用户可以定时运行一定的程序,而不需手工启动. 使用cron用于周期性的执行一个命令,为了使用它,必须编辑crontab文件.系统缺省的/etc/crontab 文件为: 为当前用户创建cron服务   1.  键入 crontab  -e 编辑crontab服务文件   例如 文件内容如下:   */2 * * * * /bin/sh /home/admin/jiaoben/buy/deleteFile.sh   保存文件并并退出   */2 * *…
cc  -I  //include 目录 -L //静态库目录?动态也可以 -l //小写L,接静态库名称?动态也可以 -DXXX='"XXFF"' //-D直接定义宏 -c 只编译 -O 优化 -g 生成调试信息 splint , gprof, cflow , dbx , gdb ,sdb //除了工具,还有日志记录调试更便捷 动态库:隐式调用 自动加载,与静态库一致 使用时,cc 后面加上路径,接口不变可以直接换so文件 显示调用 用dlopen 动态库创建:位置无关码(PIC)型…
  今天,我总算搞清楚“回车”(carriage return)和“换行”(line feed)这两个概念的来历和区别了.在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符.但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符.要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失.于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符.一个叫做“回车”,告诉打字机把打印头定位在左边界:…
环境 Ubuntu14.04 (这里用这样一个类Unix系统来代替Unix,sudo命令也是linux下的一个命令) 实例 : Ubuntu firefox flash插件的安装 到Adobe下载tar.gz包后,解压缩. tar -zxvf 插件.tar.gz sudo cp libflashplayer.so  /usr/lib/firefox-addons/plugins sudo cp -r usr/*   /usr   (将插件包中的usr子目录中的内容copy到系统根目录下的usr目…