当前位置:首页 » 服务存储 » linux怎么画存储
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

linux怎么画存储

发布时间: 2022-08-23 19:06:19

A. linux存储问题

1、安装oracle软件时,只装软件不要创建实例。
2、两台linux系统你是想用热备份还是冷备份?如果热备份需要安装HA软件,如果只做冷备份就无所谓了。
3、使用linux的硬盘命令对阵列存储进行分区。数据库你是想使用裸设备还是文件系统,如果是裸设备需要创建裸设备,文件系统就要创建文件系统了。
4、将裸设备或文件系统连接到oracle下的./oradata目录下
5、创建数据库实例,指定安装目录及文件。

B. linux mysql 怎么创建存储过程

linux mysql 操作需要进入mysql命令行模式(这个模式下才可以增删改查)
把写好的创建存储过程贴过来,执行就可以,跟你查询表一样的。

C. 如何硬盘安装LINUX

从硬盘安装Linux操作系统,首先要准备安装包,Linux操作系统的安装包通常是一个或多个ISO镜像文件(一般通过网络下载就可以得到);其次,要通过某种手段启动镜像文件中的系统安装程序;接下来,按照安装程序的提示信息进行安装就可以了。安装过程中,需要指定Linux操作系统的安装位置,这主要涉及硬盘分区的一些知识。

综合来看,学习Linux操作系统的安装,关键要学会两点:第一、如何为Linux操作系统准备硬盘空间?第二、如何启动ISO镜像文件中的安装程序。

硬盘分区

通常,在使用硬盘时,都要进行分区。如果把未分区的硬盘比做一张大白纸,那么分区后的硬盘就相当于这张大白纸被画上了几个大方框。一块硬盘被分成多个分区之后,各分区之间是相对独立的,每个分区都可以有自己的文件格式,例如FAT16、FAT32、NTFS等等。

Linux 操作系统需要的硬盘分区

要安装一个操作系统,一般来讲都要为它准备专门的分区。专门,意味着不能与其他操作系统合用一个分区,也意味着不要与用户自己的数据文件合用一个分区,前者是因为不同的操作系统可能需要不同格式的磁盘分区,后者则更多地出于用户数据安全和系统维护方便的考虑。从最低配置角度讲,Linux 操作系统需要一个EXT2或EXT3格式的硬盘分区作为根分区,大小在2~5G就可以。另外还需要一个SWAP 格式的交换分区,大小与内存有关:如果内存在256M以下,交换分区的大小应该是内存的两倍;如果内存在256M以上,交换分区的大小等于内存大小即可。

Linux 硬盘分区管理工具

在安装Linux 操作系统时,如果选择了手工的分区方式,将启动硬盘分区工具Disk Druid。这个程序是安装程序自带的。下面讨论一下该软件的使用。Linux下硬盘分区的标识在Linux 下用hda、hdb 等来标识不同的硬盘;用hda1、hda2、hda5、hda6 来标识不同的分区。其中,字母a 代表第一块硬盘,b代表第二块硬盘,依次类推。而数字1 代表一块硬盘的第一个分区、2 代表第二个分区,依次类推。1到4 对应的是主分区(Primary Partition)或扩展分区(Extension Partition)。从5开始,对应的都是硬盘的逻辑分区(Logical Partition)。 一块硬盘即使只有一个主分区,逻辑分区也是从5开始编号的,这点应特别注意。

系统上有一块硬盘,名字为/dev/hda,它上面有一个NTFS 格式的主分区hda1 以及一个扩展分区hda2,扩展分区hda2又被分解为若干个逻辑分区,包括FAT格式的hda5和hda6,ext3 格式的hda8,swap 格式的hda7。

提示:兼容性问题。如果在Windows环境下看,hda1 将对应C,hda5 对应D,hda6则对应E,其他分区Windows 是不能识别的,因此看不到。

删除分区

如果要删除某个分区,先用鼠标选中它,然后单击“删除”按钮,就可以删除一个分区了。删除前,会有确认删除的对话框,点“删除”按钮,选中的分区就被删除了,变成空闲空间。

创建分区

要创建分区,硬盘上必须有空闲空间。用鼠标选中空闲空间,然后单击“新建”按钮,就会出现添加分区的对话框。创建新分区时,需要先选择文件系统类型,再根据文件系统类型的不同选择或设置挂载点。Swap 类型的分区不需要设置挂装点,其他类型分区都需要。Vfat类型分区就是FAT32分区,应设置挂装点,而不是从挂载点列表中选择挂载点1。最后设定分区的大小。设置完毕后点击“确定”按钮完成分区的创建工作。

使修改生效

上述修改操作后,并没有对硬盘产生实质的影响,还是可以点击“退出”按钮来中止安装程序从而放弃对硬盘的修改的。如果想使修改生效,点击“下一步”按钮就可以了。

注意:在修改分区并使之生效后,就不要中止安装程序了,否则有可能导致硬盘分区表损坏。

Linux 下操作ISO 文件

在Linux下,以root 身份执行以下格式的命令就可以从/path 目录中读到xxx.iso这个文件中的内容。 实际使用时,应该根据实际情况修改/path和xxx.iso。

mount -t iso9660 -o loop xxx.iso /path

如果想制作ISO文件,把光盘放到光驱中,然后执行如下的拷贝命令就可以把光盘上的内容拷贝到一个ISO文件中去。实际使用时,应该根据实际情况修改xxx.iso。

Windows下操作ISO文件
在windows 下,一般需要专用工具软件才能操作ISO 文件。比如WinISO、WinImage、Dameon Tools等。

如果仅仅是想读取ISO 文件中的内容,则可以用WinRAR。WinRAR3.0以上版本都支持iso9660文件格式。用WinRAR打开ISO文件,选中需要的内容,将其解压出来就可以了。

Linux 操作系统安装盘的ISO文件

iso安装文件在Linux环境下挂装到/mnt/iso值得注意的有两个目录。一个是images,在这个目录里包含了一些1.44MB软盘的镜像文件,其中bootdisk.img可以用来制作安装用启动软盘;另一个是dosutils,其中包含了一些DOS工具,比如rawrite.exe,用这个软件可以把软盘的镜像文件写到软盘里。

Linux 启动安装法

这种方法需要制作一张Linux启动盘。先把iso文件中images文件夹里的bootdisk.img读出来单独存储到硬盘上。如果是在Linux 下,就把软盘插入软驱,然后执行下面的命令把bootdisk.img写入软盘:

dd if=bootdisk.img of=/dev/fd0

如果是在DOS/WINDOWS 下,则还要把iso 文件中dosutils 文件夹里的rawrite.exe读出来并与bootdisk.img保存在同一个目录下。然后在DOS提示符下执行rawrite,按提示插入软盘,将bootdisk.img写入软盘。做好Linux启动盘后,用它引导启动计算机。当提示询问何种安装方式时,选择硬盘安装方式(Hard Drive),并提供正确的iso 文件位置信息,就能启动iso 文件中的安装程序了。按照安装程序的提示,就可以完成安装了。

在安装程序的引导下安装参见“启动虚拟主机安装Linux”。

DOS启动安装法

此方法需要在纯DOS 环境下进行,因此需要想办法进入纯DOS 环境。具体操作方法是,先把iso文件中dosutils目录读出来单独存储到硬盘上。注意要存到FAT16或FAT32格式的分区中,确保在DOS环境下能访问该分区。然后启动纯DOS 环境,进入dosutils目录,执行autoboot.bat。当提示询问何种安装方式时,选择硬盘安装方式(Hard Drive),并提供正确的iso 文件位置信息,就能启动iso 文件中的安装程序了。

按照安装程序的提示,就可以完成安装了。在安装程序的引导下安装参见“启动虚拟主机安装Linux”。

提示:进入DOS环境最简便的方法就是用DOS启动盘启动计算机。

Windows下vmWare 启动安装法

这种方法需要windows环境并且需要专用软件vmWare。用vmWare先创建一个虚拟机,并把Linux 操作系统的iso安装文件作为该虚拟机的CDROM,然后从这个CD-ROM启动虚拟机,就可以启动Linux操作系统的安装程序,进行安装了。下面说说详细步骤。此方法可用于安装多种Linux

操作系统。

用vmWare创建虚拟主机

关于vmWare的用法,在网上也可以找到详细的使用指导。为了方便读者,本书整理收录了其中的一篇。

运行vmWare,点击其中的“New Virtual Machine”(新建虚拟机),进入新建虚拟机的向导。选择其中的“Custom”(用户自定义),点下一步继续。在接下来的界面上选择操作系统类型。选择“Linux”,版本选择“Other Linux”,点下一步继续。接下来是要给虚拟机起个名字。我们不过是借用vmWare 安装Linux,因此虚拟机的名字是无关紧要的,可以随便起。虚拟机名字下面是存放虚拟机配置文件的位置信息,也不用管,用程序默认的就可以了,点下一步继续。接下来是选择虚拟机所用的硬盘。这是比较关键的地方。应该选择“use a physical disk”,就是“使用物理硬盘”。这是借助vmWare安装LINUX的关键,决不能选错,点下一步继续。

程序会给出了一个警告,表示使用物理硬盘创建虚拟机会有风险,不要管它,点下OK继续。接下来要选择硬盘。选一个,并使用整个硬盘(entire disk),点下一步继续。最后是指定存储虚拟机配置信息的文件名,用默认的就可以。点击“完成”,虚拟机就创建好了。

创建好虚拟主机后,还要修改虚拟机的设置。在虚拟主机管理界面上双击CD-ROM,在CD-ROM配置窗口(如图A0-17)上修改它,使用iso镜像文件(Use ISO image)作为CD-ROM,浏览(browse)找到我们准备好的Linux系统iso 文件。确认。这样就把我们所需要的虚拟机准备好了。

这个虚拟机是专门用来安装Linux操作系统的。安装之后,这个虚拟机就没什么用了。

启动虚拟机安装Linux

点击窗口中的绿色箭头“start this machine”,就可以启动虚拟机。在虚拟机启动的时候,根据提示,按F2 键进入setup(就是类似于电脑的bios ),找到Boot,把启动的顺序改一改,按“+”“-”号,把CD-ROM(光盘)的位置放到第一个,保存退出,vmWare自动重新启动虚拟机,这时就会从虚拟机的光盘引导了,实际上就是从Linux 操作系统的ISO安装文件引导。这时就能看到相应Linux操作系统安装的启动画面了。跟用光盘启动时看到的安装界面是一样的。

下面挑几个关键环节叙述一下安装红旗Linux4.1桌面版的过程。

注意,虽是借助vmWare,但在操作时都跟直接从真实的安装光盘启动安装时的操作一样。可以把vmWare 的视图切换为全屏视图,使安装过程看起来更真实。直接按回车键,就可以开始在图形化界面的向导下开始安装了。如果要以文本界面方式安装,在boot:后输入linuxtext,然后再按回车。接下来就会出现使用协议的界面。有兴趣可以读一下,选择“接受”,然后点“下一步”。

接下来开始设置分区。首先会看到由用户来选择分区的方式的界面,选手工分区,然后点“下一步”。接下来就会出现选择分区的界面。在这里列出了磁盘上所有的分区情况。由图中可以看出,系统上有一块硬盘,名字为/dev/hda,它上面有一个NTFS格式的主分区hda1以及一个扩展分区hda2,扩展分区hda2又被分解为若干个逻辑分区,包括FAT格式的hda5和hda6,ext3 格式的hda8,swap 格式的hda7。显然hda7是为Linux系统准备好的交换分区,而hda8是为Linux

系统准备的分区。选中hda8,点“编辑”按钮将出现该分区的编辑窗口。将该分区的挂装点设为根(/),选定“将该分区格式化”,并且格式化类型选ext3。这里一定要选择格式化以把选定分区原有的内容清理干净。否则系统运行时有可能出现异常。编辑好分区之后,点“确定”,将出现一个格式化警告窗口,如果不想格式化,可以点取消,否则点“格式化”继续。

下面该进行系统配置了,主要包括引导程序的设定、网络设备的设定、以及超级用户帐号(root)密码的设定。这些项都可以在系统运行时更改,因此可以一律使用默认值,连续点击下一步就可以。默认情况下,引导程序被安装在/dev/hda1,也就是主引导区(系统安装好后,可以更改,参见“管理启动方式”),安装程序会自动解决双启动的问题(参见“Windows与Linux的双重启动”)。

点击下一步就开始安装了。安装过程中将显示安装进度界面。安装过程中,不再需要人工干预。当安装完成后,将出现提示界面。如果是用光盘安装,此时点击“结束”将重新启动计算机。我们这里使用的是虚拟计算机,因此点击“结束”只会自动重启虚拟计算机,这并不是我们想要的,因此,此时可以按+组合键,重新获得鼠标,然后关闭vmWare。

再次重新启动计算机,将会出现grub的启动界面,Linux系统已经实实在在地安装到计算机上了,可以开始用了。

Linux系统安装成功后,NTFS格式的主分区hda1将被自动挂装为/mnt/WinC,FAT格式的hda5 被自动挂装为/mnt/WinD,而hda6 被自动挂装为/mnt/WinE。NTFS格式的分区虽能被Linux自动挂装,但只能读,不能写。FAT格式的分区自动挂装后是可读可写的,但并不能实施文件的权限控制和管理,也不能进行磁盘空间的配额管理。要想充分发挥Linux的特性,应该考虑建立ext3格式的用户数据存储分区,并把用户数据保存在ext3格式的分区中。

Windows 与Linux 的双重启动
由Linux 引导

计算机上已存在Windows 系统的情况下安装Linux,并且选择把引导数据写到/hda1,那么Linux就会自动把Windows 系统的启动选项添加到启动菜单中以供选择。双重启动问题自动解决,不需赘述。

由Windows 引导

如果计算机上先安装了Linux,后来又要安装Windows。Windows将覆盖主引导,但不会自动把Linux的启动项加入到启动菜单。这时必须手工解决Windows 和Linux的双重启动问题。

这种情况下,在安装Windows之前,应该先把Linux引导扇区的信息提取出来备用。假设Linux引导程序在/dev/hda5,引导扇区的信息提取出来之后保存到FAT16或FAT32 分区/mnt/WinD/,文件名为bootsect.lnx,那么相应的命令就是:dd if=/dev/hda5 of=/mnt/WinD/bootsect.lnx bs=512 count=1这是一条在Linux下才能执行的命令。这条命令生成的文件是解决双启动问题的关键。该文件的保存位置也很重要,应保存到FAT16 或FAT32 分区中。为防不测,可以把这个文件复制到软盘或U盘上。

在安装Windows之后,把bootsect.lnx复制到Windows系统的C盘根目录下,然后编辑c:/boot.ini文件,增加下面的一行并保存。这样,再重新启动计算机后,就会在Windows启动菜单中出现“Linux”的启动项了,选择它,即可进入Linux操作系统。

D. 如何自己在linux上搭建类似云盘的分布式云存储

如何自己在linux上搭建类似云盘的分布式云存储
对分布式的要求(弹性可伸缩、高可用)的需求,只是为了整合多个电脑的存储资源,并且还想要一个漂亮的操作界面的话,最简单的方法其实是用iscsi将其他电脑的存储资源挂载到服务器,然后使用seafile提供服务。
如果真正的有对分布式存储的需求并且对界面没什么需求或者打算自己开发一个界面的话,swift,ceph,glusterFS都是可以考虑的可靠的技术。(需求简单的话swift还是有很多界面的,也是可以考虑

E. 怎样绘制Linux的目录文件结构

有个tree命令。如果你的系统没有,可以安装它。例如Debin可以apt-get install tree。

F. linux vi下怎么设置文件存储路径

不用设置存储路径,就像Win下的记事本差不多。举个例子
vi abc 这个意思是在当前目录下建一个abc的文件并用vi进行编辑,完成以后w完成q退出。
vi直接就是打开一个vi编辑器,想保存的话就直接:w abc意思就是保存在当前目录,名字叫abc,如果我现在在/home/Dave/workspace/下面,我想保存到/home/DaveHan/test/下的话,那就打成全路径就行了,vi其实很强大

G. 如何利用Linux和GFS打造集群存储

负载均衡是一项困难的任务。我们经常需要通过NFS(网络文件系统)或其他机制来为数据提供中心地址,从而共享文件系统。虽然你的安全机制可能可以让你免于Web服务器节点的故障,但是你仍然需要通过中央存储节点来共享数据。
通过GFS(全局文件系统)——Linux的一个免费集群文件系统——你可以创建一个不需要依赖其他服务器的真正稳定的集群。在这篇文章中,我们将展示如何正确地设置GFS.
从概念上来说,一个集群文件系统可以允许多个操作系统载入同一个文件系统并可以在同一时间内向同一文件系统写入数据。现在有许多集群文件系统,包括Sun的Lustre,Oracle的OCFS(Oracle集群文件系统),以及Linux的GFS.
有许多方法可以让一个块设备同时被多个服务器所使用。你可以分区出一个对多个服务器都可视的SAN(存储局域网)LUN(逻辑单元号),设置好相应的iSCSI(互联网小型计算机系统接口),或使用DRBD(分布式复制块设备)在两台服务器之间复制一个分区。在使用DRBD的时候,你将需要在主/主节点中设置好DRBD以使用GFS.
GFS要求
运行GFS意味着你在运行一个集群。目前为止,运行GFS的最简单的手段就是使用Red Hat Cluster Suite(RHCS:Red Hat集群套件)。这个套件在CentOS中就有。此外,还需要下面这些包:cman——集群管理器;lvm2-cluster——使LVM(逻辑卷管理器)可以支持集群的CLVM(集群逻辑卷管理器)包;kmod-gfs——GFS内核模块;最后是gfs-utils.
集群管理器(cman)包含必要的工具,比如分布式锁管理器。除非你希望花时间来确认各种不同的分发版本是如何采用cman的,否则我们强烈推荐使用CentOS或RHEL.同时,你还将获得RH(Red Hat)所维护的各种最新版本的集群服务,此外你还可以获得一个比较稳定的环境。
Fencing(阻绝)机制是绝对必要的。一些指导性文章建议将阻绝模式设定成"手动",因为阻绝设置有可能比较复杂。阻绝意味在集群中进行隔离,或马上中断某些危险节点的运作。如果集群无法阻绝某个发生故障的节点,那么你的GFS将会出现很多问题,因此不要跳过这个步骤。
创建集群设置
你可以通过/etc/cluster/里面的cluster.conf完成大部分的集群设置。我不建议使用各种集群管理应用程序来创建这个设置文件。即使是完全支持的RHEL应用程序,比如两个月前发布的Conga,也经常会创建一些无效的cluster.conf文件,并且无法被必要的服务所解析。
下面是一个cluster.conf文件的例子。这个设置文件采用漂亮的XML格式,其内容非常直接。首先,我们对集群进行命名,我们将这个集群称作"Web.1".
先跳过fence daemon选项,下一个部分就是集群主体的设置内容。你需要在clusternodes部分定义两个节点。设置文件将同时存放在两个节点上,这样这两个节点就都知道彼此的情况。
集群内的每个节点都声明其阻绝方式的名称是独一无二的。在clusternames结束标签下面,我们看到fencedevice部分定义了每个节点如何阻绝其他节点的方式。使用一个支持IPMI(智能平台管理接口)的服务器是最好的方式,而且其设置也是相当简单。你只要将IPMI的地点以及登录方式告诉IP就可以了。为了避免在cluster.conf中留下密码,你可以将它指向一个由根所拥有的脚本并由这个脚本来返回密码。
我们还要指出的是我们在设置中定义了两个节点。这是必须的,因为通常来说,除非大部分节点都同意自己的状态,否则集群无法达到"Quorate"状态。如果只有两个节点的话,没有肯定多数,因此这种方式让集群只能在两个节点下工作,而不能只在只有一个节点的情况下工作。这是设置基本集群的必要方式。
在每个节点上运行"service cman start",系统应该可以开始正常运作。你可以检查"clustat"或"cman nodes"来确认节点是否良好运行。如果有哪个必要的部分没有启动,那么集群将不会显示"Quorate"状态。
GFS设置
首先,我们需要设置CLVM,这样我们才可以通过GFS使用LVM.激活CLVM只要在lvm.conf中设定"locking type=3"就可以了。
然后,就像平常一样创建一个LVM卷组和卷,但是使用的是共享的块设备。如果你使用的是DRBD,你将有可能使用/dev/drbd0.我创建了一个物理卷,然后创建一个名为vg01的卷组,然后创建一个名为web1的逻辑卷,这个卷在:/dev/vg01/web1.
最后,我们需要创建文件系统:
gfs_mkfs -t web1:mygfs -p lock_dlm -j 2 /dev/vg01/web1
-t中给定的名称必须是集群的名称,然后后面是你给这个文件系统所起的名字。只有web1集群的成员才可以载入这个文件系统。然后,设定分布式锁管理器的锁钥类型,指明你需要两份journal(因为这是一个双节点集群)。如果你预计未来要增加更多的节点,那么你需要在这时设定足够高的journal数量。
总结
我们现在可以开始使用这个文件系统了。在两个节点上启动"clvmd"和"gfs"服务。现在你就可以通过"-t gfs"来将类型指定为GFS,从而载入文件系统。
在开始启动之前,一定要设定好cman,clvmd和gfs服务。你最好能熟悉clustat和gfs_tool命令,因为在系统出现问题的时候,你可以用这些命令来查找问题所在。
不要指望GFS能很快。如果有一个节点在进行大量的写入操作的话,那么在访问文件系统的时候出现停顿是很正常的。对于一个数据读取操作比数据写入操作多得多的Web集群来说,这倒不是什么问题。如果出现明显延迟,那么首先要检查一下所有组件的状况,然后评估正在写入的数据。防止延迟现象的最常见措施就是确保HTTP对话中的数据不是写入GFS卷。

H. Linux下怎么用QT怎么画一个CPU/内存使用率的图

1. 在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要。在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况。运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话的模式 -- 用基于 top 的命令,可以控制显示方式等等。退出 top 的命令为 q (在 top 运行中敲 q 键一次)。
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器
可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:
$ top -u oracle

2. 释义:
PID:进程的ID
USER:进程所有者
PR:进程的优先级别,越小越优先被执行
NInice:值
VIRT:进程占用的虚拟内存
RES:进程占用的物理内存
SHR:进程使用的共享内存
S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
%CPU:进程占用CPU的使用率
%MEM:进程使用的物理内存和总内存的百分比
TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
COMMAND:进程启动命令名称

3.操作实例:

在命令行中输入 “top”

即可启动 top

top 的全屏对话模式可分为3部分:系统信息栏、命令输入栏、进程列表栏。

第一部分 -- 最上部的 系统信息栏 :

第一行(top):

“00:11:04”为系统当前时刻;

“3:35”为系统启动后到现在的运作时间;

“2 users”为当前登录到系统的用户,更确切的说是登录到用户的终端数 -- 同一个用户同一时间对系统多个终端的连接将被视为多个用户连接到系统,这里的用户数也将表现为终端的数目;

“load average”为当前系统负载的平均值,后面的三个值分别为1分钟前、5分钟前、15分钟前进程的平均数,一般的可以认为这个数值超过 CPU 数目时,CPU 将比较吃力的负载当前系统所包含的进程;

第二行(Tasks):

“59 total”为当前系统进程总数;

“1 running”为当前运行中的进程数;

“58 sleeping”为当前处于等待状态中的进程数;

“0 stoped”为被停止的系统进程数;

“0 zombie”为被复原的进程数;

第三行(Cpus):

分别表示了 CPU 当前的使用率;

第四行(Mem):

分别表示了内存总量、当前使用量、空闲内存量、以及缓冲使用中的内存量;

第五行(Swap):

表示类别同第四行(Mem),但此处反映着交换分区(Swap)的使用情况。通常,交换分区(Swap)被频繁使用的情况,将被视作物理内存不足而造成的。

第二部分 -- 中间部分的内部命令提示栏:

top 运行中可以通过 top 的内部命令对进程的显示方式进行控制。内部命令如下表:

s

- 改变画面更新频率

l - 关闭或开启第一部分第一行 top 信息的表示

t - 关闭或开启第一部分第二行 Tasks 和第三行 Cpus 信息的表示

m - 关闭或开启第一部分第四行 Mem 和 第五行 Swap 信息的表示

N - 以 PID 的大小的顺序排列表示进程列表(第三部分后述)

P - 以 CPU 占用率大小的顺序排列进程列表 (第三部分后述)

M - 以内存占用率大小的顺序排列进程列表 (第三部分后述)

h - 显示帮助

n - 设置在进程列表所显示进程的数量

q - 退出 top

s -

改变画面更新周期

第三部分 -- 最下部分的进程列表栏:

以 PID 区分的进程列表将根据所设定的画面更新时间定期的更新。通过 top 内部命令可以控制此处的显示方式

pmap

可以根据进程查看进程相关信息占用的内存情况,(进程号可以通过ps查看)如下所示:
$ pmap -d 5647

ps

如下例所示:
$ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' 其中rsz是是实际内存
$ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' | grep oracle | sort -nrk

其中rsz为实际内存,上例实现按内存排序,由大到小

在Linux下查看内存我们一般用free命令:
[root@scs-2 tmp]# free
total used free shared buffers cached
Mem: 3266180 3250004 16176 0 110652 2668236
-/+ buffers/cache: 471116 2795064
Swap: 2048276 80160 1968116

下面是对这些数值的解释:
total:总计物理内存的大小。
used:已使用多大。
free:可用有多少。
Shared:多个进程共享的内存总额。
Buffers/cached:磁盘缓存的大小。
第三行(-/+ buffers/cached):
used:已使用多大。
free:可用有多少。
第四行就不多解释了。
区别:第二行(mem)的used/free与第三行(-/+ buffers/cache) used/free的区别。 这两个的区别在于使用的角度来看,第一行是从OS的角度来看,因为对于OS,buffers/cached 都是属于被使用,所以他的可用内存是16176KB,已用内存是3250004KB,其中包括,内核(OS)使用+Application(X, oracle,etc)使用的+buffers+cached.
第三行所指的是从应用程序角度来看,对于应用程序来说,buffers/cached 是等于可用的,因为buffer/cached是为了提高文件读取的性能,当应用程序需在用到内存的时候,buffer/cached会很快地被回收。
所以从应用程序的角度来说,可用内存=系统free memory+buffers+cached。
如上例:
2795064=16176+110652+2668236

接下来解释什么时候内存会被交换,以及按什么方交换。 当可用内存少于额定值的时候,就会开会进行交换。
如何看额定值:
cat /proc/meminfo

[root@scs-2 tmp]# cat /proc/meminfo
MemTotal: 3266180 kB
MemFree: 17456 kB
Buffers: 111328 kB
Cached: 2664024 kB
SwapCached: 0 kB
Active: 467236 kB
Inactive: 2644928 kB
HighTotal: 0 kB
HighFree: 0 kB
LowTotal: 3266180 kB
LowFree: 17456 kB
SwapTotal: 2048276 kB
SwapFree: 1968116 kB
Dirty: 8 kB
Writeback: 0 kB
Mapped: 345360 kB
Slab: 112344 kB
Committed_AS: 535292 kB
PageTables: 2340 kB
VmallocTotal: 536870911 kB
VmallocUsed: 272696 kB
VmallocChunk: 536598175 kB
HugePages_Total: 0
HugePages_Free: 0
Hugepagesize: 2048 kB

用free -m查看的结果:
[root@scs-2 tmp]# free -m
total used free shared buffers cached
Mem: 3189 3173 16 0 107 2605
-/+ buffers/cache: 460 2729
Swap: 2000 78 1921

查看/proc/kcore文件的大小(内存镜像):
[root@scs-2 tmp]# ll -h /proc/kcore
-r-------- 1 root root 4.1G Jun 12 12:04 /proc/kcore

备注:

占用内存的测量

测量一个进程占用了多少内存,linux为我们提供了一个很方便的方法,/proc目录为我们提供了所有的信息,实际上top等工具也通过这里来获取相应的信息。

/proc/meminfo 机器的内存使用信息

/proc/pid/maps pid为进程号,显示当前进程所占用的虚拟地址。

/proc/pid/statm 进程所占用的内存

[root@localhost ~]# cat /proc/self/statm

654 57 44 0 0 334 0

输出解释

CPU 以及CPU0。。。的每行的每个参数意思(以第一行为例)为:

参数 解释 /proc//status

Size (pages) 任务虚拟地址空间的大小 VmSize/4

Resident(pages) 应用程序正在使用的物理内存的大小 VmRSS/4

Shared(pages) 共享页数 0

Trs(pages) 程序所拥有的可执行虚拟内存的大小 VmExe/4

Lrs(pages) 被映像到任务的虚拟内存空间的库的大小 VmLib/4

Drs(pages) 程序数据段和用户态的栈的大小 (VmData+ VmStk )4

dt(pages) 04

查看机器可用内存

/proc/28248/>free

total used free shared buffers cached

Mem: 1023788 926400 97388 0 134668 503688

-/+ buffers/cache: 288044 735744

Swap: 1959920 89608 1870312

我们通过free命令查看机器空闲内存时,会发现free的值很小。这主要是因为,在linux中有这么一种思想,内存不用白不用,因此它尽可能的cache和buffer一些数据,以方便下次使用。但实际上这些内存也是可以立刻拿来使用的。

所以 空闲内存=free+buffers+cached=total-used

top命令 是Linux下常用的性能 分析工具 ,能够实时显示系统 中各个进程的资源占用状况,类似于Windows的任务管理 器。下面详细介绍它的使用方法。

top - 02:53:32 up 16 days, 6:34, 17 users, load average: 0.24, 0.21, 0.24
Tasks: 481 total, 3 running, 474 sleeping, 0 stopped, 4 zombie
Cpu(s): 10.3%us, 1.8%sy, 0.0%ni, 86.6%id, 0.5%wa, 0.2%hi, 0.6%si, 0.0%st
Mem: 4042764k total, 4001096k used, 41668k free, 383536k buffers
Swap: 2104472k total, 7900k used, 2096572k free, 1557040k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
32497 jacky 20 0 669m 222m 31m R 10 5.6 29:27.62 firefox
4788 yiuwing 20 0 257m 18m 13m S 5 0.5 5:42.44 konsole
5657 Liuxiaof 20 0 585m 159m 30m S 4 4.0 5:25.06 firefox
4455 xiefc 20 0 542m 124m 30m R 4 3.1 7:23.03 firefox
6188 Liuxiaof 20 0 191m 17m 13m S 4 0.5 0:01.16 konsole

统计信息区前五行是系统整体的统计信息。第一行是任务队列信息,同 uptime 命令的执行结果。其内容如下:

01:06:48 当前时间
up 1:22 系统运行 时间,格式为时:分
1 user 当前登录用户 数
load average: 0.06, 0.60, 0.48 系统负载 ,即任务队列的平均长度。
三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。

I. linux中如何组织文件,画出文件目录图

1.列出文件清单命令:ls ls命令能够列出当前目录下的所有内容。ls 命令的执行方式为: # ls [-选项] [文件名或者目录名] 进入到Linux命令行中后,我们至少要知道当前所处的位置有哪些内容,这些信息就可以使用ls命令来获得。 在Linux中,ls命令...

J. linux 多路径存储是怎么回事

Linux下HDS存储多路径查看
在Redhat下确定需要划分的存储空间。在本例中需要进行划分的空间是从HDS AMS2000上划分到服务器的多路径存储空间。其中sddlmad为ycdb1上需要进行划分的空间,sddlmah为ycdb2上需要进行划分的空间。具体如下:
查看环境
# rpm -qa|grep device-mapper
device-mapper-event-1.02.32-1.el5
device-mapper-multipath-0.4.7-30.el5
device-mapper-1.02.32-1.el5
# rpm -qa|grep lvm2 lvm2-2.02.46-8.el5
查看空间
#fdisk -l
Disk /dev/sddlmad: 184.2 GB, 184236900352 bytes 255 heads, 63 sectors/track, 22398 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sddlmah: 184.2 GB, 184236900352 bytes

255 heads, 63 sectors/track, 22398 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes
查看存储
#cd /opt/DynamicLinkManager/bin/
#./dlnkmgr view -lu
Proct : AMS
SerialNumber : 83041424 LUs : 8
iLU HDevName Device PathID Status
0000 sddlmaa /dev/sdb 000000 Online
/dev/sdj 000008 Online
/dev/sdr 000016 Online
/dev/sdz 000017 Online

0001 sddlmab /dev/sdc 000001 Online
/dev/sdk 000009 Online
/dev/sds 000018 Online
/dev/sdaa 000019 Online
0002 sddlmac /dev/sdd 000002 Online
/dev/sdl 000010 Online
/dev/sdt 000020 Online
/dev/sdab 000021 Online
0003 sddlmad /dev/sde 000003 Online
/dev/sdm 000011 Online
/dev/s 000022 Online
/dev/sdac 000023 Online
0004 sddlmae /dev/sdf 000004 Online
/dev/sdn 000012 Online
/dev/sdv 000024 Online
/dev/sdad 000025 Online
0005 sddlmaf /dev/sdg 000005 Online
/dev/sdo 000013 Online
/dev/sdw 000026 Online
/dev/sdae 000027 Online
0006 sddlmag /dev/sdh 000006 Online
/dev/sdp 000014 Online
/dev/sdx 000028 Online
/dev/sdaf 000029 Online
0007 sddlmah /dev/sdi 000007 Online
/dev/sdq 000015 Online
/dev/sdy 000030 Online
/dev/sdag 000031 Online
##############################################################
4. lvm.conf的修改
为了能够正确的使用LVM,需要修改其过滤器:
#cd /etc/lvm #vi lvm.conf
# By default we accept every block device
# filter = [ "a/.*/" ]
filter = [ "a|sddlm[a-p][a-p]|.*|","r|dev/sd|" ]
例:

[root@bsrunbak etc]# ls -l lvm*

[root@bsrunbak etc]# cd lvm
[root@bsrunbak lvm]# ls
archive backup cache lvm.conf
[root@bsrunbak lvm]# more lvm.conf

[root@bsrunbak lvm]# pvs

Last login: Fri Jul 10 11:17:21 2015 from 172.17.99.198
[root@bsrunserver1 ~]#
[root@bsrunserver1 ~]#
[root@bsrunserver1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda4 30G 8.8G 20G 32% /
tmpfs 95G 606M 94G 1% /dev/shm
/dev/sda2 194M 33M 151M 18% /boot
/dev/sda1 200M 260K 200M 1% /boot/efi
/dev/mapper/datavg-oraclelv
50G 31G 17G 65% /oracle
172.16.110.25:/Tbackup
690G 553G 102G 85% /Tbackup
/dev/mapper/tmpvg-oradatalv
345G 254G 74G 78% /oradata
/dev/mapper/datavg-lvodc
5.0G 665M 4.1G 14% /odc
[root@bsrunserver1 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda5 datavg lvm2 a-- 208.06g 153.06g
/dev/sddlmba tmpvg lvm2 a-- 200.00g 49.99g
/dev/sddlmbb tmpvg lvm2 a-- 200.00g 0
[root@bsrunserver1 ~]# cd /etc/lvm
[root@bsrunserver1 lvm]# more lvm.conf
# Don't have more than one filter line active at once: only one gets
used.

# Run vgscan after you change this parameter to ensure that
# the cache file gets regenerated (see below).
# If it doesn't do what you expect, check the output of 'vgscan -vvvv'.

# By default we accept every block device:
# filter = [ "a/.*/" ]

# Exclude the cdrom drive
# filter = [ "r|/dev/cdrom|" ]

# When testing I like to work with just loopback devices:
# filter = [ "a/loop/", "r/.*/" ]

# Or maybe all loops and ide drives except hdc:
# filter =[ "a|loop|", "r|/dev/hdc|", "a|/dev/ide|", "r|.*|" ]

# Use anchors if you want to be really specific
# filter = [ "a|^/dev/hda8$|", "r/.*/" ]
filter = [ "a|/dev/sddlm.*|", "a|^/dev/sda5$|", "r|.*|" ]

[root@bsrunserver1 lvm]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda4 30963708 9178396 20212448 32% /
tmpfs 99105596 620228 98485368 1% /dev/shm
/dev/sda2 198337 33546 154551 18% /boot
/dev/sda1 204580 260 204320 1% /boot/efi
/dev/mapper/datavg-oraclelv
51606140 31486984 17497716 65% /oracle
172.16.110.25:/Tbackup
722486368 579049760 106736448 85% /Tbackup
/dev/mapper/tmpvg-oradatalv
361243236 266027580 76865576 78% /oradata
/dev/mapper/datavg-lvodc
5160576 680684 4217748 14% /odc
[root@bsrunserver1 lvm]#
You have new mail in /var/spool/mail/root
[root@bsrunserver1 lvm]#
[root@bsrunserver1 lvm]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda5 datavg lvm2 a-- 208.06g 153.06g
/dev/sddlmba tmpvg lvm2 a-- 200.00g 49.99g
/dev/sddlmbb tmpvg lvm2 a-- 200.00g 0
[root@bsrunserver1 lvm]#
进入文件:
[root@bsrunbak lvm]# cd /opt/D*/bin
or
[root@bsrunbak bin]# pwd
/opt/DynamicLinkManager/bin
显示HDS存储卷:
[root@bsrunbak lvm]# ./dlnkmgr view -lu