系统管理基本上可以分为两种,一种是root(系统管理员)对linux的系统管理部分,root本身的职责就是负责整个linux系统的运行稳定,增加系统安全性,校验使用者的身份,新增使用者或删除恶意的使用者,并明确每一个在机器上的使用者权限等等。另一种就是每一个使用者(包括root)对自己文件的权限管理。因为linux是多用户多任务系统,每一个使用者都有可能将其工作的内容或是一些机密性的文件放在Linux工作站上,所以对每个文件或是目录的归属和使用权,都要有非常明确的规定。下面我就按管理员和一般用户分类来介绍基本的系统管理命令。
管理员使用的系统管理指令
adduser命令
新增使用者账号的命令,如果你想新增一个叫做uu的用户,那么需在控制台下输入:
adduser uu
这样就增加了一个名字为uu的用户,要注意这里对大小写是敏感的。另外,新增的用户是没有口令的,你还应当为用户设置口令或者是吩咐用户在第一次登录系统的时候为自己设置口令。
passwd命令
这个命令可以修改特定用户的口令,使用格式是:
passwd 用户名
这是,系统会提示你输入新密码,你输入第一遍后,还要输入第二遍进行确认。输入两遍相同的密码之后,系统就接受了新的密码。如果这个命令是一般用户来使用的话,那就只能改变它自己的密码。
find,whereis,locate命令
这三个命令都是用来查找文件的,使用格式是:
find 路径名称 -name 文件名 参数 whereis 文件名 locate 文件名
一般来说,find
命令功能最为强大,但是对硬件的损耗也是最大的,当你使用find去查找你个文件时,你会发现硬盘等在不停的闪动,这就意味着你的硬盘可能会比别人的少用个三四年。当你使用whereis或locate去查找文件时,你会发现硬盘却是安安静静的,这是因为这两个命令是从系统的数据库中查找文件,而不是去拼命的读硬盘。所以,如果平常你只是想找一些笑文件的话,使用whereis
或locate
就可以了,如果你是要进行系统管理的工作,那么使用find再加上一些参数就可以满足你的要求了。
su命令
这个命令可以让普通用户变成具有管理员权限的超级用户(superuser),只要它知道知道管理员的密码就可以。多用户多任务系统的强调的重点之一就是系统的安全性,所以应避免直接使用root身份登录系统去做一些日常性的操作,因为时间一久root密码就有可能被知道而危害到系统安全。所以平常应避免用root身份登录,即使要管理系统,也请尽量使用su
指令来临时管理系统,然后记住定期的更换root密码。
假如你现在是以一个普通用户的身份登录系统,现在你输入:
su
系统会要求你输入管理员的口令,当你输入正确的密码后,就可以获得全部的管理员权限,这是你就是超级用户(superuser)。但你执行完各种管理操作以后,只要输入logout就可以退回到原先的那个普通用户的状态。
shutdown,halt命令
这两个命令是用来关闭linux操作系统的。
在前面我说过,作为一个普通用户是不能够随便关闭系统的,因为虽然你用完了机器,可是这时候可能还有其它的用户正在使用系统。因此,关闭系统或者是重新启动系统的操作只有管理员才有权执行。另外linux系统在执行的时候会用部分的内存作缓存区,如果内存上的数据还没有写入硬盘,就把电源拔掉,内存就会丢失数据,如果这些数据是和系统本身有关的,那么会对系统造成极大的伤害。一般,我们建议在关机之前执行三次同步指令sync
,可以用分号";"来把指令合并在一起执行,如:
sync;sync;sync
使用shutdown关闭系统的时候有以下几种格式:
shutdown (系统内置2分钟关机,并传送一些消息给正在使用的user) shutdown -h now (下完这个指令,系统立刻关机) shutdown -r now (下完这个指令,系统立刻重新启动,相当于reboot) shutdown -h 20:25 (系统会在今天的20:25关机) shutdown -h +10 (系统会在十分钟后关机)
如果在关机之前,要传送信息给正在机器上的使用者,可以加"-q"
的参数,则会输出系统内置的shutdown信息给使用者,通知他们离线。
halt命令,只要你输入halt,系统就会开始进入关闭过程,其效果和shutdown -h now
是完全一样的,我每次关机的时候都是用halt。
reboot命令
这个命令是用来重新启动系统的。
当你输入reboot
后,你就会看到系统正在将一个一个的服务都关闭掉,然后再关闭文件系统和硬件,接着机器开始重新自检,重新引导,再次进入linux系统。
普通用户使用的系统管理指令
chown命令
这个命令的作用是改变文件的所有者。
如果你有一个文件名为classment.list的文件,所有权要给于另一个账号为golden的同学,则可用chown
来实现这个操作,但是当你改变了文件的所有者以后,该文件虽然在你的Home目录下,可是你已经无任何修改或删除该文件的权限了,这一点要注意。通常会用到这个指令的时机,应该是你想让linux机器上的某位使用者到你的Home下去用某个文件是会用到。
chmod命令
这个命令用来改变目录或文件的属性,是linux中一个应当熟悉的命令。
对这个命令,使用的方法很多,这里只例出其中最常用的一种。在文件信息说过,一个文件用10个小格来记录文件的权限。前三个小格是拥有者(user)本身的权限,中间三个小格是和使用者同一组的成员(group)的权限,最后三个小格是表示其它使用者(other)的权限。现在我们用三位的2进制数来表示相应的三小格的权限,例如:
111 rwx 101 r-x 011 -wx 001 -x 100 r-
这样一来,我们就可以用三个十进制的数来表示一个文件属性位上的十个格,其中每一个十进制数大小等于代表每三格的那个三位的二进制数。例如,如果一个文件的属性是: rwxr-r--
,那么我们就可以用744来代表它的权限属性;如果一个文件的属性是:rwxrwxr--
,那它对应的三个十进制数就是774。这样一来我们就可以用这种简便的方法指定文件的属性了。例如,我想把一个文件test.list的属性设置为rwxr-x---
,那么我只要执行:
chmod 750 test.list
就可以了,对于改变后的权限,你用ls -l
就可以看到。