针对【Linux基础】Linux系统默认目录功能简介和linux默认目录的名称及作用这两个问题,本篇文章进行了详细的解答,同时本文还将给你拓展linux下PHP错误警报开启与关闭linuxphpexe
针对【Linux基础】Linux系统默认目录功能简介和linux默认目录的名称及作用这两个问题,本篇文章进行了详细的解答,同时本文还将给你拓展linux下PHP错误警报开启与关闭 linux php exec 执行不了 linux系统 linux系统下、Linux基础-14day-Linux系统服务管理、Linux基础-15day-Linux系统目录结构、Linux基础_Linux操作系统简介等相关知识,希望可以帮助到你。
本文目录一览:- 【Linux基础】Linux系统默认目录功能简介(linux默认目录的名称及作用)
- linux下PHP错误警报开启与关闭 linux php exec 执行不了 linux系统 linux系统下
- Linux基础-14day-Linux系统服务管理
- Linux基础-15day-Linux系统目录结构
- Linux基础_Linux操作系统简介
【Linux基础】Linux系统默认目录功能简介(linux默认目录的名称及作用)
以下用一个表格来罗列linux默认的目录或文件及其用途:
目录/文件 | 用途 | 来源 |
/ | /处于Linux文件系统树形结构的最顶端,它是Linux文件系统的入口,所有的目录、文件、设备都在/之下。 | - |
/bin | 该目录存放着系统最常用的最重要的命令,相当于DOS下的内部命令,只不过它们是以独立的文件形式存在。比如:ls、cp、mkdir等命令。这个目录中的文件都是可执行的并且是普通用户都可以使用的命令。作为系统最基础的命令都放在这里。 | binary |
/usr | 该目录是系统存放程序的地方,比如普通命令、帮助文件、安装的软件等。这个目录下有很多的文件和目录。当我们安装一个Linux发行版官方提供的软件包时,大多安装在这里。当有涉及服务器的配置文件时,会把配置文件安装在/etc目录中。/usr目录下包括涉及字体目录/usr/share/fonts、帮助目录/usr/share/man或/usr/share/doc等。 |
unix shared resource
|
/var | 该目录的内容是经常变动的,/var下有/var/log目录用来存放系统日志的目录。/var/www目录用来定义Apache服务器站点存放目录。/var/lib用来存放一些库文件。 | variable |
/sbin | 大多数涉及系统管理的命令都存放在该目录中,它是超级权限用户root的可执行命令存放地,普通用户无权限执行这个目录下的命令,凡是目录sbin中包含的命令都是root权限才能执行的。 | super user binary |
/root | Linux超级权限用户(系统管理员)root的主目录。 | - |
/home | 普通用户的主目录都默认存放在该目录中,比如:有个用户叫wang,那它的主目录就是/home/wang,也可以用~wang表示。 | - |
/etc | 该目录是系统配置文件的所在地,一些服务器的配置文件也在这里,比如:用户帐号及密码配置文件等。 | etcetera |
/dev | 设备文件存储在该目录中,这个目录下是所有Linux的外部设备文件,这些设备文件的功能类似于DOS下的.sys文件和Win下的.vxd文件。Linux将设备当成文件使用,即将设备抽象化,这样极大地方便了我们对设备的操作控制。因此Linux中设备和文件是用相同的方法访问的。 | device |
/boot | Linux的内核及引导系统的程序所需要的文件都存放在该目录中,比如vmlinuz、initrd.img等文件都位于这个目录中。在一般情况下,GRUB或LILO系统引导管理器在这个目录中。 | - |
/opt | 该目录是可选的软件包安装目录,有些软件包我们可以将它安装在该目录中。 | optional |
/tmp | 该目录用于存放临时文件,有时用户运行程序的时候,会产生一些临时文件。/tmp就是用来存放临时文件的。/var/tmp目录和该目录的作用是相似的。 | temporary |
/lost+found | 在ext2或ext3文件系统中,当系统意外崩溃或机器意外关机,而产生的一些文件碎片就存放在该目录中。当系统启动在过程中fsck工具会检查这里,并修复已经损坏的文件系统。 有时系统发生问题,有很多的文件被移到这个目录中,可能要用手工的方式来修复,或移到文件原来的位置上。 | - |
/lib | 该目录用于存放库文件,这个目录里存放着系统最基本的共享库,其作用类似于Windows里的.dll文件。几乎所有的应用程序都须要用到这些共享库。 | library |
/mnt | 该目录是用于存放挂载储存设备的挂载目录的,系统提供这个目录是让用户临时挂载别的文件系统,比如有cdrom等目录。 | mount |
/proc | 操作系统运行时,进程(正在运行中的程序)信息及内核信息(比如cpu、硬盘分区、内存信息等)存放在这里。/proc目录是伪装的文件系统proc的挂载目录,proc并不是真正的文件系统。因此,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。也就是说,这个目录的内容不在硬盘上而是在内存里。 | process |
/misc | 该目录可以用来存放杂项文件或目录,即那些用途或含义不明确的文件或目录可以存放在该目录下。 | miscellany |
/media | 即插即用型存储设备的挂载点自动在该目录下创建。比如USB盘系统自动挂载后,会在这个目录下产生一个目录;CDROM/DVD自动挂载后,也会在这个目录中创建一个目录,类似于cdrom这个目录。该目录只有在最新的发行套件上才有。 | - |
/initrd | 系统在启动前的内核是压缩的(这和ramdisk有关),当系统启动时需要解压缩,该目录就是解压缩时的临时目录,当启动完后又将该目录清空。 | boot loader initialized RAM disk |
/usr/man | 该目录是Linux系统帮助文档的存放目录。 | - |
/proc/cpuinfo | 关于处理器的信息,如类型、厂家、型号和性能等。比如cat /proc/cpuinfo | - |
/proc/devices | 当前运行内核所配置的所有设备清单。 | - |
/proc/filesystems | 当前运行内核所配置的文件系统。 | - |
/proc/dma | 当前正在使用的DMA通道。 | - |
/proc/interrupts | 正在使用的中断和曾经有多少个中断。 | - |
/proc/ioports | 当前正在使用的I/O端口。 | - |
/etc/init.d | 这个目录是用来存放系统或服务器以System V模式启动的脚本,这在以System V模式启动或初始化的系统中常见。比如RedHat Fedora。 | - |
/etc/xinetd.d | 如果服务器是通过xinetd模式运行的,它的脚本要放在这个目录下。有些系统没有这个目录,比如Slackware,有些老的版本也没有。在Redhat Fedora中比较新的版本中存在。 | - |
/etc/rc.d | 这是Slackware发行版中有的一个目录,是BSD方式启动脚本的存放地,比如定义网卡,服务器开启脚本等。 | - |
/etc/X11 | 是X-Window相关的配置文件存放地。 | - |
/usr/bin | 这个目录是可执行程序的目录,普通用户就有权限执行。当我们从系统自带的软件包安装一个程序时,他的可执行文件大多会放在这个目录。相似的目录是/usr/local/bin目录。有时/usr/bin中的文件是/usr/local/bin的链接文件。 | - |
/usr/sbin | 这个目录也是可执行程序的目录,但大多存放涉及系统管理的命令。只有root权限才能执行,相似目录是/sbin或/usr/local/sbin或/usr/X11R6/sbin等。 | - |
/usr/local | 这个目录一般是用来存放用户自编译安装软件的存放目录。一般是通过源码包安装的软件,如果没有特别指定安装目录的话,一般是安装在这个目录中。 | - |
/usr/lib | 该目录和/lib目录相似,是库文件的存储目录。存放一些常用的共享库。 | - |
/usr/share | 该目录用于存放系统共用的东西,比如/usr/share/fonts是字体目录,是用户都共用的。 | - |
/usr/share/doc | 该目录是Linux共享文档的存放地。 | - |
/usr/share/man | 该目录是共享的帮助文件的存放地。 | - |
/usr/src | 该目录是内核源码存放地,下面有内核源码目录,比如linux、linux-2.xxx.xx目录等。有的系统也会把一些源码软件包安装在这里,比如Redhat Fedora。另外Redhat 4.0/5.0,它的内核源码包的目录位于/usr/src/kernels目录下的某个目录中(只有安装后才会生成相应目录)。 | - |
/var/adm | 比如软件包安装信息、日志、管理信息等就存放在该目录下,在Slackware操作系统中是有这个目录的。在Fedora中好象没有。 | - |
/var/log | 该目录用于存放系统日志。 | - |
/var/spool | 打印机、邮件、代理服务器等假脱机目录存放在该目录下。 | - |
linux下PHP错误警报开启与关闭 linux php exec 执行不了 linux系统 linux系统下
目录 /usr/local/php/etc
php.ini
修改
2.
搜索并修改下行,把Off值改成On
display_errors = Off
3. 搜索下行
error_reporting = E_ALL & ~E_NOTICE
或者搜索:
error_reporting = E_ALL & ~E_DEPRECATED
修改为
error_reporting = E_ALL | E_STRICT
/etc/init.d/php-fpm restart
***********************vi 查找命令 / 要找的 n 下一个,shift n 上一个*****************************
以上就介绍了
Linux基础-14day-Linux系统服务管理
Linux系统服务管理
1、服务概念及分类
Linux系统有些特殊程序,启动后在后台运行,等待用户或者其他程序进行调用,这类程序称为服务。
服务分类:按照服务功能(对象)分为:系统服务、网络服务;按照启动方式分为:独立系统服务(启动后后台运行,响应快、占用系统资源);基于xinetd的服务(用户使用时启动,响应慢、节省系统资源),这种服务不能独立启动,需要依靠管理服务来调用。这个负责管理的服务就是 xinetd服务。xinetd 服务是系统的超级守护进程,其作用就是管理不能独立启动的服务。
2、服务管理方式
(1)通过/etc/init.d/目录中的启动脚本来管理
所有独立服务启动文件均存储在/etc/init.d目录下,通过以下命令对服务进行启动、停止、重启等操作。
格式:/etc/init.d独立服务名 start| stop|status|restart|...
参数: start:启动;stop:停止;status:查看状态;restart:重启。
Eg:
[root@test ~]# /etc/init.d/sshd restart #重启ssh服务
(2)service管理
service 命令实际上只是一个脚本,这个脚本仍然需要调用 /etc/init.d/ 中的启动脚本来启动独立的服务。centos6系统使用service命令,centos7及以上系统使用systemctl命令。
参数 |
Centos6 |
Centos7 |
启动 |
Service 服务名 start |
systemctl start name.service |
停止 |
Service 服务名 stop |
systemctl stop name.service |
服务 |
service 服务名 restart |
systemctl restart name.service |
状态查询 |
service 服务名 status |
systemctl status name.service |
Eg:
[root@test ~]# service sshd status #查看ssh服务状态
(3)chkonfig命令实现管理
chkconfig 服务自启动管理命令来管理独立服务的自启动。
参数 |
Centos6 |
Centos7 |
开机自启 |
chkconfig 服务名 on |
systemctl enable name.service |
开机禁止启动 |
chkconfig服务名off |
systemctl disable name.service |
查看所有服务开机自启状态 |
chkconfig --list |
systemctl list-unit-files --type service |
查看某个服务在哪些运行级别下的启动和禁用 |
chkconfig 服务名称 --list |
ls /etc/systemd/system/*.wants/服务名称.service |
查看服务是否开启自启 |
-- |
systemctl is-enable name.service |
其他:
chkconfig --level 234 服务名 on #开启某个运行级别下的服务。
chkconfig --add 服务名 #在当前运行级别下添加某个服务。
chkconfig --del 服务名 #在当前运行级别下删除某个服务。
Eg:
#修改network运行级别1时开机自启
[root@test ~]# chkconfig network --level 1 on
注:Linux运行级别:0-6.
0是关机;1是维护模式,提供有限的功能;2是字符界面的debian系统;3是字符界面的redhat系统;4不常用;5是GUI界面的系统;6是重启。
(4)修改 /etc/rc.d/rc.local 文件,设置服务自启动
修改 /etc/rc.d/rc.local 文件,在文件中加入服务的启动命令。这个文件是在系统启动时,在输入用户名和密码之前最后读取的文件(注意:/etc/rc.d/rc.loca和/etc/rc.local 文件是软链接,修改哪个文件都可以)。这个文件中有什么命令,都会在系统启动时调用。
(5)ntsysv界面管理
ntsysv 命令调用窗口模式来管理服务的自启动。
ntsysv命令安装, yum -y install ntsysv。
格式:指定设定自启动的运行级别
[root@test ~]# ntsysv [--level 运行级别]
[root@test ~]# ntsysv --level 234 #设置2/3/4级别的服务自启动
操作键:
(1)上下键:在不同服务之间移动;
(2)空格键:选定或取消服务的自启动。也就是在服务之前是否输入"*";
(3)Tab键:在不同项目之间切换;
(4)F1键:显示服务的说明。
个人公众号:
Linux基础-15day-Linux系统目录结构
Linux系统目录结构
1、目录介绍
当在使用Linux系统时,可通过ls–l/就会发现,在/下包涵很多的目录,而在这些目录中,依旧存在很多目录或文件。文件系统在Linux下看上去就象树形结构,所以我们可以把文件系统的结构形象的称为树形结构。
文件系统是用来组织和排列文件存取的,在Linux中,我们可通过ls等工具来查看其结构,在Linux系统中,我们见到的全部都是树形结构。比如操作系统安装在一个文件系统中,它表现为由/起始的树形结构。linux文件系统的最顶端是/,我们称/为Linux的root,也就是Linux操作系统的文件系统。Linux的文件系统的入口就是/,所有的目录、文件、设备都在/之下,/就是Linux文件系统的组织者。Linux系统一切皆文件。
File system Hierarchy Standard(文件系统目录标准)的缩写,多数Linux版本采用这种文件组织形式,类似于Windows操作系统中c盘的文件目录,FHS采用树形结构组织文件。FHS定义了系统中每个区域的用途、所需要的最小构成的文件和目录,同时还给出了例外处理与矛盾处理。
FHS针对目录树架构仅定义出三层目录底下应该放置什么数据而已,分别是:
(1)/(root,根目录):与开机系统有关;
(2)/usr(unix softwar eresource):与软件安装/执行有关;
(3)/var(variable):与系统运作过程有关。
2、目录特点
(1)/(根)是所有目录的顶点。
(2)目录结构像一颗倒挂的树。
(3)目录和磁盘分区,默认是没有关联的。
(4)/(根)下不同的目录可能会对应不同的分区或磁盘。
(5)所有的目录都是按照一定的类别和规律组成的。
3、目录说明
3.1/目录
根目录是整个系统最重要的一个目录,因为不但所有的目录都是由根目录衍生出来的,同时根目录也与开机/还原/系统修复等动作有关。由于系统开机时需要特定的开机软件、核心文件、开机所需程序、函式库等等文件数据,若系统出现错误时,根目录也必须要包含有能够修复文件系统的程序才行。因为根目录是这么的重要,所以在FHS的要求方面,它希望根目录不要放在非常大的分区,因为越大的分区内会放入越多的数据,如此一来根目录所在分区就可能会有较多发生错误的机会。
每一个文件和目录都从根开始。
3.2/bin目录
/bin存放二进制可执行命令的目录,在/bin下的指令可以被root与一般帐号所使用,主要有:cat,chmod(修改权限),chown,date,mv,mkdir,cp,bash等常用的指令。
3.3/sbin目录
用来存放二进制可执行文件,只是这里面的命令只供系统管理员,管理系统使用(root用户)。例如:iptables(防护墙)、ifconfig(查看网卡信息)、init(设置启动级别)等。
3.4/boot目录
主要放置开机会使用到的文件,包括Linux核心文件以及开机选单与开机所需设定档等等。Linux kernel常用的档名为:vmlinuz,如果使用的是grub该开机管理程式,则还会存在/boot/grub/该目录。
3.5/dev目录
在Linux系统上,把所有的硬件用文件的形式存储。比较重要的文件有/dev/null,/dev/zero,/dev/tty,/dev/lp*,/dev/hd*,/dev/sd*等。
3.6/etc目录
yum/rpm安装的软件配置文件所在的目录,系统主要的配置文档几乎都放置在该目录内,例如人员的帐号密码、各种服务的启动文件等。该目录下的各文件属性是可以让一般使用者查阅的,但是只有root有权力修改。
3.7/home目录
普通用户家目录(homedirectory),用来存放普通用户的文件
3.8/lib目录
存放二进制库文件,库文件一般以.so|lib*|ld*。
3.9/media目录
media是媒体的英文,顾名思义,该/media底下放置的就是可移除的设备。包括软碟、光碟、DVD等装置都暂时挂载于此。常见的档名有:/media/floppy,/media/cdrom等。
3.10/mn目录
一般用来临时挂载临时存储设备的目录。
3.11/opt目录
一般是给第三方厂家开发的程序的安装目录。现在一般不用。
3.12/root目录
系统管理员(root)的家目录。如果进入单人维护模式而仅挂载根目录时,该目录就能够拥有root的家目录,所以我们会希望root的家目录与根目录放置在同一个分区中。
3.13/srv目录
srv可以视为service的缩写,是一些网路服务启动之后,这些服务所需要取用的资料目录。常见的服务例如WWW,FTP等。
3.14/tmp目录
临时文件存放的地方,由于该目录的权限为1777,所有用户对该目录都有可读可写可执行的权限,所以其他人也可以删除你的文件。
3.15/lost+found目录
该目录使用标准的ext2/ext3文件系统格式才会产生的一个目录,目的在于当文件系统发生错误时,将一些遗失的片段放置到该目录下。该目录通常会在分割槽的最顶层存在,例如你加装一个硬盘于/disk中,那在该系统下就会自动产生一个这样的目录/disk/lost+found。
3.16/proc目录
该目录本身是一个虚拟文件系统(virtual file system)。它只存在内存当中,而不占用外部空间。它以文件系统的方式为访问系统内核数据的操作提供接口。
3.17/sys目录
该目录与/proc类似,也是一个虚拟的文件系统,主要也是记录与核心相关的信息。包括目前已载入的核心模组与核心侦测到的硬件信息等,该目录同样不占硬盘容量。
3.18/usr目录
该目录是集成到主文件系统中的单独文件系统的挂载点,用来存放系统数据,包含大量标准子目录。/usr目的是用来存放静态数据(不随时间改变的数据),没有系统管理员的干涉不会改变的数据。
3.19/usr/bin目录
绝大部分的用户可使用指令都放在这里。
3.20/usr/include目录
c/c++等程序语言的头文件(header)与包含文件(include)放置处。
3.21/usr/lib目录
包含各应用软件的函式库、目标文件(objectfile),以及不被一般使用者惯用的执行文件或脚本(script)。
3.22/usr/local目录
统管理员在本机自行安装自己下载的软件,建议安装到此目录。
3.23/usr/sbin目录
由超级用户运行的非基本系统管理程序。
3.24/usr/share目录
放置共享文件的目录。/usr/share/doc:软件杂项的文件说明;/usr/share/zoneinfo:与时区有关的时区文件。
3.25/usr/src目录
一般原始码建议放置到这里,src有source的意思。至于核心原始码则建议放置到/usr/src/linux/目录下。
3.26/var
目录如果/usr是安装时会占用较大硬盘容量的目录,那么/var就是在系统运作后才会渐渐占用硬盘容量的目录。因为/var目录主要针对常态性变动的文件,包括缓存(cache)、登录档(logfile)以及某些软件运作所产生的文件,包括程序文件(lockfile,runfile),或者例如MySQL数据库的文件等。
3.27/var/cache目录
应用程序本身运作过程中会产生的一些缓存文件。
3.28/var/lib目录
程序本身执行的过程中,需要用到的数据文件存放目录。比如,MySQL的数据库放置到/var/lib/mysql/。
3.29/var/lock目录
某些配置或文件资源一次只能被一个应用程序所使用,如果同时有两个程序使用该装置时,就可能产生一些错误,因此就要将该资源上锁(lock),以确保该资源只会给单一程序所使用。
3.30/var/log目录
这是登录文件放置的目录。主要存放日志等信息。
3.31/var/mail目录
放置个人电子邮件信箱的目录,不过该目录也被放置到/var/spool/mail/目录中,通常这两个目录是互为链接文件。
3.32/var/run目录
某些程序或者是服务启动后,会将它们的PID放置在该目录下。
3.33/var/spool目录
该目录通常放置一些队列数据,所谓的“队列”就是排队等待其它程序使用的数据。这些数据被使用后通常都会被删除。举例来说,系统收到邮件信息会放置到/var/spool/mail/中,但使用者收下该信件后该封信原则上就会被删除。信件如果暂时寄不出去会被放到/var/spool/mqueue/中,等到被送出后就被删除。如果是工作排程数据(crontab),就会被放置到/var/spool/cron/目录中。
个人公众号:
Linux基础_Linux操作系统简介
# UNIX是什么
UNIX操作系统是一个计算机操作系统,一个用来协调,管理,控制计算机硬件和软件资源的控制程序,具有多用户(同一时刻可以有多个用户同时使用UNIX操作系统而不相互干扰),多任务(同一时间在UNIX操作系统上可以运行多个程序)的操作系统,属于分时操作系统。
UNIX诞生史:1965年时,贝尔实验室加入一项由通用电气和麻省理工学院合作的计划。该计划要建立一套多永辉、多任务、多层次的MULTICS操作系统。直到1969年,因MULTICS计划的工作进度太慢,该计划被停了下来。当时,Ken Thompson(后被称为UNIX之父)已经有一个称为"星际旅行"的程序在GE-635的机器上跑,但是反应非常慢,正巧被他发现了一部被闲置的PDP-7(Digital的主机),Ken Thompson和Dernis Ritchie就将"星际旅行"的程序移植到PDP-7上。MULTICS其实是"Multiplexed Information and Computing Service"的缩写,在1970年时,那部PDP-7却只能支持两个使用者,当时,Brian Kernighan就开玩笑地称他们的系统其实是:"UNiplexed Information and Computing Service",缩写为"UNICS",后来,大家取其谐音,就称其为"UNIX"了。1970年可称为"UNIX元年"。(来自百度百科)
# Linux是什么
Linux是一套免费使用和自由传播的类UNIX操作系统(UNIX目前它的商标权由国际开放标准组织所拥有,只有符合单一UNIX规范的UNIX系统才能使用UNIX这个名称,否则只能称为类UNIX(UNIX-like)),是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。
Linux的主要用途是:服务器,网络服务器
# CentOS的安装过程
# LInux基础知识
# 关闭Linux系统的命令:init 0 (需要是root用户登录才能执行)
# 切换不同终端方法:ctrl + alt + (F1~F6)
# 普通用户登录系统提示符:$
# root用户登录系统提示符:#
# 用 exit 命令来退出系统终端
# Linux命令的格式: 命令 [选项] [参数]
命令:告诉操作系统执行什么操作
选项:说明命令的运行方式,部分以"-"开头
参数:说明命令操作的是什么(如一个文件或者目录)
[root@localhost 桌面]# ls -a / # 表示查看根目录下的详细信息
# 输入命令 clear 清屏,或快捷键ctrl+l
# ctrl+c 终止当前命令
# Linux中一些简单的命令


# 查看当前所在终端登录的用户
[root@localhost 桌面]# whoami
root
# 查看当前系统所有用户,及显示当前时间
[root@localhost 桌面]# who
root tty1 2019-01-25 08:38 (:0)
root pts/0 2019-01-25 09:38 (:0.0)
# 查看当前时间
[root@localhost 桌面]# date
2019年 01月 25日 星期五 09:41:27 CST
# 设置当前时间
[root@localhost 桌面]# date "100914452016"
2016年 10月 09日 星期日 14:45:00 CST
# 跟硬件时间同步
[root@localhost 桌面]# hwclock
2019年01月25日 星期五 09时43分49秒 -0.594216 seconds
# 同步系统时间
[root@localhost 桌面]# hwclock -w
[root@localhost 桌面]# date
2016年 10月 09日 星期日 14:58:21 CST
# 查看日历
[root@localhost 桌面]# cal
十月 2016
日 一 二 三 四 五 六
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
# 查看日历,指定日历日期
[root@localhost 桌面]# cal 7 1999
七月 1999
日 一 二 三 四 五 六
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
# 新建用户
[root@bogon ~]# useradd heihei
[root@bogon ~]# passwd heihei # 给用户heihei新建密码
更改用户 heihei 的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
# 修改用户密码
[root@localhost 桌面]# passwd heihei
# 终端中切换用户
[root@bogon ~]# su - doaoao
上一次登录:三 1月 9 20:01:20 CST 2019:0 上
[doaoao@bogon ~]$ su - heihei
密码:
[heihei@bogon ~]$
# 用 "man + 命令"(来获取某个Linux命令的说明)
[root@localhost 桌面]# man ls
# 用 "命令 + --help"(来获取某个Linux命令的说明)
[root@localhost 桌面]# ls --help
# Linux中的目录结构
bin目录:用来存放常用的可执行文件
sbin目录:存放系统的可执行文件
家目录:用来存放用户自己的文件或目录;root用户的家目录为.root,普通用户的家目录为/home(并用用户名创建用户家目录的一级文件,doaoao的家目录为/home/doaoao)
dev目录:设备文件目录
etc目录:配置文件目录
# 绝对路径:从头开始找
# 相对路径:一个文件相对另一个文件的位置,待补充...
# 目录文件的浏览


cd .. # 返回上级目录
cd ~ # 返回到当前用户家目录(root用户为root目录,普通用户切换到home目录)
cd - # 返回上一次所在的目录
cd # 切换到家目录
cd 目录名 # 切换到指定的目录
ls # 列出当前目录或指定目录中的内容
ls -l # 查看详细信息
ls -l / # 列出某个目录下的详细信息
ls -a # 显示隐藏文件
ls -l -a # 显示隐藏文件 也显示详细信息,等同于ls -all
cp # 复制文件和目录
[root@bogon ~]# cp /home/hello /opt/ # 将home下的hello文件拷贝到opt下
cp 源文件 目标文件
-r:递归的,递归地复制目录,当复制一个目录时,复制该目录中所有的内容,包括子目录的全部内容
[root@bogon ~]# cp -r /home/hello /opt/
-f :强制性,在目标文件一已经存在的情况下不询问直接强制复制
[root@bogon ~]# cp -f /home/hello /opt/
# 将test5下的abc.txt移动到/test6中
[root@localhost ~]# mv test5/abc.txt /test6
# mkdir /test创建目录
# touch 创建文件
# 删除一个目录(不能删除包含子文件的目录)
rmdir [root@localhost ~]# rmdir /test7
# 可删除文件夹
rm -r
# 删除一个目录,可以删除包含文件和子目录的目录
[root@localhost ~]# rmdir /test5
rmdir: 删除 "/test5" 失败: 目录非空
[root@localhost ~]# rm -rf /test5
# 浏览文件中的内容
[root@localhost ~]# cat abc.txt
helloworld
# 查看命令的别名 用 alias
[root@bogon ~]# alias cp
alias cp=''cp -i''
# 给命令取别名
[root@bogon ~]# alias heihei="cp -i"
# head 浏览文件中的内容(默认显示头10行)
[root@localhost ~]# head abc.txt
helloworld
545
45
4
54
54
54
54
54
54
# 显示/etc/passwd文件详细信息前十行
[root@localhost ~]# head 5 /etc/passwd
# 显示/etc/passwd文件详细信息前五行
[root@localhost ~]# head -n 5 /etc/passwd
# 显示文件后10行内容
[root@localhost ~]# tail abc.txt
54
54
54
5
45
4
54
54
54
# 显示文件后5行信息
[root@localhost ~]# tail -n 5 abc.txt
4
54
54
54
# more 浏览文件(浏览一部分 用回车键下翻,百分比方式查看)
[root@localhost ~]# more abc.txt
pwd # 查看当前目录
# 掌握/etc/passwd文件结构将其功能
功能:用来存储用户相关信息,该文件也被称为用户信息数据库
[root@localhost ~]# head -n 1 /etc/passwd
root:x:0:0:root:/root:/bin/bash
文件结构:每一行代表的是一个账号,有几行就代表有几个账号;每一行使用 “:”分隔符,由7部分组成
第一字段:用来记录用户名称,用来对应第三个字段的UID,root的UID为0
第二字段:如果该字段为表示用户登录系统是需要使用密码;如果为空表示用户不必利用密码进行登录
第三字段:UID指的是使用者的标识符
第四字段:用来记录用户所属群组的GID
第五字段:记录于用户有关的注释信息
第六字段:记录用户的家目录,root的家目录为/root,普通用户doaoao的家目录为/home/doaoao
第七字段:当用户登录系统时,会取得一个Shell来与系统的核心沟通以进行用户的操作
# 掌握/etc/shadow文件结构及其功能
功能:存有用户的密码,每一个用户占一行记录,该文件实际上就是存放用户密码信息的数据库
[root@localhost ~]# head -n 1 /etc/shadow
root:$6$MqR7env0v.YcJO/7$yMmnDq2U7UBt7dq/HCKAdE6U2FD054DGzr948mxXHS6o0SlIHCtF5TTjBRSdxWyFsg.JmhpqukBbgZnqqltHS.:17917:0:99999:7:::
第一字段:用户名
第二字段:经过加密后的密码
# 掌握/etc/group文件结构及其功能
[root@localhost 桌面]# head -n 5 /etc/group
root:x:0:root
bin:x:1:bin,daemon
daemon:x:2:bin,daemon
sys:x:3:bin,adm
adm:x:4:adm,daemon
第一字段:组名
第二字段:当显示为x时表示登录Linux系统时必须使用密码登录
第三字段:为GID,使用GID来对应群组名称
第四字段:记录该群组中的成员,如果要想将某个账号添加到改群组,就可以将该账号添加到该字段下,如将账号doaoao加到root组下,即在第一行的后面加上",doaoao" ,即 root:x:0:root,doaoao
# 账号相关文件之间的UID/GID与口令之间的关系示意图
# 初始群组与有效群组
问题:当一个账号加入多个群组时,当账号在进行操作时,该以哪个群组为准?
账号doaoao的初始群组为doaoao(用命令groups来知道账号所属的所有群组)
[doaoao@localhost ~]$ groups
doaoao
将账号添加到root群组中
[root@localhost ~]# usermod -G root doaoao
[root@localhost ~]# su - doaoao
[doaoao@localhost ~]$ groups
doaoao root
当一个账号所属的群组由多个时,可利用命令groups输数账号所属的所有群组,排在第一位的就是账号的有效群组,也就是说上方的账号doaoao所属的有效群组为doaoao,如果此时去创建一个文件,那么这个文件就是的属主为doaoao,属组也为群组doaoao
[doaoao@localhost ~]$ touch abc.txt
[doaoao@localhost ~]$ ll
总用量 0
-rw-rw-r-- 1 doaoao doaoao 0 1月 26 10:49 abc.t
有效群组的切换 newgrp
注意:有效群组的切换只能在该账号支持的群组中进行切换,例如账号doaoao支持群组为doaoao和root,切换有效群组时只能在这两个账号之间进行切换
[doaoao@localhost ~]$ newgrp root
[doaoao@localhost ~]$ groups
root doaoao
[doaoao@localhost ~]$ touch abcd.txt
[doaoao@localhost ~]$ ll
总用量 0
-rw-r--r-- 1 doaoao root 0 1月 26 10:53 abcd.txt
-rw-rw-r-- 1 doaoao doaoao 0 1月 26 10:49 abc.txt
# 账号
新增账号 useradd
useradd常用的选项
-u:指定用户的UID,由一组数字组成,直接指定一个特殊的UID给该账号
-g:指定用户所属的群组,后面接的为组名
-G:后面接的组名表示该账号还可以加入该群组
-M:强制,不创建用户家目录
-m:强制,创建用户家目录(系统默认创建家目录)
-c:指的是在/etc/passwd的第五段的注释信息
-d:用来指定用户的家目录
-r:创建一个系统账号
-s:指定用户所用的shell
-e:后面加上日期,日期的格式为 YYYY-MM-DD,可写入/etc/shadow的第五段(表示账号的失效日期)
-f:表示/etc/shadow的第七段,指定口令是否失效;0为失效,-1为永远不失效
# 添加一个普通用户
[root@localhost ~]# useradd heihei3
# 添加用户其它信息
[root@localhost ~]# useradd -u 666 -g root doaoao1
#
[root@bogon ~]# useradd -u 505 -g heihei -d /home/hee -c hello -s /bin/bash xiaohei
[root@bogon ~]# tail -1 /etc/passwd
xiaohei:x:505:1002:hello:/home/hee:/bin/bash
# UID:505
# 所属群组:heihei
# 家目录:/home/hee
# 注释信息:hello
# shell:/bin/bash
# 用户名:xiaohei
useradd是如何给账号添加默认信息的(默认家目录,默认群组,默认shell)
用[root@localhost ~]# vim /etc/default/useradd,打开useradd配置文件
# useradd defaults file
GROUP=100 # 初始的用户GID为100
HOME=/home # 用户的默认家目录为/home
INACTIVE=-1 # 口令过期后是否失效的配置值,表示/etc/shadow的第七段,0为失效,-1为永远不失效
EXPIRE= # 账号失效的日期
SHELL=/bin/bash # 默认使用shell程序的文件名
SKEL=/etc/skel # 用户家目录的参考目录(用户/home/doaoao下的各个数据向都是由/etc/shel中拷贝过去的)
CREATE_MAIL_SPOOL=yes # 创建者所使用的mailbox
chage的使用
chage可以用来显示口令的详细参数
[root@localhost ~]# chage
用法:chage [选项] 登录
选项:
-d, --lastday 最近日期 将最近一次密码设置时间设为“最近日期”
-E, --expiredate 过期日期 将帐户过期时间设为“过期日期”
-h, --help 显示此帮助信息并推出
-I, --inactive INACITVE 过期 INACTIVE 天数后,设定密码为失效状态
-l, --list 显示帐户年龄信息
-m, --mindays 最小天数 将两次改变密码之间相距的最小天数设为“最小天数”
-M, --maxdays 最大天数 将两次改变密码之间相距的最大天数设为“最大天数”
-R, --root CHROOT_DIR chroot 到的目录
-W, --warndays 警告天数 将过期警告天数设为“警告天数”
账号doaoao的详细口令参数
[root@localhost ~]# chage -l doaoao
最近一次密码修改时间 :1月 24, 2019
密码过期时间 :从不
密码失效时间 :从不
帐户过期时间 :从不
两次改变密码之间相距的最小天数 :0
两次改变密码之间相距的最大天数 :99999
在密码过期之前警告的天数 :7
usermod使用
用于修改用户的相关信息
[root@localhost ~]# usermod
用法:usermod [选项] 登录
选项:
-c, --comment 注释 修改用户备注信息
-d, --home HOME_DIR 修改用户家目录
-e, --expiredate EXPIRE_DATE 设定帐户过期的日期为 EXPIRE_DATE
-f, --inactive INACTIVE 过期 INACTIVE 天数后,设定密码为失效状态
-g, --gid GROUP 修改用户的GID
-G, --groups GROUPS 将一个用户添加到指定群组中
-a, --append GROUP 将用户追加至上边 -G 中提到的附加组中,
并不从其它组中删除此用户
-h, --help 显示此帮助信息并推出
-l, --login LOGIN 新的登录名称
-L, --lock 锁定用户帐号
-m, --move-home 将家目录内容移至新位置 (仅于 -d 一起使用)
-o, --non-unique 允许使用重复的(非唯一的) UID
-p, --password PASSWORD 将加密过的密码 (PASSWORD) 设为新密码
-R, --root CHROOT_DIR chroot 到的目录
-s, --shell SHELL 修改用户所用的shell
-u, --uid UID 修改用户的UID
-U, --unlock 解锁用户帐号
-Z, --selinux-user SEUSER 用户账户的新 SELinux 用户映射
利用-G添加组成员(覆盖形式)
[root@localhost ~]# groupadd group2
[root@localhost ~]# usermod -G group2 doaoao
[root@localhost ~]# su - doaoao
[doaoao@localhost ~]$ groups
doaoao group2
[doaoao@localhost ~]$
以追加形式 -aG 添加组成员
[root@localhost ~]# groupadd group3
[root@localhost ~]# usermod -aG group3 doaoao
[root@localhost ~]# su - doaoao
[doaoao@localhost ~]$ groups
doaoao group2 group3
userdel使用
[root@localhost ~]# userdel
用法:userdel [选项] 登录
选项:
-f, --force force some actions that would fail otherwise
e.g. removal of user still logged in
or files, even if not owned by the user
-h, --help 显示此帮助信息并推出
-r, --remove 在删除用户的同时删除这个用户的家目录及其邮箱
-R, --root CHROOT_DIR chroot 到的目录
-Z, --selinux-user 为用户删除所有的 SELinux 用户映射
删除用户doaoao不删除其家目录及其邮箱
[root@localhost ~]# userdel doaoao
删除用户doaoao删除家目录及其邮箱
[root@localhost ~]# userdel -r doaoao
groupadd使用
[root@localhost ~]# groupadd
用法:groupadd [选项] 组
选项:
-f, --force 如果组已经存在则成功退出
并且如果 GID 已经存在则取消 -g
-g, --gid GID 为新组使用 GID
-h, --help 显示此帮助信息并推出
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值
-o, --non-unique 允许创建有重复 GID 的组
-p, --password PASSWORD 为新组使用此加密过的密码
-r, --system 创建一个系统账户
-R, --root CHROOT_DIR chroot 到的目录
[root@localhost ~]# groupadd group5
groupmod使用
[root@localhost ~]# groupmod
用法:groupmod [选项] 组
选项:
-g, --gid GID 将组 ID 改为 GID
-h, --help 显示此帮助信息并推出
-n, --new-name NEW_GROUP 修改群组的名称
-o, --non-unique 允许使用重复的 GID
-p, --password PASSWORD 将密码更改为(加密过的) PASSWORD
-R, --root CHROOT_DIR chroot 到的目录
[root@localhost ~]# groupmod -g 200 -n test_group group5
groupdel的使用
[root@localhost ~]# groupdel
用法:groupdel [选项] 组
选项:
-h, --help 显示此帮助信息并推出
-R, --root CHROOT_DIR chroot 到的目录
[root@localhost ~]#
[root@localhost ~]# groupdel test_group
gpasswd:群组管理员功能
如果系统管理员太过繁忙,当某个账号想要加加入某个项目时却找不到系统管理员。这个时候就可以创建群组管理员可以用来将某些账户移入/移出群组,通过gpasswd来创建群组管理员
# 创建一个新的群组
[root@localhost ~]# groupadd test_group1
# 创建一个群组口令
[root@localhost ~]# gpassed test_group1
-bash: gpassed: command not found
[root@localhost ~]# gpasswd test_group1
正在修改 test_group1 组的密码
新密码:
请重新输入新密码:
# 将用户doaoao添加为账号管理员
[root@localhost ~]# gpasswd -A doaoao test_group1
[root@localhost ~]# grep test_group1 /etc/group /etc/gshadow
/etc/group:test_group1:x:672:
/etc/gshadow:test_group1:$6$T0YvW/ossN2$Ngb4jWtookuy9O2sowKw3IXqPnC7rAC9GkskWoAKue5GQg
CHHYprlu27RtcSFZdOhxzloPLM0ylaITfxnHpuB1:doaoao:
# 权限
# 利用 ls -l 来查看文件的权限
[root@localhost ~]# ls -l
总用量 1792
-rw-r--r-- 1 root root 61 10月 9 2016 abc.txt
-rw-------. 1 root root 1417 1月 21 19:47 anaconda-ks.cfg
-rw-r--r--. 1 root root 0 1月 21 15:47 a.txt
-rw-r--r--. 1 root root 97 1月 24 10:21 cenros.repo
-rw-r--r--. 1 root root 46478 1月 21 19:47 install.log
-rw-r--r--. 1 root root 10033 1月 21 19:44 install.log.syslog
-rw-r--r--. 1 root root 1722164 11月 4 2014 python-boto-2.32.1-1.el6.centos.noarch.rpm
-rw-r--r--. 1 root root 46478 1月 21 19:47 install.log
第一列:-rw-r--r--
第1个字符为第1组:"-"表示为一个文件,"d"表示为一个目录,"b"表示设备,"p"表示管道文件
第2,3,4字符为第2组:表示文件的属主对文件具有的权限(权限分三类:读r,写w,执行x,rwx表示具有三钟权限 ),用u表示属主对该文件具有全部权限
第5,6,7字符为第3组:表示文件或目录的属主所在的群组中的其它用户具有的权限,用g表示该权限
第8,9,10字符为第4组:表示既不是属主也不是和属主同一组的其它用户的权限用o代表该权限
第二列:"."表示文件是在安全状态下创建的
第三列:"1"表示的为硬链接数
第四列:root表示文件或文档的属主为root
第五列:root表示文件或文档的属组为root
第六列:46478表示文件的大小
第七列:1月 21 19:47表示文件或则文档的创建时间
第八列:install.log表示文件的名称
注:root用户也被称为超超级用户,它完全可以不受限制地访问任何用户的账户和文件及其目录
# 文件权限的修改chmod
[root@bogon ~]# mkdir /test
[root@bogon ~]# cd /test/
[root@bogon test]# touch a.txt
[root@bogon test]# ls -l
总用量 0
-rw-r--r--. 1 root root 0 1月 10 11:22 a.txt
[root@bogon test]# chmod u-rw a.txt # 表示u权限改为 ---
[root@bogon test]# ll
总用量 0
----r--r--. 1 root root 0 1月 10 11:22 a.txt
[root@bogon test]# chmod u+rw a.txt # 表示u权限改为 rw-
[root@bogon test]# ll
总用量 0
-rw-r--r--. 1 root root 0 1月 10 11:22 a.txt
[root@bogon test]# chmod u=rwx a.txt # 表示u权限改为 rwx
[root@bogon test]# ll
总用量 0
-rwxr--r--. 1 root root 0 1月 10 11:22 a.txt
[root@bogon test]# chmod u=- a.txt # 表示u权限改为 ---
[root@bogon test]# ll
总用量 0
----r--r--. 1 root root 0 1月 10 11:22 a.txt
r:表示read(读)权限---------->4
w:表示write(写)权限--------->2
X:表示execut(执行)权限---->1
+:表示加入权限
-:表示去掉权限
=:表示设定权限
注:
# 对待目录来说 可读权限表示能够浏览该目录下包含的文件,子文件,子目录
# 对目录具有可读可写表示 可以在目录下进行添加文件 重命名文件 删除文件
# 对目录的可执行权限(例如windows中的双击打开文件)(Linux中的cd到该目录下)
chown修改文件或目录属主
# 创建新文件并查看其权限
[root@localhost ~]# chown doaoao test_owner.txt
[root@localhost ~]# ls -l
-rw-r--r-- 1 root root 0 1月 26 13:50 test_owner.txt
# 修改文件的属主为doaoao
[root@localhost ~]# chown doaoao test_owner.txt
[root@localhost ~]# ls -l
-rw-r--r-- 1 doaoao root 0 1月 26 13:50 test_owner.txt
chgrp修改文件或目录的属组
# 查看文件的属组为root
[root@localhost ~]# chown doaoao test_owner.txt
[root@localhost ~]# ls -l
-rw-r--r-- 1 doaoao root 0 1月 26 13:50 test_owner.txt
# 查看文件的属组为doaoao
[root@localhost ~]# chgrp doaoao test_owner.txt
[root@localhost ~]# ls -l
-rw-r--r-- 1 doaoao doaoao 0 1月 26 13:50 test_owner.txt
chown同时修改属主和属组
[root@localhost ~]# chown root.root test_owner.txt
[root@localhost ~]# ls -l
-rw-r--r-- 1 root root 0 1月 26 13:50 test_owner.txt
基础补充:一次性创建多个文件
[root@localhost test]# touch /test/{1..9}.txt
[root@localhost test]# ll
总用量 0
-rw-r--r--. 1 root root 0 1月 10 20:36 1.txt
-rw-r--r--. 1 root root 0 1月 10 20:36 2.txt
-rw-r--r--. 1 root root 0 1月 10 20:36 3.txt
-rw-r--r--. 1 root root 0 1月 10 20:36 4.txt
-rw-r--r--. 1 root root 0 1月 10 20:36 5.txt
-rw-r--r--. 1 root root 0 1月 10 20:36 6.txt
-rw-r--r--. 1 root root 0 1月 10 20:36 7.txt
-rw-r--r--. 1 root root 0 1月 10 20:36 8.txt
-rw-r--r--. 1 root root 0 1月 10 20:36 9.txt
----r--r--. 1 root root 0 1月 10 11:22 a.txt
补充:
centos6.9(Linux系统)安装VMware tools教程:https://jingyan.baidu.com/article/cd4c2979361620756f6e606b.html
待补充...
今天关于【Linux基础】Linux系统默认目录功能简介和linux默认目录的名称及作用的讲解已经结束,谢谢您的阅读,如果想了解更多关于linux下PHP错误警报开启与关闭 linux php exec 执行不了 linux系统 linux系统下、Linux基础-14day-Linux系统服务管理、Linux基础-15day-Linux系统目录结构、Linux基础_Linux操作系统简介的相关知识,请在本站搜索。
本文标签: