文章目录
- 实验目的
- 实验内容
- 1、使用命令“cat /etc/named.conf”设置为别名named,然后再取消别名。
- 2、使用echo命令和输出重定向创建文本文件/root/nn,内容是hello,然后再使用追加重定向输入内容为word。
- 3、使用管道方式分页显示/etc/passwd的内容。
- 4、分别用文字设定法和数字设定法,对/root/ab文件设置权限,所有者为读取、写入和执行权限,同组用户为读取和写入权限,其他用户没有任何权限。
- 5、将文件/root/ab所有者更改为用户zhangsan。
- 6、将目录/root/b连同它的下级文件/root/b/cc的所有者和用户组一起更改为newuser。
- 7、使用命令创建/root/a文件的硬链接文件/root/b和软链接文件/root/c,并用ls –l命令查看输出信息的第二列(链接数)以及第五列(文件尺寸)。
实验目的
- 掌握LINUX中Shell的实用功能,命令行自动补全,命令历史记录,命令别名,管道及输入输出重定向。
- 掌握文件权限设置的方法,以及如何修改文件所有者及用户。
- 掌握LINUX下建立链接文件的方法。
实验内容
1、使用命令“cat /etc/named.conf”设置为别名named,然后再取消别名。
在Linux系统中,可以使用alias
命令来设置命令的别名,但需要注意的是,alias
设置的别名只在当前会话中有效,一旦关闭终端或者重新登录,别名就会失效。如果想要永久设置别名,需要将别名添加到用户的shell配置文件中,比如.bashrc
或.bash_profile
。
以下是如何设置和取消别名的步骤:
设置别名
-
打开终端。
-
设置别名:
你可以在终端中直接设置别名,但这个别名只会在当前会话中有效。使用以下命令:alias named='cat /etc/named.conf'
这样,当你输入
named
时,系统会执行cat /etc/named.conf
命令。 -
永久设置别名:
如果你想要每次登录时都自动设置这个别名,你需要将上述命令添加到你的shell配置文件中。对于bash shell,通常是.bashrc
文件。使用文本编辑器打开这个文件,比如使用nano
:nano ~/.bashrc
然后在文件的末尾添加:
alias named='cat /etc/named.conf'
保存并关闭文件。之后,你需要重新加载配置文件,使更改生效:
source ~/.bashrc
取消别名
-
在当前会话中取消别名:
如果你只是想在当前会话中取消别名,可以使用unalias
命令:unalias named
这将取消
named
的别名。 -
从配置文件中取消别名:
如果你之前将别名添加到了配置文件中,你需要编辑那个文件来移除别名。使用文本编辑器打开配置文件,比如.bashrc
:nano ~/.bashrc
找到添加的别名行并删除它。保存并关闭文件。然后,重新加载配置文件:
source ~/.bashrc
这样,可以设置和取消Linux中的命令别名了。
2、使用echo命令和输出重定向创建文本文件/root/nn,内容是hello,然后再使用追加重定向输入内容为word。
在Linux系统中,可以使用echo
命令结合输出重定向和追加重定向来创建和修改文本文件。下面是具体的步骤:
-
创建文本文件并写入内容:
使用echo
命令和输出重定向>
来创建一个名为/root/nn
的文件,并写入内容"hello"。输出重定向>
会创建文件(如果文件不存在)或者覆盖文件(如果文件已存在)。echo "hello" > /root/nn
-
追加内容到文本文件:
使用追加重定向>>
来向文件/root/nn
追加内容"word"。追加重定向>>
会将内容添加到文件的末尾,而不会覆盖现有内容。echo "word" >> /root/nn
完成上述步骤后,文件/root/nn
的内容将会是:
hello
word
请注意,需要有适当的权限才能在/root
目录下创建和修改文件。如果你不是root用户,你可能需要使用sudo
来执行这些命令:
sudo echo "hello" > /root/nn
sudo echo "word" >> /root/nn
使用sudo
时,系统可能会提示输入用户密码。
3、使用管道方式分页显示/etc/passwd的内容。
在Linux系统中,可以使用管道(|
)将一个命令的输出作为另一个命令的输入。如果想分页显示/etc/passwd
文件的内容,可以使用less
命令,它允许逐页浏览输出内容。以下是具体的命令:
cat /etc/passwd | less
这条命令做了以下几件事:
cat /etc/passwd
:这个命令用于显示/etc/passwd
文件的内容。|
:管道符号,它将左侧命令的输出作为右侧命令的输入。less
:这个命令用于分页显示输入的内容,允许你使用键盘上下键逐页浏览。
使用说明
- 打开
less
后,你可以使用键盘的上下箭头键来上下滚动。 - 按
q
键退出less
。
这样,你就可以方便地分页查看/etc/passwd
文件的内容了。
4、分别用文字设定法和数字设定法,对/root/ab文件设置权限,所有者为读取、写入和执行权限,同组用户为读取和写入权限,其他用户没有任何权限。
在Linux系统中,可以使用两种方法来设置文件权限:文字设定法和数字设定法。
文字设定法
文字设定法使用字母来表示权限,其中:
r
代表读取权限(read)w
代表写入权限(write)x
代表执行权限(execute)
要设置/root/ab
文件的权限,使得所有者具有读取、写入和执行权限,同组用户具有读取和写入权限,其他用户没有任何权限,可以使用以下命令:
chmod u=rwx,g=rw,o= /root/ab
这条命令的意思是:
u=rwx
:设置所有者(user)的权限为读取(r)、写入(w)和执行(x)。g=rw
:设置同组用户(group)的权限为读取(r)和写入(w)。o=
:设置其他用户(others)没有任何权限。
数字设定法
数字设定法使用数字来表示权限,其中:
- 4 代表读取权限
- 2 代表写入权限
- 1 代表执行权限
权限的数字表示是将上述权限的数字相加得到的。例如,读取(4)+ 写入(2)+ 执行(1)= 7。
要设置相同的权限,可以使用以下命令:
chmod 760 /root/ab
这条命令的意思是:
7
(4+2+1):设置所有者(user)的权限为读取、写入和执行。6
(4+2):设置同组用户(group)的权限为读取和写入。0
:设置其他用户(others)没有任何权限。
注意
由于/root/ab
位于/root
目录下,可能需要使用sudo
来执行这些命令,除非已经是root用户:
sudo chmod u=rwx,g=rw,o= /root/ab
sudo chmod 760 /root/ab
5、将文件/root/ab所有者更改为用户zhangsan。
要更改文件/root/ab
的所有者为用户zhangsan
,可以使用chown
命令。这个命令允许更改文件或目录的所有者和/或所属组。以下是具体的命令:
sudo chown zhangsan /root/ab
这条命令的意思是将/root/ab
文件的所有者更改为用户zhangsan
。
注意事项
-
权限:由于
/root/ab
文件位于/root
目录下,通常只有root用户有权限更改其所有者。因此,你需要使用sudo
来执行这个命令,除非你已经是root用户。 -
用户存在性:确保用户
zhangsan
在系统中已经存在。如果用户不存在,你需要先创建这个用户。可以使用以下命令创建用户(如果需要):sudo useradd zhangsan
-
文件路径:确保文件路径正确。如果文件路径或文件名有误,命令将无法执行。
完整示例
假设你不是root用户,以下是完整的操作步骤:
-
创建用户(如果需要):
sudo useradd zhangsan
-
更改文件所有者:
sudo chown zhangsan /root/ab
这样,你就可以成功地将/root/ab
文件的所有者更改为用户zhangsan
了。
6、将目录/root/b连同它的下级文件/root/b/cc的所有者和用户组一起更改为newuser。
要将目录/root/b
及其下级文件/root/b/cc
的所有者和用户组一起更改为用户newuser
,可以使用chown
命令的递归选项-R
来实现。以下是具体的命令:
sudo chown -R newuser:newuser /root/b
这条命令的解释如下:
sudo
:由于/root
目录通常只有root用户有权限修改,因此需要使用sudo
来获取超级用户权限。chown
:这是更改文件或目录所有权的命令。-R
:这是递归选项,意味着对指定目录及其所有子目录和文件应用相同的所有权更改。newuser:newuser
:指定新的所有者和组,这里所有者和组都是newuser
。/root/b
:指定要更改所有权的目录。
请确保newuser
用户已经存在于系统中,否则命令会报错。如果newuser
用户不存在,需要先创建这个用户,可以使用以下命令:
sudo useradd newuser
然后再执行上述更改所有权的命令。
7、使用命令创建/root/a文件的硬链接文件/root/b和软链接文件/root/c,并用ls –l命令查看输出信息的第二列(链接数)以及第五列(文件尺寸)。
在Linux系统中,创建硬链接和软链接(符号链接)是两种不同的文件链接方式。以下是如何创建它们以及如何查看链接数和文件尺寸的步骤:
创建硬链接
硬链接是直接链接到文件数据的,而不是文件名。创建硬链接的命令是ln
,使用-s
选项可以创建软链接。
要创建/root/a
文件的硬链接/root/b
,可以使用以下命令:
sudo ln /root/a /root/b
创建软链接
软链接(符号链接)更像是指向另一个文件的快捷方式。创建软链接的命令是ln
,加上-s
选项。
要创建/root/a
文件的软链接/root/c
,可以使用以下命令:
sudo ln -s /root/a /root/c
查看链接数和文件尺寸
使用ls -l
命令可以查看文件的详细信息,包括链接数和文件尺寸。链接数显示在输出信息的第二列,文件尺寸显示在第五列。
查看/root/a
、/root/b
和/root/c
的链接数和文件尺寸,可以使用以下命令:
sudo ls -l /root/a /root/b /root/c
输出示例可能如下所示:
-rw-r--r-- 2 root root 0 Sep 10 12:34 /root/a
-rw-r--r-- 2 root root 0 Sep 10 12:34 /root/b -> /root/a
lrwxrwxrwx 1 root root 8 Sep 10 12:34 /root/c -> /root/a
在这个示例中:
/root/a
和/root/b
的链接数都是2,因为/root/b
是/root/a
的硬链接,它们共享相同的数据。/root/c
是一个软链接,它的链接数是1,因为它只是一个指向/root/a
的引用。- 文件尺寸都是0,因为这些是示例,文件可能还没有写入任何数据。
请注意,由于/root
目录通常只有root用户有权限访问,因此创建链接和查看文件时需要使用sudo
。如果你不是root用户,你可能需要联系系统管理员来执行这些操作。