Linux系统安装与基础命令实践指南

1、对于初学者的一个实践练习:在你的个人电脑上安装Linux系统。阅读你所使用发行版的安装手册和/或《安装指南》,然后进行安装。

实践练习:在个人电脑上安装Linux系统

这是一个针对初学者的实践练习,旨在指导他们在个人电脑上安装Linux系统。

操作要求

在进行本练习前,请务必完成以下准备工作:

阅读对应发行版的安装手册; 或者阅读《安装指南》。

完成上述阅读任务后,再根据所学内容进行实际操作。

2、这个发行版能在我的硬件上运行吗?

当对硬件兼容性有疑问时,可查看 http://www.tldp.org/HOWTO/Hardware-HOWTO/index.html 。

3、安装时是选择安装基本工作站、服务器,还是自己选择特定的软件包呢?

标准安装过程允许用户在不同的基本设置之间进行选择,例如:

安装一个日常使用和开发所需的所有软件包的工作站 安装一个可以选择不同网络服务的服务器

此外,高级用户可以在初始安装过程中选择他们想要的任何软件包组合。

4、判断当前是在文本模式还是图形模式下工作。

若整个屏幕为黑色,显示(大多数情况下为白色)字符,且登录时需在输入用户名后按回车键,输入密码时无显示,那就是在 文本模式
若有图形界面、可通过鼠标点击按钮等操作,则是在 图形模式

5、请说明在不同模式下如何进行注销(退出登录)操作以及如何判断注销成功

在图形模式下,要从系统断开连接,需要关闭所有终端窗口和其他应用程序,然后点击注销图标或在菜单中找到“注销”选项。

在文本模式下,通过输入“
logout
”命令并按回车键来完成注销。

当再次看到登录屏幕,要求输入用户名和密码时,说明注销成功。

6、使用ls命令列出目录内容,你会看到什么?

会看到当前工作目录中的文件列表,可能包括文件和目录的名称。 使用不同选项还能看到文件类型、权限、大小、inode编号、创建日期和时间、所有者以及链接数量等信息。 例如:
ls -a
会显示通常隐藏的文件。
ls -l
会显示文件的详细属性等。 如示例中: 用
ls
命令看到
Albums/

Radio/

Singles/

gene/

index.html
等。 用
ls -a
命令看到
./

../

.thumbs

Albums/
等。

7、使用ls命令列出目录内容,列出的内容通常是什么?

使用
ls
命令列出的内容通常是当前工作目录或指定目录下的文件和子目录的名称。此外,结合不同选项,还能显示文件类型、权限、大小、inode 号、创建日期和时间、所有者以及链接数量等信息。

8、显示此目录的内容。

可以使用
ls
命令来显示目录内容,例如:


ls

或者使用包含更多选项的组合,如:


ls -al

ls -latr

9、使用 cd 命令返回你的主目录。

可直接输入不带参数的 cd 命令,即 cd ,这样会回到主目录。

10、使用 –help 选项显示 cat 程序的帮助信息。使用对输出行编号的选项来统计 /etc/passwd 文件中列出的用户数量。

显示
cat
程序帮助信息可使用命令:


cat --help

统计
/etc/passwd
文件中列出的用户数量可使用命令:


cat -n /etc/passwd | wc -l

(注:
-n
选项用于对所有输出行编号,
wc -l
用于统计行数)

11、阅读关于ls命令的手册页

在终端输入
man ls
并按回车键,即可查看关于
ls
命令的在线系统手册页。

手册页通常包含以下标准部分:

名称 简介 描述 选项

浏览时可使用以下操作:

空格键 翻到下一页 按 b 键返回上一页 想提前退出可按 q

12、你将如何了解更多关于 cd 命令的信息?

可以使用 man cd 或 info cd 命令来了解更多关于 cd 命令的信息。

13、阅读
ls --help
并进行尝试。

在 Linux 系统的终端中输入
ls --help
命令,该命令会显示
ls
命令的帮助信息,包含其各种选项及使用说明。阅读完帮助信息后,你可以根据这些信息使用
ls
命令,比如输入
ls -l
以长格式显示当前目录下的文件和文件夹等。

14、显示你的搜索路径。

可以使用命令
echo $MANPATH
显示 man 页面的搜索路径,使用
echo $PATH
显示命令的搜索路径等。不同变量对应不同的搜索路径,如示例中
debby:~> echo $MANPATH
输出
/usr/man:/usr/share/man:/usr/local/man:/usr/X11R6/man:/opt/FlightGear/man

15、输入例如“export PATH=blah”来导出一个无意义的路径,然后尝试列出目录内容。

在命令行输入:


export PATH=blah

来改变环境变量
PATH
的值为无意义的
"blah"

之后可以使用:


ls

命令来尝试列出当前目录的内容,由于
PATH
设置异常,可能会出现找不到
"ls"
命令的提示。

16、进入 /var 目录下的 tmp 目录。

可使用命令 cd /var/tmp 进入该目录。

17、现在仅用一个命令进入 /usr 下的 share 目录,再进入 doc 目录,你当前的工作目录是什么?

/usr/share/doc

18、切换到 /proc 目录。

可使用命令
cd /proc
切换到 /proc 目录。

19、切换到 /etc 目录

使用命令 cd /etc 可以切换到 /etc 目录。

20、你的系统上定义了多少个用户?不要手动计数,让计算机为你完成!

使用
cat --number /etc/passwd | wc -l
命令可以让计算机统计
/etc/passwd
文件中的用户数量。

21、切换到 /usr/share/doc 目录。

使用命令 cd /usr/share/doc 可以切换到该目录。

22、请列举三个随GNU coreutils软件包附带的程序。

ls、cat、chmod

23、在你的主目录下创建一个新目录。

可使用
mkdir ~/新目录名
命令来创建。其中
~
代表主目录,需将“新目录名”替换为你想要的目录名称。

24、切换到你的主目录。创建一个新目录,并将 /etc 目录下的所有文件复制到该新目录中。确保你也复制了 /etc 子目录中的文件和目录!(递归复制)

在命令行中依次执行以下命令:


cd ~
mkdir new_directory
cp -r /etc/* new_directory

(其中
new_directory
是你创建的新目录名,可根据实际情况修改)

25、在你的主目录下创建一个指向 /var/tmp 的符号链接。检查它是否真的有效。

可以使用以下命令在主目录下创建指向
/var/tmp
的符号链接:


ln -s /var/tmp ~/var_tmp

要检查其是否有效,可使用
ls -l
命令查看主目录下是否存在该符号链接,还可通过该符号链接访问
/var/tmp
来验证。

26、标准文件创建模式是什么?

在创建新文件或目录时,在应用掩码之前,新目录的权限为
777

rwxrwxrwx
,普通文件为
666

rw-rw-rw-
。掩码值会从这些默认权限中减去。例如,若掩码值为
(0)002
,目录默认权限为
775
,文件为
664

27、将 /etc 的所有权更改为你自己的用户和组。

可以使用以下命令将
/etc
的所有权更改为自己的用户和组,假设你的用户名是
yourusername


chown -R yourusername:yourusername /etc

不过需要注意,
/etc
是系统重要目录,随意更改所有权可能导致系统出现严重问题,操作前请谨慎考虑。

28、更改~/.bashrc文件的权限,使得只有你和你的主组可以读取它。

可以使用命令
chmod 640 ~/.bashrc
来实现,该命令会让文件所有者有 读写权限 ,所属主组有 只读权限 ,而其他用户则 完全没有访问权限 ,满足只有你和主组可以读取的要求。

29、在一个终端中运行top命令,同时在另一个终端中进行练习,应该如何操作?

具体操作步骤如下:

打开两个终端窗口; 在其中一个终端输入
top
命令并回车以运行该命令; 在另一个终端中进行相关练习。

30、运行 ps 命令。

ps 命令用于报告进程状态。可通过在终端输入 ps 并回车来运行该命令。

31、在图形模式下,先在前台启动xclock程序,然后让它在后台运行,最后使用kill命令停止该程序。

在图形模式的终端中,可按以下步骤操作:

在前台启动
xclock
程序:直接输入
xclock
并回车。 让
xclock
在后台运行:按下
Ctrl + Z
将程序暂停,然后输入
bg
命令让程序在后台继续运行。 使用
kill
命令停止程序:
– 先使用
ps -ef | grep xclock
查找
xclock
程序的进程ID,假设为
PID

– 然后输入
kill -15 PID
(先尝试发送
SIGTERM
信号)。
– 若程序未停止,可输入
kill -9 PID
发送
SIGKILL
信号强制停止。

32、直接在后台运行 xcalc 程序,以便释放发出命令的终端的提示符。

在终端输入命令:xcalc & 即可将 xcalc 程序直接在后台运行,释放终端提示符。

33、根据 /proc 中属于你 UID 的进程条目,你将如何确定这些进程实际代表什么?

可以使用
ps
命令来查看进程信息,该命令有多个选项,可组合使用以显示不同的进程属性。

例如,若要查看特定用户拥有的所有进程,可以使用:


bash ps -ef | grep username

若要查看进程名为
bash
的所有进程,可以使用:


bash ps auxw | grep bash

若不想显示
grep
命令本身的进程,可以使用
pgrep
命令。

此外:


top
程序可更精确地查看进程信息。
pstree
命令可可视化进程之间的关系。

34、你的系统已经运行了多长时间?

可以使用uptime命令来查看系统已经运行的时长。

35、使用 sleep 命令创建一个提醒,提示你的意大利面将在十分钟后煮好。

(sleep 600; echo “Pasta is ready.”) &

36、创建一个 at 任务,在半小时内将你家目录中的所有文件复制到 /var/tmp。你可能需要在 /var/tmp 中创建一个子目录。

以下是完成该任务的步骤:


/var/tmp
中创建子目录,例如:

bash mkdir /var/tmp/mybackup

使用
at
命令设置半小时后执行复制任务:

bash echo 'cp -r ~/* /var/tmp/mybackup' | at now + 30 minutes

37、创建一个 cron 任务,在周一至周五的午餐时间执行此任务。

要创建一个在周一至周五午餐时间执行的 cron 任务,假设午餐时间是中午 12 点,可使用以下格式的 crontab 条目:


0 12 * * 1-5 [要执行的命令]

例如,如果要执行一个名为
lunch_task.sh
的脚本,crontab 条目为:


0 12 * * 1-5 /path/to/lunch_task.sh

可以使用
crontab -e
命令编辑当前用户的 crontab 文件,并添加上述条目,保存退出后新的 crontab 会自动安装,无需重启 cron 守护进程。

38、检查打印机和网络主机是否正常工作的方法有哪些?

检查操作指南

打印机检查

作业 ID 不在输出且不在打印机上

联系系统管理员。

作业 ID 在输出中

检查打印机是否正在打印:
正在打印 :等待。 未打印
1. 检查打印机是否有纸。
2. 检查电力和数据网络的物理连接。
3. 若无问题,尝试重启打印机并咨询系统管理员。

网络主机检查

使用以下命令进行排查:


ping
命令:检查主机是否存活。


traceroute
命令:检查数据包到网络主机的路由。
whois
命令:查询特定域名信息。

39、将date命令的输出放入一个文件中,再将ls命令的输出追加到该文件。把这个文件发送到你的本地邮箱(只需指定用户名,无需指定<@域名>)。使用Bash时,成功后会收到新邮件通知。

以下是实现该需求的命令步骤:


date
命令的输出放入一个文件,如

bash date > file.txt


ls
命令的输出追加到该文件,即

bash ls >> file.txt

把文件发送到本地邮箱,可用

bash cat file.txt | mail -s 'File Content' username

其中
username
替换为你的本地邮箱用户名。

40、如何启动 Vim 教程和 Emacs 自主学习教程?

在终端会话中输入
vimtutor
启动 Vim 教程并开始学习。或者,你也可以启动 Emacs,然后依次按下
Ctrl+H

T
来调用 Emacs 自主学习教程。

41、在你的主目录下创建一个目录,并将脚本移动到新目录中。将这个新目录永久添加到你的搜索路径中。测试是否可以在不指定脚本实际位置路径的情况下执行该脚本。

以下是完成该任务的步骤:

创建新目录:在主目录下创建一个新目录,可使用命令
mkdir ~/new_directory

移动脚本:将脚本移动到新目录,假设脚本名为
script.sh
,使用命令
mv ~/script.sh ~/new_directory

永久添加到搜索路径:编辑
~/.bashrc

~/.bash_profile
文件,添加
export PATH=$PATH:~/new_directory
,然后执行
source ~/.bashrc

source ~/.bash_profile
使更改生效。

测试脚本执行:直接输入脚本名
script.sh
,若能正常执行,说明已可在不指定路径的情况下执行脚本。

42、在你的主目录中创建子目录来存储各种文件,例如创建一个名为music的目录来存放音频文件,创建一个名为documents的目录来存放你的笔记等等,并使用这些目录。

可以使用
mkdir
命令在主目录创建子目录。例如:要创建
music

documents
目录,可使用如下命令:


mkdir ~/music
mkdir ~/documents

若要一次性创建多级目录,可使用
-p
选项,如创建
~/documents/notes
目录,命令为:


mkdir -p ~/documents/notes

之后就可以将相应文件移动到这些目录中,移动文件可使用
mv
命令,如将当前目录下的
audio_file.mp3
移动到
music
目录,命令为:


mv audio_file.mp3 ~/music


note.txt
移动到
documents
目录,命令为:


mv note.txt ~/documents

43、创建一个别名 lll,其实际执行的命令为 ls -la。

在 Linux 系统中,可以使用以下命令创建别名:


alias lll='ls -la'

如果希望该别名在每次登录时都生效,可以将此命令添加到用户主目录下的
.bashrc

.bash_aliases
文件中。

44、挂载一张数据光盘,比如 Linux 安装光盘,然后查看一下内容。当你不再需要它时,卸载该光盘。

挂载光盘的方法

大多数系统在光盘插入驱动器时,自动挂载守护进程会在开机时启动,会自动完成挂载。

若未自动挂载,可在终端窗口中执行挂载命令,如:


mount /dev/cdrom /mnt/cdrom

有些系统只有 root 用户能挂载可移动介质,取决于系统配置。还可以尝试在桌面的光盘图标上右键点击来挂载。

可通过执行
mount
命令且不带参数来检查是否挂载成功,如:


[david@jupiter ~] mount | grep cdrom

卸载光盘的方法

要确保光盘的文件系统未被使用,比如不在挂载点(如
/mnt/cdrom
)的子目录中,可通过输入
cd
(不带参数)回到主目录。

之后可以使用以下命令卸载光盘:


umount /mnt/cdrom


eject cdrom

45、使用lp命令打印测试页。

可在命令行使用
lp file(s)
的格式来打印文件,若要打印测试页,可将测试页文件作为参数替换
file(s)
,例如:


lp test_page_file

同时该命令可从管道读取内容,也能使用以下方式打印命令输出:


command | lp

还可通过添加选项来调整页面布局、副本数量、打印机选择、纸张大小等,具体可查看相关手册页。

46、使用tar命令在/var/tmp目录下为你的主目录创建一个备份副本。然后使用gzip或bzip2进一步压缩该文件。制作一个干净的tar文件,即解包时不会造成混乱。

可按以下步骤操作:

使用
tar
命令 创建主目录的tar包:


bash tar -cvf /var/tmp/home_backup.tar ~

若使用
gzip
压缩:


bash gzip /var/tmp/home_backup.tar

压缩后文件名为:
/var/tmp/home_backup.tar.gz

若使用
bzip2
压缩:


bash bzip2 /var/tmp/home_backup.tar

压缩后文件名为:
/var/tmp/home_backup.tar.bz2

47、格式化一张软盘,并将你主目录中的一些文件复制到上面。与另一位学员交换软盘,并将对方软盘上的文件恢复到你的主目录中。

可按以下步骤操作:

使用
fdformat
命令对软盘进行低级格式化,如:

fdformat /dev/fd0H1440

使用
mformat
命令为低级格式化后的软盘添加 MS-DOS 文件系统;

使用
mcopy
命令将主目录中的文件复制到软盘,如:

mcopy ~/your_file /dev/fd0

与其他学员交换软盘;

使用
mcopy
命令将对方软盘上的文件恢复到自己的主目录,如:

mcopy /dev/fd0/your_file ~/

48、对软盘进行 DOS 格式化。使用 mtools 在上面放置和删除文件。

可以使用
mformat
命令(来自
mtools
包)创建与 DOS 兼容的软盘,之后使用
mcopy

mdir
等 m 命令来放置和删除文件。

示例:

先使用
fdformat
进行低级格式化,如:

fdformat /dev/fd0H1440

再使用
mformat
进行 DOS 格式化;

然后用
mcopy
放置文件,用
mdel
删除文件。

49、如果你有任何 USB 存储设备,尝试在上面存放一个文件。

可按以下步骤操作:

首先将 USB 存储设备连接到系统。 使用
mount
命令将其挂载到文件系统,如:

mount /mnt/usb
然后使用
cp
命令将文件复制到挂载点,如:

cp file.txt /mnt/usb
操作完成后,使用
umount
命令卸载 USB 存储设备,如:

umount /mnt/usb

50、使用 rsync 将你的主目录复制到另一个本地或远程文件系统。

首先,若目标是 USB 存储设备,需先挂载设备,可能要以 root 身份操作:

创建挂载点:

bash mkdir /mnt/usbstore

挂载设备:

bash mount -t vfat /dev/sda1 /mnt/usbstore

要确保系统安装了 USB 支持,可通过
dmesg
检查
/dev/sda1
是否为要挂载的设备。

然后可开始实际备份,例如备份
/home/karl
目录。

若目标是其他本地或远程文件系统,可使用
rsync
命令进行同步复制:

示例命令:

bash rsync -avz /home/your_username /path/to/remote_or_local_destination

参数说明:

-a
表示归档模式

-v
表示详细模式

-z
表示压缩传输

51、当把文件存放在网络服务器上时,最好对它们进行加密。制作一个主目录的 tar 存档并对其进行加密。

可按以下步骤操作:

使用
tar
命令制作主目录的存档,如

bash tar -cvf home_backup.tar /home/your_username

使用
gpg
命令生成密钥对,命令为

bash gpg --key-gen

按提示操作;

使用生成的密钥对存档文件进行加密,如

bash gpg -e -r your_email_or_key_id home_backup.tar

充值后会生成一个
.gpg
后缀的加密文件。

52、显示你的工作站的网络信息:IP地址、路由、名称服务器。

可以使用以下命令来显示相关信息:

显示IP地址:使用
ip addr show
命令。 显示路由信息:可以使用
netstat -nr
命令,也可以使用
ip route show
命令。 显示名称服务器信息:查看
/etc/resolv.conf
文件,该文件包含域名和要联系的名称服务器。

53、假设没有可用的 DNS。你会怎么做才能不用每次都输入 IP 地址来访问邻居的机器?

可以在
/etc/hosts
文件中添加邻居机器的 IP 地址和对应的主机名。例如,若邻居机器 IP 为
192.168.52.12
,主机名为
neighbor
,就在
/etc/hosts
文件中添加:


192.168.52.12 neighbor

这一行。这样就可以通过主机名来访问邻居机器,而不必每次都输入 IP 地址。

54、如何为文本模式浏览器(如links)永久存储代理信息?

若有代理服务器名称和端口,可将类似如下内容添加到
~/.bashrc
文件中:


export http_proxy=http://username:password@proxy_server_name:port_number

例如:


export http_proxy=http://willy:Appelsi3ntj3@proxy:80

若无需用户名和密码,省略
@
及其前面的所有内容。

55、你的机器是否运行 Web 服务器?如果没有,让它运行起来。检查日志文件!

需确认机器是否运行 Web 服务器,若未运行则启动它并检查日志文件。

56、设置 SSH 密钥,以便无需输入密码即可连接到邻居的机器。


可使用 `ssh-keygen` 命令生成、管理和转换 SSH 认证密钥。它能为 SSH 协议版本 1 创建 RSA 密钥,为 SSH 协议版本 2 创建 RSA 或 DSA 密钥。

通常,希望使用 RSA 或 DSA 认证的 SSH 用户需运行一次该命令,在 `$HOME/.ssh/identity`、`id_dsa` 或 `id_rsa` 中创建认证密钥。系统管理员也可使用此命令为系统生成主机密钥。

该程序通常会生成密钥,询问存储私钥的文件,公钥会存储在同名但附加 `.pub` 的文件中,同时会要求输入密码短语。密码短语可以为空,表示无密码短语(主机密钥必须有一个空的密码短语),也可以是任意长度的字符串。

若密码短语丢失或遗忘,必须生成新密钥并复制到相应的公钥中。所有信息可在 `man` 或 Info 页面中找到。

57、创建一个每月提醒你更改密码的重复任务,最好也提醒更改root密码。

可以使用
crontab
来创建该重复任务。编辑
crontab
文件(使用
crontab -e
命令),添加如下条目以提醒普通用户更改密码:


00 00 1 * * mail -s "Password change reminder" your_username

对于 root 用户,可以添加类似条目:


00 00 1 * * mail -s "Root password change reminder" root

上述条目中,
00 00 1 * *
表示每月 1 号 0 点 0 分执行任务,
mail -s
用于发送提醒邮件,
your_username
需替换为实际用户名。

© 版权声明

相关文章

暂无评论

none
暂无评论...