1、描述linux目录结构以及目录结构命名规定

文件名最长255个字节 包括路径在内文件名称最长4095个字节 

蓝色-->目录 绿色-->可执行文件 红色-->压缩文件 浅蓝色-->链接文 件 灰色-->其他文件 

除了斜杠和NUL,所有字符都有效.但使用特殊字符的目录名和文件不推荐使用, 有些字符需要用引号来引用它们 标准Linux文件系统(如ext4),

文件名称大小写敏感 例如:MAIL, Mail, mail, mAiL


/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub) 都存放于此目录

/sbin:所有用户使用的基本命令;不能关联之独立分区,OS启动即会用到的程序

/sbin:管理类的基本命令;不能关联之独立分区,OS启动即会用到的程序

/lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules) 

/lib64:专属于x86_4位系统上的辅助共享库文件存放位置

/etc:配置文件目录

/home/USERNAME:普通用户家目录

/root:管理员家目录

/media:便携式移动设备挂载点

/mnt:临时文件系统挂载点

/dev:设备文件及特殊文件存储位置

b:block device,随机访问

c:character device,线性访问

/opt:第三方应用程序的安装位置

/srv:系统上运行的服务用到的数据

/tmp:临时文件存储位置

/usr:universal shared, read-only data 

bin:保证系统拥有完整功能而提供的应用程序

lib:32位使用

lib64:只存储64位系统

include:C程序的头文件(header files)

share:结构化独立的数据,例如doc,man等

local:第三方应用程序的安装位置

bin,sbin,lib,lib64,etc,share

/var:variable data files

cache:应用程序缓存数据目录

lib:应用程序状态信息数据

local:专用于为/usr/local下的应用程序存储可变数据;

lock:锁文件

log:日志目录及文件

opt:专用于/opt下的应用程序存储可变数据

run:运行中的进程相关数据,通常用于存储进程pid文件

spool:应用程序数据池

tmp:保存系统两次重启之间产生的临时数据

/proc:用于输出内核与进程信息相关的虚拟文件系统

/sys:用于输出当前系统上硬件设备相关信息虚拟文件件系统

/selinux:security enhanced Linux ,selinu 相关的安全策略等信息的存储位置


2、显示/etc目录下,所有以.d结尾的文件或目录

ls /etc/*.d -d


3、显示/etc目录下,所有.conf结尾,且以m,n,r,p开头的文件或目录

ls -d /etc/[mnrp]*.conf


4、创建/app/rootdir目录,并复制/root下所有文件到该目录内, 要求保留原有权限

mkdir -pv /app/rootdir;cp -a /root/* /app/rootdir/


5、使用命令行展开功能,创建/tmp/a1, /tmp/a2, /tmp/a1/a, /tmp/a1/b,在/tmp目录下创建目录:x_y, x_z, q_y, q_z

mkdir -pv /tmp/a{1,2} /tmp/a1{a,b} /tmp/x_{y,z} /tmp/q_{y,z}


6、总结用户、用户组管理命令并演示命令以及常见用法

用户和组管理命令

用户管理命令 useradd usermod userdel 

组帐号维护命令 groupadd groupmod groupdel


用户创建:useradd

useradd [options] LOGIN 

 -u UID

 -o 配合-u 选项,不检查UID的唯一性

 -g GID:指明用户所属基本组,可为组名,也可以GID 

 -c "COMMENT":用户的注释信息 

 -d HOME_DIR: 以指定的路径(不存在)为家目录 

 -s SHELL: 指明用户的默认shell程序,可用列表在/etc/shells文件中 

 -G GROUP1[,GROUP2,...]:为用户指明附加组,组须事先存在 

 -N 不创建私用组做主组,使用users组做主组 

 -r: 创建系统用户 CentOS 6: ID<500,CentOS 7: ID<1000 

 -m  创建家目录,用于系统用户 

 -M  不创建家目录,用于非系统用户

 默认值设定:/etc/default/useradd文件中 

 显示或更改默认设置 useradd -D 

 useradd –D -s SHELL 

 useradd –D –b BASE_DIR 

 useradd –D –g GROUP

 用户属性修改

usermod [OPTION] login 

-u UID: 新UID 

-g GID: 新主组 

-G GROUP1[,GROUP2,...[,GROUPN]]]:新附加组,原来的附加组将会被 覆盖;若保留原有,则要同时使用-a选项 

-s SHELL:新的默认SHELL 

-c 'COMMENT':新的注释信息 

-d HOME: 新家目录不会自动创建;若要创建新家目录并移动原家数据, 同时使用-m选项 

-l login_name: 新的名字; 

-L: lock指定用户,在/etc/shadow 密码栏的增加 ! 

-U: unlock指定用户,将 /etc/shadow 密码栏的 ! 拿掉 

-e YYYY-MM-DD: 指明用户账号过期日期 

-f INACTIVE: 设定非活动期限


删除用户

userdel [OPTION]... login 

-r: 删除用户家目录


查看用户相关的ID信息

id [OPTION]... [USER] 

-u: 显示UID 

-g: 显示GID 

-G: 显示用户所属的组的ID 

-n: 显示名称,需配合ugG使用

 

 切换用户或以其他用户身份执行命令

su [options...] [-] [user [args...]] 

切换用户的方式: 

su UserName:非登录式切换,即不会读取目标用户的配置文件,不改变 当前工作目录 

su - UserName:登录式切换,会读取目标用户的配置文件,切换至家目 录,完全切换 

root su至其他用户无须密码;非root用户切换时需要密码 

换个身份执行命令: 

su [-] UserName -c 'COMMAND' 

选项:-l  --login 

su -l UserName 相当于 su - UserName


创建组

groupadd [OPTION]... group_name 

-g GID: 指明GID号;[GID_MIN, GID_MAX] 

-r: 创建系统组 

CentOS 6: ID<500 

CentOS 7: ID<1000


修改和删除组

组属性修改:groupmod 

groupmod [OPTION]... group 

-n group_name: 新名字 

-g GID: 新的GID

组删除:groupdel 

groupdel GROUP


7、文件权限,属主属组管理命令有哪些,并演示命令以及用法


修改文件的属主和属组

修改文件的属主:chown 

chown [OPTION]... [OWNER][:[GROUP]] FILE... 

用法:

OWNER 

OWNER:GROUP 

:GROUP 命令中的冒号可用.替换 

-R: 递归 

chown [OPTION]... --reference=RFILE FILE... 

修改文件的属组:chgrp 

chgrp [OPTION]... GROUP FILE... 

chgrp [OPTION]... --reference=RFILE FILE... 

-R 递归


文件权限

文件的权限主要针对三类对象进行定义 

owner: 属主, u 

group: 属组, g

other: 其他, o 

每个文件针对每类访问者都定义了三种权限 

r: Readable 

w: Writable 

x: eXcutable


修改文件权限

chmod [OPTION]... OCTAL-MODE FILE... 

-R: 递归修改权限 

chmod [OPTION]... MODE[,MODE]... FILE... 

MODE: 

修改一类用户的所有权限: u=  g= o= ug=  a= u=,g=

修改一类用户某位或某些位权限 u+  u- g+ g- o+ o- a+ a-

chmod [OPTION]... --reference=RFILE FILE... 

参考RFILE文件的权限,将FILE的修改为同RFILE


权限设置示例

chgrp sales testfile 

chown root:admins testfile 

chmod u+wx,g-r,o=rx file 

chmod -R g+rwX /testdir 

chmod 600  file 

chown mage testfile 


8、创建用户gentoo,附加组为bin和root,默认shell为/bin/csh,注释信息为 

useradd  gentoo -G bin,root -s /bin/csh  -c "Gentoo Distribution"

验证:

id gentoo

uid=1002(gentoo) gid=1004(gentoo) groups=1004(gentoo),0(root),1(bin)

grep gentoo /etc/passwd

gentoo:x:1002:1004:Gentoo Distribution:/home/gentoo:/bin/csh