Aristotle
发布于 2023-02-09 / 18 阅读 / 0 评论 / 0 点赞

linux目录结构和环境变量等文件路径

linux目录结构和环境变量等文件路径

  1. 查看文件inode信息

    stat fileName

  2. 查看网卡信息

    ip addr

  3. linux目录

    /bin bin是binary的缩写,存放的是最常用的命令

    /boot 存放启动linux时使用的一些核心文件,包括一些连接文件以及镜像文件

    /dev dev是device的缩写,存放的是linux的外部设备,在linux中,访问设备的方式和访问文件的方式是相同的

    /etc 存放的是所有系统管理所需要的配置文件和子目录

    /home 用户的家,在linux中,每个用户都有一个自己的家,一般该目录是以用户的账号命名的

    /lib和lib64 这两个目录下存放的是系统最基本的动态链接共享库,其作用类似于windows里的dll文件,几乎所有的应用程序都需要用到这些共享库。其中/lib64为64位软件包的库文件所在目录

    /media 系统会自动识别一些设备,如U盘、光驱,当识别后,linux会把识别的设备挂载到该目录下

    /mnt 系统提供该目录是为了让用户临时挂载别的文件系统,我们可以将光驱个挂载到/mnt上

    /opt 给主机额外安装软件所设置的目录,该目录默认为空。比如,你要安装一个oracle数据库,可以放到该目录下。

    /proc 该目录是一个虚拟目录,是系统内存的映射,可以直接访问它来获取系统信息。该目录的内容在内存里,我们可以直接修改里面的某些文件。比如可以通过下面的命令来屏蔽主机的ping命令,使其他人无法ping你的机器。在日常工作中,你会经常用到类似的用法:

    # echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

    /root 系统管理员用户的家目录

    /run 和/var/run是同一个目录,里面存放的是一些服务的pid。一个服务启动完后,是有一个pid文件的。

    /sbin 存放系统管理员使用的系统管理程序

    /srv 存放一些服务启动之后需要提取的数据

    /sys 存放的是与硬件驱动程序相关的信息

    /tmp 改目录用来存放一些临时文件

    /usr 类似于windows下的program files目录,用户的应用程序和文件存放在该目录下

    /usr/bin 系统用户使用的应用程序

    /usr/sbin 系统管理员使用的管理程序和系统守护程序

    /usr/src 内核源代码的默认防止目录

    /var 存放的是不断扩充且经常修改的目录,包括各种日志文件或者pid文件

    /etc 存放系统的配置文件,如果更改了该目录下的某个文件,可能会导致系统无法正常启动

    /bin、/sbin 、/usr/bin 和/usr/sbin 是系统预设的执行文件的放置目录,其中/bin和/usr/bin目录下是供系统用户(除root外的通用账户)使用的命令,而/sbin和/usr/sbin目录下是供root用户使用的命令。比如 ls命令就存放在/bin目录下

    /var/log 系统运行各个程序是锁产生的log都被记录在该目录下

  4. 文件权限更改

    chgrp 更改文件所属组

    #chgrp 组名 目标文件

    chown 更改文件所有者

    #chown 用户名 目标文件

    chmod 更改文件权限

    umask更改文件的默认权限

    默认情况下目录的权限为755,普通文件的权限为644

  5. 用户和用户组

    /etc/passwd 文件 记录用户信息,类似用户表

    /etc/shadow 文件 记录用户密码

    新增用户组 groupadd

    删除用户组 groupdel

    新增用户 useradd

    删除用户 userdel

    用户密码管理 passwd 更改用户密码

    如果你登录的是root用户,则后面可以跟普通用户的名字,意思是修改指定用户的密码,示例:

    #passwd user11 更改用户user11的密码

    只有root用户可以修改其他用户的密码,普通用户只能修改自己的密码

    mkpasswd 用户生成密码,首先需要安装expect软件包: yum install -y expect

    sudo 命令,使用visudo命令编辑 /etc/sudoers配置文件,类似vi命令

  6. 变量

    evn

    使用env命令,可以列出系统预设的全部系统变量,登录不同的用户,这些环境变量的值也不同。env命令显示的变量只是环境变量,系统预设的变量其实还有很多,可以使用set命令

    Snipaste_2023-02-09_01-23-02.png常见的环境变量:

    HOSTNAME 主机名称

    SHELL 当前用户的shell类型

    HISTSIZE 历史记录数

    MAIL 当前用户的邮件存放目录

    PATH 该变量决定了shell放到哪些目录中虚招命令或程序

    PWD 表示当前目录

    LANG 这是与语言相关的环境变量,多语言环境可以修改次环境变量

    HOME 表示当前用户家目录

    LOGNAME 当前用户的登录名

  7. 系统环境变量与个人环境变量的配置

    /etc/profile 预设了几个重要的变量 如PATH USER LOGNAME MAIL INPUTRC HOSTNAME HISTSIZE umask等

    /etc/bashrc 主要预设 umask以及PS1,PS1就是我们在输入命令是前面的那串字符。

    #echo $PS1

    [\u@\h \W]\$

    其中\u 指用户,\h 指主机名,\W 指当前目录,\$ 指#(如果是普通用户,显示为$)

    用户主目录下隐藏文件

    .bash_profile 用户的个人化路径与环境变量,每个用户都可以使用改文件输入转输入自己的shell的信息,当用户登录时,改文件仅执行一次。

    .bashrc 该文件包含属于自己的shell的bash信息,当用户登录或每次打开新的shell时会读取该文件,例如你可以将用户自定义的别名或者自定义变量写入改文件

    .bash_history 记录命令历史

    .bash_logout 当退出shell时,会执行该文件,可以将一些清理工作放到这个文件

  8. 修改环境变量文件后需要刷新文件 source 文件,以免需要注销重新登录

  9. pstree命令,显示进程树

  10. Linux环境变量配置 参考:https://www.cnblogs.com/redarmy/p/16876345.html