Linux目录结构和常用命令
来源:互联网 发布:淘宝怎样延长收货时间 编辑:程序博客网 时间:2024/06/11 14:49
一、Linux目录结构
你想知道为什么某些程序位于/bin下,或者/sbin,或者/usr/bin,或/usr/sbin目录下吗?例如,less命令位于/usr/bin目录下。为什么没在/bin中,或/sbin,或/usr/sbin目录中?所有这些目录之间有什么不同?
在这篇文章中,让我们回顾一下Linux的文件系统结构,并理解各上层目录的含义。
蓝色:表示目录
青色:表示链接
黑色:表示文件
1、/- 根
每一个文件和目录从根目录开始。
只有root用户具有该目录下的写权限。请注意,/root是root用户的主目录,这与/.不一样
2、/bin中 - 用户二进制文件
包含二进制可执行文件。
在单用户模式下,你需要使用的常见Linux命令都位于此目录下。系统的所有用户使用的命令都设在这里。
例如:ps、ls、ping、grep、cp
3、/sbin目录 - 系统二进制文件
就像/bin,/sbin同样也包含二进制可执行文件。
但是,在这个目录下的linux命令通常由系统管理员使用,对系统进行维护。例如:iptables、reboot、fdisk、ifconfig、swapon命令
4、/etc - 配置文件
包含所有程序所需的配置文件。
也包含了用于启动/停止单个程序的启动和关闭shell脚本。例如:/etc/resolv.conf、/etc/logrotate.conf
hosts:设备名称(或域名)到ip地址的解析,相当于本地存在的dns功能。见下图:
5、/dev - 设备文件
包含设备文件。
这些包括终端设备、USB或连接到系统的任何设备。例如:/dev/tty1、/dev/usbmon0
6、/proc - 进程信息
包含系统进程的相关信息。
这是一个虚拟的文件系统,包含有关正在运行的进程的信息。例如:/proc/{pid}目录中包含的与特定pid相关的信息。
这是一个虚拟的文件系统,系统资源以文本信息形式存在。例如:/proc/uptime
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
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
- 1.1. Foreward
- 1.2. The Root Directory
- 1.3. /bin
- 1.4. /boot
- 1.5. /dev
- 1.6. /etc
- 1.7. /home
- 1.8. /initrd
- 1.9. /lib
- 1.10. /lost+found
- 1.11. /media
- 1.12. /mnt
- 1.13. /opt
- 1.14. /proc
- 1.15. /root
- 1.16. /sbin
- 1.17. /usr
- 1.18. /var
- 1.19. /srv
- 1.20. /tmp
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
- H.1. PREAMBLE
- H.2. APPLICABILITY AND DEFINITIONS
- H.3. VERBATIM COPYING
- H.4. COPYING IN QUANTITY
- H.5. MODIFICATIONS
- H.6. COMBINING DOCUMENTS
- H.7. COLLECTIONS OF DOCUMENTS
- H.8. AGGREGATION WITH INDEPENDENT WORKS
- H.9. TRANSLATION
- H.10. TERMINATION
- H.11. FUTURE REVISIONS OF THIS LICENSE
- H.12. ADDENDUM: How to use this License for your documents
二、常用命令
1、命令帮助
2、用户
3、SHELL
4、显示硬盘、分区、CPU、内存信息
5、网络
6、进程
7、文件
- 1、命令帮助
- [root@localhost ~]#man ps
- 2、用户
- finger username 显示用户username的信息<br>who 显示当前登陆用户
whoamI<br> su 使成为root用户
sudo command 以root用户身份执行<br>passwd 更改密码 - 创建用户:useradd xxx
- 将在passwd, shadow, group, gshadow中新增该用户的信息(home目录,使用的bash,uid,所在组,密码),生成个人目录/home/xxx,生成用户邮箱。
- 删除用户:userdel xxx
- 3、SHELL
- history 显示在当前shell下命令历史<br>alias 显示所有的命令别称
alias new_command='command' 将命令command别称为new_command<br>env 显示所有的环境变量
export var=value 设置环境变量var为value</dt><dt><img alt="" src="http://images.cnitblog.com/blog/25959/201305/23100322-404c259caad34e5f8d71bbcc8b3591c6.x-png"></dt><dt><img alt="" src="http://images.cnitblog.com/blog/25959/201305/23100330-655d43703f1241b78f3f7e28428ee77a.x-png"></dt><dt> </dt><dt> </dt><dt><strong>4、显示硬盘、分区、CPU、内存信息<a name="hardware4"></a></strong></dt><dt>df -lh 显示所有硬盘的使用状况 - du -sh * 显示当前目录下各个目录和文件的大小</dt><dt><img alt="" src="http://images2015.cnblogs.com/blog/25959/201607/25959-20160706183449202-472374630.jpg"></dt><dt>mount 显示所有的硬盘分区挂载
mount partition path 挂在partition到路径path<br>umount partition 卸载partition
sudo fdisk -l 显示所有的分区<br>sudo fdisk device 为device(比如/dev/sdc)创建分区表。 进入后选择n, p, w
sudo mkfs -t ext3 partition 格式化分区patition(比如/dev/sdc1)<br> 修改 /etc/fstab,以自动挂载分区。增加行:<br> /dev/sdc1 path(mount point) ext3 defaults 0 0<br>arch 显示架构
cat /proc/cpuinfo 显示CPU信息<br>cat /proc/meminfo 显示内存信息
free 显示内存使用状况</dt><dt><img alt="" src="http://images.cnitblog.com/blog/25959/201305/23101259-1e3b450c52104df49e77d6026a7e4358.x-png"></dt><dt><img alt="" src="http://images.cnitblog.com/blog/25959/201305/23101453-644f216791a94f5f99bf9d8187daea48.x-png"></dt><dt><img alt="" src="http://images.cnitblog.com/blog/25959/201305/23101502-9e0e147ef3d846139b98122475047c01.x-png"></dt><dt> </dt><dt><strong>5、网络<a name="network5"></a></strong></dt><dt>ifconfig 显示网络接口以及相应的IP地址。ifconfig可用于设置网络接口
ifup eth0 运行eth0接口<br>ifdown eth0 关闭eth0接口
iwconfig 显示无线网络接口<br>route 显示路由表。route还可以用于修改路由表
netstat 显示当前的网络连接状态<br>ping IP 发送ping包到地址IPtracerouteIP探测前往地址IP的路由路径<br> dhclient 向DHCP主机发送DHCP请求,以获得IP地址以及其他设置信息。
host domain DNS查询,寻找域名domain对应的IP<br>host IP 反向DNS查询
wget url 使用wget下载url指向的资源<br>wget -m url 镜像下载 - 6、进程
- top 显示进程信息,并实时更新<br>ps 显示当前shell下的进程
ps -lu username 显示用户username的进程<br>ps -ajx 以比较完整的格式显示所有的进程
kill PID 杀死PID进程 (PID为Process ID)</dt><dt><img alt="" src="http://images.cnitblog.com/blog/25959/201305/23102812-5fc36ef6ac4746d895686d0f37ed4e1b.x-png"></dt><dt><img alt="" src="http://images.cnitblog.com/blog/25959/201305/23102818-42f488ea371b46a8a2f7eff0f543e488.x-png"></dt><dt> </dt><dt> </dt><dt><strong>7、文件<a name="file7"></a></strong></dt><dt>touch filename 如果文件不存在,创建一个空白文件;如果文件存在,更新文件读取和修改时间。
rm filename 删除文件<br>cp file1 file2 复制file1为file2
ls -l path 显示文件和文件相关信息<br>mkdir dir 创建dir文件夹
mkdir -p path 递归创建路径path上的所有文件夹<br>rmdir dir 删除dir文件夹,dir必须为空文件夹。
rm -r dir 删除dir文件夹,以及其包含的所有文件<br>file filename 文件filename的类型描述
chown username:groupname filename 更改文件的拥有者为owner,拥有组为group<br>chmod 755 filename更改文件的权限为755: owner r+w+x, group: r+x, others: r+x
$od -c filename 以ASCII字符显示文件
cat filename 显示文件<br>cat file1 file2 连接显示file1和file2
head -1 filename 显示文件第一行<br>tail -5 filename 显示文件倒数第五行
diff file1 file2 显示file1和file2的差别<br>sort filename 对文件中的行排序,并显示
sort -f filename 排序时,不考虑大小写<br>sort -u filename 排序,并去掉重复的行
uniq filename 显示文件filename中不重复的行 (内容相同,但不相邻的行,不算做重复)<br>wc filename 统计文件中的字符、词和行数
$wc -l filename 统计文件中的行数
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Linux目录结构和常用命令
- Java锁的种类及辨析(二):可重入锁
- 物流链云平台成品仓-wms简介
- LeetCode 算法第四题
- JavaFx在Mac OS中实现系统样式的菜单
- jQuery 语法
- Linux目录结构和常用命令
- PgRouting CentOs6 安装以及使用
- Linux下区分物理CPU、逻辑CPU和CPU核数
- *args和**kwargs
- webpack项目流程学习(二)
- 漏洞利用查询工具sandi
- WIN10 + VS2015 + WDK10 + SDK10 + VM虚拟机驱动开发调试环境搭建
- CTX学长的快速幂(快速幂运用)
- 注解式读取properties文件中的内容