Linux目录/bin、/sbin、/usr/bin、/usr/sbin的区别

/bin、/sbin、/usr/bin、/usr/sbin目录的区别
在linux下我们经常用到的四个应用程序的目录是/bin、/sbin、/usr/bin、/usr/sbin 。
而四者存放的文件一般如下:
/bin: 
bin为binary的简写主要放置一些系统的必备执行档
例如:cat、cp、chmod df、dmesg、gzip、kill、ls、mkdir、more、mount、rm、su、tar等。
这里的mount大家要注意,在/sbin目录下也有,注意区别。
/usr/bin:
主要放置一些应用软件工具的必备执行档
例如c++、g++、gcc、chdrv、diff、dig、du、eject、elm、free、gnome*、 zip、htpasswd、kfm、ktop、last、less、locale、m4、make、man、mcopy、ncftp、 newaliases、nslookup passwd、quota、smb*、wget等。
/sbin
主要放置一些系统管理的必备程序
可以这样理解,就是在普通用户下要加sudo获取到超级用户权限才可以执行的
例如:cfdisk、dhcpcd、dump、e2fsck、fdisk、halt、ifconfig、ifup、 ifdown、init、insmod、lilo、lsmod、mke2fs、modprobe、quotacheck、reboot、rmmod、 runlevel、shutdown等。
/usr/sbin
放置一些网路管理的必备程序
例如:dhcpd、httpd、imap、in.*d、inetd、lpd、named、netconfig、nmbd、samba、sendmail、squid、swap、tcpd、tcpdump等
综述:如果这是用户和管理员必备的二进制文件,就会放在/bin。如果这是系统管理员必备,但是一般用户根本不会用到的二进制文件,就会放在 /sbin。相对而言。如果不是用户必备的二进制文件,多半会放在/usr/bin;如果不是系统管理员必备的工具,多半会放在/usr/sbin。
    如果新装的系统,运行一些很正常的诸如:shutdown,fdisk的命令时,悍然提示:bash:command not found。那么首先就要考虑root 的$PATH里是否已经包含了这些环境变量。
   可以查看PATH,如果是:PATH=$PATH:$HOME/bin则需要添加成如下:
    PATH=$PATH:$HOME/bin:/sbin:/usr/bin:/usr/sbin
 
附:根目录
        (这就是著名的根)
├── bin         (你在终端运行的大多数程序,比如cp、mv...)
├── boot         (内核放在这里,这个目录也经常被作为某个独立分区的挂载点)
│   └── grub   (grub引导程序和引导菜单就放在这里)
├── cdrom
├── dev         (存放设备文件,这里相当于一个设备管理器,由系统自动生成。视硬件环境不同变化很大)
│   ├── block
│   ├── bsg
│   ├── bus
│   ├── char
│   ├── disk         (磁盘信息,要挂载硬盘分区就要注意这里的信息喽)
│   │   ├── by-id      (硬盘分区的永久性符号链接)
│   │   ├── by-label   (按卷标识别的硬盘分区,常用于挂载)
│   │   ├── by-path   (硬盘分区的节点链接)
│   │   └── by-uuid   (按UUID识别的硬盘分区,常用于挂载)
│   ├── dri
│   ├── fd
│   ├── input
│   ├── net
│   ├── pts
│   ├── shm
│   └── snd
├── etc         (存放所有程序和系统的配制文件和全局变量,对所有用户生效,非常值得备份)
├── home         (这就是著名的home目录了,注意不是”家目录”,强烈建议把一个独立分区挂载到这里!)
│   ├── adagio   (这才是我真正的家!一般来说目录名就是帐号名,当然也可以不是,随便。命令行中用波浪线~代表这里)
│   ├── MNT      (这是我挂载其它硬盘分区的地方,你可以看到用硬盘品牌、容量或用途区分的目录名)
│   │   ├── MAX40NT1   (迈拓40G)
│   │   ├── ST160NT1   (希捷160G第一分区,下面两个类似)
│   │   ├── ST160NT2
│   │   ├── ST160SYS
│   │   ├── ST320G      (希捷320G)
│   │   │   ├── MOVIE
│   │   │   ├── MUSIC
│   │   │   └── P2P   (电驴、BT的缓冲区)
│   │   ├── ST80G      (希捷80G)
│   │   │   ├── PROGRAM
│   │   │   ├── ST80PE
│   │   │   └── YEAR
│   │   └── WD1000      (西数1T)
│   │       ├── WD2
│   │       ├── WD3
│   │       ├── WD5
│   │       ├── WD6.Lib
│   │       └── WD7
│   └── test   (我建立的另一个帐号的家目录,专门用于测试,一旦搞到无法收拾的地步,只需简单的
│                把里面的所有文件删除,就可以恢复默认。实际上你可以拥有无数个帐号)
├── lib         (所有程序共享的库文件)
├── lost+found   (磁盘扫描出现的丢失的数据)
├── media      (你在文件管理器里点击后自动挂载的分区就在这里,按卷标命名,没有卷标则按大小命名)
├── mnt         (同样用于挂载磁盘,这是最传统的位置,喜欢挂哪里随便)
├── opt         (某些特殊的程序喜欢把数据放在这里,比如JAVA)
├── proc         (当前系统所有的详细信息,这里的”文件”并不存在于硬盘中,而是在内存或缓存里,每次启动后都不一样)
├── root       (这是系统最高权威root用户的家!他是老大,所以不住在/home里,那里是草民住的)
├── sbin         (类似/bin,存放常用程序,但这里的程序都是要命的啊,比如格式化,所以只有root用户或sudo程序有权使用)
├── srv         (一些服务所要访问的文件)
├── sys         (系统的核心文件,类似/proc,不必管它)
├── tmp         (存放临时文件,所有用户均可使用,不过你要小心啊,这里的所有文件一旦重启就全没了,自动清空的)
├── usr         (你在X下使用的所有程序数据都在这里了,包括图标、manual等。所有用户都可以使用。也是最庞大的目录)
└── var         (variation,顾名思义就是变量,这里存放系统中经常变化的数据。和/tmp不同啊,很有用的地方)
    ├── backups
    ├── cache
    │   └── apt
    │        └── archives  (存放你安装的所有程序的deb包!重装系统时太有用了,一定要备份好,到时候放回来。
    │           我建议把整儿/var单独挂载到一个独立分区,像/home一样。这样你重装好系统后,只
    │           需要简单的把整儿分区挂载到/var就行了,省去了备份-还原的时间。要知道这些deb包
    │          可不是几十M而已,而是有可能几百M、几个G,一来一回可够呛的。你也可以单独挂载
    │          个分区到/var/cache/apt/archives,其他的都不要。
    │          当然,这样又增加了一点系统构造的复杂度,喜欢怎样请自己斟酌。)
    ├── crash
    ├── games
    ├── lib
    ├── local
    ├── lock
    ├── log      (呵呵,这里的文件是系统运行的完整记录,出了问题一定要来这里看看)
    ├── mail      (这里是存放所有用户email的地方)
    ├── opt
    ├── run
    ├── spool
    └── tmp

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/402161.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

游戏开发--开源软件8--cyclone2D(手机引擎+设计工具)

2019独角兽企业重金招聘Python工程师标准>>> Cyclone2D (飓风软件)是集成的手机游戏设计工具以及开源的引擎,工具提供了强大的动画、地图、数值、脚本等设计功能,开源引擎提供了一体化的模块加载与管理,并提供了详细的API文档以及…

python编码

https://www.cnblogs.com/xiao-xue-di/p/11283496.html 《Python中的Unicode编码和UTF-8编码》 《字符串和编码》 《python编码转换(unicode / utf8 / gbk / 内部编码)》 字符编码 最早127个字母被编码到计算机里,也就是大小写英文字母、数字和一些符号&#xff0…

Vipe框架构思记

准备着手写一个JAVA框架,基于公司目前的框架提取出来。当然公司现在的框架也是我搭建的。在这整理一下思路。 框架名称:Vipe AOP,IOC容器:Spring MVC:Spring MVC ORM:Mybatis RPC:Dubbo 优点: 1.前后端分享,前端与后端通过dubbo通…

Linux中vi显示中文乱码的问题

linux 下编程,用到的编程工具是VI,编辑编译都方便,但经常出现中文乱码问题,下面可完美解决这个问题 由于在windows下默认是gb编码,而我的vim默认是utf-8(gedit默认也是utf-8),所以打…

Python JSON

JSON函数 使用JSON函数需要导入json库:import json json.dump() 将序列化后的JSON字符串保存到文件 语法 json.dump(obj, fp, skipkeysFalse, ensure_asciiTrue, check_circularTrue, allow_nanTrue, clsNone, indentNone, separatorsNone, encoding"utf-…

WIFI vs 无线网

大家好多人都在使用无线设备上网,好多人对一些名词充满了好奇,比如WLAN和WIFI的区别是什么? WIFI无线上网和WLAN无线上网是什么意思? 这篇文章中我们为大家介绍什么是WIFI无线上网?大家可能会有这样的疑问,听说最多的应该是WLAN无线上网&a…

[转]jQuery Validate使用说明

本文转自&#xff1a;http://www.cnblogs.com/gimin/p/4757064.html jQuery Validate 导入 js 库 <script src"./jquery-validation/lib/jquery-1.8.3.js" type"text/javascript"></script> <script src"./jquery-validation/dist/jqu…

Linux 设备驱动开发 —— Tasklets 机制浅析

一 、Tasklets 机制基础知识点 1、Taklets 机制概念 Tasklets 机制是linux中断处理机制中的软中断延迟机制。通常用于减少中断处理的时间&#xff0c;将本应该是在中断服务程序中完成的任务转化成软中断完成。 为了最大程度的避免中断处理时间过长而导致中断丢失&#xff0c;有…

验证码(一)

需要验证码的地方还真不少&#xff0c;这主要是为了确保用户信息的安全。这里我做了一个纯字母的验证码。Random rnew Random ();string all "";private void btnCreatAuthCode_Click(object sender, EventArgs e){GetAuthCodes();}private void GetAuthCodes(){//定…

mysqld命令相关介绍

https://www.cnblogs.com/shymen/p/8850655.html mysqld命令相关介绍 mysqld --verbose --help 显示服务器选项和可配置变量一览 从配置文件[mysqld][server]组读取信息 -? //–help 查看简短帮助信息 –ansi //使用标准ANSI&#xff0c;SQL语法 -b //–basedir mysql安装…

字符串对象的各种方法

例&#xff1a; var str "hello world!"; var str1 "wo"; 1、 indexOf()方法&#xff1a;用于返回某个指定的字符串值在字符串中首次出现的位置。 alert(str.indexOf(str1)) // 6 2、charAt()方法&#xff1a;用于返回指定位置的字符。 alert(str.charA…

ios下使用rsa算法与php进行加解密通讯

首先了解一下几个相关概念&#xff0c;以方便后面遇到的问题的解决&#xff1a;RSA算法&#xff1a;1977年由Ron Rivest、Adi Shamirh和LenAdleman发明的&#xff0c;RSA就是取自他们三个人的名字。算法基于一个数论&#xff1a;将两个大素数相乘非常容易&#xff0c;但要对这个…

Linux 设备驱动开发 —— platform 设备驱动

一、platform总线、设备与驱动 在Linux 2.6 的设备驱动模型中&#xff0c;关心总线、设备和驱动3个实体&#xff0c;总线将设备和驱动绑定。在系统每注册一个设备的时候&#xff0c;会寻找与之匹配的驱动&#xff1b;相反的&#xff0c;在系统每注册一个驱动的时候&#xff0c;…

HTML5本地存储——IndexedDB(二:索引)

在HTML5本地存储——IndexedDB&#xff08;一&#xff1a;基本使用&#xff09;中介绍了关于IndexedDB的基本使用方法&#xff0c;很不过瘾&#xff0c;这篇我们来看看indexedDB的杀器——索引。 熟悉数据库的同学都知道索引的一个好处就是可以迅速定位数据&#xff0c;提高搜索…

Ubuntu在线体验

http://tour.ubuntu.com/zh-CN/转载于:https://www.cnblogs.com/nongbin/p/6412115.html

Linux 字符设备驱动开发基础(五)—— ioremap() 函数解析

一、 ioremap() 函数基础概念 几乎每一种外设都是通过读写设备上的寄存器来进行的&#xff0c;通常包括控制寄存器、状态寄存器和数据寄存器三大类&#xff0c;外设的寄存器通常被连续地编址。根据CPU体系结构的不同&#xff0c;CPU对IO端口的编址方式有两种&#xff1a; a -- …

df

linux中df命令参数功能&#xff1a;检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间&#xff0c;目前还剩下多少空间等信息。 语法&#xff1a;df [选项] 说明&#xff1a;linux中df命令可显示所有文件系统对i节点和磁盘块的使用情况。 该命令各个选…

git是一种分布式代码管理工具,git通过树的形式记录文件的更改历史,比如: base'--base--A--A' ^ | --- B--B' 小米工程师常常需要寻找两个分支最近的分割点,即b...

// ConsoleApplication10.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> #include <vector> using namespace std;class Solution { public:/*** 返回git树上两点的最近分割点** param matrix 接邻矩阵&#xff0c;表…

Linux 字符设备驱动开发基础(三)—— read()、write() 相关函数解析

我们在前面讲到了file_operations&#xff0c;其是一个函数指针的集合&#xff0c;用于存放我们定义的用于操作设备的函数的指针&#xff0c;如果我们不定义&#xff0c;它默认保留为NULL。其中有最重要的几个函数&#xff0c;分别是open()、read()、write()、ioctl()&#xff…

机电传动控制第一周学习笔记

机电传动控制第一周学习笔记&#xff1a; 1 这一周主要讲述了概论和机电传动控制系统动力学基础两个章节内容。 2 绪论中说明了《机电传动控制》课程主要内容为下图所示&#xff1a; 3机电传动控制系统动力学基础章节主要内容分为&#xff1a; &#xff08;1&#xff09;a&…