2-Linux

合集下载

Linux2 调度进程

Linux2  调度进程

Linux2 调度进程在Fedora Core Linux系统中,允许多个进程并发执行。

但是,通常情况下,系统中的资源总是有限的,如果系统中并发执行的进程数量过多,就会造成系统的整体性能下降,尤其是当系统中存在黑客进程或者病毒进程时,甚至可能会造成系统瘫痪。

因而,有必要根据一定的策略对系统中的进程进行调度,例如,将可疑的进程终止,将不紧急的进程挂起或者降低其优先级等。

系统管理员或者普通用户都可以对进程进行调度,但是执行这种操作时要非常小心,因为有些进程是与系统运行相关联的,不能对它们有错误的调度。

可以使用如下所示的任一种方法进行进程调度:●在系统监视器的“进程”选项页中进行调度。

●在top命令的执行过程中使用交互命令进行调度。

●在命令行中直接执行各种调度进程的命令。

下面将介绍如何使用命令行命令调度进程。

1.更改进程的优先级在fedora系统中,各个进程都是具有特定的优先级的,系统在为某个进程分配CPU使用时间时是根据进程的优先级进行判定的。

有些进程比较重要,需要先执行,以提高整个程序的执行效率,而有些不太重要的进程,其优先级可以低一些。

通常情况下,大多数用户进程的优先级是相同的,但是可以使用Fedora提供的某些命令改变进程的优先级。

通过执行“ps -l”命令可以查看当前用户进程的优先级,如下所示。

PRI表示进程的优先级,它是由操作系统动态计算的,是实际的进程优先级;NI所表示的是请求进程执行优先级,它可由进程拥有者或者超级用户进行设置,NI会影响到实际的进程优先级。

下面介绍两个可以改变进程优先级的命令。

(1)nice命令格式:nice 【选项】命令功能:在启动进程时指定请求进程执行优先级。

该命令较常用的一个选项是“-n”,n值(即NI值)的范围是从-20到19。

-20代表最高的NI优先级,19代表最低的NI优先级。

如果没有该参数,将自动设置NI值为10。

默认情况下,只有超级用户才有权提高请求进程的优先级,而普通用户只能降低请求进程的优先级。

Linux2 文件操作命令

Linux2  文件操作命令

Linux2 文件操作命令在上一节中,向用户介绍了一些管理目录结构及操作的命令,下面将向用户介绍一些常用的文件操作命令1.touch改变文件或目录时间touch命令的作用是修改文件的存取和修改时间表4 touch主要选项参数9所示。

图9 touch命令2.file识别文件类型file命令的作用是显示文件或目录的类型。

例如,查看usr目录下的aa.txt文件,如图10所示。

图10 file命令3.cp复制文件或目录cp命令的作用是复制文件或目录到目标文件或目录。

cp命令将源文件或目录复制到目标文件或目录中。

如果参数中指定了两个以上的文件/目录,且最后一个是目录,则cp命令视最后一个为目的目录,将前面指定的文件和目录复制到该目录下;如果最后一个不是已存在的目录,则cp命令将给出错误信息。

cp命令主要选项参数如表5所示。

表5cp命令主要选项参数例如,将根目录下aa目录下的文件复制到bb目录下,如图11所示。

图11 cp命令4.rm删除文件或目录rm命令的作用是删除文件或目录。

语法如下:该命令可以删除一个目录中的一个或多个文件和目录,也可以将某个目录及其下属的所有文件和子目录删除。

对于链接文件,只是删除整个链接文件,而原有文件保持不变。

rm 命令主要选项参数如表6所示。

表6 rm 命令主要选项参数图12 rm 命令5.mv 移动或更名现有的文件或目录mv 命令的作用是移动或更名现有的文件或目录。

语法如下:该命令不仅用来移动文件或目录,还可以在移动的同时修改文件名或目录名。

mv 命令主要选项参数如表7所示。

表7 mv 命令主要选项参数例如,将wang 目录下的test.txt 文件名称修改为aa.txt ,如图13所示。

图13 mv 命令6.ln 链接文件或目录链接文件命令是ln 命令。

该命令在文件之间创建链接。

这种操作实际上是给系统中已有的某个文件指定另外一个可用于访问的名称。

对于这个新文件名,可以为之指定不同的访问权限,以控制对信息的共享和安全性的问题。

Linux2 建立硬连接

Linux2  建立硬连接

Linux2 建立硬连接
硬连接,又称为连接。

在Linux中以单纯的复制文件到需要用户目录下可以实现文件的共享,但同一个文件在不同的用户目录下无疑会造成磁盘资源的浪费。

连接可以在不复制的情况下,实现文件共享。

例如,用户zht需要使用用户root的文件new,那么只需要在zht下创建该文件的连接即可。

输入下面的命令:
输入命令后可以看到该目录下所有文件的信息,如图3-13所示。

其中new文件的权限为rw-r--r--,其所有者为zht。

图3-13 文件信息
mynew。

再次使用ls命令查看new文件所在目录,可以看到如图3-14所示的信息。

图3-14 文件信息
由图3-12可能看到在目录中new文件的连接数变成了2,这表示除了文件本身外还有另外一个副本,这就是刚刚创建的硬连接。

当用户删除带有硬连接的文件时,它的连接数就会递减直到连接数降到0时文件才会真正从磁盘上删除。

这也说明硬连接文件和原文件是同一个文件(但却不是复制),两个文件占有相同的索引节点,所以两个文件的索引结点编号也是相同的。

可使用ls -l命令来查看文件的索引节点号(有关ls命令更多相关知识参见本书第四章)。

在终端窗口输入下面的命令。

从终端窗口显示的结果可以看,硬连接和其真实文件的索引节点号是相同的,显示在笔者计算机上索引节点号都是:849624。

实训项目2--Linux基本命令(带参考答案)

实训项目2--Linux基本命令(带参考答案)

实训项目2--Linux基本命令(带参考答案)实验报告题目:项目二、Linux基本命令院系:信息工程系专业:网络工程班级:2011级1班姓名:??学号:2011????指导教师:201 3 年3 月15 日实训项目2 Linux基本命令一、实训目的●掌握Linux各类命令的使用方法;●熟悉Linux操作环境。

二、实训内容练习使用Linux常用命令,达到熟练应用的目的。

三、实训步骤子项目1.文件和目录类命令的使用(1)启动计算机,利用root用户登录到系统,进入字符提示界面。

练习使用cd命令(2)用pwd命令查看当前所在的目录。

pwd命令用于显示用户当前所在的目录。

如果用户不知道自己当前所处的目录,就可以使用这个命令获得当前所在目录(3)用ls命令列出此目录下的文件和目录。

然后,使用ls命令,并用-a选项列出此目录下包括隐藏文件在内的所有文件和目录。

最后,用man命令查看ls命令的使用手册。

补充说明浏览信息内容:(以下面图片为例)最后一行内容列表说明- r w - r--r--1 rootroot8 Feb2118:42mybook1 2 3 4 5 6 7 8 9 10 111属性:- 代表文件,l代表链接文件,d代表目录2 所有者权限(文件权限):具有r 读w 写没有x 执行3 同组用户权限(文件权限):只读r4 其他人权限(文件权限):只读r5 链接数:16 文件拥有者:root7 文件所属组:root8 文件大小:8字节9 创建或修改日期:2月21日10 创建或修改时间:18:4211 文件或目录名称(4)在当前目录下,创建测试目录test。

利用ls或ll命令列出文件和目录,确认test目录创建成功。

然后进入test目录,利用pwd查看当前工作目录。

❖m kdir命令用于创建一个目录。

❖该命令的语法为:mkdir [参数] 目录名❖常用参数–p:如果父目录不存在,则同时创建该目录及该目录的父目录。

Linux2 静态路由器的配置

Linux2  静态路由器的配置

Linux2 静态路由器的配置Linux下最常用的指定路由规则的是route命令,它主要功能是管理Linux系统内核中的路由表。

该命令最大的用途就是用来设定静态的路由表项,通常是在系统用ifconfig配置网络接口(如网卡)后,用它来设定主机或者一网段的IP地址应该通过什么接口发送等。

其中,该命令中带有许的参数信息,并通过这些参数来管理相关功能,如表6-6所示。

语法如下:route [-CFvnee] [-v] [-A family] [-net|-host] target [netmaskNm] [gw Gw] [metric N] [mss M] [window W] [irtt I] [reject] [mod] [dyn] [reinstate] [[dev] If] [-V] [--version] [-h] [-netmask Nm] [--help]表6-6 route命令的参数说明例如,添加一条路由表项,网段192.168.1.x,并且规定该网段的信息从eth0网卡端口传输。

在【终端】中,输入“route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0”命令,并按【回车】键,如图6-26所示。

图6-26 添加路由项下面再添加一条缺省路由,即如果没有其他匹配的路由项,就使用这个路由规则。

例如,在【终端】中,输入“route add default gw localhost.localdomain”命令,并按【回车】键,如图6-27所示。

其中,“localhost.localdomain”是一个主机名称,而通往这个主机的路由规则应该事先已经设置好了。

图6-27 设置缺省路由。

Linux2 文件管理器

Linux2  文件管理器

Linux2 文件管理器GNOME桌面环境包括了一个名为Nautilus的文件管理器,Fedora称之为文件浏览器。

它提供了系统和个人文件的图形化显示。

Nautilus不是文件可视列表,它还允许用一个综合界面来配置桌面、Fedora系统、浏览图片以及访问网络等,本节主要讲解文件管理器的组成和操作。

1.启动Nautilus文件管理器Nautilus是一个多功能的文件管理器,不仅可以用来浏览图片、访问网络资源还能运行脚本文件(目录批处理文件)、定制文件和文档还能进行CD/DVD刻录。

要作为文件管理器来启动Nautilus有多种方法,如下所示:●双击桌面上的“计算机”或“root主目录”图标。

●右击桌面上“计算机”或“root主目录”图标,选择“浏览文件夹”,以文件浏览器的方式来启动Nautilus。

●使用“位置”菜单下的“主文件夹”或“桌面”菜单命令。

●选择“应用程序”|“附件”菜单中的“终端”,打终端窗口并输入nautilus命令,即可启动文件管理器,启动后的文件管理器如图2-18所示。

图2-18 文件管理器图2-18所示,是以文件管理管理方式启动的Nautilus。

2.文件管理器的组成GNOME桌面环境下Nautilus文件管理器窗口与Windows操作系统中窗口组成部分基本类似,包括:菜单栏、工具栏、查看方式、侧栏、状态栏和浏览窗等内容,如图2-19所示。

图2-19 文件管理器的组成(1)浏览窗浏览窗体中显示了目录或文件夹下的内容,主要包括文件及属性、文件夹及其属性以及FTP 站点内容。

(2)菜单栏用户使用或设置的各种菜单选项都在菜单栏,包括【文件】、【编辑】、【查看】、【转到】、【书签】和【帮助】等菜单。

(3)主工具栏工具栏中有一些常用功能按钮,如【刷新】、【向前】、【向后】、【停止】和【搜索】等,还可以使用【主目录】和【计算机】来快速进入不同的目录。

(4)侧边栏侧边栏用于显示目录或文件的相关信息,侧边栏如果没有打开可以在文件管理器中选择【查看】菜单项,并启用【侧边栏】命令,或使用快捷键F9来显示侧边栏。

Linux2 进程的启动方式

Linux2  进程的启动方式

Linux2 进程的启动方式程序或者命令的执行实际上是通过进程实现的。

通常情况下,程序或者命令是保存在硬盘上的,当在命令行中输入一个可执行程序的文件名或者命令并按下Enter 键后,系统内核就将该程序或者命令的相关代码加载到内存中开始执行。

系统会为该程序或者命令创建一个或者多个相关的进程,通过进程完成特定的任务。

启动进程的方式有两种,分别为前台启动方式和后台启动方式。

1.以前台方式启动进程在终端窗口的命令行上输入一个Linux命令并按Enter键,就是以前台方式启动了一个进程。

例如,在终端窗口上执行“find /-name myfile.txt”命令,就以前台方式启动了一个进程,在该进程还未执行完时,可按下Ctrl+z组合键将该进程暂时挂起,然后使用ps命令查看该进程的有关信息,如图5-1所示。

图5-1 以前台方式启动进程2.以后台方式启动进程要在命令行上以后台方式启动进程,需要在执行的命令后添加一个“&”。

例如,在终端窗口的命令行上输入命令“find / -name myfile2.txt &”并按下Enter键后将从后台启动一个进程。

启动后,系统会显示如下所示的信息:这里的数字2表示该进程是运行于后台的第2个进程,数字3516是该进程的PID(即进程标识码,用于惟一地标识一个进程)。

然后,出现了shell提示符,这表示已返回到前台。

这时,执行ps命令将能够看到现在在系统中有两个由find命令引起的进程,它们的标识号是不同的,因而是两个不同的进程,其中,PID为3385的进程就是刚才被挂起的进程。

如果执行jobs命令可以查看当前控制台中的后台进程,如图5-2所示,可以看到当前在后台有两个进程,其中一个处于运行(Running)状态,另一个,即被挂起的进程处于停止(Stopped)状态。

等过一段时间后再使用ps命令进行查看,会发现PID为3516的进程已经结束了,而PID为3385的进程还存在。

Linux2 磁盘管理

Linux2  磁盘管理

Linux2 磁盘管理在Linux中,无论任何一个对象,都是以文件的形式存在的,系统软件,应用软件,文档等。

而这些对象都是放在磁盘的上面,要使用磁盘,就必须首先经过分区,格式化和挂载等操作。

这些操作是在系统安装的时候完成的,但在实际应用中还经常需要对现有的分区进行调整或建立新的分区。

此外,系统管理员发还要随时监听和了解磁盘的使用情况。

这些任务的完成,都是通过相应的工具来完成的。

总的来说,磁盘管理是Linux操作系统重要的系统管理任务之一。

磁盘管理包括磁盘分区,制作文件系统,检测分区,检测磁盘的空闲空间,挂载和卸载文件系统和磁盘同步等工具。

对于这些工具的使用,有两种方式,一种图形化的操作,一种是命令行的操作。

本章主要侧重于图形化操作的讲解。

1.磁盘使用分析工具在Red Hat Fedora Core中,有一个磁盘分析的工具,可以用来查看磁盘的使用状况,比如,磁盘的文件系统,文件,挂载到当前系统的本地硬盘和网络上文件系统。

使用该工具,打开主菜单【应用程序】|【系统工具】|【磁盘使用分析器】,弹出一个【磁盘使用分析器】对话框,如图5-11所示,从【目录树】的选项卡上,可以看到当前磁盘容量的使用情况,图5-11 【磁盘使用分析器】对话框在当前窗口上可以看到工具栏上有【文件系统】,【文件夹】,【网络】,前两个按钮用来查看当前磁盘上面的文件系统,文件有那些,【网络】按钮主要查看其他计算机的文件夹。

【排序】两个按钮主要是显示出来的文件系统,按名称,或大小进行排序,【分配的空间】这个复选框主要用来选择下面显示分配的磁盘空间而不是它的大小。

【搜索】按钮主要查找文件。

单击一下【文件系统】,显示了一个如图5-12所示的属性窗口,在这里可以看到当前磁盘具有的文件系统有那些,占有的空间的大小,该文件系统下面具有多少个文件对象。

这时候,可以选择【分配的空间】查看一下情况。

图5-12 【磁盘使用分析器】显示文件系统对话框单击【编辑】菜单,选中子菜单【首先项】,弹出一个属性对话框,如图5-13所示,图5-13 【磁盘使用分析器首先项】对话框在这个属性窗口中可以查看到当前Linux操作系统挂载的文件系统有那些。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Linux-2.6.32.2内核在mini2440上的移植(二)---yaffs2文件系统移植移植环境(红色粗字体字为修改后内容,蓝色粗体字为特别注意内容) 2.1, yaffs2文件系统移植【1】获取yaffs2 源代码现在大部分开发板都可以支持yaffs2 文件系统,它是专门针对嵌入式设备,特别是使用nand flash 作为存储器的嵌入式设备而创建的一种文件系统,早先的yaffs 仅支持小页(512byte/page)的nand flash,现在的开发板大都配备了更大容量的nand flash,它们一般是大页模式的(2K/page),使用yaffs2 就可以支持大页的nand flash,下面是yaffs2 的移植详细步骤。

在/node/346可以下载到最新的yaffs2 源代码,需要使用git工具( 安装方法见Git版本控制软件安装与使用),在命令行输入:[root@localhost ~]# cd ./linux-test[root@localhost linux-test]# git clone git:///ya ffs2Cloning into yaffs2...remote: Counting objects: 6592, done.remote: Compressing objects: 100% (3881/3881), done. remote: Total 6592 (delta 5237), reused 3396 (delta 2642) Receiving objects: 100% (6592/6592), 3.34 MiB | 166 KiB/s, d one.Resolving deltas: 100% (5237/5237), done.[root@localhost linux-test]# lslinux-2.6.32.2 linux-2.6.39 yaffs2[root@localhost linux-test]#片刻时间之后,可以看到下载的最新的yaffs2 的源代码目录。

【2】为内核打上yaffs2 补丁(1)将yaffs2代码加入内核这可以通过yaffs2目录下的脚本文件patch-ker.sh来给内核打补丁,用法如下:[root@localhost yaffs2]# ./patch-ker.sh c /root/linux-test/linux-2.6.32.2usage: ./patch-ker.sh c/l m/s kernelpathif c/l is c, then copy. If l then linkif m/s is m, then use multi version code. If s then use sing le version code[root@localhost yaffs2]# ./patch-ker.sh c s /root/linux-test/linu x-2.6.32.2*** Warning ***You have chosen to use the single kernel variant of the yaff s VFS glue codethat only works with the latest Linux kernel tree. If you are using an olderversion of Linux then you probably wanted to use the multi-version variant byre-running the patch-ker.sh script using m as a the second argument.ie ./patch-ker.sh c m /root/linux-test/linux-2.6.32.2Updating /root/linux-test/linux-2.6.32.2/fs/KconfigUpdating /root/linux-test/linux-2.6.32.2/fs/Makefile[root@localhost yaffs2]#注意第二个参数m/s,如果不指定,有时会执行失败。

上述命令完成下面三件事:<1>修改内核文件/fs/Kconfig,增加下面两行(在177行附近):if MISC_FILESYSTEMSsource "fs/adfs/Kconfig"source "fs/affs/Kconfig"source "fs/ecryptfs/Kconfig"source "fs/hfs/Kconfig"source "fs/hfsplus/Kconfig"source "fs/befs/Kconfig"source "fs/bfs/Kconfig"source "fs/efs/Kconfig"source "fs/yaffs2/Kconfig"source "fs/jffs2/Kconfig"# UBIFS File system configuration<2>修改内核文件/fs/Makefile,增加下面两行(在129行附近):obj-$(CONFIG_GFS2_FS) += gfs2/obj-$(CONFIG_EXOFS_FS) += exofs/obj-$(CONFIG_YAFFS_FS) += yaffs2/<3>在内核文件的fs目录下创建yaffs2子目录,然后复制如下文件:将yaffs2源码目录下的Makefile.kernel文件复制为内核fs/yaffs2/Ma kefile文件。

将yaffs2源码目录下的Kconfig文件复制为内核fs/yaffs2/目录下。

将yaffs2源码目录下的*.c、*.h文件(不包括子目录下的文件)复制为内核fs/yaffs2/目录下。

(2)配置内核选项阅读内核fs/Kconfig文件可以了解各配置选项的作用。

以下是用到的几个选项:<1>CONFIG_YAFFS_FS:支持yaffs文件系统。

<2>CONFIG_YAFFS_YAFFS2:支持yaffs2文件系统,对于每页大小为2k字节nand flash,需要选中这个选项。

<3>CONFIG_YAFFS_AUTO_YAFFS2:自动选择yaffs2文件格式,如果不配置这个选项,必须使用yaffs2字样来表示yaffs2文件系统格式,如果配置这个选项,则可以使用yaffs字样来统一表示yaffs1和yaffs 2文件系统格式,驱动程序会根据nand flash的页大小自动分辨是ya ffs1还是yaffs2。

【3】配置和编译带YAFFS2 支持的内核在Linux 内核源代码根目录运行:[root@localhost linux-test]# cd linux-2.6.32.2[root@localhost linux-2.6.32.2]# make menuconfig移动上下按键找到File Systems,如图按回车进入该子菜单,再找到“Miscellaneous filesystems”菜单项,如图按回车进入该子菜单,找到“YAFFS2 file system support”,如图按空格选中它,这样我们就在内核中添加了yaffs2 文件系统的支持,按“Exit”退出内核配置。

最好选中“Yes”保存。

2.2,编译测试修改完成之后,因为内核中已经增加要编译的模块,所以要先执行:[root@localhost linux-2.6.32.2]# make clean不然可能编译出错,然后进行编译:[root@localhost linux-2.6.32.2]# make zImage编译完成后,生成zImage文件,然后给开发板上电,把zImage 烧写到开发板上,显示如下:NAND device: Manufacturer ID: 0xec, Chip ID: 0xf1 (Samsun g NAND 128MiB 3,3V 8-bit)Scanning device for bad blocksCreating 5 MTD partitions on "NAND 128MiB 3,3V 8-bit":0x000000000000-0x000000040000 : "boot"uncorrectable error :0x000000040000-0x000000060000 : "param"ftl_cs: FTL header not found.0x000000060000-0x000000560000 : "kernel"ftl_cs: FTL header not found.0x000000560000-0x000040560000 : "root"mtd: partition "root" extends beyond the end of device "NA ND 128MiB 3,3V 8-bit"-- size truncated to 0x7aa0000ftl_cs: FTL header not found.0x000000000000-0x000040000000 : "nand"mtd: partition "nand" extends beyond the end of device "NA ND 128MiB 3,3V 8-bit"-- size truncated to 0x8000000uncorrectable error :dm9000 Ethernet Driver, V1.31上面出现还出现“ftl_cs: FTL header not found.”原来应在配置菜单->Device Drivers ->Memory Technology Devices (MTD),如图按空格键取消选择,然后选“Exit”退出,最后出现保存提示时选择“Ye s”保存。

然后在终端中执行:[root@localhost linux-2.6.32.2]# make clean注意:每次执行完make clean 时,在编译内核是就要花费很长时间,所以不要每次都make clean,我就背害的很苦,每次都等很长时间,以后大家可以避免了然后执行[root@localhost linux-2.6.32.2]# make zImageS3C24XX NAND Driver, (c) 2004 Simtec Electronicss3c24xx-nand s3c2440-nand: Tacls=3, 29ns Twrph0=7 69ns, T wrph1=3 29nss3c24xx-nand s3c2440-nand: NAND soft ECCNAND device: Manufacturer ID: 0xec, Chip ID: 0xf1 (Samsun g NAND 128MiB 3,3V 8-bit)Scanning device for bad blocksCreating 5 MTD partitions on "NAND 128MiB 3,3V 8-bit":0x000000000000-0x000000040000 : "boot"0x000000040000-0x000000060000 : "param"0x000000060000-0x000000560000 : "kernel"0x000000560000-0x000008000000 : "rootfs"0x000000000000-0x000008000000 : "nand"dm9000 Ethernet Driver, V1.31可以看到,前面的出现“ftl_cs: FTL header not found.”信息没有了。

相关文档
最新文档