(一)Linux实操之——权限、任务调度、磁盘分区

1. 权限

1.1 查看权限

通过ls -l命令可以看到文件的详细信息

下面以一条信息解释各个位置字符的作用

-rwxr--r--. 1 root root   32 6月  18 10:15 choose.sh

(1) 0-9位说明:

  • 第0位确定文件类型(-:普通文件,d:目录,l:软链接,c:字符设备,如键盘、鼠标,b:块文件,硬盘)
  • 第1-3位确定所有者(该文件的所有者)拥有该文件的权限    --User
  • 第4-6位确定所属组(同用户组的)拥有该文件的权限     -Group
  • 第7-9位确定其他用户拥有该文件的权限     --Other

(2) 1

如果是文件,表示硬链接的数;如果是目录,表示该目录子目录的个数

(3)  root root

文件所有者,文件所属组    User Group

(4) 32

文件大小,如果是目录则是4096

(5) 6月 18 10:15

上一次的修改时间

(6) choose.sh

文件或目录名称

1.2 rwx权限

1.2.1 rwx权限详解

1.2.2.1 rwx作用到文件

  • [ r ]代表可读(read): 可以读取,查看。
  • [ w ]代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件。
  • [ x ]代表可执行(execute):可以被执行。

1.2.1.2 rwx作用到目录

  • [ r ]代表可读(read): 可以读取,ls 查看目录内容。
  • [ w ]代表可写(write): 可以修改,目录内创建+删除+重命名目录。
  • [ x ]代表可执行(execute):可以进入该目录。

1.2.2 修改权限 —— chmod

1.2.2.1 通过+,-,=变更权限

给 abc 文件 的所有者读写执行的权限,给所在组读执行权限,给其它组读执行权限

[[email protected] myDir]# chmod u=rwx,g=rx,o=rx abc
[[email protected] myDir]# ls -l
总用量 4
-rwxr-xr-x. 1 root root 8 6月  24 15:44 abc

给 abc 文件的所有者除去执行的权限,增加组写的权限

[[email protected] myDir]# chmod u-x,g+w abc
[[email protected] myDir]# ls -l
总用量 4
-rw-rwxr-x. 1 root root 8 6月  24 15:44 abc

给 abc 文件的所有用户添加读的权限

[[email protected] myDir]# chmod a+r abc
[[email protected] myDir]# ls -l
总用量 4
-rw-rwxr-x. 1 root root 8 6月  24 15:44 abc

1.2.2 通过数字变更权限

规则:r=4 w=2 x=1

给 abc 文件 的所有者读写执行(r+w+x=4+2+1=7)权限,给所在组读执行(r+w=4+1=5)权限,给其它组读执行(r+w=4+1=5)权限

[[email protected] myDir]# chmod 755 abc
[[email protected] myDir]# ls -l
总用量 4
-rwxr-xr-x. 1 root root 8 6月  24 15:44 abc

1.3 修改文件所有者—— chown

修改文件abc所有者为zang

[[email protected] myDir]# chown zang abc
[[email protected] myDir]# ls -l
总用量 4
-rwxr-xr-x. 1 zang root 8 6月  24 15:44 abc

将 /home/testShell目录下所有的文件和目录的所有者都修改成 zang

[[email protected] home]# chown -R zang testShell/
[[email protected] home]# cd testShell/
[[email protected] testShell]# ls -l
总用量 16
-rwxr--r--. 1 zang root   32 6月  18 10:15 choose.sh
-rw-r--r--. 1 zang root  299 6月  18 10:20 menuChoose
drwxr-xr-x. 2 zang root 4096 6月  24 15:44 myDir
-rwxr--r--. 1 zang root   37 6月  18 15:42 myShell.sh
-rw-r--r--. 1 zang root    0 6月  19 23:15 test.sh

1.4 修改用户所在组 —— chgrp

修改文件abc所在用户组为zang

[[email protected] myDir]# chgrp zang /home/testShell/myDir/abc
[[email protected] myDir]# ls -l
总用量 4
-rwxr-xr-x. 1 zang zang 8 6月  24 15:44 abc

将 /home/testShell目录下所有的文件和目录的所有所在组都修改成 zang

[[email protected] home]# chgrp -R zang testShell/
[[email protected] home]# cd testShell/
[[email protected] testShell]# ls -l
总用量 16
-rwxr--r--. 1 zang zang   32 6月  18 10:15 choose.sh
-rw-r--r--. 1 zang zang  299 6月  18 10:20 menuChoose
drwxr-xr-x. 2 zang zang 4096 6月  24 15:44 myDir

2. 任务调度

任务调度:是指系统在某个时间执行的特定的命令或程序。

任务调度分类:

  • 系统工作:有些重要的工作周而复始的执行。如病毒扫描等
  • 个别用户工作:个别用户可能希望执行某些程序,如对mysql数据库的备份

通过crontab 来进行定时任务的设置,简单任务可以直接在crontab中添加,复杂任务则需要写脚本,通过crontab来定时调用脚本。

2.1 任务调度命令 —— crontab [选项]

2.1.1 crontab 常用选项

crontab 常用选项如下:

  • -e:编辑crontab定时任务
  • -l:查询crontab任务
  • -r:删除当前用户所有的crontab任务

2.1.2 任务调度设置步骤

1)编辑任务调度任务

[[email protected] taskDir]# crontab -e

回车会跳出编辑vi界面,可在其中编辑简单调度任务

*/1 * * * * ls -l /etc >> /home/taskDir/lslog.txt

2)保存退出即自动执行调度

[[email protected] taskDir]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[[email protected] taskDir]# date
2018年 06月 24日 星期日 18:32:50 CST
[[email protected] taskDir]# ls
lslog.txt
[[email protected] taskDir]# cat lslog.txt
total 2480
drwxr-xr-x.  3 root root   4096 May 14  2017 abrt
drwxr-xr-x.  4 root root   4096 May 14  2017 acpi···

另外两个选项的使用

[[email protected] taskDir]# crontab -l
*/1 * * * * ls -l /etc >> /home/taskDir/lslog.txt
[[email protected] taskDir]# crontab -r
[[email protected] taskDir]# crontab -l
no crontab for root

2.2 任务定义的参数

*/1 * * * * ls -l /etc >> /home/taskDir/lslog.txt

五个占位符的说明

占位符参数的说明

特定时间执行任务案例

2.3 任务调度调用脚本

2.3.1 每隔 1 分钟, 将当前日期和日历都追加到 /home/taskDir/datelog.txt 文件中

[[email protected] taskDir]# ls
[[email protected] taskDir]# pwd
/home/taskDir
[[email protected] taskDir]# vim dateTask.sh
[[email protected] taskDir]# cat dateTask.sh
date >> /home/taskDir/datelog.txt
cal >> /home/taskDir/datelog.txt
[[email protected] taskDir]# chmod 744 dateTask.sh
[[email protected] taskDir]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[[email protected] taskDir]# crontab -l
*/1 * * * * /home/taskDir/dateTask.sh
[[email protected] taskDir]# date
2018年 06月 24日 星期日 19:04:37 CST
[[email protected] taskDir]# ls -l
总用量 8
-rw-r--r--. 1 root root 177 6月  24 19:04 datelog.txt
-rwxr--r--. 1 root root  67 6月  24 19:03 dateTask.sh
[[email protected] taskDir]# cat datelog.txt
Sun Jun 24 19:04:01 CST 2018
      June 2018
Su Mo Tu We Th Fr Sa
                1  2
 3  4  5  6  7  8  9
10 11 12 13 14 15 16
17 18 19 20 21 22 23

2.3.2 每天凌晨2:00将mysql数据库testdb,备份到文件mydb.bak

[[email protected] taskDir]# vim backup_mysql.sh
[[email protected] taskDir]# cat backup_mysql.sh
/usr/local/mysql/bin/mysqldump  -uroot -p123 testdb > /tmp/mydb.bak
[[email protected] taskDir]# chmod 744 backup_mysql.sh
[[email protected] taskDir]# crontab -e
crontab: installing new crontab
[[email protected] taskDir]# crontab -l
*/1 * * * * /home/taskDir/dateTask.sh
0 2 * * *   /home/taskDir/backup_mysql.sh

3. 磁盘分区

3.1 分区类型

MBR(Master Boot Record)和GPT(GUID Partition Table)是在磁盘上存储分区信息的两种不同方式。这些分区信息包含了分区从哪里开始的信息,这样操作系统才知道哪个扇区是属于哪个分区的,以及哪个分区是可以启动的。在磁盘上创建分区时,你必须在MBR和GPT之间做出选择。

两种分区方式区别

MBR分区:

  • 最多支持四个主分区
  • 系统只能安装在主分区
  • 扩展分区要占一个主分区
  • MBR 最大只支持 2TB,但拥有最好的兼容性

GPT分区:

  • 支持无限多个主分区(但操作系统可能限制,比如 windows 下最多 128 个分区)
  • 最大支持 18EB 的大容量(1EB=1024 PB,1PB=1024 TB )
  • windows7 64 位以后支持 GTP

GPT分区方式凭借更强的健壮性与更大的兼容性,正逐步取代MBR分区方式。

3.2 硬盘说明

Linux 硬盘分为 IDE 硬盘和 SCSI 硬盘,目前基本上是 SCSI 硬盘。

  • 对于 IDE 硬盘,驱动器标识符为“hdx~”,其中“hd”表明分区所在设备的类型,这里是指 IDE 硬盘了。“x”为盘号(a 为基本盘,b 为基本从属盘,c 为辅助主盘,d 为辅助从属盘),“~”代表分区,前四个分区用数字 1 到 4 表示,它们是主分区或扩展分区,从 5 开始就是逻辑分区。例,hda3 表示为第一个 IDE 硬盘上的第三个主分区或扩展分区,hdb2 表示为第二个 IDE 硬盘上的第二个主分区或扩展分区。
  • 对于 SCSI 硬盘则标识为“sdx~”,SCSI 硬盘是用“sd”来表示分区所在设备的类型的,其余则和 IDE 硬盘的表示方法一样。

3.3 Linux分区原理

Linux 来说无论有几个分区,分给哪一目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构 , Linux 中每个分区都是用来组成整个文件系统的一部分。

Linux 采用了一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目录,且将一个分区和一个目录联系起来。这时要载入的一个分区将使它的存储空间在一个目录下获得。

3.4 常用分区命令   ——lsblk

查看系统分区情况  —— lsblk

3.5 挂载     ——mount

实际工作中,当硬盘容量不够时,可通过挂载来实现增加硬盘,从而增加系统容量。下面以本机增加一块2GB的磁盘空间来演示。

操作步骤:

(1)在【虚拟机】菜单中,选择【设置】,然后设备列表里添加硬盘,然后一路【下一步】,中间只有选择磁盘大小的地方需要修改,至到完成。

添加之后需要重启才能识别到。

此时该磁盘未分区,也未格式化。

(2)分区

fdisk /dev/sdb

(3)格式化

mkfs -t ext4 /dev/sdb1

格式化后产生表示分区的UUID

(4)挂载

mount /dev/sdb /opt

注意:挂载后/opt目录下的文件会被临时删除,所以尽量选择创建一个新文件夹来挂载

(5)上面的方式只是临时挂载,下次开机时不会自动挂载,要想永久挂载可对 /etc/fstab 文件进行编辑

vim /etc/fstab

增加如下一行

/dev/sdb1   /opt/newdisk    ext4    defaults        0 0

即时生效

mount -a    #将 /etc/fstab 中定义的所有档案系统挂上

重启之后可看到磁盘一直挂载

3.6 卸载      ——umount

卸载分区挂载

umount /opt/newdisk    #卸载分区,卸载之后,其实还可以挂载,而且数据还会在的

删除分区  fdisk /dev/sdb  ,按提示操作

fdisk /dev/sdb
m
d  

3.7 磁盘情况查询     ——df   &  du

3.7.1 系统整体磁盘使用情况     df -h

3.7.2 查询指定目录的磁盘的占用情况   du -h

语法:

du [选项][文件]

仅列出较常用的选项:

  • -a:显示目录中个别文件的大小。
  • -c:除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
  • -h:以K,M,G为单位,提高信息的可读性。
  • -s:仅显示总计。
  • --max-depth=<目录层数>: 超过指定层数的目录后,予以忽略。

如:查询 /opt 目录的磁盘占用情况,深度为1

3.7.3 工作中查询磁盘情况的常用指令

(1)统计/home 文件夹下文件的个数

ls -l /home | grep "^-" | wc -l

(2)统计/home 文件夹下目录的个数

ls -l /home | grep "^d" | wc -l

(3)统计/home文件夹下文件的个数,包括子文件夹里的

ls -lR /home | grep "^-" | wc -l

(4)统计文件夹下目录的个数,包括子文件夹里的

ls -lR /home | grep "^d" | wc -l

(5)以树状显示目录结构

yum install tree   #如果提示tree未安装,执行该命令安装
tree   #以树状显示目录结构

注:博客中注重实操,篇幅原因,未对命令进行深挖,如果对命令的理解有疑惑,可到 Linux命令大全 查询。

原文地址:https://www.cnblogs.com/zjfjava/p/9220010.html

时间: 2024-08-30 13:23:16

(一)Linux实操之——权限、任务调度、磁盘分区的相关文章

(二)Linux实操之——网络配置、进程管理、服务管理、组管理

接上段   (一)Linux实操之——权限.任务调度.磁盘分区 4.网络配置 4.1 NAT模式的网络配置 目前我们采用的网络配置是NAT模式. windows下cmd通过 ipconfig 命令可以得到本机的网络配置. linux下通过 ifconfig 可得到虚拟机的网络配置 在windows系统中运行着虚拟机中的linux系统,那么两个系统是怎么通信的呢? 实际上windows系统与本机的linux的通信是通过 VMnet8的虚拟网卡来进行的,两者形成网络,192.168.177.128

linux实操常用命令总结

1. linux目录操作命令 ------目录的增.删.改.查------ cd, pwd, ls, mkdir, mv, ls(du, df, tree) 切换目录,跟window的使用类似 cd 显示目录的详细信息 ls -ld 直接切换到根目录 cd / 在根目录下创建oracle目录 mkdir /oracle ls -ld /oracle drwxr-xr-x 2 root root 4096 Jun 21 15:00 /oracle 一次创建多个目录 mkdir -p /u01/ap

理论+实操:LVM与磁盘配额

[TOC] 前言: LVM是逻辑卷管理的简称,它是Linux环境下对磁盘分区管理的一种机制,实现文件系统跨越不同磁盘和分区,工作原理是将若干个磁盘分区连接成一个整块卷组,在卷组上随意创建逻辑卷组,最后在逻辑卷组上创建文件系统,管理员可以动态调整逻辑卷的大小,不会丢失现有的数据,通过创建LVM可以对磁盘进行动态管理. 一:LVM(逻辑卷)概述 1.1 Logical Volume Manager,逻辑卷管理 动态调整磁盘容量,从而提高磁盘管理的灵活性 /boot(系统内核)分区用于存放引导文件,不

linux下使用fdisk命令进行磁盘分区

linux下使用fdisk命令进行磁盘分区 目录 分区类型 分区方法表示 文件系统 fdisk命令分区过程 分区类型 主分区:总共最多只能分四个 扩展分区:只能有一个,也算作主分区的一种,也就是说主分区加扩展分区最多有四个.但是扩展分区不能存储数据和格式化,必须再划分成逻辑分区才能使用. 逻辑分区:逻辑分区是在扩展分区中划分的,如果是IDE硬盘,Linux最多支持59个逻辑分区,如果是IDE硬盘,Linux最多支持59个逻辑分区,如果是SCSI硬盘Linux最多支持11个逻辑分区 分区方法表示

Linux crond任务调度 磁盘分区和挂载 网络环境 进程管理 服务(service)管理 动态监控进程 rpm和yum

crond任务调度 1.基本语法 1.crontab [选项] -e : bianji crontab定时任务 -l : 查询crontab -r : 删除当前用户所有的crontab任务2.编辑模式:时间格式 命令或脚本路径 参数说明 示例: 例子: 每分钟执行查看一次/ect目录,把目录内容写进/tml/a.txt下 具体实现步骤: 1.crontab -e 2.*/1 * * * * ls -l /etc >> /tmp/a.txt 3.保存退出 上述权限示例 Linux 磁盘分区.挂载

Linux环境:fdisk 及parted磁盘分区管理工具介绍

1. fdisk分区工具及实质 2.查看磁盘分区信息 3.查看磁盘分区cat /proc/partitions ll /dev/sd* 4.parted 磁盘分区管理工具介绍 原文地址:https://blog.51cto.com/14298876/2381948

linux实操_组管理和权限管理

1.文件/目录的所有者 一般为文件的创建者,谁创建了该文件,就自然成为该文件的所有者. 查看文件的所有者: 指令:ls -ahl 修改文件所有者: 指令:chown 用户名 文件名 组的创建: 指令:groupadd 组名 2.文件/目录所在组 当某个用户创建了一个文件后,默认这个文件的所在组就是该用户的所在组. 查看文件/目录所在组: 指令:ls -ahl 修改文件所在组: 指令:chgrp 组名 文件名 3.其他组 除文件的所有者和所在组的用户外,系统的其他用户都是文件的其他组. 4.改变用

Linux实操篇

Linux创始人-linux林纳斯,Linux是一款操作系统,免费,开源,安全,高效,稳定,处理高并发非常强悍,现在很多的企业级的项目都部署到Linux/unix服务器运行 VM安装 ... Ubuntu安装 / CentOS安装 ... 难点:虚拟机的网络连接三种形式的说明 1.桥接模式:Linux可以和其他的系统通信,但是可能造成ip冲突 2.NAT模式:网络地址转换方式,Linux可以访问外网,不会造成ip冲突 3.仅主机模式:Linux是一个独立的主机,不能访问外网 Linux的目录结构

Linux实操、优化

Linux特点: 免费,开源,安全,高效,稳定,处理高并发非常强悍. 目录结构 Linux世界里,一切皆文件. Linux文件系统是采用层级式的树状目录结构 树状目录结构: 1 /bin: 2 bin是Binary的缩写, 这个目录存放着最经常使用的命令. 3 4 /boot: 5 这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件. 6 7 /dev : 8 dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问