目录
第六部分内容一样,前者为方便快速查阅,后者提供相对详细介绍,可根据需求进行快速访问:
一、为什么要学 Linux
Linux 是一个开源的操作系统内核,它因其稳定性、安全性和灵活性而广泛应用于服务器、桌面计算机、移动设备和嵌入式系统。学习 Linux 不仅能帮助我们更好地理解计算机系统的工作原理,还能让我们掌握强大的工具和命令,以提高工作效率。
二、目录介绍
熟悉 Linux 文件系统的层次结构,是每个 Linux 用户的必修课。
Linux 文件系统采用层次结构,以 /root
为根目录。了解基本的目录结构对于 Linux 用户至关重要:
-
/home
:用户个人文件夹 -
/etc
:系统配置文件 -
/var
:可变数据,如日志文件 -
/usr
:用户程序和数据 -
/opt
:可选软件包 -
/bin
和/sbin
:系统二进制文件
三、vi / vim 编辑器
Vim,这个编辑器中的“瑞士军刀”,将是你的编程之路上的强大助手。
Vim 是一个高度可配置的文本编辑器,它广泛应用于 Linux 系统。Vim 提供了多种模式,包括正常模式、插入模式和命令模式,允许用户以高效的方式编辑文本。
四、网络配置
无论是修改 IP 地址,还是配置主机名,Linux 都提供了强大的命令来帮助你轻松完成。
4.1 修改 IP 地址
使用 ifconfig
或 ip addr
命令可以修改网络接口的 IP 地址。
4.2 配置主机名
4.2.1 修改主机名称
通过 hostname
命令可以设置系统的主机名。
4.2.2 修改 hosts 映射文件
编辑 /etc/hosts
文件可以映射域名到特定的 IP 地址。
五、系统配置
从服务管理到系统启动,Linux 的系统配置工具让你对系统有着完全的控制。
5.1 service 服务管理
service
命令用于启动、停止和检查系统服务的状态。
5.2 systemctl
systemctl
是 Systemd 系统管理器的命令行工具,用于管理系统和服务。
5.3 防火墙
iptables
或 firewalld
用于配置系统的防火墙规则。
5.4 关机重启命令
-
shutdown -h now
:立即关机 -
shutdown -r now
:立即重启 -
init 0
:关机 -
init 6
:重启
5.5 查看系统内核与版本
-
uname -a
:显示内核信息 -
cat /etc/*release
:显示发行版信息
六、常用命令
6.1 文件目录类
-
pwd
:显示当前工作目录的绝对路径 -
ls
:列出目录的内容 -
cd
:切换目录 -
mkdir
:创建新目录 -
rmdir
:删除空目录 -
touch
:创建空文件 -
cp
:复制文件或目录 -
rm
:删除文件或目录 -
mv
:移动或重命名文件与目录 -
cat
:查看文件内容 -
more
:分屏查看文件内容 -
less
:分屏显示文件内容 -
echo
:输出内容到控制台 -
tail
:输出文件尾部内容 -
>
和>>
:输出重定向和追加 -
ln
:创建链接 -
history
:查看历史命令
6.2 用户管理命令
-
useradd
:添加新用户 -
passwd
:设置用户密码 -
id
:查看用户信息 -
/etc/passwd
:用户信息文件 -
su
:切换用户 -
userdel
:删除用户 -
sudo
:赋予普通用户 root 权限 -
usermod
:修改用户信息 -
groupadd
:新增组 -
groupdel
:删除组 -
groupmod
:修改组信息 -
/etc/group
:组信息文件
6.3 文件权限类
-
文件属性:使用
ls -l
查看 -
chmod
:改变文件权限 -
chown
:改变文件所有者 -
chgrp
:改变文件所属组
6.4 搜索查找类
-
find
:查找文件或目录 -
locate
:快速定位文件路径 -
grep
:过滤查找文本,常与管道符|
一起使用
6.5 压缩和解压类
-
gzip/gunzip
:压缩/解压文件 -
zip/unzip
:压缩/解压文件 -
tar
:打包文件
6.6 磁盘查看和分区类
-
du
:查看文件和目录占用的磁盘空间 -
df
:查看磁盘空间使用情况 -
lsblk
:查看设备挂载情况 -
mount/umount
:挂载/卸载文件系统 -
fdisk
:分区工具
6.7 进程管理类
-
ps
:查看当前系统进程状态 -
kill
:终止进程 -
pstree
:查看进程树 -
top
:实时监控系统进程状态 -
netstat
:显示网络状态和端口占用信息 -
crontab
:设置定时任务
六、常用命令
这部分是本文的重头戏,我们将详细介绍 Linux 中的常用命令,包括文件操作、用户管理、文件权限、搜索查找、压缩解压、磁盘管理以及进程管理等。
6.1 文件目录类
1)pwd:显示当前工作目录的绝对路径
pwd
2)ls:列出目录的内容
列出当前目录下的文件和子目录:
ls
列出包括隐藏文件的详细信息:
ls -la
3)cd:切换目录
切换到 /home/user
目录:
cd /home/user
4)mkdir:创建一个新的目录
创建名为 newdir
的新目录:
mkdir newdir
5)rmdir:删除一个空的目录
删除名为 newdir
的空目录:
rmdir newdir
6)touch:创建空文件
创建一个名为 newfile.txt
的空文件:
touch newfile.txt
7)cp:复制文件或目录
复制 file1.txt
到 file2.txt
:
cp file1.txt file2.txt
8)rm:删除文件或目录
删除名为 file1.txt
的文件:
rm file1.txt
删除目录及其内容:
rm -r directory_name
9)mv:移动文件与目录或重命名
将 file1.txt
重命名为 file2.txt
:
mv file1.txt file2.txt
10)cat:查看文件内容
查看 file.txt
的内容:
cat file.txt
11)more:文件内容分屏查看器
分屏查看 file.txt
的内容:
more file.txt
12)less:分屏显示文件内容
类似于 more
,但提供更好的导航功能:
less file.txt
13)echo:输出内容到控制台
在控制台输出文本:
echo "Hello, World!"
14)tail:输出文件尾部内容
显示 file.txt
的最后 10 行:
tail file.txt
15)> 和 >>:输出重定向
将命令的输出重定向到文件中:
ls > dirlist.txt
追加输出到现有文件:
ls >> dirlist.txt
16)ln:软链接
创建 file.txt
的软链接 link.txt
:
ln -s file.txt link.txt
17)history:查看已经执行过历史命令
查看最近执行的命令历史:
history
6.2 用户管理命令
1)useradd:添加新用户
添加新用户 newuser
:
useradd newuser
2)passwd:设置用户密码
为 newuser
设置密码:
passwd newuser
3)id:查看用户是否存在
查看 newuser
的用户 ID 和组 ID:
id newuser
4)su:切换用户
切换到 newuser
:
su newuser
5)userdel:删除用户
删除用户 newuser
:
userdel newuser
6)sudo:设置普通用户具有 root 权限
以 root
权限执行命令:
sudo command
6.3 文件权限类
1)文件属性
查看文件权限:
ls -l filename
2)chmod:改变权限
将 file.txt
的权限设置为可读写:
chmod u+rw file.txt
3)chown:改变所有者
将 file.txt
的所有者更改为 newuser
:
chown newuser file.txt
4)chgrp:改变所属组
将 file.txt
的组更改为 newgroup
:
chgrp newgroup file.txt
6.4 搜索查找类
1)find:查找文件或者目录
在当前目录及其子目录中查找名为 file.txt
的文件:
find . -name file.txt
2)locate:快速定位文件路径
查找 file.txt
的位置:
locate file.txt
确保 locate
数据库是最新的:
sudo updatedb
3)grep:过滤查找及 | 管道符
在 file.txt
中查找包含 "hello" 的行:
grep "hello" file.txt
使用管道将 grep
与其他命令结合:
cat file.txt | grep "hello"
6.5 压缩和解压类
1)gzip/gunzip:压缩
压缩 file.txt
:
gzip file.txt
解压 file.txt.gz
:
gunzip file.txt.gz
2)zip/unzip:压缩
压缩 file.txt
为 file.zip
:
zip file.zip file.txt
解压 file.zip
:
unzip file.zip
3)tar:打包
打包 file.txt
为 file.tar
:
tar cvf file.tar file.txt
解压 file.tar
:
tar xvf file.tar
6.6 磁盘查看和分区类
1)du:查看文件和目录占用的磁盘空间
查看当前目录下的磁盘使用情况:
du -sh
2)df:查看磁盘空间使用情况
查看所有文件系统的磁盘使用情况:
df -h
3)lsblk:查看设备挂载情况
列出所有可用的块设备:
lsblk
4)mount/umount:挂载/卸载
挂载 /dev/sdb1
到 /mnt
:
mount /dev/sdb1 /mnt
卸载 /mnt
:
umount /mnt
5)fdisk:分区
创建或修改磁盘分区:
sudo fdisk /dev/sdb
6.7 进程管理类
1)ps:查看当前系统进程状态
查看所有进程:
ps aux
查看特定进程:
ps -p 1234
2)kill:终止进程
立即终止进程 ID 为 1234 的进程:
kill -9 1234
3)pstree:查看进程树
以树状图显示进程:
pstree
4)top:实时监控系统进程状态
实时显示进程和资源使用情况:
top
退出 top
:
q
5)netstat:显示网络状态和端口占用信息
显示所有网络连接:
netstat -tuln
6)crontab:定时任务设置
查看当前用户的定时任务:
crontab -l
编辑当前用户的定时任务:
crontab -e
这些命令覆盖了 Linux 系统管理的许多方面,从文件操作到系统监控,再到网络配置和性能优化。掌握这些命令对于任何 Linux 用户来说都是基础且必要的。
七、软件包管理
软件包管理是 Linux 的另一大特色,它让你能够轻松地安装、更新和卸载软件。
7.1 BPM
-
RPM:Red Hat Package Manager
-
rpm -ivh
:安装软件包 -
rpm -qa
:查询已安装的软件包 -
rpm -e
:卸载软件包
-
7.2 YUM 仓库配置
YUM(Yellowdog Updater Modified)是一个基于 RPM 的软件包管理器,它提供了一种简单、快速的方法来安装、更新和管理软件包。
-
yum search
:搜索软件包 -
yum install
:安装软件包 -
yum update
:更新软件包 -
yum remove
:移除软件包 -
yum info
:显示软件包信息 -
yum clean
:清理 YUM 缓存
这篇文章提供了 Linux 系统操作的基础知识,旨在帮助初学者和有经验的用户快速回顾和掌握 Linux 的核心概念和命令。通过实践这些命令和工具,用户可以更有效地使用 Linux 系统,并解决日常工作中遇到的各种问题。