摘要: 原文链接:http://os.51cto.com/art/201104/256477.htmLinux的普通进程(守护进程除外) 是终端的子进程,进程的存在要依赖终端为其提供空间包括标准输入、标准输出、标准出错。比如,在ssh的客户端启动一个连入linux的终端,运行pstree命令,可以看到如下结果:可以看到pstree相当于当前终端启动的一个子进程。然后,我们在输入sleep 2000 &命令,让终端启动一个在后台运行的sleep进程,接下来再运行pstreee;可以看到,启动了一个pid为1354的进程,然后该进程的父进程为sshd,也就是ssh服务启动的终端;然后,在/proc 阅读全文
posted @ 2014-01-16 22:00 johnny_HITWH 阅读(837) 评论(0) 推荐(1) 编辑
摘要: 基本概念:1> tty(终端设备的统称):tty一词源于Teletypes,或者teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,后来这东西被键盘与显示器取代,所以现在叫终端比较合适。终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。2> pty(虚拟终端):但是如果我们远程telnet到主机或使用xterm时不也需要一个终端交互么?是的,这就是虚拟终端pty(pseudo-tty)3> pts/ptmx(pts/ptmx结合使用,进而实现pty):pts(pseudo-terminal slav 阅读全文
posted @ 2014-01-16 21:56 johnny_HITWH 阅读(360) 评论(0) 推荐(0) 编辑
摘要: PS:这里的缓冲与非缓冲的区别是相对于用户进程,下文的“非缓冲文件系统”指用户的程序没有缓冲区,不要误解为系统没有缓冲区。1.缓冲文件系统缓冲文件系统的特点是:在内存开辟一个“缓冲区”,为程序中的每一个文件使用,当执行读文件的操作时,从磁盘文件将数据先读入内存“缓冲区”, 装满后再从内存“缓冲区”依此读入接收的变量。执行写文件的操作时,先将数据写入内存“缓冲区”,待内存“缓冲区”装满后再写入文件。由此可以看出,内存 “缓冲区”的大小,影响着实际操作外存的次数,内存“缓冲区”越大,则操作外存的次数就少,执行速度就快、效率高。一般来说,文件“缓冲区”的大小随机器 而定。fopen, fclose, 阅读全文
posted @ 2014-01-16 16:20 johnny_HITWH 阅读(442) 评论(0) 推荐(0) 编辑
摘要: C语言中open函数作用:打开和创建文件。简述:1234#include int open(const char *pathname, int flags);int open(const char *pathname, int flags, mode_t mode);返回值:成功则返回文件描述符,否则返回 -1对于open函数来说,第三个参数仅当创建新文件时(即 使用了O_CREAT 时)才使用,用于指定文件的访问权限位(access permission bits)。pathname 是待打开/创建文件的POSIX路径名(如/home/user/a.cpp);flags 用于指定文件的打开/ 阅读全文
posted @ 2014-01-16 11:13 johnny_HITWH 阅读(261) 评论(0) 推荐(0) 编辑
摘要: Linux文件一般是用一些相关的应用程序创建,比如图像工具、文档工具、归档工具... .... 或 cp工具等。linux文件的删除方式是用rm 命令。Linux文件类型;Linux文件类型和Linux文件的文件名所代表的意义是两个不同的概念。我们通过一般应用程序而创建的比如file.txt、file.tar.gz ,这些文件虽然要用不同的程序来打开,但放在Linux文件类型中衡量的话,大多是常规文件(也被称为普通文件)。Linux文件类型常见的有:普通文件、目录、字符设备文件、块设备文件、符号链接文件等;现在我们进行一个简要的说明;1 普通文件[root@localhost ~]# ls - 阅读全文
posted @ 2014-01-16 10:55 johnny_HITWH 阅读(530) 评论(0) 推荐(0) 编辑
摘要: Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号 一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。每个用户账 号都拥有一个惟一的用户名和各自的口令。用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。实现用户账号的管理,要完成的工作主要有如下几个方面:· 用户账号的添加、删除与修改。· 用户口令的管理。· 用户组的管理。一、Linux系统用户账号的管理 用户 阅读全文
posted @ 2014-01-14 17:34 johnny_HITWH 阅读(224) 评论(0) 推荐(0) 编辑
摘要: ssh远程连接准备工作:1 准备两台linux pc 我们一般用的是VMware虚礼软件2 这两台linux可以互通3 linux1 :192.168.2.2 这台为你要连接的服务器linux2 :192.168.2.34 防火墙关闭5 ssh这个套件一定要安装,不过默认的都是安装好的操作步骤linux客户机[root@localhost~]#ssh-keygen -t rsaGenerating public/private rsa key pair.Enter file in which to save the key (/root/.ssh/id_rsa):Created directo 阅读全文
posted @ 2014-01-14 15:04 johnny_HITWH 阅读(684) 评论(0) 推荐(0) 编辑
摘要: 关于SSH,几乎每个人都同意密钥要优于密码,更安全,并且更先进,但我并不同意这个观点。虽然密钥的确可以更好,但它有着还没被意识到的严重风险,并且我认为比得到妥善管理的密码更不安全。通常密钥更好的理由是多数人使用了弱密码,并且系统之间共享密码,所以一旦发生密码泄漏就会同时危害到多个系统。既然密钥可以设置口令,那么同时拥有两者(密钥和口令)的它当然就更安全了。这的确没错,但是在大多数得到妥善管理的环境中事实上并非如此,他们没明白真正的风险到底源自哪里,来自哪一步。举个例子,如果我们在每个地方都使用硬性的随机密码,并且不在两个系统、服务,等等之间共享任何密码,在系统搭建的时候就使用工具和流程来这么做 阅读全文
posted @ 2014-01-14 11:52 johnny_HITWH 阅读(839) 评论(0) 推荐(0) 编辑
摘要: 一、概述1、就是为了让两个linux机器之间使用ssh不需要用户名和密码。采用了数字签名RSA或者DSA来完成这个操作2、模型分析假设 A (192.168.20.59)为客户机器,B(192.168.20.60)为目标机;要达到的目的:A机器ssh登录B机器无需输入密码;加密方式选 rsa|dsa均可以,默认dsa二、具体操作流程单向登陆的操作过程(能满足上边的目的):1、登录A机器 2、ssh-keygen -t [rsa|dsa],将会生成密钥文件和私钥文件 id_rsa,id_rsa.pub或id_dsa,id_dsa.pub3、将 .pub 文件复制到B机器的 .ssh 目录,并 c 阅读全文
posted @ 2014-01-14 11:40 johnny_HITWH 阅读(308) 评论(0) 推荐(0) 编辑
摘要: ssh rsa dsa 阅读全文
posted @ 2014-01-14 11:19 johnny_HITWH 阅读(95) 评论(0) 推荐(0) 编辑