分类: LINUX
2009-02-25 21:43:15
一. 实验目的:
1. 掌握Linux各类命令的使用方法;
2. 熟悉Linux操作环境。
二. 实验内容:
练习使用Linux常用命令。
三. 实验环境:
一台已经安装好Linux操作系统的主机。
四. 实验练习:
1) 获得命令帮助
l 分别演示一下help --help man info 命令的用法;
2) 目录操作命令
l 启动计算机,利用root用户登录到系统,查看提示符。
l 用pwd命令查看当前所在的目录。
l 用ls命令列出此目录下的文件和目录。
l 列出此目录下包括隐藏文件在内的所有文件和目录并且长格式显示。
l 进入/home目录下,创建测试目录test。
l 利用ls命令列出文件和目录,确认test目录创建成功。
l 进入test目录,查看当前目录的命令,其结果为。
l 回到上一次工作目录,在删除test目录。
l cd /后,进入/home的命令。(分别用绝对路径和相对路径进入)
3) 文件操作命令
l 查看/etc/passwd文件类型。
l 利用touch命令,在/home目录创建一个新的空文件newfile。
l 利用cp命令复制系统文件/etc/profile到/home目录下,其命令为。
l 在/home中复制文件profile到一个新文件profile.bak,作为备份,其命令为。
l 用长格形式列出当前目录下的所有文件,注意比较每个文件的长度和创建时间的不同。
l 查找 /etc下的passwd这个文件。
l 查找/home目录下的所有名为profile的文件,其命令为。
l 在/home下面创建test目录,在test目录下创建目录a,在a目录下创建目录b,在b目录中创建目录c.在目录c中创建d,用一个命令完成。
l 进入c目录中。删除目录d
l 回到b目录中,然后cd ../..看看到什么目录里去了。
l 在cd ~ 回到什么目录了。
l 在cd –回到什么目录。
l 删除test子目录下的所有文件
4) 文件查看命令
l 分别用cat,more, less,head,tail查看/etc/passwd文件,看看有什么区别?
l 只看/etc/passwd的前5行内容。
l 只看/etc/passwd的后5行内容。
5) 光盘的使用
l 查看光盘的设备文件的类型。
l 在虚拟机中挂载d:\ISO下面的XP.ISO。
l 把光盘里面的sn.txt复制到/home下面去
l 卸载光盘。
6) 光盘镜像文件操作
l 把C:\Program Files\VMware\VMware Workstation下面的linux.iso文件放到cdrom中,制作成一个叫crazylinux.iso的镜像文件
l 挂载这个镜像文件,查看里面的内容。
l 卸载
l 挂载u盘,在虚拟机里不方便做这个实验,但是要了解步骤
#fdisk –l
#mount -t vfat -o iocharset=cp936 /dev/sda1 /media/cdrom
# umount /media/cdrom
7) 用户管理与组管理
l 建立帐号user01,查看/etc/passwd文件有没变化,并设置user01的密码为123456。在查看/etc/shadow文件有无变化。
l user01的主目录在什么地方。
l 查看/etc/group文件。
l 新建一个组,组名为group01,在新建一个用户user02,并指定它的组为group01
l 把user02的组更改为user01,
l 锁定user01帐号,开启user01帐号。
l 删除user01这个用户
l 删除group01这个组
8) 文件的权限属性
l 查看/etc/passwd的权限,在查看/etc/shadow的权限。
l 在/home下面新建 afile文件,查看它的权限
l 新建user02这个帐户,
l 新建group02这个组,
l 把afile的权限设置为对用户来说可读可写,对组来说可读,对其他用户来说没有任何权限
l 把afile文件的所有者更该为user02,所属组更改为group02,
补充:
1. 用户的管理
l 创建一个新用户user01,设置其主目录为/home/user01:
l 查看/etc/passwd文件的最后一行,看看是如何记录的。
l 查看文件/etc/shadow文件的最后一行,看看是如何记录的。
l 给用户user01设置密码为crazylinux。
l 再次查看文件/etc/shadow文件的最后一行,看看有什么变化。
l 使用user01用户登录系统,看能否登录成功。
l 锁定用户user01
l 查看文件/etc/shadow文件的最后一行,看看有什么变化。
l 再次使用user01用户登录系统,看能否登录成功。
l 解除对用户user01的锁定.
l 更改用户user01的帐户名为user02:#usermod –l user02 user01。
l 查看/etc/passwd文件的最后一行,看看有什么变化。
l 删除用户user02。
2. 组的管理
l 创建一个新组,stuff:#groupadd stuff。
l 查看/etc/group文件的最后一行,看看是如何设置的。
l 创建一个新帐户user02,并把他的起始组和附属组都设为stuff:#useradd –g stuff –G stuff user02。
l 查看/etc/group文件中的最后一行,看看有什么变化。
l 给组stuff设置组密码:#gpasswd stuff。
l 在组stuff中删除用户user02:#gpasswd –d user02 stuff。
l 再次查看/etc/group文件中的最后一行,看看有什么变化。
l 删除组stuff。
五. 思考题:
1、 如何查看隐含文件列表?
2、 如何将一个目录中的所有文件拷贝到另一个目录中,包括这个目录中的隐含文件。
3、 如何删除一个目录包括其中的所有文件,并且不显示任何提示信息?
4、 什么是绝对路径?什么是相对路径?如何表示?
5、 如何显示命令的路径?
六.资料补充:
useradd 命令详解
添加用户
想要对linux下面的帐号了解的话首先必须要了解的4个配置文件
[root@localhost /]# cat /etc/passwd
首先我们需要了解的是用户帐号的配置信息/etc/passwd里面的内容每个字段都以:分割,下面我们详细的看看每个字段的意思
root:x:0:0:root:/root:/bin/bash
root 用户名
x 用户密码
0 UID
0 GID
root 用户的详细信息
/root 用户的主目录
/bin/bash 登陆的shell
[root@localhost /]# cat /etc/shadow
root:$1$L1PKRf
root 帐号用户名
$1$L1PKRf
13746 最后一次修改时间
0 最短修改时间期限
99999 密码使用期限 永远不需要更改密码
7 警告天数 提前通知
空的 最大不活动天数 密码失效后帐号被禁用的等待天数
空的 失效时间
空的 保留标志
[root@localhost /]# cat /etc/group
root:x:0:root
root 组名
x 组密码
0 GID
root 该组的用户列表
[root@localhost /]# cat /etc/gshadow
root:::root
root 组名
空的 组的密码
空的 组管理员列表
root 组的成员列表
###########################################################
-c “comment” 提供关于一个新用户帐号的描述字段
[root@localhost ~]# useradd -c "Crazy linux" linux
[root@localhost ~]# vi /etc/passwd
linux:x:501:501:Crazy linux:/home/linux:/bin/bash
-d home_dir 设置帐号使用的主目录,默认在/home下面和新建的用户名一样
[root@localhost ~]# useradd -d /var/haha haha
[root@localhost ~]# vi /etc/passwd
haha:x:501:501::/var/haha:/bin/bash
-D 根改默认值(用的比较少修改/etc/login.defs)
[root@localhost /]# useradd -D -s /bin/csh
[root@localhost /]# useradd heihei
[root@localhost /]# cat /etc/passwd
heihei:x:502:502::/home/heihei:/bin/csh 默认的shell变成csh了
- e 修改密码过期时间(YYYY-MM-DD)
[root@localhost /]# useradd -e
[root@localhost /]# cat /etc/shadow
bb:!!:13805:0:99999:7::13806:
- f 指定密码失效之后等待天数,0为帐号在密码过期后立即失效,1忽视
[root@localhost /]# usermod -f 1 aa
[root@localhost /]# cat /etc/shadow
aa:!!:13805:0:99999:7:1::
- g 指定新建用户的初始化组 (组必须存在)
[root@localhost /]# useradd -g aa cc
[root@localhost /]# id cc
uid=505(cc) gid=504(aa) groups=504(aa)
-G 指定新建用户的一个所属列表
[root@localhost /]# useradd -G aa dd
[root@localhost /]# cat /etc/group
aa:x:504:dd
- m 自动创建主目录 (找/etc/skel复制)
- M 不创建新用户主目录
[root@localhost ~]# useradd -M tt
[root@localhost home]# ls
aa bb cc dd feige heihei
- n 关闭为新用户创建一个新组的缺省操作(默认情况下会创建一个与用户同名的组)
[root@localhost /]# useradd -n xx
-o 与-u 一起配合使用,创建一个用户时指定它的UID
[root@localhost /]# useradd -u 508 -o hahaha
[root@localhost /]# cat /etc/passwd
xx:x:508:100::/home/xx:/bin/bash
hahaha:x:508:508::/home/hahaha:/bin/bash
- s 为新建的帐号指定shell
[root@localhost /]# useradd -s /bin/csh mm
[root@localhost /]# cat /etc/passwd
mm:x:510:510::/home/mm:/bin/csh
-r 为新建的帐号指定一个系统UID(root 0 1~500伪用户 501~65535自定义用户)
[root@localhost /]# useradd -r gg
[root@localhost /]# cat /etc/passwd
gg:x:101:103::/home/gg:/bin/bash
usermod修改帐号(其参数与useradd基本一样)
-l 修改帐号的用户名,
-m -d 联合使用 可以把原来用户的主目录里的内容复制到新的用户目录下面
userdel 删除帐号
-r 把其主目录一起删除掉
总结:在我们创建用户的时候,系统会执行以下操作
1, 读取/etc/login.defs文件以获取创建帐号时的默认设定值
2, 在/etc/passwd和/etc/shadow文件中,基于默认创建一个新的用户条目
3, 在/etc/group文件中创建所相关新的条目
4, 在/home目录中基于用户名创建一个主目录
5, 将位于/etc/skel目录中的所有文件复制到新的主目录中