指令后面的数字含义:1 代表一般帐号可用指令,8代表系统管理员常用指令,5代表系统设定档格式;
[root@study ~]# shutdown -h now
立刻关机,其中now相当于时间为0的状态
[root@study ~]# shutdown -h 20:25
系统在今天的20:25分会关机,若在21: 25才下达此指令,则隔天才关机
[root@study ~]# shutdown -h +10
系统再过十分钟后自动关机
[root@study ~]# shutdown -r now
系统立刻重新开机
[root@study ~ ]# shutdown -r +30 'The system will reboot'
再过三十分钟系统会重新开机,并显示后面的讯息给所有在线上的使用者
[root@study ~]# shutdown -k now 'This system will reboot'
仅发出警告信件的参数!系统并不会关机啦!
/etc/password --------用户信息
/etc/group -------组记录
/etc/shadow -----个人密码
元件 | 内容 | r | w | x |
---|---|---|---|---|
文件 | 文件资料夹 | 读文件内容 | 修改文件内容 | 执行 |
目录 | 目录下文件与目录 (档名) | 读到档名 | 改目录名;删/增目录内容 | 进入该目录 |
目录必须开放r和x,别人才可以浏览该目录;但是w不能随便给
linux 档案副档名:文件后缀名,判断文件用途。
注:档名长度:255bytes或128中字;避开使用特殊字符,如 . 和 - 等
目录 | 档案内容 |
---|---|
/bin | 在单人维护模式下还能够被操作的指令。主要有:cat, chmod, chown, date, mv, mkdir, cp, bash等等常用的指令。 |
/boot | 放置开机会使用到的档案,包括Linux核心档案以及开机选单与开机所需设定档等等。Linux kernel常用的档名为:vmlinuz |
/dev | 任何装置与周边设备都是以档案的型态存在于这个目录当中 |
/etc | 系统主要的设定档。/etc/opt(必要):这个目录在放置第三方协力软体/opt的相关设定档。 /etc/X11/(建议):与X Window有关的各种设定档都在这里,尤其是xorg.conf这个X Server的设定档。/etc/sgml/(建议):与SGML格式有关的各项设定档。/etc/xml/(建议):与XML格式有关的各项设定档 |
/lib | 在开机时会用到的函式库,以及在/bin或/sbin底下的指令会呼叫的函式库(外挂)。/lib/modules/:这个目录主要放置可抽换式的核心相关模组(驱动程序)! |
/media | 放置的就是可移除的装置 |
/mnt | 暂时挂载某些额外的装置 |
/opt | 给第三方协力软体放置的目录 |
/sbin | 用来设定系统环境的指令(只有root可以用),如fdisk,mkfs |
/srv | 一些网络服务启动之后,这些服务所需要取用的资料目录。 |
/tmp | 一般使用者或者是正在执行的程序暂时放置档案的地方。(任何人都可以存取,定期清理) |
目录 | 档案内容 |
---|---|
/lib | 用来存放与/lib 不同的格式的二进位函式库 |
/home | 使用者家目录【~】或【~username】 |
/root | 系统管理员(root)的家目录。 |
/lost+found | 使用标准的ext2/ext3/ext4档案系统格式才会产生的一个目录,目的在于当档案系统发生错误时, 将一些遗失的片段放置到这个目录下 |
/proc | 一个『虚拟档案系统(virtual filesystem)』,放置的资料都是在记忆体当中,例如系统核心、行程资讯(process)、周边装置的状态及网路状态等等。不占硬碟容量 |
/sys | 一个虚拟的档案系统,主要也是记录核心与系统硬体资讯较相关的资讯。不占硬碟容量 |
所有系统预设的软体(distribution发布者提供的软体)都会放置到/usr底下。
目录 | 档案内容 |
---|---|
/usr/bin/ | /usr/bin 与/bin 是一模一样 |
/usr/lib/ | 与/lib 功能相同 |
/usr/local/ | 系统管理员在本机自行安装自己下载的软体(非预设提供者),建议安装到此目录, 这样会比较便于管理。 |
/usr/sbin/ | 非系统正常运作所需要的系统指令。/sbin 也差不多 |
/usr/share/ | 主要放置共享文件。放置的资料几乎是不分硬体架构均可读取的资料, 因为几乎都是文字档案 usr/share/man:线上说明文件。/usr/share/doc:软体杂项的文件说明。/usr/share/zoneinfo:与时区有关的时区档案 |
/usr/games/ | 与游戏比较相关的资料放置处 |
/usr/include/ | c/c++等程序语言的档头(header)与包含档(include)放置处,当我们以tarball方式(*.tar.gz 的方式安装软体)安装某些资料时,会使用到里头的许多包含档 |
/usr/src/ | 一般原始码建议放置到这里,src有source的意思。至于核心原始码则建议放置到/usr/src/linux/目录下。 |
/var就是在系统运作后才会渐渐占用硬碟容量的目录。因为/var目录主要针对常态性变动的档案,包括快取(cache)、登录档(log file)以及某些软体运作所产生的档案, 包括程序档案(lock file, run file),或者例如MySQL资料库的档案等等。
目录 | 档案内容 |
---|---|
/var/cache/ | 应用程序本身运作过程中会产生的一些暂存档 |
/var/lib/ | 程序本身执行的过程中,需要使用到的资料档案放置的目录。 |
/var/lock/ | 某些装置或者是档案资源一次只能被一个应用程序所使用,如果同时有两个程序使用该装置时, 就可能产生一些错误的状况,因此就得要将该装置上锁(lock),以确保该装置只会给单一软体所使用。已经挪到/run/lock 中 |
/var/log/ | 这是登录档放置的目录!里面比较重要的档案如/var/log/messages, /var/log/wtmp(记录登入者的资讯)等。 |
/var/mail/ | 放置个人电子邮件信箱的目录,不过这个目录也被放置到/var/spool/mail/目录中!通常这两个目录是互为连结档啦! |
/var/run/ | 某些程序或者是服务启动后,会将他们的PID放置在这个目录下喔!=与/run 相同,这个目录连结到/run |
/var/spool/ | 通常放置一些 排队等待其他程序使用的资料 |
绝对路径档名为从根目录/ 开始写起,否则都是相对路径的档名。
. 代表当前的目录,也可以使用./ 来表示;
… 代表上一层目录,也可以…/ 来代表。
-
代表前一个工作目录
~ 代表登陆者的家目录
ehco $PATH //不同的用户,输出结果不同
PATH="${PATH};/win/test" //将/win/test添加到PATH中
umask 查询档案预设权限
一般为022,则新建文件的实际权限是744(766-022);新建目录权限为755(777-022)。
022,表示组用户和其他用户都拿走写权限;003,表示其他用户拿走写和执行权限。
chattr 设定档案隐藏属性
chattr【+,-,=】 【A,S,a,c,d,i,s,u】档案名
lsattr 显示档案隐藏属性
lsattr [-adR] 档案名
a—显示隐藏档案的属性;d----列出目录本身的属性而非目录下的档案;R-----显示子目录的资料
usr/bin/passwd 具有SUID权限,所以dmtsai可以通过passwd 修改自己的密码(修改/usr/bin/passwd内容)
SGID可以针对档案或目录来设定!如果是对档案来说, SGID 有如下的功能:
当一个目录配置了 SGID 的权限后,它将具有如下的功能:
SBIT对于目录的作用是:
【数字法】 4为SUID;2为SGID;1为SBIT。
【符号法】 SUID为u+s ; SGID为g+s ;SBIT是o+t。
例如:
[root@www tmp]# chmod 4755 test; ls -l test <==加入具有 SUID 的权限
-rwsr-xr-x 1 root root 0 Sep 29 03:06 test
[root@www tmp]# chmod 7755 test; ls -l test <==加入具有 SUID/SGID 的权限
-rwsr-sr-t 1 root root 0 Sep 29 03:06 test
## s和t取代了x这个权限,即s和t包含了x这个权限;
[root@www tmp]# chmod 7666 test; ls -l test <==具有空的 SUID/SGID 权限
-rwSrwSrwT 1 root root 0 Sep 29 03:06 test
## user, group 以及 others 都没有 x权限,所以,S, T 不包含x这个权限(为空)
[root@www tmp]# chmod u=rwxs,go=x test; ls -l test
-rws--x--x 1 root root 0 Aug 18 23:47 test
# 承上,加上 SGID 与 SBIT 在上述的文件权限中!
[root@www tmp]# chmod g+s,o+t test; ls -l test
-rws--s--t 1 root root 0 Aug 18 23:47 test
stat 用来显示文件的详细信息,包括inode, atime, mtime, ctime
file 查看文件是属于 ASCII 或者是 data 文件,或者是 binary , 且其中有没有使用到动态函式库 (share library) 等等信息
[hao@haows ~]$ file test.c
test.c: C source, ASCII text
[hao@haows ~]$ stat test.c
文件:test.c
大小:50 块:8 IO 块:4096 普通文件
设备:805h/2053d Inode:1062624 硬链接:1
权限:(0644/-rw-r--r--) Uid:( 1000/ hao) Gid:( 1000/ hao)
最近访问:2019-09-27 23:13:26.922913643 +0800
最近更改:2019-09-27 23:13:21.319473455 +0800
最近改动:2019-09-27 23:13:21.326140247 +0800
创建时间:2019-09-27 23:13:21.319473455 +0800
which 是根据使用者所配置的 PATH 变量内的目录去搜寻可运行档的
注意:which 找不到cd命令的所在目录,是因为cd是bash内建的命令,which默认找PATH内所规范的目录。(可以通过type命令)
which [-a] command
Linux 系统会将系统内的所有文件都记录在一个数据库文件『 /var/lib/mlocate/』里面, 而当使用 whereis 或者 locate 时,都会通过该数据库文件来进行找,相对于find(find 是直接搜寻硬盘)来说,速度快!
更新数据库:updatedb(根据 /etc/updatedb.conf 的配置去搜寻系统硬盘内的档名,并升级 /var/lib/mlocate 内的数据库文件;)
whereis [-bmsu] 文件或目录名
-b :只找 binary 格式的文件
-m :只找在说明档 manual 路径下的文件
-s :只找 source 来源文件
-u :搜寻不在上述三个项目当中的其他特殊文件
locate [-ir] keyword
-i :忽略大小写的差异;
-r :后面可接正规表示法的显示方式
find [PATH] [option] [action]
选项与参数:
注意:find 会搜寻次目录;find能够进行额外的动作(命令)。