Linux目录结构和常用命令

时间:2022-09-20 17:56:29

http://www.cnblogs.com/JCSU/articles/2770249.html

一、Linux目录结构


你想知道为什么某些程序位于/bin下,或者/sbin,或者/usr/bin,或/usr/sbin目录下吗?例如,less命令位于/usr/bin目录下。为什么没在/bin中,或/sbin,或/usr/sbin目录中?所有这些目录之间有什么不同?

在这篇文章中,让我们回顾一下Linux的文件系统结构,并理解各上层目录的含义。

蓝色:表示目录

青色:表示链接

黑色:表示文件

Linux目录结构和常用命令

Linux目录结构和常用命令

1、/- 根
每一个文件和目录从根目录开始。
只有root用户具有该目录下的写权限。请注意,/root是root用户的主目录,这与/.不一样

2、/bin中 - 用户二进制文件
包含二进制可执行文件。
在单用户模式下,你需要使用的常见Linux命令都位于此目录下。系统的所有用户使用的命令都设在这里。
例如:ps、ls、ping、grep、cp

Linux目录结构和常用命令

3、/sbin目录 - 系统二进制文件
就像/bin,/sbin同样也包含二进制可执行文件。
但是,在这个目录下的linux命令通常由系统管理员使用,对系统进行维护。例如:iptables、reboot、fdisk、ifconfig、swapon命令

Linux目录结构和常用命令

Linux目录结构和常用命令

Linux目录结构和常用命令

4、/etc - 配置文件
包含所有程序所需的配置文件。
也包含了用于启动/停止单个程序的启动和关闭shell脚本。例如:/etc/resolv.conf、/etc/logrotate.conf

Linux目录结构和常用命令

5、/dev - 设备文件
包含设备文件。
这些包括终端设备、USB或连接到系统的任何设备。例如:/dev/tty1、/dev/usbmon0

Linux目录结构和常用命令

Linux目录结构和常用命令

6、/proc - 进程信息
包含系统进程的相关信息。
这是一个虚拟的文件系统,包含有关正在运行的进程的信息。例如:/proc/{pid}目录中包含的与特定pid相关的信息。
这是一个虚拟的文件系统,系统资源以文本信息形式存在。例如:/proc/uptime

Linux目录结构和常用命令

Linux目录结构和常用命令

7、/var - 变量文件
var代表变量文件。
这个目录下可以找到内容可能增长的文件。
这包括 - 系统日志文件(/var/log);包和数据库文件(/var/lib);电子邮件(/var/mail);打印队列(/var/spool);锁文件(/var/lock);多次重新启动需要的临时文件(/var/tmp);

8、/tmp - 临时文件
包含系统和用户创建的临时文件。
当系统重新启动时,这个目录下的文件都将被删除。

9、/usr - 用户程序
包含二进制文件、库文件、文档和二级程序的源代码。
/usr/bin中包含用户程序的二进制文件。如果你在/bin中找不到用户二进制文件,到/usr/bin目录看看。例如:at、awk、cc、less、scp。
/usr/sbin中包含系统管理员的二进制文件。如果你在/sbin中找不到系统二进制文件,到/usr/sbin目录看看。例如:atd、cron、sshd、useradd、userdel。
/usr/lib中包含了/usr/bin和/usr/sbin用到的库。
/usr/local中包含了从源安装的用户程序。例如,当你从源安装Apache,它会在/usr/local/apache2中。

10、/home - HOME目录
所有用户用home目录来存储他们的个人档案。
例如:/home/john、/home/nikita

11、/boot - 引导加载程序文件
包含引导加载程序相关的文件。
内核的initrd、vmlinux、grub文件位于/boot下。
例如:initrd.img-2.6.32-24-generic、vmlinuz-2.6.32-24-generic

12、/lib - 系统库
包含支持位于/bin和/sbin下的二进制文件的库文件.
库文件名为 ld*或lib*.so.*
例如:ld-2.11.1.so,libncurses.so.5.7

Linux目录结构和常用命令

13、/opt - 可选的附加应用程序
opt代表可选的。
包含从个别厂商的附加应用程序。
附加应用程序应该安装在/opt/或者/opt/的子目录下。

14、/mnt - 挂载目录
临时安装目录,系统管理员可以挂载文件系统。

15、/media - 可移动媒体设备
用于挂载可移动设备的临时目录。
举例来说,挂载CD-ROM的/media/cdrom,挂载软盘驱动器的/media/floppy;

16、/srv - 服务数据
srv代表服务。
包含服务器特定服务相关的数据。
例如,/srv/cvs包含cvs相关的数据。

 

【参考】

Linux Filesystem Hierarchy

Source and pre-formatted versions available 1. Linux Filesystem Hierarchy

Glossary A. UNIX System V Signals B. Sources C. About the Author D. Contributors E. Disclaimer F. Donations G. Feedback H. GNU Free Documentation License

二、常用命令

1、命令帮助
2、用户
3、SHELL
4、显示硬盘、分区、CPU、内存信息
5、网络
6、进程
7、文件 


  • 1、命令帮助

  • [root@localhost ~]#man ps

  • Linux目录结构和常用命令

  • Linux目录结构和常用命令

  •  

  • 2、用户

  • $finger username   显示用户username的信息
    $who               显示当前登陆用户
    $who am I
    $su                成为root用户
    $sudo command      以root用户身份执行
    $passwd            更改密码

  • Linux目录结构和常用命令

  •  

  •  

  • 3、SHELL

  • $history                  显示在当前shell下命令历史
    $alias                      显示所有的命令别称
    $alias new_command='command'    将命令command别称为new_command
    $env                       显示所有的环境变量
    $export var=value    设置环境变量var为value

  • Linux目录结构和常用命令

  • Linux目录结构和常用命令

  •  

  •  

  • 4、显示硬盘、分区、CPU、内存信息

  • $df -lh                            显示所有硬盘的使用状况
    $mount                           显示所有的硬盘分区挂载
    $mount partition path       挂在partition到路径path
    $umount partition            卸载partition
    $sudo fdisk -l                  显示所有的分区
    $sudo fdisk device             为device(比如/dev/sdc)创建分区表。 进入后选择n, p, w
    $sudo mkfs -t ext3 partition   格式化分区patition(比如/dev/sdc1)
                                           修改 /etc/fstab,以自动挂载分区。增加行:
                                           /dev/sdc1  path(mount point) ext3 defaults 0 0
    $arch                            显示架构
    $cat /proc/cpuinfo          显示CPU信息
    $cat /proc/meminfo         显示内存信息
    $free                             显示内存使用状况

  • Linux目录结构和常用命令

  • Linux目录结构和常用命令

  • Linux目录结构和常用命令

  •  

  • 5、网络

  • $ifconfig      显示网络接口以及相应的IP地址。ifconfig可用于设置网络接口
    $ifup eth0     运行eth0接口
    $ifdown eth0   关闭eth0接口
    $iwconfig      显示无线网络接口
    $route         显示路由表。route还可以用于修改路由表
    $netstat       显示当前的网络连接状态
    $ping IP       发送ping包到地址IP
    $traceroute IP 探测前往地址IP的路由路径
    $dhclient      向DHCP主机发送DHCP请求,以获得IP地址以及其他设置信息。
    $host domain   DNS查询,寻找域名domain对应的IP
    $host IP       反向DNS查询
    $wget url      使用wget下载url指向的资源
    $wget -m url   镜像下载

  • Linux目录结构和常用命令

  • Linux目录结构和常用命令

  •  

  • 6、进程

  • $top               显示进程信息,并实时更新
    $ps                显示当前shell下的进程
    $ps -lu username   显示用户username的进程
    $ps -ajx           以比较完整的格式显示所有的进程
    $kill PID          杀死PID进程 (PID为Process ID)

  • Linux目录结构和常用命令

  • Linux目录结构和常用命令

  •  

  •  

  • 7、文件

  • $touch filename    如果文件不存在,创建一个空白文件;如果文件存在,更新文件读取和修改时间。
    $rm filename       删除文件
    $cp file1 file2    复制file1为file2
    $ls -l path        显示文件和文件相关信息
    $mkdir dir         创建dir文件夹
    $mkdir -p path     递归创建路径path上的所有文件夹
    $rmdir dir         删除dir文件夹,dir必须为空文件夹。
    $rm -r dir         删除dir文件夹,以及其包含的所有文件
    $file filename     文件filename的类型描述
    $chown username:groupname filename    更改文件的拥有者为owner,拥有组为group
    $chmod 755 filename更改文件的权限为755: owner r+w+x, group: r+x, others: r+x
    $od -c filename    以ASCII字符显示文件

$cat filename      显示文件
$cat file1 file2   连接显示file1和file2
$head -1 filename  显示文件第一行
$tail -5 filename  显示文件倒数第五行
$diff file1 file2  显示file1和file2的差别
$sort filename     对文件中的行排序,并显示
$sort -f filename  排序时,不考虑大小写
$sort -u filename  排序,并去掉重复的行
$uniq filename     显示文件filename中不重复的行 (内容相同,但不相邻的行,不算做重复)
$wc filename       统计文件中的字符、词和行数
$wc -l filename    统计文件中的行数

Linux目录结构和常用命令 Linux目录结构和常用命令

Linux目录结构和常用命令Linux目录结构和常用命令

Linux目录结构和常用命令

Linux目录结构和常用命令