linux常用命令和目录(四)

六.关闭和重启命令

1.关机 shutdown -h now

-h=halt         now 也可以替换为具体时间

halt         停机不关闭电源

init 0         以0级别运行

init级别:
        0 关机
        6 重启
        3 字符级别
        5 图形化

poweroff 先关闭系统然后掉电关机

shutdown +5 “system will shutdown after 5 minutes”

#设定5分钟后关机,发给所有用户关机提示信息告知登录用户。

此命令执行五分钟后,登录的用户将退出登录,但系统并不会关闭。

需要自行shutdown -h now进行关机(C7此命令直接关闭系统)。

shutdown +2 -h "system will shutdown after 1 minutes"

#如果想要关闭系统并提示用户即将关机信息那么要执行此命令

2.重启

shutdown -r now

reboot

3.数据同步 sync

在Linux/Unix系统中,在文件或数据处理过程中一般先放到内存缓冲区中,等到适当的 时候再写入磁盘,以提高系统的运行效率。

sync命令则可用来强制将内存缓冲区中的数据立 即写入磁盘中。用户通常不需执行sync命令,系统会自动将缓冲区的数据写 入磁盘。只有 用户需要非正常关机时,才需手动执行sync命令。

七.挂载命令

Linux系统一切设备皆文件。比如第一张光盘,会被自动识别为/dev/sr0(设备文件的 命名方式是主设备号加次设备号。主设备号说明设备类型,次设备号说明是第几个设备), 但并不能直接对光盘正常使用。需要先进行挂载而后才能进行正常的安装等步骤。需要指定 挂载点并执行挂载命令。(不同的光盘之间需要重新挂载并指定挂载点才能正常使用)

1.mount 查询系统中已经挂载的设备

常见的存储设备:

/dev/sda1         第一个scsi硬盘的第一个分区

/dev/cdrom         光盘

/dev/sr0         光盘

常用挂载点见目录

挂载格式: mount -t 文件系统类型 -o 特殊选项 设备文件名 挂载点

-t 文件系统:加入文件系统类型来指定挂载的类型,可以ext3,ext4, ios9660等文件系统。

-o 特殊选项:可以指定挂载的额外选项,比如读写权限,同步异步等,如果 不指定则默认值生效。

        参数                                                 说明

atime/noatime         更新访问时间/不更新访问时间。访问分区文件时,是否更新文件的访问时间,默认为更新。

async/sync         异步/同步,默认为异步。

auto/noauto         自动/手动,mount -a 命令执行时, 是否会自动安装/etc/fstab文件内容挂载默认自动。

注: mount -a 命令通常用于验证写入/etc/fstab文件的信息是否正确,看有无报错

defaults         定义默认值,相当于rw,suid,dev,exec,auto,nouser,async这七个选项。 exec/noexec         执行/不执行,设定是否允许在文件系统中执行可执行文件,默认是exec允许。 remount         重新挂载已经挂载的文件系统,一般用于指定修改特殊权限。

rw/ro                 读写/只读,文件系统挂载时,是否具有读写权限,默认是rw。

suid/nosuid         具有/不具有SUID权限,设定文件系统是有具有SUID和SGID的权限,默认有。

suid 的权限在passwd命令中是存在的。可以解决普通用户修改密码的问题

user/nouser         允许/不允许普通用户挂载,设定文件系统是否允许普通用户挂载,默认是不允 许, 只有root可以挂载分区。 usrquota 写入代表文件系统支持用户磁盘配额,默认不支持。 grpquota         写入代表文件系统支持组磁盘配额,默认不支持。

将/boot分区进行重新挂载,修改为不能执行,其中的文件就无法进行执行操作

例1:mount 查看挂载信息

/dev/sda1 on /boot type ext4 (rw)

我们查看到/boot分区已经被挂载,而且采用的defaults选项,那么我 们重新挂载分 区,并采用noexec 权限禁止执行文件执行,看看会出现什么 情况(注意不要用/分区做试 验,不然系统命令也不能执行了)

[root@localhost ~]# mount -o remount,noexec /boot

[root@localhost ~]# cd /boot [root@localhost ~]

# vim hello.sh #!/bin/bash echo “hello world!”

[root@localhost ~]# chmod 755 hello.sh

[root@localhost ~]# ./hello.sh

[root@localhost ~]# -bash: ./hello.sh: 权限不够

[root@localhost ~]# mount -o remount,exec /boot

例2:挂载硬盘分区,移动硬盘

[root@localhost ~]# mkdir /mnt/disk1

#创建挂载点

[root@localhost ~]# mount /dev/sdb1 /mnt/disk1

#挂载硬盘分区或者移动硬盘

例3:挂载光盘

[root@localhost ~]# mount -t iso9660 /dev/cdrom /mnt/cdrom

#/mnt/cdrom必须是已存在的目录

例4:挂载U盘

[root@localhost ~]# fdisk -l

#查看当前系统下的存储设备,确认U盘的设备名称

[root@localhost ~]# mount -t vfat /dev/sdb1 /mnt/usb

#fat32格式的U盘挂载方式

-t         vfat         fat32

-t         fat          fat16

注:Linux默认情况不识别NTFS、exfat格式,可以通过安装一些插件对格式进行支持

注:挂载时,可以不指定文件类型,不指定的话,会进行自动识别

例5:挂载.iso文件

mount -o loop /root/CentOS-7-x86_64-DVD-1810.iso /mnt/

加入loop选项让文件以块设备的方式进行挂载。

例6:卸载 umount 设备名称或挂载点

#所有挂载的设备卸载方式都一样

例7:挂载NTFS格式

yum -y install epel-release

yum -y install ntfs-3g

mount -t ntfs-3g /dev/sdb1 /media/

ls /media

挂载注意事项:

同一个文件系统不应该重复挂载在不同的挂载点。

同一个目录不应该重复挂载多个文件系统。

作为挂载点,一定要是空白目录。

八.打包压缩 tar:

文件的归档(打包)和压缩 归档和压缩文件的好处:节约硬盘的资源 ,加快文件传输速率

打包:类似于在windows中的文件夹,但是又不相同,因为打包后无法直接看包里边的内容,需要解包才可以看到。

压缩:与windows中类似,可以压缩体积。

用法:tar  [选项]  压缩后生成文件 打包文件

参数:

-c:创建文件

-x:提取 解压还原文件

-v:显示执行详细过程

-f:指定备份文件

-t:列出压缩包中包括哪些文件,不解包,查看包中的内容

-C:指定解压位置

例1:对/boot/grub 目录打包并解包。

[root@localhost ~]# tar -cvf ./grub.tar /boot/grub/

或: [root@localhost ~]# tar cvf ./grub.tar /boot/grub/

tar: 从成员名中删除开头的“/”

/boot/grub/

/boot/grub/splash.xpm.gz

[root@localhost ~]# ls ./gurb.tar

[root@localhost ~]# tar -xvf ./grub.tar

#解压缩 boot/grub/ boot/grub/splash.xpm.gz

打包时用绝对路径,打完包删除绝对路径/,解包为相对路径。

[root@localhost ~]# ls ./boot #得到 boot 目录

例 1:指定解压位置 -C

[root@localhost ~]# tar  xvf  ./grub.tar.bz2  -C  /opt/

tar: 从成员名中删除开头的“/”

/boot/grub/

/boot/grub/splash.xpm.gz

[root@localhost ~]# ls /opt/ boot

例 2:把两个目录或目录+文件打包成一个软件包:

[root@localhost ~]# mkdir ./back

[root@localhost ~]# cp /etc/passwd back/

[root@localhost ~]# tar -cvf back.tar /boot/grub back/ /etc/passwd

tar: 从成员名中删除开头的“/”

/boot/grub/

/boot/grub/splash.xpm.gz

back/

back/passwd

/etc/passwd

例3:在打包过程中跳过某个或多个文件。

- -exclude:指定跳过的文件。

[root@localhost ~]# cp /etc/passwd ./back/

[root@localhost ~]# cp -a /etc/fstab ./back/

[root@localhost ~]# cp -a /etc/shadow ./back/

[root@localhost ~]# cp -a /etc/group ./back/

#创建目录和目录下文件。

[root@localhost ~]# tar - -exclude /root/back/group -cvf /root/back.tar /root/back/

#在打包过程中指定跳过group文件。

例 4:不解包,查看 tar 中的内容:

[root@localhost ~]# tar -tvf ./grub.tar tar 归档+压缩:

常用参数:

-z:以 gzip 方式压缩 扩展名: tar.gz

-j:以 bz2 方式压缩的 扩展名:tar.bz2

-J:以 xz 方式压缩 扩展名:tar.xz

例 1:创建.tar.gz 包

[root@localhost ~]# tar -cvf ./etc.tar /etc

[root@localhost test]# tar -zcvf ./etc.tar.gz /etc

[root@localhost test]# tar -zxvf ./etc.tar.gz

例 2:创建.tar.bz2 包

[root@localhost ~]# tar -jcvf ./etc.tar.bz2 /etc

[root@localhost ~]# tar -jxvf ./etc.tar.bz2 /etc

#解压缩

[root@localhost ~]# tar jxvf ./etc.tar.bz2 -C /opt

#解压到 opt 目录下

例 3:创建.tar.xz 包

[root@localhost ~]# tar -Jcvf ./etc.tar.xz /etc

[root@localhost ~]# tar -xvf ./etc.tar.xz

对比三种压缩方式后压缩比例:

[root@localhost ~]# ll -h ./etc.tar*

在这几种压缩方式中,有的速度比较快,相反就会体积比较大,有的比较慢,就会体积比较小,各有优点。   

解压的时候使用tar -xvf 都可以进行解压

     

zip 管理压缩文件

zip 软件包解压缩命令: zip 是压缩程序,unzip 是解压程序。

例 1:压缩文件:

zip         压缩包名         要压缩的文件

例 2:将所有.jpg 的文件压缩成一个 zip 包

[root@localhost ~]# zip ./all.zip *.jpg

例 3:压缩一个目录

[root@localhost ~]# zip -r ./grub.zip /boot/grub

#压缩目录需要加选项 -r

zip和tar的区别:

ZIP压缩和tar压缩明显的区别就是,对于软连接的处理

zip压缩会把软连接对应的源文件拿过来压缩,对于有链接的目录且比较重要,最好使用zip压缩

tar压缩只是把目录下的软连接进行打包压缩,这样解压后可能导致软连接失效(软连接建立使用相对路径的时候,所以软连接要使用绝对路径)

查看目录中的内容大小,使用du -sh 目录名

解压缩:

-d:指定解压目录。

[root@localhost ~]# unzip ./grub.zip

[root@localhost ~]# unzip ./grub.zip -d /opt/

file 命令 作用:确定文件类型

用法: file /etc/passwd

注:linux 系统不根据后缀名识别文件类型 用 file 命令查看文件的类型。

[root@localhost ~]# file /etc/passwd

/etc/passwd: ASCII tex

注:当不清楚什么文件类型的时候使用file命令进行查看

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值