当前位置:文档之家› linux系统日常管理

linux系统日常管理

linux系统日常管理
linux系统日常管理

第十五章linux系统日常管理

笔者在前面介绍的内容都为linux系统基础类的,如果你现在把前面的内容全部很好的掌握了,那最好了。不过笔者要说的是,即使你完全掌握了,你现在还是不能作为一名合格的linux 系统管理员的,毕竟系统管理员要会做的事情太多了。本章以及后面章节笔者会陆续教给你作为linux系统管理员所必备的知识。只要你熟练掌握那绝对可以胜任一个最初级的管理员职位,不过只是初级的,因为你还需要在日常的管理工作中获得成长。

【监控系统的状态】

1. w 查看当前系统的负载

相信所有的linux管理员最常用的命令就是这个’w’ 了,该命令显示的信息还是蛮丰富的。第一行从左面开始显示的信息依次为:时间,系统运行时间,登录用户数,平均负载。第二行开始以及下面所有的行,告诉我们的信息是,当前登录的都有哪些用户,以及他们是从哪里登录的等等。其实,在这些信息当中,笔者认为我们最应该关注的应该是第一行中的’load average:’后面的三个数值。

第一个数值表示1分钟内系统的平均负载值;第二个数值表示5分钟内系统的平均负载值;第三个数值表示15分钟系统的平均负载值。这个值的意义是,单位时间段内CPU活动进程数。当然这个值越大就说明你的服务器压力越大。一般情况下这个值只要不超过你服务器的cpu数量就没有关系,如果你的服务器cpu数量为8,那么这个值若小于8,就说明你的服务器没有压力,否则就要关注一下了。到这里你肯定会问,如何查看服务器有几个cpu?

就是用这个命令了。’/proc/cpuinfo’这个文件记录了cpu的详细信息。目前市面上的服务器通常都是2颗4核cpu,在linux看来,它就是8个cpu。查看这个文件时则会显示8段类似的信息,而最后一段信息中processor : 后面跟的是’7’。所以查看当前系统有几个cpu,你可以使用这个命令:’ grep -c 'processor' /proc/cpuinfo’ 。

2. vmstat 监控系统的状态

上面讲的w查看的是系统整体上的负载,通过看那个数值可以知道当前系统有没有压力,但是具体是哪里(CPU, 内存,磁盘等)有压力就无法判断了。通过vmstat就可以知道具体是哪里有压力。vmstat命令打印的结果共分为6部分:procs, memory, swap, io, system, cpu.请重点关注一下红色标出的项。

1)procs 显示进程相关信息

r:表示运行和等待cpu时间片的进程数,如果长期大于服务器cpu的个数,则说明cpu不够用了;

b:表示等待资源的进程数,比如等待I/O, 内存等,这列的值如果长时间大于1,则需要你关注一下了;

2)memory 内存相关信息

swpd :表示切换到交换分区中的内存数量;

free :当前空闲的内存数量;

buff :缓冲大小,(即将写入磁盘的);

cache :缓存大小,(从磁盘中读取的);

3)swap 内存交换情况

si :由内存进入交换区的数量;

so:由交换区进入内存的数量;

4)io 磁盘使用情况

bi :从块设备读取数据的量(读磁盘);

bo:从块设备写入数据的量(写磁盘);

5)system 显示采集间隔内发生的中断次数

in :表示在某一时间间隔中观测到的每秒设备中断数;

cs :表示每秒产生的上下文切换次数;

6)CPU 显示cpu的使用状态

us :显示了用户下所花费cpu 时间的百分比;

sy :显示系统花费cpu时间百分比;

id :表示cpu处于空闲状态的时间百分比;

wa:表示I/O等待所占用cpu时间百分比;

st :表示被偷走的cpu所占百分比(一般都为0,不用关注);

以上所介绍的各个参数中,笔者经常会关注r列,b列,和wa列,三列代表的含义在上边说得已经很清楚。IO部分的bi以及bo也是我要经常参考的对象。如果磁盘io压力很大时,这两列的数值会比较高。另外当si, so两列的数值比较高,并且在不断变化时,说明内存不够了,内存中的数据频繁交换到交换分区中,这往往对系统性能影响极大。

笔者用vmstat时,经常用这样的形式,’vmstat 1 5’ 表示每隔1秒钟打印一次系统状态,连续打印5次。当然你也可以‘vmstat 1 ‘ 表示每隔1秒钟打印一次系统状态,一直打印,除非你按ctrl + c强制结束。

3. top 显示进程所占系统资源

这个命令用于动态监控进程所占系统资源,每隔3秒变一次。这个命令的特点是把占用系统资源(CPU,内存,磁盘IO等)最高的进程放到最前面。top命令打印出了很多信息,包括系统负载(load average)、进程数(Tasks)、cpu使用情况、内存使用情况以及交换分区使用情况。其实上面这些内容可以通过其他命令来查看,所以用top重点查看的还是下面的进程使用系统资源详细状况。这部分东西反映的东西还是比较多的,不过需要你关注的也就是几项:%CPU, %MEM, COMMAND 这些项目所代表的意义,不用笔者介绍相信你也能看懂吧。

另外笔者使用top命令时还常常使用-bn1 这个组合选项,它表示非动态打印系统资源使用情况,可以用在脚本中,你不妨记一下,以后也许你会用得到。

4. sar 监控系统状态

sar 命令很强大,它可以监控系统所有资源状态,比如平均负载、网卡流量、磁盘状态、内存使用等等。它不同于其他系统状态监控工具的地方在于,它可以打印历史信息,可以显示当天从零点开始到当前时刻的系统状态信息。如果你系统没有安装这个命令,请使用”yum install -y sysstat”命令安装。初次使用sar命令会报错,那是因为sar工具还没有生成相应的数据库文件(时时监控就不会了,因为不用去查询那个库文件)。它的数据库文件在”

/var/log/sa/”目录下,默认保存9天。因为这个命令太过复杂,所以笔者只介绍几个。

1)查看网卡流量‘sar -n DEV ‘

IFACE这列表示设备名称,rxpck/s 表示每秒进入收取的包的数量,txpck/s 表示每秒发送出去的包的数量,rxbyt/s 表示每秒收取的数据量(单位Byte),txbyt/s表示每秒发送的数据

量。后面几列不需要关注。如果有一天你所管理的服务器丢包非常严重,那么你就应该看一看这个网卡流量是否异常了,如果rxpck/s 那一列的数值大于4000,或者rxbyt/s那列大于5,000,000则很有可能是被攻击了,正常的服务器网卡流量不会高于这么多,除非是你自己在拷贝数据。上面的命令是查看网卡流量历史的,如何时时查看网卡流量呢?

另外也可以查看某一天的网卡流量历史,使用-f选项,后面跟文件名,如果你的系统格式Redhat或者CentOS那么sar的库文件一定是在/var/log/sa/目录下的。

2)查看历史负载‘sar -q’

这个命令有助于我们查看服务器在过去的某个时间的负载状况。

关于sar的介绍笔者不愿写太多,毕竟介绍太多会给你带来更多的压力,其实笔者介绍这个命令的目的只是让你学会查看网卡流量(这是非常有用的)。如果你很感兴趣那就man一下吧,它的用法太多了。

5. free查看内存使用状况

只要你敲一个free然后回车就可以当前系统的总内存大小以及使用内存的情况。从上图中可看到当前系统内存总大小为235128(单位是k)已经使用120368,剩余94760。其实真正剩余并不是这个94760,而是第二行的213388,真正使用的也是第二行的21740。这是因为系统初始化时,就已经分配出很大一部分内存给缓存,这部分缓存用来随时提供给程序使用,如果程序不用,那这部分内存就空闲。所以,查看内存使用多少,剩余多少请看第二行的数据。另外你还可以加-m 或者-g选项分别以M或G为单位打印内存使用状况。

6. ps 查看系统进程

作为系统管理员,一定要知道你所管理的系统都有那些进程在运行,在windows下只要打开任务管理器即可查看。在linux下呢?其实在上面介绍的top命令就可以,但是不够专业,当然还有专门显示系统进程的命令。

对了,就是这个’ps aux’。笔者也经常看到有的人喜欢用’ps -elf’ 大同小异,显示的信息基本上是一样的。ps命令还有更多的用法,笔者不再做介绍,因为你只要会用这个命令就足够了,请man一下。下面介绍上图上出现的几个参数的意义。

PID:进程的id,这个id很有用,在linux中内核管理进程就得靠pid来识别和管理某一个程,比如我想终止某一个进程,则用‘kill 进程的pid’,有时并不能杀掉,则需要加一个-9选项了’kill -9 进程pid’

STAT :表示进程的状态,进程状态分为以下几种(不要求记住,但要了解)

D 不能中断的进程(通常为IO)

R 正在运行中的进程

S 已经中断的进程,通常情况下,系统中大部分进程都是这个状态

T 已经停止或者暂停的进程,如果我们正在运行一个命令,比如说sleep 10,如果我们按一下ctrl -z 让他暂停,那么我们用ps查看就会显示T这个状态

W 这个好像是说,从内核2.6xx 以后,表示为没有足够的内存页分配

X 已经死掉的进程(这个好像从来不会出现)

Z 僵尸进程,杀不掉,打不死的垃圾进程,占系统一小点资源,不过没有关系。如果太多,就有问题了。一般不会出现。

< 高优先级进程

N 低优先级进程

L 在内存中被锁了内存分页

s 主进程

l 多线程进程

+ 代表在前台运行的进程

这个ps命令是笔者在工作中用的非常多的命令之一,所以请记住它吧。关于ps命令的使用,笔者经常会连同管道符一起使用,用来查看某个进程或者它的数量。

上面的6不对,需要减掉1,因为使用grep命令时,grep命令本身也算作了一个。

7. netstat 查看网络状况

netstat命令用来打印网络连接状况、系统所开放端口、路由表等信息。笔者最常用的关于netstat的命令就是这个netstat -lnp(打印当前系统启动哪些端口)以及netstat -an (打印网络连接状况)这两个命令非常有用,请一定要记住。

如果你所管理的服务器是一台提供web服务(80端口)的服务器,那么你就可以使用netstat -an |grep 80开查看当前连接web服务的有哪些IP了。

8. 抓包工具tcpdump

有时候,也许你会有这样的需求,想看一下某个网卡上都有哪些数据包,尤其是当你初步判定你的服务器上有流量攻击。这时,使用抓包工具来抓一下数据包,就可以知道有哪些IP 在攻击你了。

如果你没有tcpdump 这个命令,需要用’yum install -y tcpdump ’命令去安装一下。上图中第三列和第四列显示的信息为哪一个IP+port在连接哪一个IP+port,后面的信息是该数据包的相关信息,如果不懂也没有关系,毕竟你不是专门搞网络的,而这里需要你关注的只是第三列以及第四列。-i 选项后面跟设备名称,如果你想抓eth1网卡的包,后面则要跟eth1.至于-nn选项的作用是让第三列和第四列显示成IP+端口号的形式,如果不加-nn则显示的是主机名+服务名称。

【linux网络相关】

1. ifconfig 查看网卡IP

ifconfig类似与windows的ipconfig,不加任何选项和参数只打印当前网卡的IP相关信息(子网掩码、网关等)

当然ifconfig后面可以跟设备名,只打印指定设备的IP信息。

在windows下设置IP非常简单,然而在命令窗口下如何设置?这就需要去修改配置文件/etc/sysconfig/network-scripts/ifcfg-eth0了,如果是eth1那么配置文件是

/etc/sysconfig/network-scripts/ifcfg-eth1.

如果想修改IP的话,则只需要修改IPADDR , NETMASK以及GATEWAY即可。如果你的linux 是通过dhcp服务器自动获得的IP,那么配置文件肯定和上图中的不一样,BOOTPROTO那里会是’dhcp’,如果你要配置成静态IP的话,这里就需要写成’none’。关于如何设置IP以及子网掩码的这些知识属于网络相关的基础知识了,如果你对这方面比较陌生的话,建议你去看

看网络相关的资料。当修改完IP后需要重启网络服务新IP才能生效,重启命令为’ service network restart’

另外如果你有多个网卡的情况时,只想重启某一个网卡的话,还可以使用这个命令。

ifdown 即停掉网卡,ifup即启动网卡。有一点要提醒你的是,如果你远程登录你的服务器,当你使用ifdown eth0这个命令的时候,很有可能后面的命令ifup eth0不会被运行,这样导致你断网而无法连接服务器,所以请尽量使用service network restart 这个命令来重启网卡。

2. 给一个网卡设定多个IP

在linux系统中,网卡是可以设定多重IP的,笔者曾经管理的一台服务器的eth1就设定了5个IP,实在是够变态的。

把ifcfg-eth0复制成ifcfg-eth0:1 然后编辑ifcfg-eth0:1修改DEVICE以及IPADDR保存后重启网卡。

再次查看eth0上就有两个IP了。这里你要注意一下,文件名(ifcft-eth0:1)写成什么都无所谓,但是文件内的DEVICE=eth0:1一定要按照这样的格式写,否则你启动不起来网卡。

3. 查看网卡连接状态

mii-tool这个命令用来查看网卡是否连接,如图显示link ok等字样说明连接正常,否则会显示’no link’字样,下图是笔者所管理的一台服务器,eth1网卡没有连接。

如果你的机器是虚拟机,那么你使用该命令时应该显示成如下:

这是因为使用的是虚拟网卡,不支持这个工具查看。不用多关注此,你记住这个mii-tool命令即可,它可是会经常用到的。

4. 更改主机名

当装完系统后,默认主机名为localhost,使用hostname就可以知道你的linux的主机名是什么。

同样使用hostname可以更改你的主机名。

下次登录时就会把命令提示符中的’localhost’更改成’Aming’。不过这样修改只是保存在内存中,下次重启还会变成未改之前的主机名,所以需要你还要去更改相关的配置文件’/etc/sysconfig/network’。

把HOSTNAME=localhost.localdomain 修改成你想要的主机名,这样再重启就会读取这个配置文件中的HOSTNAME.

5. 设置DNS

DNS是用来解析域名用的,平时我们访问网站都是直接输入一个网址,而dns把这个网址解析到一个IP。关于dns的概念,如果你很陌生的话,那就去网上查一下吧。在linux下面设置dns非常简单,只要把dns地址写到一个配置文件中即可。这个配置文件就是

/etc/resolv.conf

resolv.conf有它固有的格式,一定要写成’nameserver IP’的格式,上面那行以’;’为开头的行是一行注释,没有实际意义,建议写两个或多个namserver ,默认会用第一个namserver去解析域名,当第一个解析不到时会使用第二个。在linux下面有一个特殊的文件/etc/hosts也能解析域名,不过是需要我们手动在里面添加IP+域名这些内容,它的作用是临时解析某个域名,非常有用。

它的格式如上图,每一行作为一条记录,分成两部分,第一部分是IP,第二部分是域名。关于hosts文件,有几点需要你注意:

1)一个IP后面可以跟多个域名,可以是几十个甚至上百个;

2)每行只能有一个IP,也就是说一个域名不能对应多个IP;

3)如果有多行中出现相同的域名(前面IP不一样),会按最前面出现的记录来解析。【linux的防火墙】

1. selinux

Selinux是Redhat/CentOS系统特有的安全机制。不过因为这个东西限制太多,配置也特别繁琐所以几乎没有人去真正应用它。所以装完系统,我们一般都要把selinux关闭,以免引起不必要的麻烦。关闭selinux的方法为:

把’SELINUX=enforcing’改成’SELINUX=disabled’,然后重启机器。临时关闭selinux的命令为

getenforce命令可以得到selinux的状态,其中有两种(Enforcing|Permissive),前者表示开放,后者表示关闭,但是会发出警告。setenforce用来设置selinux的状态,后面跟0则设置成Permissive后面跟1设置成Enforcing。关闭selinux的命令为setenforce 0,但是这只是临时关闭,重启后恢复,想要永久生效,请更改配置文件/etc/selinux/config。

2. iptables

Iptables是linux上特有的防火墙机制,其功能非常强大,然而笔者在日常的管理工作中仅仅用到了一两个应用,这并不代表iptables不重要。作为一个网络管理员,iptables是必要要熟练掌握的。但是作为系统管理员,我们也应该会最基本的iptables操作,认识iptables的基本规则。

1)iptalbes的三个表

filter :这个表主要用于过滤包的,是系统预设的表,这个表也是笔者用的最多的。内建三个链INPUT、OUTPUT以及FORWARD。INPUT作用于进入本机的包;OUTPUT作用于本机送出的包;FORWARD作用于那些跟本机无关的包。

nat :主要用处是网络地址转换,也有三个链。PREROUTING 链的作用是在包刚刚到达防火墙时改变它的目的地址,如果需要的话。OUTPUT链改变本地产生的包的目的地址。POSTROUTING链在包就要离开防火墙之前改变其源地址。该表笔者用的不多,但有时候会用到。

mangle :这个表主要是用于给数据包打标记,然后根据标记去操作哪些包。这个表几乎不怎么用。除非你想成为一个高级网络工程师,否则你就没有必要花费很多心思在它上面。

2)iptables 基本语法

A. 查看规则以及清除规则

如上图,-t 后面跟表名,-nvL 即查看该表的规则,其中-n表示不针对IP反解析主机名;-L 表示列出的意思;而-v表示列出的信息更加详细。如果不加-t ,则打印filter表的相关信息。

这个和-t filter 打印的信息是一样的。

关于清除规则的命令中,笔者用的最多就是

不加-t默认是针对表filter来操作的,-F 表示把所有规则全部删除;-Z表示把包以及流量计数器置零(这个笔者认为很有用)。

B. 增加/删除一条规则

这就是增加了一条规则,省略-t所以针对的是filter表。-A 表示增加一条规则,另外还有-I 表示插入一条规则,-D删除一条规则;后面的INPUT即链名称,还可以是OUTPUT或者FORWORD;-s 后跟源地址;-p 协议(tcp, udp, icmp);--sport/--dport 后跟源端口/目标端口;-d 后跟目的IP(主要针对内网或者外网);-j 后跟动作(DROP即把包丢掉,REJECT 即包拒绝;ACCEPT即允许包)。这样讲可能很乱,那笔者多举几个例子来帮你理解:

上例表示:插入一条规则,把来自10.0.2.36的所有数据包丢掉。

删除刚刚插入的规则。注意要删除一条规则时,必须和插入的规则一致,也就是说,两条iptables命令,除了-I 和-D不一样外,其他地方都一样。

上例表示把来自10.0.2.36 并且是tcp协议到本机的80端口的数据包丢掉。这里要说的是,--dport/--sport 必须要和-p选项一起使用,否则会出错。

把发送到10.0.2.34的22端口的数据包丢掉。下面做一个小试验:

一开始用本机ping 10.0.2.34是通的,然后使用iptables增加一条规则,使到10.0.2.34的icmp 包丢掉,再ping 10.0.2.34则不通了。此时用’iptables –nvL’查看iptalbes规则。

会有一条这样的记录,看pkts那列显示4个数据包,因为我们ping 的时候给10.0.2.34发送了4个数据包,第二列表示这4个数据包一共有多大(336bytes)。此时使用’iptables -Z' 清零。

现在你明白’iptables -Z’的意义了吧。至于FORWORD链的应用笔者几乎没有用到过,所以不再举例。再总结一下各个选项的作用:

-A/-D :增加删除一条规则;

-I :插入一条规则,其实跟-A的效果一样;

-p :指定协议,可以是tcp,udp或者icmp;

--dport :跟-p一起使用,指定目标端口;

--sport :跟-p一起使用,指定源端口;

-s :指定源IP(可以是一个ip段);

-d :指定目的IP(可以是一个ip段);

-j :后跟动作,其中ACCEPT表示允许包,DROP表示丢掉包,REJECT表示拒绝包;

-i :指定网卡(不常用,但有时候能用到);

上例中表示,把来自10.0.2.0/24这个网段的并且作用在eth0上的包放行。有时候你的服务器上iptables过多了,想删除某一条规则时,又不容易掌握当时创建时的规则。其实有一种比较简单的方法:

查看结果如下:

删除某一个规则的方法是:

-D 后跟链名,然后是规则num,这个num就是查看iptables规则时第一列的值。

iptables还有一个选项经常用到,-P(大写)选项,表示预设策略。用法如下:

-P后面跟链名,策略内容或者为DROP或者为ACCEPT,默认是ACCEPT。注意:如果你在连接远程服务器,千万不要随便敲这个命令,因为一旦你敲完回车你就会断掉。

看到上图中红框标出的部分了吧,现在所有进来的数据包全部DROP了。这个策略一旦设定后,只能使用iptables -P ACCEPT才能恢复成原始状态,而不能使用-F参数。下面笔者针对一个小需求讲述一下这个iptables规则如何设定。

需求:只针对filter表,预设策略INPUT链DROP,其他两个链ACCEPT,然后针对10.0.2.0/24开通22端口,对所有网段开放80端口,对所有网段开放21端口。

这个需求不算复杂,但是因为有多条规则,所以最好写成脚本的形式。

完成脚本的编写后,直接运行‘sh /usr/local/sbin/iptables.sh ’ 即可。如果想开机启动时初始化防火墙规则,则需要在/etc/rc.d/rc.local 中添加一行‘sh /usr/local/sbin/iptables.sh’ 。

关于icmp的包有一个比较常见的应用。

--icmp-type 这个选项是要跟-p icmp 一起使用的,后面指定类型编号。这个8指的是能在本机ping通其他机器,而其他机器不能ping通本机。这个有必要记一下。

C. nat表的应用

其实,linux的iptables功能是十分强大的,笔者曾经的一个老师这样形容linux的网络功能:只有想不到没有做不到!也就是说只要你能够想到的关于网络的应用,linux都能帮你实现。在日常生活中相信你接触过路由器吧,它的功能就是分享上网。本来一根网线过来(其实只有一个公网IP),通过路由器后,路由器分配了一个网段(私网IP),这样连接路由器的多台pc都能连接intnet而远端的设备认为你的IP就是那个连接路由器的公网IP。这个路由器的功能其实就是由linux的iptables实现的,而iptables又是通过nat表作用而实现的这个功能。

至于具体的原理以及过程,笔者不想阐述,请查看相关资料。笔者在这里只举一个例子来说明iptables如何实现的这个功能。假设你的机器上有两块网卡eth0和eth1,其中eth0的IP为10.0.2.68 ,eth1的IP为192.168.1.1 。eth0连接了intnet 但eth1没有连接,现在有另一台机器(192.168.1.2)和eth1是互通的,那么如何设置也能够让连接eth1的这台机器能够连接intnet(即能和10.0.2.68互通)?

其实就是这样简单的两个命令就能实现上面的需求。第一个命令涉及到了内核参数相关的配置文件,它的目的是为了打开路由转发功能,否则无法实现我们的应用。第二个命令则是iptables对nat表做了一个IP转发的操作,-o 选项后跟设备名,表示出口的网卡,MASQUERADE表示伪装的意思。

Linux 用户管理命令

Linux 用户管理命令 Useradd user //建立用户名为user的新用户 与用户管理相关的配置文件 →/etc/default/useradd 配置文件的定义 useradd -D 如不指定任何参数,useradd显示目前预设的值; →/etc/passwd //记录用户密码 →/etc/groups //记录用户组 →finger longcpu //查询一下amdcpu 用户的信息; →root@localhost ~]# useradd -e 11/04/2005 cooler 注:添加用户cooler,并设置其有效期为2005年11月04日; →[root@localhost ~]# passwd cooler 注:设置用户cooler密码; Changing password for user cooler. New UNIX password: 注:设定cooler的密码; Retype new UNIX password: 注:核实设定密码; passwd: all authentication tokens updated successfully. 注:设置成功;有效期的记录是写在/etc/shadow文件中 → passwd 作为普通用户和超级权限用户都可以运行,但作为普通用户只能更改自己的用户密码,但前提是没有被root用户锁定;如果root用户运行passwd ,可以设置或修改任何用户的密码; passwd 命令后面不接任何参数或用户名,则表示修改当前用户的密码;请看下面的子; [root@localhost ~]# passwd 注:没有加任何用户,我是用root用户来执行的passwd 表示修改root用户的密码;下面也有提示; Changing password for user root. New UNIX password: 注:请输入新密码; Retype new UNIX password: 注:验证新密码; passwd: all authentication tokens updated successfully. 注:修改root 密码成功;

实验七 linux用户管理和密码管理

实验7 用户管理和密码管理 1 实验目的 1、通过实验掌握用户和组的管理命令。 2、了解与用户和组管理相关的文件。 2 实验环境 VMware中已经安装好CentOS6.2版本。 3 实验原理或背景知识 3.1 用户管理命令 用户管理的命令主要有3个,即useradd、userdel和usermod,分别用于用户的建立、用户的删除和用户属性的修改。它们的详细说明可参见教材P73~P74或查看帮助手册。 3.2 组管理命令 组管理命令主要有groupadd、groupdel和groupmod等,分别用于组的建立、组的删除和组的属性修改。它们的详细说明可参见教材P75或查看帮助手册。 3.3 密码管理 密码管理的命令是passwd和chage,passwd使用可参见教材P76或查看帮助手册,chage 的使用可参见man手册。 3.4 与用户管理相关的文件 与用户管理相关的文件有/etc/passwd、/etc/shadow、/etc/group、/etc/login.defs、/etc/default/useradd等,用于对用户设置和登录项目进行控制。这些文件的说明可参见教材。 4 实验任务 1、使用useradd、userdel、usermod、passwd、groupadd、groupdel等命令建立用户和

组,删除用户和组,修改用户或组的属性,将用户添加进入组或者从组中删除。 2、通过修改管理文件达到管理用户或组的目的。 5 实验步骤 练习1:使用命令进行用户帐号的管理操作 1、创建一个用户,用户名为Tom,描述信息为tommy,用户组为Tom,登录shell为 /bin/csh,登录主目录为/home/tom_office,用户ID为3600,帐号过期日期为2010处10月8号。 2、将用户帐号名由Tom改为Tommy。 3、为用户Tommy设置密码。 4、将用户帐号Tommy的帐号过期日期设为2010年9月30日,密码的最大生存期设 为100天,密码过期前10天起开始提醒用户。 练习2:使用命令进行用户组帐号的管理操作 5、创建一个GID为506,组名为company的用户组帐号。 6、创建用户Tom、employee1、employee2。 7、指定用户帐号Tom为用户组company的组管理员。 转换到用户帐户Tom登录,将用户employee1、employee2加入到组company中。 8、查看登录到系统的用户有哪些,再给这些用户发个消息通知他们你将在10分钟后关机。 6 实验总结 总结管理用户和组的命令有哪些?各有什么作用?

linux网络操作系统和实训课后习题答案解析(1)

练习题 一、选择题 1. Linux 最早是由计算机爱好者 B 开发的。 A. Richard Petersen B. Linus Torvalds C. Rob Pick D. Linux Sarwar 2. 下列 C 是自由软件。 A. Windows XP B. UNIX C. Linux D. Windows 2000 3. 下列 B 不是Linux 的特点。 A. 多任务 B. 单用户 C. 设备独立性 D. 开放性 4. Linux 的内核版本2.3.20 是 A 的版本。 A. 不稳定 B. 稳定的 C. 第三次修订 D. 第二次修订 二、填空题 1. GUN 的含义是:GNU's Not UNIX。 2. Linux 一般有 3 个主要部分:内核(kernel)、命令解释层(Shell 或其他操作环境)、 实用工具。 三、简答题(略) 1. 简述Red Hat Linux 系统的特点。 2. 简述一些较为知名的Linux 发行版本。 练习题 一、选择题 1. Linux 安装过程中的硬盘分区工具是 D 。 A. PQmagic B. FDISK C. FIPS D. Disk Druid 2. Linux 的根分区系统类型是 C 。 A. FATl6 B. FAT32 C. ext3 D. NTFS 二、填空题 1. 安装Linux 最少需要两个分区,分别是 swap 交换分区和/(根)分区。 2. Linux 默认的系统管理员账号是 root 。 3. X-Window System 由三部分构成:X Server、X Client 和通信通道。 三、简答题(略) 1. Linux 有哪些安装方式 2. 安装Red Hat Linux 系统要做哪些准备工作 3. 安装Red Hat Linux 系统的基本磁盘分区有哪些 4. Red Hat Linux 系统支持的文件类型有哪些 练习题 一、选择题 1. C 命令能用来查找在文件TESTFILE 中包含四个字符的行 A. grep’’TESTFILE B. grep’….’TESTFILE C. grep’^$’TESTFILE D. grep’^….$’TESTFILE 2. B 命令用来显示/home 及其子目录下的文件名。 A. ls -a /home B. ls -R /home C. ls -l /home D. ls -d /home 3. 如果忘记了ls 命令的用法,可以采用 C 命令获得帮助 A. ls B. help ls C. man ls D. get ls 4. 查看系统当中所有进程的命令是 D 。 A. ps all B. ps aix C. ps auf D. ps aux

Linux的用户和组群管理

二、Linux的用户和组的管理实验步骤 1.桌面环境下,单击主菜单\系统设置\用户和组群菜单,进行用户与组群的添加、修改、删 除操作,注意理解修改用户时,口令信息中各设置参数的含义。 添加:单击工具栏-添加用户,在弹出的”创建新用户”窗口中输入用户名 修改:直接双击该用户,在弹出的窗口中直接进行修改; 删除:在用户管理器里面选中需要删除的用户,直接单击删除按钮,会询问“直接删除主目录?”,点击确定既可。 2.用户管理器显示所有的用户的信息,并利用搜索过滤器查找所有以s开头的用户。

3.用groupadd命令创建一名为czn组群,并指定其GID为600. 4.用useradd命令创建chf用户,并指定其主要组群为czn,用户ID为600。 5.用id命令查看chf用户的UID、GID修改情况。 6.用passwd命令修改root、chf用户的密码。 修改根root的密码: 修改chf的密码: 7.用vi打开passwd、shadow、group、gshadow文件,熟悉文件中各项的含义。 打开passwd: vi /etc/passwd 打开shadow: vi /etc/shadow 打开group: vi /etc/group 打开gshadow: vi /etc/gshadow 8.用passwd命令删除chf用户密码,并尝试以chf用户登录,看看是不需要密码。 不需要密码进入用户 而进入原先设置密码的root就需要输入密码后方能进入:

9.用passwd命令锁定和解锁chf用户,并尝试以chf用户登录,看看是否能登录。 命令:passwd –l chf 锁定之后不能登陆用户chf Passwd –u chf 解锁后能够登陆用户chf 10.用usermod命令修改chf用户,使其用户名为chen,UID为601. 命令:usermod –l chen chf 修改用户名 Usermod –u 601 chen 11.用groupmod命令修改czn组群,使其组群名为czn1,用id chen 命令查看变化情况。 修改组群名:groupmod –n czn1 czn 查看:id chen 12.用groupmod命令修改czn组群,使其GID为601,用id chen 命令查看变化情况。 修改GID:groupmod –g 601 czn 查看:id chen 13.创建test1,test2用户,查看/home文件夹下目录情况。 创建用户:Useradd test1 Useradd test1 查看:vi/home home下多了用户test1和test2 14.用userdel test1与userdel –r test2删除两个用户并查看/home文件夹的变化情况。 执行以上命令后发现:使用userdel test1并不删除test1的主目录,而 userdel –r test2删除了主目录

Linux操作系统实验指导书

《Linux系统管理与维护》实验指导书 实验一初识Linux操作系统 一实验名称 初识Linux操作系统 二实验目的与要求 掌握Linux的启动、登录与注销。 三实验内容 1.以root用户和普通用户两种不同身份登录Linux,说出其登录后得差异。 2.图形模式下的注销、重启与关机。 3.学会在虚拟机上登录和注销Linux。 四操作步骤与结果分析 五问题与建议

实验二Linux的桌面应用 一实验名称 Linux的桌面应用 二实验目的与要求 熟悉Linux操作系统桌面环境 熟悉Linux文件系统及常用的操作 掌握Linux下使用外部存储设备、网络设备 掌握Linux下安装应用程序 三实验内容 1.查看GNOME提供的“应用程序”、“位置”或者“系统”菜单,运行其中的应用程 序和工具。 2.查看Linux文件目录结构,学会常用的文件目录操作,如复制、粘贴、移动、删 除、更名、创建文档、创建文件夹等。 3.练习在Linux下使用光盘和U盘。 4.学会网络配置,使计算机能够进行网络浏览等操作。 5.学会在Linux下安装新的应用软件。 四操作步骤与结果分析 五问题与建议

实验三Linux操作系统的安装 一实验名称 Linux操作系统的安装 二实验目的与要求 掌握安装Linux操作系统 三实验内容 1.通过学习《项目五Linux操作系统的安装及远程服务》的内容,学会如何安装Linux。 环境:windows 系统、vmware虚拟机、Redhat Linux镜像光盘。 通过安装向导将安装分为两步:1、基本安装,2、配置及具体安装。 在第一阶段重点如何分区,在第二阶段重点掌握如何设置密码及安装桌面环境。四操作步骤与结果分析 五问题与建议

Linux编程用户信息管理系统

一绪论 §1.1设计背景 Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。它主要用于基于Intel x86系列CPU的计算机上。这个系统是由全世界各地的成千上万的程序员设计和实现的。 §1.2设计目的 在Linux系统的/etc目录下有这样一个文件passwd,该文件里包含系统中所有用户信息的记录,记录里包含每个用户的如下信息:用户名、密码、用户ID、组ID、用户全名、用户主目录和用户登录所用的shell。请设计一个脚本(shell)程序能实现增加、删除、查找和显示特定用户信息的功能。你们可以通过创建一些UNIX/LINUX shell 脚本文件来满足以上需求。 二需求分析 §2.1系统概述 §2.1.1 任务概述 Linux作为多用户、多任务的操作系统,其系统资源是所有用户共享的。对用户的管理是操作系统的重点。LINUX课程设计要用shell编程实现,将理论学习付诸实践。设计一个脚本(shell)程序能实现增加、删除、查找和显示特定用户信息的功能。 §2.1.2需求规定 程序要包括四个文件,即menu,add,delete,passwd四个文件。passwd文件是用来保存用户信息;menu文件是主菜单,要求运行的时候能显示一个菜单供用户选择;addusers 文件是用来增加信息;deluser文件是用来删除信息。在主Shell脚本文件里(必须以 menu 命名)要有一个多操作选项的菜单以便用户从中选择。对于任务6和7,需要编写单独的Shell 脚本文件(必须分别命名为addusers和deluser)并且在主脚本menu文件中调用这些脚本

Linux实验报告-用命令实现用户和组的管理

Linux实验报告-用命令实现用户和组的管理

————————————————————————————————作者:————————————————————————————————日期:

河南师范大学综合性、设计性实验项目简介学院名称(公章):软件学院学年 2014 - 2015 第 1 学期填表日期: 2014 年 10 月 29 日 实验课程名称Linux操作系统 实验项目名称用命令实现用户和组的管理 实验项目性质1、综合性 2、设计性主讲教师袁培燕开课年级2012级开课专业Java 实验地点过街楼B区开课日期2014.09.01 开课时间1—18周 一、实训目标 (1)掌握在Linux操作系统下用命令实现用户和组的管理 (2)了解和掌握Linux操作系统的权限概念。 二、实训环境 一台安装CentOS 7 系统的计算机,主机内存为6GB,频率为2.5GHz。 三、实训内容 (1)建立目录“/project_a”,该目录里的文字只能有David 和 Peter 两人读取、增加、删除、修改及执行,其他用户不能对该目录进行任何的访问操作。 (2) (3)建立目录“/project_b”,该目录里的文字只能有Jack和 Mike 两人读取、增加、删除、修改及执行,其他用户不能对该目录进行任何的访问操作。 (4) (5)建立目录“/project”,该目录里的文字只能有David、Peter、Jack、Mike 四个人读取、增加、删除、修改及执行,其他用户不能对该目录进行任何的访问操作。 四、实验步骤 (1)创建用户和设置密码

创建David用户,并为之设置密码– d,接下来创建其他3为用户,并设置为其密码。 具体操作:

Linux操作系统源代码详细分析报告

Linux操作系统源代码详细分析 容简介: Linux 拥有现代操作系统所有的功能,如真正的抢先式多任务处理、支持多用户,存保护,虚拟存,支持SMP、UP,符合POSIX标准,联网、图形用户接口和桌面环境。具有快速性、稳定性等特点。本书通过分析Linux的核源代码,充分揭示了Linux作为操作系统的核是如何完成保证系统正常运行、协调多个并发进程、管理存等工作的。现实中,能让人自由获取的系统源代码并不多,通过本书的学习,将大大有助于读者编写自己的新程序。 第一部分 Linux 核源代码 arch/i386/kernel/entry.S 2 arch/i386/kernel/init_task.c 8 arch/i386/kernel/irq.c 8 arch/i386/kernel/irq.h 19 arch/i386/kernel/process.c 22 arch/i386/kernel/signal.c 30 arch/i386/kernel/smp.c 38 arch/i386/kernel/time.c 58 arch/i386/kernel/traps.c 65 arch/i386/lib/delay.c 73 arch/i386/mm/fault.c 74 arch/i386/mm/init.c 76 fs/binfmt-elf.c 82 fs/binfmt_java.c 96 fs/exec.c 98 include/asm-generic/smplock.h 107 include/asm-i386/atomic.h 108 include/asm-i386/current.h 109 include/asm-i386/dma.h 109 include/asm-i386/elf.h 113 include/asm-i386/hardirq.h 114 include/asm-i386/page.h 114 include/asm-i386/pgtable.h 115 include/asm-i386/ptrace.h 122 include/asm-i386/semaphore.h 123 include/asm-i386/shmparam.h 124 include/asm-i386/sigcontext.h 125 include/asm-i386/siginfo.h 125 include/asm-i386/signal.h 127 include/asm-i386/smp.h 130 include/asm-i386/softirq.h 132 include/asm-i386/spinlock.h 133 include/asm-i386/system.h 137 include/asm-i386/uaccess.h 139

linux操作系统

以下哪些是Linux操作系统的特点? A. 广泛性 B. 低廉性 C. 灵活性 D. 健壮性 回答正确 解析: 略 2 单选以下哪个不属于操作系统? A. Windows B. Linux C. Oracle D. MacOS 回答正确 解析: 略 3 单选以下描述正确的是? A. 批处理系统出现早于分时系统 B. Linux就是批处理系统 C. 批处理系统可以同时执行多个任务 D. Windows是批处理操作系统 回答正确 解析: 略 4 单选以下哪个是移动操作系统? A. Linux B. Android C. WindowsXP D. Windows2003 回答正确 解析: 略 5 单选Linux最早发布于哪一年? A. 1990 B. 1991 C. 1992 D. 1993 回答正确 解析: 略 6 单选第一个企业版的Linux是哪一个? A. CentOS B. Ubuntu C. Debian D. RedHat 回答正确 解析: 略 7 单选以下哪个不是内核的组成部分? A. 系统调用接口

B. 进程管理 C. C语言编译器 D. 驱动程序 回答正确 解析: 略 8 单选Linux下常用文本编辑工具是? A. Notepad B. EditPlus C. DreamWeaver D. VIM 回答正确 解析: 略 9 单选Linux的终端软件英文名称是什么? A. background B. terminal C. console D. cmd 回答正确 解析: 略 10 单选下载安装软件的命令是什么? A. apt-getinstall B. vim-version C. sudo D. setup 回答正确 修改密码的命令是? A. change B. passwd C. password D. update 回答正确 解析: 略 2 单选进入某一文件夹的命令是? A. ls B. cd C. ll D. help 回答正确 解析: 略 3 单选列表显示所有文件的命令是? A. ls B. cd C. pwd

linux用户管理

实验项目(四) 用户管理 一、学习目的 1、掌握文件和目录的访问权限设置的命令 2、掌握创建新用户的方法 3、掌握用户管理的基本命令 4、掌握用户身份的转换 5、掌握组的管理 二、学习任务 第一部分文件和目录的访问权限用户:root 工作目录:/home 1、查看当前umask参数 Umask 2、在/home目录下创建新目录dir1 说明,用mkdir命令创建目录,比如mkdir dir1 mkdir /home/dir1 3、显示目录dir1的详细信息,记录目录的权限信息 Ls -l /home/dir1 4、改变umask参数为066 Umask 0066 5、创建新目录dir2 Mkdir dir2 6、显示目录dir1的详细信息,记录目录的权限信息 Ls -l /home/dir1 7、创建新文件file1 Touch file1 8、显示文件file1的详细信息,记录文件file1的文件权限 Ls –l file1 9、为dir1的同组用户增加写权限 Chomd 664 dir1 10、改变file1的文件权限为755 Chmod 755 file1 第二部分用户管理的基本命令(一)创建用户

1、增加新用户user1,用户主目录:/home/user1 Useradd –c /home/user1 user1 2、设置user1密码为user111 Passwd user1 user111 3、增加新用户user2,用户主目录:/user/user2 Useradd –c /user/user2 user2 4、设置 user2 的密码为空 Passwd user2 5、以user1用户身份登陆 Su user1 6、将/home/file1文件拷贝到user1的用户主目录下,能够执行成功吗? 可以,Cp –r /home/file1 /home/user1 7、将/home/file1文件拷贝到 /home/dir1目录下,能够执行成功吗? 可以,Cp –r /home/file1 /home/dir1 8、切换到root用户 Su root 9、将/home/file1文件拷贝到 /home/dir1目录下,能够执行成功吗?为什么? 可以,Cp –r /home/file1 /home/dir1 10、执行# chown user1 /home/dir1,命令作用是什么? 改变文件所属用户 11、切换回user1用户 Su user1 12、将/home/file1文件拷贝到 /home/dir1目录下,能够执行成功吗?为什么? Cp –r /home/file1 /home/dir1 思考题:/etc/passwd和/etc/shadow的文件权限对于系统安全有何作用? /etc/passwd文件存放用户的宿主目录、shell环境等资料,用户必须有权限查看,所以不能设置为700。而/etc/shadow文件的默认权限一般是400。 (二)删除用户 1、#userdel user1 2、#userdel -r user2 思考:步骤1和步骤2的执行结果有什么异同? 第一个只删除用户但不删除用户的主目录。第二个删除文件的用户和主目录 步骤1要达到和步骤2同样结果,还需要增加哪些操作 Rm –rf user1

论文(linux操作系统与Windows操作系统的区别)

海南大学 毕业论文(设计) 题目:分析linux操作系统与Windows操作系统的区别 学号: 姓名: 年级: 学院: 系别: 专业: 指导教师: 完成日期:年月日

摘要 本文通过对Linux操作系统和Windows操作系统各自的发展特点与发展环境的比较,分析出windows与Linux的本质差别与存在此差别的根本原因。 通过二者内在特点及组成浅述,对两种操作系统做了权限、费用、读取、命令、弹性化与刻板化、安全稳定等方面的差异性对windows与Linux进行比较。 在硬件支持支持、购买能力、安装难易、占用内存、设备驱动、性能、稳定能力、编程、网络、安全、创新等10方面对windows与Linux做了优劣势的简单比较。 通过对windows与Linux更见详细的优劣势比较,以此对Linux与Windows 操作系统的区别做出了详细而具体的分析与论述。 借鉴以上分析结果,对不同人群、领域使用windows与Linux的优势劣势进行阐述,得出windows更适合初学者及工作需求低的人,而Linux更适合计算机高手及计算机专业人士使用。 关键词:Linux、Windows、操作系统、区别、开放源代码、稳定性。

Abstract Based on the Linux operating system and Windows operating system features and development of their own development environment, comparison and analysis of the nature of the differences between windows and Linux and the root cause of this difference exists.By the inherent characteristics and composition of both light above, made on the two operating systems permission, expenses, read, order, flexible and stereotypical, security and stability of the difference compared to the windows and Linux.Support in hardware support, purchasing power, ease of installation, take up memory, device drivers, performance, stability, capacity, programming, networking, security, innovation and other aspects of windows 10 and Linux do a simple comparison of the advantages and disadvantages. Through the windows and Linux even more detailed comparative advantages and disadvantages, in order for Linux and Windows operating systems to make the difference between a detailed and specific analysis and discussion.Learn from the above analysis, the different groups, areas of the advantages of using windows and Linux described disadvantages, more suitable for beginners to come and work windows of low demand, while Linux is more suitable for computer experts and computer professionals. Keywords: Linux; Windows; operating system; different;open source;stability.

实验四 Linux下用户和组的管理

实验四Linux下用户和组的管理、磁盘限额 一. 实验目的: 1.掌握在Linux系统下利用命令方式实现用户和组的管理; 2.掌握利用Linux-conf进行用户和组的管理; 3.掌握磁盘限额的实现方法。 二. 实验内容: 1.用户和组的管理; 2.磁盘限额。 三. 实验步骤: 1. 用户的管理 创建一个新用户user01,设置其主目录为/home/user01:#useradd –d /home/user01 -m user01 查看/etc/passwd文件的最后一行,看看是如何记录的。 查看文件/etc/shadow文件的最后一行,看看是如何记录的。 给用户user01设置密码:#passwd user01。 再次查看文件/etc/shadow文件的最后一行,看看有什么变化。 使用user01用户登录系统,看能否登录成功。。 锁定用户user01:#passwd -l user01。 查看文件/etc/shadow文件的最后一行,看看有什么变化。 再次使用user01用户登录系统,看能否登录成功。 解除对用户user01的锁定:#passwd -u user01 更改用户user01的帐户名为user02:#usermod –l user02 user01。 查看/etc/passwd文件的最后一行,看看有什么变化。 删除用户user02。 2. 组的管理 创建一个新组,stuff:#groupadd stuff。 查看/etc/group文件的最后一行,看看是如何设置的。 创建一个新帐户user02,并把他的起始组和附属组都设为stuff:#useradd –g stuff –G stuff user02。 查看/etc/group文件中的最后一行,看看有什么变化。 给组stuff设置组密码:#gpasswd stuff。 在组stuff中删除用户user02:#gpasswd –d user02 stuff。 再次查看/etc/group文件中的最后一行,看看有什么变化。 删除组stuff。 3. 用Linux-conf创建用户和组 进入X-Window图形界面。 在终端中输入userconf命令,启动Linux-conf的用户管理子程序,在打开的界面中练习用户、组的 设置。 4. 磁盘限额 启动vi来编辑/etc/fstab文件。 把/etc/fstab文件中的home分区添加用户和组的磁盘限额。 用quotacheck命令创建https://www.doczj.com/doc/ea14466272.html,er和aquota.group文件:#quotacheck -guva 给用户user01设置磁盘限额功能:#edquota -u user01。 将其blocks的soft设置为4000,hard设置为5000;inodes的设置为4000,hard设置为5000。编辑 完成后保存并退出。 重新启动系统。 用quotaon命令启用quota功能:#quotaon –ugva。 切换到用户user01,查看自己的磁盘限额及使用情况。

最小的Linux操作系统制作过程详解

最小的Linux操作系统制作过程详解 一,什么是BabyLinux BabyLinux不是一个完整的发行版,他是利用原有的一套完整的linux系统的内核原代码和编译工具,利用busybox内建的强大功能,在一张软盘上做的一个很小的linux系统。他具备一个linux系统的基本特征,支持linux系统最常用的一百多个命令,支持多种文件系统,支持网络等等,你可以把他当做一张linux 起动盘和修复盘来用,你也可以把他当做一个静态路由的路由器软件,当然,你也可以把他当做一个linux玩具,向你的朋友炫耀linux可以做的多么小。我把他叫做BabyLinux因为他很小巧,小的很可爱,像一个刚刚出生的小baby。 二.为什么要作这样一个linux 先说说我一开始的想法,当我一开始接触linux的时候,看到书上说,linux 通常安装只需要60M左右的空间,但是我发现装在我硬盘上的Redhat 6.0确要占据好几百M的空间。为什么我的linux这么大呢? 后来我发现,装在我机器上的那么多东西只有不到30%是我平时常用的,还有30%是我极少用到的,另外的40%基本上是不用的。于是,我和大多数初学者一样,开始抱怨,为什么linux 不能做的精简一点呢?于是,我萌发了自己裁减系统的想法。可惜那个时候我还没有听说过有LFS和Debain。等到我积累了足够的linux知识后,我开始制作这样一个小系统。 制作这样一个小系统最大的意义在于,你可以通过制作系统了解linux的启动过程,学会ramdisk的使用,让你在短时间内学到更多的linux知识。当然,你会得到很大的乐趣。这个项目只是做一个具有基本特征的linux系统,如果你想自己做一个具有完整功能的linux,请阅读Linux From Scratch (LFS)文档。 三,什么人适合读这篇文档 如果你是一个linux爱好者,并且很想了解linux的启动过程和系统的基本结构,而且是一个喜欢动手研究小玩意的人,那么这个文档可以满足你的需求。如果你仅仅是用linux来做一些普通的日常工作,而不在乎你的linux到底怎么工作,那么这份文档也许不太适合你。另外,如果你是linux爱好者,但是目前还是一个刚刚入门的newbi,我建议你先把linux命令学好。不过我想我会尽可能的把这份文档写详细一些,如果你有足够的毅力,或许一个newbi也能成功做一个babylinux。或者,你遇到一件很不巧的事情,比如你的老婆来例假了,你的这个周末就泡汤了,那么阅读这篇文档并做一个linux小玩具可以打发你的时间。 四,应该具备的知识 在做一个babylinux之前,你应当已经会应用linux最常用的命令。并且至少有一次成功编译并安装系统内核的经历,会通过编译源代码来安装软件。如果你具备了这些条件,那么做这样一个小系统会很顺利,如果你还没有掌握这些知识,你可能会遇到一些困难。但是只要有毅力,也可以成功。你不需要具备编程的知识,因为我的目标是:让具有中等以上linux水平的爱好者可以通过阅读文档轻松完成这个项目。关于一张软盘上的linux还有一个很著名的linux叫LOAP

linux 新建用户、用户组及用户权限

Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个惟一的用户名和各自的口令。用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。 实现用户账号的管理,要完成的工作主要有如下几个方面: ·用户账号的添加、删除与修改。 ·用户口令的管理。 ·用户组的管理。 一、Linux系统用户账号的管理 用户账号的管理工作主要涉及到用户账号的添加、修改和删除。 添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和登录Shell 等资源。刚添加的账号是被锁定的,无法使用。 1、添加新的用户账号使用useradd命令,其语法如下: 代码: useradd 选项用户名 其中各选项含义如下: 代码: -c comment 指定一段注释性描述。 -d 目录指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。 -g 用户组指定用户所属的用户组。 -G 用户组,用户组指定用户所属的附加组。 -s Shell文件指定用户的登录Shell。 -u 用户号指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。 用户名指定新账号的登录名。 例1: 代码: # useradd –d /usr/sam -m sam 此命令创建了一个用户sam, 其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录)。 例2: 代码: # useradd -s /bin/sh -g group –G adm,root gem 此命令新建了一个用户gem,该用户的登录Shell是/bin/sh,它属于group用户组,同时又属于

bdpqlxz---linux操作系统详解(Linux不再难懂)

bdpqlxz---linux操作系统详解(Linux不再难懂) linux操作系统详解(Linux不再难懂) 4. 检查系统日志你的系统日志告诉你在系统上发生了什么活动,包括攻击者是否成功进入或试着访问系统。时刻保持警惕,这是你第一条防线,而经常性地监控系统日志就是为了守好这道防线。 5. 考虑使用端口试探设置端口试探(Port knocking)是建立服务器安全连接的好方法。一般做法是发生特定的包给服务器,以触发服务器的回应/连接(打开防火墙)。端口敲门对于那些有开放端口的系统是一个很好的防护措施。 6. 使用IptablesIptables是什么?这是一个应用框架,它允许用户自己为系统建立一个强大的防火墙。因此,要提升安全防护能力,就要学习怎样一个好的防火墙以及怎样使用Iptables框架。 7. 默认拒绝所有防火墙有两种思路:一个是允许每一点通信,另一个是拒绝所有访问,提示你是否许可。第二种更好一些。你应该只允许那些重要的通信进入。(LCTT译注:即默认许可策略和默认禁止策略,前者你需要指定哪些应该禁止,除此之外统统放行;后者你需要指定哪些可以放行,除此之外全部禁止。) 8. 使用入侵检测系统入侵检测系统,或者叫IDS,允许你更好地管理系统上的通信和受到的攻击。Snort是目前公认

的Linux上的最好的IDS。9. 使用全盘加密加密的数据更难窃取,有时候根本不可能被窃取,这就是你应该对整个驱动器加密的原因。采用这种方式后,如果有某个人进入到你的系统,那么他看到这些加密的数据后,就有得头痛了。根据一些报告,大多数数据丢失源于机器被盗。六、自学Linux操作系统命令的四种方法如果你想成为Linux高手,那么掌握一些Linux命令是必不可少的。下面是自学Linux 命令的四种方法。自学Linux操作系统----每日提示学习Linux命令的一种渐进式方法是:在每次打开终端时,让它显示“每日提示”。这会向你介绍一些有用的命令及其高级使用技巧。在.bashrc中(/home/.bashrc)增加如下一行:你只需要增加这行就够了!如果你想让它更娱乐化一些,你可以安装cowsay。Ubuntu/Debian下安装cowsay:Fedora 下安装cowsay: 除了安装cowsay,还需要在.bashrc中增加:然而,上述使用cowsay的方法并不是在所有Linux发行版下均可运行成功。自学Linux操作系统----使用“whatis” 如果你不喜欢学习随机的命令,或许你喜欢在使用某种命令的时候学习它的用法。这时你只需要在其前面加上whatis即可。Whatis 会逐条的解释你输入的命令。上图的whatis sudo yum install cheese例子清楚的告诉你:1)sudo是让你具有管理员权限;2)yun是软件包管理器;3)install是让YUM安

linux系统管理命令

a)系统管理:chkconfig、init、shutdown、halt、reboot、set、env、export、 crontab、uptime、last、history、id、finger、who、w、whoami、useradd、passwd、usermod、userdel、date、cal、wget、yum、curl、lsmod、dmesg。 Chkconfig:管理服务。 查看所有服务:chkconfig --list; 添加:chkconfig --add serviceName; 删除:chkconfig --del serviceName; 覆盖:chkconfig --override serviceName; 开启:chkconfig --level 2345 serviceName on; 关闭:chkconfig --level 2345 serviceName off。 Init:一个由内核启动的用户级进程。OS初始化所有的设备驱动程序和数据结构之后,就通过启动一个用户级程序init的方式,完成引导进程。所以,init始终是第一个进程(其进程编号始终为1)。Init 配合不同的运行级别数字实现不同的功能:init 0关机、init 1进单用户模式、init 6重启、init 3命令行模式、init 5图形界面。 Shutdown:冻结login指令,发送信号给init进程要求切换运行界别,并通知所有已登陆用户即将关闭系统。常用参数:-t 延迟时间,-r重启参数,-c 取消正在执行的关机,-h关机后关闭电源。 Halt:实际是调用shutdown -h。杀死应用进程﹐执行sync系统调用﹐文件系统写操作完成后就会停止内核。参数:-n 防止sync系统调用﹐用于fsck修复根分区之后﹐以阻止内核用老版本的超级块〔superblock〕覆盖修补过的超级块。 Reboot:和halt差不多,不过它是重启系统。 Set:显示当前shell的变量(每个shell有自己不同的变量),包括当前用户的变量。 env:显示当前用户的变量,用户变量和你用什么shell无关,不管你用什么shell 都在。 export:显示当前导出成用户变量的shell变量。shell自己的变量可以通过export “导出”变成一个用户变量。 Crontab:相当于windows的计划任务,参数:-l 查看,-e编辑。Crontab的编辑格式:分(0-59) 时(0-23) 天(1-31) 月(1-12) 星期(0-6) 命令或者脚本。例: 0 */2 * * * /sbin/service httpd restart 意思是每两个小时重启一次apache; 50 7 * * * /sbin/service sshd start 意思是每天7:50开启ssh服务; 50 22 * * * /sbin/service sshd stop 意思是每天22:50关闭ssh服务; 0 0 1,15 * * fsck /home 每月1号和15号检查/home 磁盘; 1 * * * * /home/bruce/backup 每小时的第一分执行/home/bruce/backup这个文件; 00 03 * * 1-5 find /home "*.xxx" -mtime +4 -exec rm {} /; 每周一至周五3点钟,在目录/home中,查找文件名为*.xxx的文件,并删除4天前的文件; 30 6 */10 * * ls 意思是每月的1、11、21、31日是的6:30执行一次ls命令。 Uptime:显示四部分内容。当前时间+ 已运行时间+ 当前用户连接数+ 负载均衡。负载均衡:特定时间间隔内运行队列中的平均进程数,如果每个CPU内核的当前活动进程数不大于3的话,那么系统的性能是良好的。如果每个CPU内核的任务数大于5,那么这台机器的性能有严重问题。 Last:读取/var/log/wtmp文件,列出登入系统的详细信息。 History:记录使用过的命令。普通的history命令只会根据顺序显示命令。介绍一种更友好的配置,出错后配合last或者日志能清楚的找到谁的问题。

相关主题
文本预览
相关文档 最新文档