su命令,sudo命令,限制root远程登陆,df命令,du命令,磁盘分区

su命令

  • su命令能够切换用户
  • su - aming 就能够切换到aming用户
  • 使用 su aming 也能够切换用户,可是不加 - 的话切换就不完全
  • 若是不加 - 切换的话,并不会切换到aming用户的家目录下面,也不会加载aming用户的相关配置
  • 要加 - 才会切换到aming的家目录下,加载全部aming用户的配置
  • su - -c "touch /tmp/aming.111" aming 能够在不切换用户的状况下,以用户aming的身份,执行touch命令
  • su - 表明切换aming的全部配置,- 表明shell环境,不加 - shell环境就不会切换到新用户的shell
  • 这条命令里面,-c 参数就可使用这样的功能,-c后面接须要执行的指令,用双引号括起来
  • 这样就能够不切换到aming用户的状况下,用aming用户的身份执行 touch指令
  • 切换到user5用户,发现user5用户的shell不正常,以前建立这个用户的时候没有建立家目录,因此才这样
  • 如今手动建立user5的家目录
  • 首先建立一个/home/user5目录
  • 而后使用 chown 将/home/user5/的全部者跟所属组改为user5跟user5组
  • 这个时候仍是没有成功,由于,/home/user5目录内没有相关的配置文件
  • 系统内部有一个模板目录,找到里面的模板并复制到user5目录里面去
  • 如图,/etc/skel/就是系统的模板目录,查看里面的文件
  • 发现有三个 .bash 开头的文件,使用命令 cp /etc/skel/.bash* /home/user5/
  • 这样就把三个.bash文件复制到user5目录了, .bash* 表明.bash+任意字符
  • 因此,.bash* 就表明了三个 .bash文件,使用这种写法,就能够把全部.bash开头的文件一块儿复制
  • 而后用chown修改user5目录,加上-R参数,这样user5目录里的子文件子目录就跟user5的全部者和所属组一致了
  • 符号 !$ 表明上一条命令的最后一个参数,chown上一条命令的最后一个参数是 /home/user5/
  • 而后再切换到user5用户,就能够看到,user5的shell和家目录正常了
  • 使用 su - 就能够从其余用户切换到root,可是要输入root密码

sudo命令

  • sudo能够临时给普通用户受权root用户的身份,去执行命令
  • 可使用 visudo 打开sudo的配置文件
  • 打开sudu配置文件后,往下翻页,找到如图所示的这一行,能够在这里配置其它用户使用sudo命令时的权限
  • 在root行下面能够写入新的用户信息,这里添加aming用户
  • 第二列信息,ALL=(ALL)是固定写法,就照这样写就行了
  • 第三列是命令信息,表明临时受权可使用哪些命令,若是写ALL就表明可使用全部命令
  • 这里写三个命令,分别是ls,mv,cat三个命令,这里必须写三个命令文件的绝对路径,不能简写
  • 这样使用sudo命令的时候,其它用户能够用root的身份使用ls,mv,cat三个命令了
  • 而后 :wq 保存退出
  • 上图 sudo /usr/bin/ls /root/ 也能够写 sudo ls /root/
  • 第一次使用须要输入用户密码,之后就不须要输入密码了
  • 如图所示,也能够在命令前面加上 NOPASSWD: 而后空格再写入命令文件的路径
  • 这样使用sudo的时候,就不须要输入用户密码了
  • 找到如图所示的位置,这里能够设置命令组合的别名
  • 如图 Cmnd_Alias 是固定开头格式,AMING_CMD是自定义的别名,等号后面是命令文件路径
  • 这样写了以后,AMING_CMD 就能够表明这三条命令
  • 再回到下面写入用户权限那里,就能够把三条命令的路径信息删除,只写AMING_CMD就好了
  • 由于AMING_CMD就包含了三条命令的路径信息,因此在这里写AMING_CMD和写路径信息时同样的效果

限制root远程登陆

  • 由于root权限太大,root密码有被人盗取的风险,
  • 因此直接用root密码远程登陆的话,一旦密码被人盗取,别人就能够直接以root的身份远程登陆主机,这样会有很大的风险
  • 为了防止别人得到root密码直接远程登陆主机,就须要限制root远程登陆
  • 这样就算别人得到密码,也不能远程登陆主机
  • 限制了root远程登陆之后,为了可以以root身份远程操做主机
  • 先要以普通用户身份远程登陆,而后使用sudo切换到root用户去
  • 这样就先要在sudo配置文件里面对普通用户设置切换到root用户的权限
  • 使用visudo打开配置文件,找到User Aliases 行
  • 而后在下面设置一个user aliases 也就是用户别名,能够把几个不一样的用户设置进去
  • 这样只要使用这个别名,就同时表明了设置进入的用户自己
  • 如图所示,User_Alias 这是固定格式开头,而后 AMINGS是自定义别名
  • 等号后面的 aming,user5,user6 就是设置进入这个别名的用户名称
  • 而后找到添加用户权限的行,添加新的用户AMINGS,也就是说上面设置的用户别名
  • 这个别名包含了三个真实用户,写在这里,就能够同时赋予这三个用户权限
  • ALL=(ALL) 括号里面的ALL表明全部用户,固然也包括root用户
  • 而后第三列,NOPASSWD: 设置无密码使用sudo,而后是 /usr/bin/su 文件路径
  • 这样就赋予了AMINGS别名中包含的三个用户以root身份使用su命令的权限
  • 也就是说,这三个用户在可使用su命令无需密码切换到root用户
  • 由于在使用su命令时,这三个用户临时得到了root用户权限,因此切换root用户是不须要密码的
  • 如今登陆这三个普通用户后,就可使用 sudo su - 来登陆root用户了
  • 可是普通用户这样登陆root用户后,权限太大,能够直接修改root密码
  • 因此须要作一些限制
  • 修改上面这个配置文件就能够限制root远程登陆
  • 进入配置文件后,输入 /Root 搜索Root关键字,而后就找到下面的行
  • 上面显示的 PermitRootLogin yes 这一行就能够限制root远程登陆
  • 能够看到这一行前面有一个井号 # ,这表示这一行是注释,不起做用
  • 因此须要删除井号 # ,这样这一行就再也不是注释了,能够产生做用
  • 而后把原来的 yes 改为 no , 这样就不容许root远程链接了
  • 而后保存退出,改完配置文件后须要重启网络服务 systemctl restart sshd.service
  • 远程链接服务器,能够看到输入密码后,仍是登录不了
  • 如图,先用aming用户远程登陆,而后使用sudo su - root 就能够登陆root用户了

df命令

  • df 能够查看文件系统磁盘空间信息
  • 运行df后,出现上图信息
  • 第一列是磁盘分区名称,第二列是磁盘总大小,单位是kb
  • 第三列是已经使用的空间,单位是kb,第四列是还有多少剩余空间,单位也是kb
  • 第五列是已用百分比,就是已经使用到的空间占总空间的百分比,须要重点关注
  • 第六列是挂载点,linux不能直接访问磁盘,须要有挂载点,经过挂载点才能进入磁盘
  • df -h 参数 -h 可使磁盘单位更好的显示,会显示MB,GB等单位
  • 第一列文件系统,名称带 tmpfs 的说明是临时文件系统,在临时文件系统里面的文件重启后就会消失
  • 挂载点,/dev/shm 表明内存,大小是物理内存的一半,若是想在内存写文件,能够放到这个目录里面
  • 主要仍是关注名称为 /dev/ 的文件系统,临时文件系统通常不须要关注
  • df 没法看到 swap 文件系统,须要使用 free 查看
  • df -i 能够查看分区有多少个 inode 还有 inode 的使用状况
  • inode 在格式化磁盘的时候,系统就会预先分配好
  • inode 若是使用完了,即便磁盘还有空间,也是没法写入数据的
  • df -m 参数 -m 可使磁盘单位显示为 MB
  • 因此df经常使用参数主要是 -h,-i,-m

du命令

  • du 能够查看文件大小
  • du -sh 能够查看文件大小
  • 若是只使用 du,如图 du /root/
  • 那么会显示root还有root下面的子目录子文件的大小,并且不显示单位,默认单位是kb
  • du -s /root 参数 -s 就能够只显示目录自己,不显示子文件子目录
  • du -sh /root 参数 h 就能够显示单位大小,有 kb,MB,GB等
  • du -sh /etc/passwd 和 ls -lh /etc/passwd 同一个文件大小不一致
  • 由于du显示的是passwd文件占硬盘大小,单位是块,ls显示的是文件实际大小,单位是bit
  • 有些文件数据就算不满一个块,也会占有一个块的位置,块的单位比bit大一些
  • 因此一个文件占硬盘大小有时候会比实际文件大小大一些

磁盘分区

  • 添加一个新的磁盘
  • 虚拟机右键,点设置
  • 点击添加
  • 选择硬盘,而后下一步
  • 保持默认设置,而后下一步
  • 保持默认设置,而后下一步
  • 磁盘大小设置为10GB,而后下一步
  • 而后就点完成
  • fdisk -l 显示目前系统内存在的磁盘
  • 图片只显示了一块32.2GB 的磁盘,并无显示刚才建立的磁盘
  • 须要reboot 重启一下
  • 重启以后,再使用 fdisk -l 查看一下系统有没有识别新硬盘
  • 能够看到,系统已经识别了新硬盘
  • fdisk除了查看系统磁盘有哪些,还能够对磁盘进行分区
  • 新硬盘的名称叫作 /dev/sdb,对新硬盘进行操做就须要用到这个名称
  • 执行 fdisk /dev/sdb , 而后输入m获取帮助信息,以下图
  • 其中比较经常使用的有:n , p , w , d 这四个命令
  • n 是增长新分区,p 是列出来,w 是保存,d 是删除
  • 使用 p 命令列出磁盘信息,发现没有任何分区
  • 使用 n 命令新增一个分区
  • 出现两个选择,选择分区类型,p表明主分区类型,e表明扩展分区类型,须要选择一个类型
  • 用fdisk划分分区,用一种叫作 MBR 的格式来分区,MBR分区特色,最多支持2TB
  • 超过2TB就不可使用fdisk来划分分区,MBR只能划分4个主分区(p分区),不能超过4个
  • 若是想使用超过4个分区的话
  • 能够划分3个p分区,划分一个e分区(扩展分区),而后在e分区里面划分逻辑分区,能够划分不少
  • 总之,主分区加扩展分区数量之和,不能大于4
  • 先建立一个主分区,输入 p 回车
  • 选择分区号,能够从1-4里面选择一个号码,这里选择1
  • 起始扇区默认从 2048 开始,直接回车就好了,2048就是硬盘上的位置
  • 表示从硬盘上的 2048 位置开始分区
  • Last扇区输入 +2G 而后回车
  • 输入2G系统会自动计算,从2048位置开始日后增长位置,直到达到2GB硬盘空间为止
  • 能够看到,大小为2G的分区就被建立了
  • 输入p列出磁盘信息
  • 能够看到,多出一行分区信息,名称sdb1,起始位置2048,id 83
  • 删除分区可使用 d 命令,输入 d 回车
  • 而后要求输入分区号码,想删除哪一个分区,就输入那个分区的分区号码,这里输入4
  • 而后4号分区就被删除了
  • 建立了四个分区,三个主分区,1个扩展分区
  • 能够看到,主分区的id都是83,扩展分区的id是5,全部主分区id都固定是83,扩展分区固定为5
  • 分区大小看 blocks 那一列,好比4号分区,大小是 4194304
  • 后三位304的单位是kb,4194的单位是MB,若是从最前面的4开始计算,单位就是GB
  • 已经满了4个分区,这时候再使用 n 命令,能够看到,只能添加逻辑分区
  • 使用默认的起始扇区,直接回车
  • last扇区输入 +1G 回车
  • 使用p命令查看磁盘分区
  • 能够看到多了一个分区,/dev/sdb5 id也是83
  • 可使用 w 保存退出,也可使用 q 直接退出
  • 区别是,q 直接退出的话,刚才全部的分区操做都不会保存
  • 从新查看磁盘会发现磁盘没有被分区,若是使用 w 保存退出,分区操做才能够被保存
  • 上图,sdb分了六个分区,从sdb1到sdb6
  • 其中 sdb1,sdb2,sdb3是主分区,sdb4是扩展分区,sdb5,sdb6是逻辑分区
  • 如图,先删除1号分区,分区号就是sdb后面跟的数字,1号分区就是sdb1
  • 而后查看分区,发现sdb1被删除了
  • 而后再删除一个逻辑分区,5号分区
  • 而后再查看分区
  • 发现6号分区不见了,5号分区还在
  • 其实原来的5号分区已经删除,而原来的6号分区变成了5号分区
  • 能够看 Start列 和 End列,这两列显示分区在硬盘上的开始和结束的位置
  • 对面上面的图能够发现,如今分区5的开始和结束的位置与原来的分区6是同样的
  • 这就证实如今的分区5就是原来的分区6
  • 若是硬盘没有主分区,只有一个扩展分区的时候
  • 使用 n 命令新建分区,能够看到,下面的两个选项改变了
  • 原本是 p分区 和 e分区的,如今变成了 p分区 和 l分区(逻辑分区)了
  • 若是创建主分区,分区号能够在1到4之间任意选择,相互不会有影响
  • 若是创建逻辑分区,如图,分区号就会从5开始,1-4是属于p分区和e分区的
  • 逻辑分区必定是从5号开始,并且是连续的
  • 如图,扩展分区号是1号,主分区号是3号,互相不影响
  • 可是逻辑分区从5号日后必定是连续的,中间不会留空
  • 好比有 5,6,7 三个逻辑分区,而后把6号分区删除,那么7号分区会自动填补6号的位置变成6号分区
  • 7号分区变成6号分区虽然名称变了,可是在硬盘的起始位置是不会变的
  • 扩展分区只有分区号,是不能写入数据的,只有逻辑分区才占有真实的空间,才能够写入数据
  • 因此创建扩展分区后,并不能直接在扩展分区里面存放文件
  • 须要先在扩展分区里面创建逻辑分区,而后才能够在逻辑分区里面读写文件
相关文章
相关标签/搜索