Linux学习笔记(四):组与权限、任务调度、磁盘管理、网络配置、进程管理
1. 组与权限
1.1 文件所有者
- 查看文件所有者:
- 使用
ls -ahl或ll命令可以查看文件的详细信息,其中包括文件所有者。
- 修改文件所有者:
- 使用
chown命令可以修改文件的所有者。例如,将/home/abc.txt文件的所有者更改为tom用户:
chown tom /home/abc.txt
- 创建用户组:
- 使用
groupadd命令可以创建新的用户组:
groupadd 组名
- 添加用户到组:
- 使用
useradd命令可以添加用户到组:
useradd -g 组名 用户名
- 迁移用户到组:
- 使用
usermod命令可以迁移用户到组:
usermod -g 组名 用户名
- 删除用户组:
- 使用
groupdel命令可以删除用户组:
groupdel 组名
- 修改文件所属组:
- 使用
chgrp命令可以修改文件的所属组:
chgrp newGroup fileName
1.2 权限的基本介绍
- 权限的基本结构
Linux 文件权限由四组数字表示:-rwxrw-r--
- 第
0位(d,-,l,c,b):文件类型l是链接d是目录c是字符设备文件,如:鼠标,键盘b是块设备,如:硬盘
- 第
1-3位:文件所有者的权限
对文件所有者的权限,通常表示为
rwx(读、写、执行)。

- 第
4-6位:同组用户权限
对所属组的权限,通常表示为
rw-。
- 第
7-9位:其他用户权限
对其他用户的权限,通常表示为
r--。

- 修改文件权限:
- 使用
chmod命令可以修改文件的权限。例如,将/home/abc.txt文件的权限更改为用户可读可写,组和其他用户可读:

chmod u=rw,g=r,o=r /home/abc.txt
- 修改文件所有者和所属组:
-
使用
chown命令可以修改文件的所有者和所属组:chown userName /home/abc.txt chown -r userName /home/test
- 修改文件所在组:
-
使用
chgrp命令可以修改文件的所属组:chgrp newGroup fileName|目录
2. 任务调度
2.1 crontab
-
crontab 是 Linux 系统中用于定时执行任务的工具。


-
案例: 每隔一分钟将时间与日期追加到
/tmp/mydate文件:# 创建一个shell脚本 vim /home/my.sh # 在里面输入 date >> /tmp/mydate cal >> /tmp/mydate # 给它权限 chmod u+x /home/my.sh # 编辑 crontab 文件 crontab -e # 添加以下内容: */1 * * * * /home/my.sh # 其中 */1 表示每分钟,* 表示分钟,* 表示小时,* 表示月份,* 表示星期 几 -
相关指令:
crontab -r:终止 crontab 任务。crontab -l:列出当前 crontab 任务。service crond restart:重启 crontab 服务。
2.2 at
-
at 是 Linux 系统中用于一次性任务调度的工具。

-
一次性任务:
-
使用
at命令可以指定执行时间,并执行指定的命令或脚本。at 时间 执行的命令|脚本
- 查看任务:
- 使用
atq命令可以查看当前等待执行的任务。 - 使用
atrm命令可以删除任务。
- 扩展:

3. 磁盘管理

3.1 查看
lsblk和lsblk -f
lsblk命令用于列出系统上的所有可挂载的块设备,包括硬盘、分区、USB 设备等。lsblk -f命令会显示更详细的信息,包括设备的文件系统类型和挂载点。
- 应用场景:
- 快速识别和确认新连接的 USB 设备。
- 查看磁盘分区信息,确定可用的磁盘空间。
3.2 挂载
-
分区
格式化分区: 在挂载之前,需要先对分区进行格式化。例如,将
/dev/sdb1分区格式化为ext4文件系统:

mkfs -t ext4 /dev/sdb1 -
创建挂载点: 创建一个目录作为挂载点,例如:
mkdir /mnt/newdisk -
挂载分区: 使用
mount命令将分区挂载到挂载点:mount /dev/sdb1 /mnt/newdisk -
应用场景:
- 将新购买的硬盘分区后挂载到系统中使用。
3.3 取消挂载
- 使用
umount命令可以取消挂载:
umount /dev/sdb1 或 umount /mnt/newdisk
应用场景:
- 当不再需要访问分区时,可以取消挂载释放资源。
3.4 挂载:永久
编辑 /etc/fstab
- 打开
/etc/fstab文件进行编辑:
vim /etc/fstab
- 在文件中添加以下内容:
/dev/sdb1 /mnt/newdisk ext4 defaults 0 0
解释:
/dev/sdb1:要挂载的分区设备文件。/mnt/newdisk:挂载点。ext4:分区格式。defaults:挂载选项,包括读写、自动挂载等。0:磁盘检查优先级。0:文件系统备份优先级。
重启系统后,分区将自动挂载。
4. 网络

4.1 指令
ifconfig
ifconfig命令用于显示和配置网络接口。
ping
ping命令用于测试网络连接。
4.2 修改静态 IP
- 打开网络配置文件:
vim /etc/sysconfig/network-scripts/ifcfg-ens33
- 修改以下配置:
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.230.129
NETMASK=255.255.255.0
GATEWAY=192.168.230.2
DNS1=14.14.14.14
说明:
BOOTPROTO=static:设置静态 IP 地址。ONBOOT=yes:在启动时自动加载网络配置。IPADDR:设置 IP 地址。NETMASK:设置子网掩码。GATEWAY:设置网关。DNS1:设置首选 DNS 服务器。
- 重启网络服务:
service network restart
4.3 主机名
查看主机名
hostname
修改主机名
- 打开
/etc/hostname文件进行编辑:
vim /etc/hostname
- 修改主机名,例如:
myserver
- 重启系统后,主机名将更新。
5. 进程管理
5.1 查看进程

ps 命令
ps是 Linux 系统中用于查看和操作进程的命令。ps -aux是最常用的命令之一,可以显示系统中所有进程的详细信息。
输出解析:
| 列表项 | 解释 |
|---|---|
| USER | 进程所有者用户名 |
| PID | 进程 ID |
| %CPU | 进程使用的 CPU 百分比 |
| %MEM | 进程使用的内存百分比 |
| VSZ | 进程使用的虚拟内存大小(KB) |
| RSS | 进程使用的物理内存大小(KB) |
| ITY | 进程状态(R 表示运行,S 表示睡眠,T 表示被跟踪,Z 表示僵尸进程等) |
| STAR | 进程的运行状态(s 表示睡眠,r 表示运行等) |
| START | 进程的启动时间 |
| TIME | 进程运行的总时间 |
| COMMAND | 进程执行的命令 |
实用技巧:
ps -ef:显示所有进程,包括用户和进程信息。ps -aux:显示所有进程,包括所有用户和进程信息。ps -ef | grep sshd:过滤显示包含特定关键词的进程。
pstree 命令
pstree命令可以将进程以树状图的形式显示,更直观地展示进程之间的关系。-p参数会显示进程的 PID。-u参数会显示进程所有者的用户名。
示例:
pstree -p
pstree -up

5.2 终止进程
kill 命令
kill命令用于终止进程。kill 进程号:终止指定 PID 的进程。
实用技巧:
kill -9 进程号:强制终止进程,即使进程没有响应信号。killall 进程名:终止所有名为指定名称的进程。
示例:
kill 1234
kill -9 1234
killall gedit
pkill 命令
pkill命令用于根据进程名终止进程。
示例:
pkill gedit
5.3 恢复进程
systemctl 命令
systemctl是用于管理系统和服务状态的命令。systemctl start sshd.service:启动 sshd 服务。systemctl restart sshd.service:重启 sshd 服务。systemctl stop sshd.service:停止 sshd 服务。
示例:
systemctl start sshd.service
systemctl restart sshd.service
systemctl stop sshd.service



















