Linux常用命令学习4---(挂载命令mount umount、用户登陆查看和用户交互命令 w who last lastlog)

时间:2023-12-30 14:36:38

紧接着上一篇Linux的命令行的学习:Linux学习3---(文件的压缩和解压缩命令zip unzip tar、关机和重启命令shutdown reboot……)

1.挂载命令
    简介
        简单的理解为Windows中的分配盘符
        在安装Linux的时候,往往设置了/、/boot、swap分区,所以这些分区在开机时都是自动挂载的。但是像光盘、U盘、移动硬盘……要想使用,就必须进行人为的挂载
        像/proc、/sys是内存分区,虽然没有手动设置,但是是系统默认带有的分区,所以也会自动挂载
    查询和自动挂载
        mount:查询系统中已经挂载的设备
        mount -a:依据配置文件 /etc/fstab 的内容,自动挂载。/etc/fstab 配置文件就是配置自动自动挂载分区的
            如果你在这个配置文件里配置了开机自动挂载光盘、U盘等外部设备的分区,也可以,但假如开机时没有检测到这个外部设备(这是正常的,比如忘记把光盘放到光驱……)就可能导致系统开机时的崩溃
    挂载命令的格式
        mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点
        -t 文件系统:加入文件系统类型来指定挂载的类型,可以是 ext3、ext4、iso9660等文件系统
        -o 特殊选项:可以指定挂载的额外选项
        挂载点:是以已经存在的空白目录作为挂载点的
    例子:
        mount -o remount,noexec /home:表示重新挂载 /home挂载点,并且设置/home下的文件不可执行(注意多个特殊选项之间使用 ,)
            但是不建议进行更改!!!否则可能忘记了可能时间长了之后就不知道为什么不能执行就糟了!!如果更改 / 为 noexec可能导致系统直接无法运行
            因为/home本身是自动挂载的,所以可以不用 -t指定文件系统
            remount:重新挂载挂载点
            exec:表示挂载点内的文件可执行;noexec:表示挂载点内的文件不可执行,默认是exec
    挂载光盘例子
        (sr0是只要设备启动就会在。dev下面,需要挂载的时候,在插入光盘之后,直接执行下面命令即可)
        mkdir /mnt/cdrom:建立挂载点空目录(一定要是空目录)
        mount -t iso9660 /dev/cdrom /mnt/cdrom:将/dev/cdrom 挂载到 /mnt/cdrom
        或者 mount -t iso9660 /dev/sr0 /mnt/cdrom:建议使用这种,/dev/cdrom 是 /dev/sr0的软链接
        或者 mount /dev/sr0 /mnt/cdrom:因为系统知道光盘默认的文件系统是 iso9660
        这时候可能会报错,因为光盘是只读的,这里没有通过-o 特殊选项进行设置,但是报错只是提示,系统会默认更改其选项为只读的
        挂载之后,就可以到 /mnt/cdrom 里面访问光盘数据
    卸载挂载点
        umount 设备文件名或挂载点
        例如: umount /mbt/cdrom:就可以卸载刚才挂载的光盘,但是执行这条命令的时候,应该要在 /mnt/cdrom目录之外,而不应该在/mnt/cdrom中执行这条命令,否则会报错:该挂载点正在被使用
        用完之后一定要记得卸载
    U盘的挂载
        (被系统当作硬盘看待,但是不同与光盘设备名是 sr0,U盘的设备文件名是不定的,所以需要使用 fdisk -l命令查看)
        fdisk -l:查看U盘的设备文件名
        mount -t vfat /dev/sdb1 /mnt/usb/:vfat文件系统
        注意Linux默认是不支持 NTFS文件系统的,所以Linux对Windows有些方面还是不够兼容的,所以一般Windows向Linux传输文件都是通过网络传输,而不是使用这种挂载NTFS文件系统的方式
 
 
 
2.用户登陆查看和用户交互命令
    w 用户名,查看用户的登陆信息(不加用户名就输出所有当前登陆的用户的信息)
        USER:登陆的用户名
        TTY:登陆终端
        FROM:从哪个IP登陆
        LOGIN@:登陆时间
        IDLE:用户闲置时间
        JCPU:指的是和该终端连接的所有进程占用的时间,这个时间里并不包括过去的后台作业时间,但却包括当前正在运行的后台作业所占用的时间
        PCPI:是指当前进程所占有的时间
        WHAT:当前正在运行的命令
    who 用户名(不加用户名就是输出所有当前登陆的用户信息)
        不像w 命令那样输出那么多信息,只会输出登陆终端、登陆时间、登陆IP等很少的信息
    last
        查询当前登陆和过去登陆的用户信息
        last 命令默认是读取 /var/log/wtmp文件中的数据。但是这个文件是一个二进制文件,所以不能通过编辑器查看文件信息,只能通过last 命令查看。保证就算有人入侵也不能修改文件的内容
        命令输出:
            用户名;登陆终端;登陆IP;登陆时间;退出时间(在线时间)
        通过这个命令可以查看是不是有黑客登陆(或者叫入侵)自己的计算机,所以这个命令比较重要
    lastlog
        默认是读取/var/log/lastlog文件内容
        命令输出:
            用户名;登陆终端;登陆IP;最后一次登陆时间