当涉及学习 Linux 时,了解其基本原理和核心概念是至关重要的。Linux 是一种开源操作系统,广泛应用于服务器、嵌入式系统以及个人计算机中。它的灵活性、稳定性和安全性使得它成为许多 IT 专业人士和开发人员的首选。
第一步:了解基本概念和特点
Linux 作为一种类 Unix 操作系统,遵循了许多 Unix 标准并引入了自己的特性。学习 Linux 首先需要了解以下一些核心概念:
-
文件系统:在 Linux 中一切皆文件,包括硬件设备、目录和数据。理解 Linux 的文件系统布局和文件权限是至关重要的。
首先Linux没有盘符根目录就是 /
- /bin:存放系统命令(可执行文件)。
- /sbin:管理员可执行文件
- /lib*:可执行文件依赖的类库
- /etc:存放系统配置文件。
- /home:用户的家目录。
- /dev:设备文件,用于访问硬件设备。
- /proc:虚拟文件系统,包含当前运行进程的信息。
- /var:存放经常变化的文件,如日志文件和邮件。
- /tmp:临时文件目录。
- /usr:用户程序目录,包含用户安装的软件。
Linux 文件权限
在 Linux 中,每个文件和目录都有权限设置,用于控制对其的访问。权限分为三个类别:所有者(owner)、所属组(group)和其他人(others)。对于每个类别,权限可以分为读(r)、写(w)和执行(x)权限。
- r:读权限,允许查看文件内容或目录中的文件列表。
- w:写权限,允许修改文件内容或在目录中创建、删除文件。
- x:执行权限,对文件表示允许执行,对目录表示允许进入该目录。
权限设置通常以数字形式表示,如 755 或 rwxr-xr-x。数字表示为三组,分别代表所有者、所属组和其他人的权限。其中,r表示读权限,w表示写权限,x表示执行权限。因此,755 表示所有者具有读、写、执行权限,而所属组和其他人具有读、执行权限。
ls -l 列表显示详细信息 可以用这个指令在终端查看
-
Shell 和命令行:熟悉 Linux 的 Shell 和命令行界面,掌握常用的命令和管道操作。
在 Linux 系统中,Shell 是用户与操作系统内核之间的接口,用户可以通过 Shell 提供的命令来与系统进行交互和操作。掌握常用的 Shell 命令和管道操作是非常重要的,可以提高工作效率和系统管理能力。
常用 Shell 命令
以下是一些常用的 Linux Shell 命令及其功能:
- ls:列出目录内容。可选 -a 显示所有隐藏文件 (.开头),-l 列表显示详细信息
- pwd:显示当前工作目录。
- cd:切换工作目录。
可选
cd.. 上级路径,
cd 路径名 当前路径下的文件夹
cd ~ 回到当前用户家目录
cd - 回到上一级 从哪来的回哪去
- mkdir:创建新目录。 可选 -p 创建多级目录
- redir: 删除空目录
- touch:创建文件
- rm:删除文件或目录。可选 -r 递归删除 , -f 忽略错误 ,rm -rf / 删库跑路
- cp:复制文件或目录。 cp 源文件 新文件(如果是目录,名字不变)
- mv:移动文件或目录。mv 源文件 新文件 (如果是目录,名字不变)
- cat:查看文件内容。可以和head tail more等使用
- head:默认查看前10行 -n 查看前n行
- tail:默认查看后10行 -n 查看后n行
- more:每次查看一屏信息 -n 一屏几个 ,空格 翻页,q 退出
- wc: -l 行数 -w 单词数目 -c 字节数
- grep:在文件中查找指定文本。 -n 显示行号
- echo:输出文本。
- chmod:修改文件权限。
- chown:修改文件所有者和所属组。
- ps:显示进程状态。
- kill:终止进程。
- tar:打包和解压文件。 -f 归档名 -c 创建归档 -t 查看归档文件 -x 解开归档 -v 查看进度
- gzip:压缩解压 -d 解压 -r 压缩
- find:查找文件。
-
管道操作
在 Linux 中,管道操作(
|
)可以将一个命令的输出传递给另一个命令作为输入,从而实现多个命令的组合操作。例如
ls -l | grep ".txt"
上述命令会列出当前目录下的所有文件,并使用 grep
过滤出包含 ".txt" 的文件。
Shell 脚本
除了单独执行命令外,用户还可以编写 Shell 脚本来批量执行一系列命令。Shell 脚本通常以 .sh
结尾,可以包含变量、条件语句、循环等,提高了自动化管理和任务处理的能力。
实用技巧
- 使用 Tab 键补全命令或文件名,可以节省时间并减少错误。
- 使用
Ctrl + C
终止当前命令的执行,Ctrl + D
退出 Shell。 - 使用
man
命令查看命令的手册页,了解命令的使用方法和选项。 - 学习并熟练使用通配符(如
*
和?
)可以方便快捷地匹配文件名。
用户和权限:学习 Linux 用户管理和权限控制,包括用户组、权限设置等内容。
在 Linux 系统中,用户管理和权限控制是非常重要的,它们帮助我们管理系统资源、保护文件安全并限制对系统的访问。以下是有关 Linux 用户管理和权限控制的基本知识:
用户和用户组
- 用户(User):Linux 系统中的每个用户都有一个唯一的用户名和用户 ID(UID)。用户可以登录系统,并根据其权限执行各种操作。每个用户都有自己的主目录,用于存储个人文件和配置。
- 用户组(Group):用户组是将用户组合在一起的逻辑概念。每个用户可以属于一个或多个用户组。用户组可以作为权限分配的单位,使得一组用户可以共享相同的权限。
用户管理
- 添加用户:使用
useradd
命令添加新用户,例如sudo useradd username
。可以使用passwd
命令设置用户密码。 - 删除用户:使用
userdel
命令删除用户,例如sudo userdel username
。可以选择是否同时删除用户的主目录。 - 修改用户:使用
usermod
命令修改用户属性,例如sudo usermod -aG groupname username
将用户添加到指定用户组中。 - 切换用户:使用
su
命令可以在当前会话中切换到其他用户,例如su - username
。 - 查看用户:使用
id
命令查看当前用户信息,例如id username
。使用who
或w
命令查看当前登录用户。
用户组管理
- 添加用户组:使用
groupadd
命令添加新用户组,例如sudo groupadd groupname
。 - 删除用户组:使用
groupdel
命令删除用户组,例如sudo groupdel groupname
。 - 修改用户组:使用
groupmod
命令修改用户组属性,例如sudo groupmod -n newgroupname oldgroupname
修改用户组名。 - 查看用户组:使用
cat /etc/group
命令查看所有用户组信息。
文件和目录权限
- Linux 中的每个文件和目录都有所有者、所属组和其他人三种权限类别。可以使用
chmod
命令设置权限,例如sudo chmod 755 filename
。 - 权限类别包括读(r)、写(w)和执行(x)权限。数字形式的权限表示为三个八进制数,分别表示所有者、所属组和其他人的权限。例如
755
表示所有者具有读、写、执行权限,而所属组和其他人具有读、执行权限。
超级用户和 sudo
- 超级用户(Superuser):Linux 系统中有一个特殊的用户,称为超级用户(也称为 root 用户)。超级用户具有系统上的最高权限,可以执行系统范围的操作。但出于安全性考虑,应该避免在常规操作中使用超级用户。
- sudo:sudo 是一种授权机制,允许普通用户在需要时以超级用户的身份执行特定命令。使用
sudo
命令可以将命令的执行权限提升为超级用户,例如sudo apt update
。
如果这篇文章对你有帮助,还请帮忙点赞关注。您的支持是我更新的最大动力!