登录
首页 >  文章 >  软件教程

Linux学习笔记之二:进阶技巧分享

时间:2025-05-13 09:03:10 375浏览 收藏

Linux学习笔记之二主要介绍了Linux的基本文件系统和目录结构。文章详细阐述了Linux多数发行版使用的ext4文件系统,并提及Linux对其他文件系统如NTFS和FAT的支持。接着,文章深入探讨了Linux的目录结构,包括根目录(/)、bin目录、boot目录、dev目录、etc目录、home目录、lib目录、lost+found目录、opt目录、root目录和usr目录的具体功能和用途。此外,文章还介绍了一些实用的Linux命令,如rm、mkdir、rmdir、which、locate和find,帮助读者更好地理解和操作Linux文件系统。

基本文件系统。

1.0 ext4文件系统 Windows通常使用NTFS文件系统,早期版本使用FAT32,而DOS则使用FAT文件系统。Linux的多数发行版采用ext4文件系统。Linux也支持上述提到的文件系统。 2.0 Linux目录结构

linux学习笔记二目录结构.png

A 根目录(/),是Linux系统的顶层目录。在许多系统中,/目录是唯一的分区。如果有其他分区,必须挂载在/目录下的某个位置。 B bin目录,为命令目录,也称为二进制目录,包含重要的Shell命令的二进制可执行文件,包括Shell解释器。该目录不应包含子目录。

root@kali:/# ls -a
.   bin     dev   initrd.img      lib64       mnt   root  srv  usr      vmlinuz.old
..  boot    etc   initrd.img.old  lost+found  opt   run   sys  var
0   .cache  home  lib             media       proc  sbin  tmp  vmlinuz

C boot目录,存放系统内核文件和引导加载程序文件。

root@kali:/bin# ls -a
.              echo        mkdir           pidof                     systemd-sysusers
..             egrep       mknod           ping                      systemd-tmpfiles
bash           false       mktemp          ping4                     tar
bunzip2        fgconsole   more            ping6                     systemd-tty-ask-password-agent

D dev目录,也称为设备(device)文件目录,存放与计算机上设备(如终端、光驱、网卡等)相应的文件,包含字符文件和块文件等。

root@kali:/# cd bin/
root@kali:/bin# ls -a
.              echo        mkdir           pidof                     systemd-sysusers
..             egrep       mknod           ping                      systemd-tmpfiles
bash           false       mktemp          ping4                     systemd-tty-ask-password-agent
bunzip2        fgconsole   more            ping6                     tar

E etc目录,存放系统的大部分配置文件和子目录,比如profile等。X Window系统的文件保存在/etc/X11目录中,与网络配置相关的文件保存在/etc/sysconfig中。

root@kali:/# cd dev/
root@kali:/dev# ls -a
.                fd                  port      stdout  tty25  tty43  tty61    vcsa
..               full                ppp       tty     tty26  tty44  tty62    vcsa1
agpgart          fuse                psaux     tty0    tty27  tty45  tty63    vcsa2

F home目录,包含系统各个用户的家目录,其子目录名即为各用户名。

root@kali:/etc# ls -a
.                           gconf               miredo.conf        samba
..                          gdb                 mke2fs.conf        sane.d
adduser.conf                gdm3                modprobe.d         scalpel
...
root@kali:/etc/X11# cd ..
root@kali:/etc# cd sysconfig
bash: cd: sysconfig: 没有那个文件或目录

G lib目录存放各种编程语言库,典型的Linux包含C、C++、Python等库。/lib/modules目录包含可加载的内核模块,其它重要库文件存放在/usr/lib目录中。

root@kali:/# cd /home
root@kali:/home# ls -a
.  ..

H lost+found目录,在ext2、ext3、ext4文件系统中,当系统意外崩溃或机器意外关机时,产生的文件碎片会放在这里。系统再次启动时,fsck工具会检查此目录,并修复已损坏的文件系统。

root@kali:/lib# ls -a
.              crda        ifupdown                              lsb         terminfo
..             cryptsetup  init                                  modprobe.d  udev
console-setup  firmware    klibc-k3La8MUnuzHQ0_kG8hokcGAC0PA.so  modules     x86_64-linux-gnu
cpp            hdparm      live                    ...
root@kali:/lib# cd /usr/lib
root@kali:/usr/lib# ls -a
.                           libcdt.so.5.0.0                     libtidy.so.5
..                          libcgraph.so.6                      libtidy.so.5.2.0
accountsservice             libcgraph.so.6.0.0

I opt目录表示可选的意思,有些软件会安装在这里,某些第三方应用程序也会安装在这里。

root@kali:/# cd lost+found
root@kali:/lost+found# ls -a
.  ..

J root目录,为系统管理员的家目录。

root@kali:/# cd opt
root@kali:/opt# ls -a
.  ..  Teeth

K usr目录,是Linux系统中最大的目录。在许多系统中,该目录作为独立分区挂载,主要存放一些不经常变化的数据和系统中的应用程序。

root@kali:/# cd root
root@kali:~# ls -a
.                                             a.txt          Documents      ml.txt    .rnd
..                                            .bash_history  Downloads
root@kali:/# cd /usr
root@kali:/usr# ls -a
.  ..  bin  games  include  lib  local  sbin  share  src  var

一些比较实用的Linux命令---

Linux的哲学是,一切皆文件,甚至外部设备也可以作为文件处理。路径用/表示,与Windows下的\正好相反。

root@kali:~# rm dflx
rm: 无法删除'dflx': 是一个目录
root@kali:~# rm -rf dflx
root@kali:~# cd dflx
root@kali:~/dflx# mkdir ddd
root@kali:~/dflx# ls -a
.  ..  ddd
root@kali:~# rmdir dflx
rmdir: 删除 'dflx' 失败: 目录非空
root@kali:~# rmdir -p dflx
rmdir: 删除 'dflx' 失败: 目录非空
root@kali:~# rmdir -p dflx/ddd/
这样就可以递归删除非空目录,或者rm -rf dflx

which [选项] 命令名,用于查询命令或别名的位置。

root@kali:~# which ls
/bin/ls

locate [选项] 查找的字符串

root@kali:~# locate cp
/bin/cp
/bin/cpio
...

find [路径] 查找条件 [操作]

root@kali:~# find --help
Usage: find [-H] [-L] [-P] [-Olevel] [-D debugopts] [path...] [expression]
默认路径为当前目录;默认表达式为 -print

du [选项] [目录或者文件]

Linux操作系统基础及应用,我已经看了大约100多页,大约是一半的内容。这是我找到的一本我认为最简单、最实用的书。其它的书要么很厚,要么讲解得太深奥,要么介绍许多不常用的东西。


天下文章一把抄,我这不会侵权了吧,害怕,害怕,所以版权不属于我

到这里,我们也就讲完了《Linux学习笔记之二:进阶技巧分享》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于文件系统,根目录,ext4文件系统,Linux目录结构,实用命令的知识点!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>