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