pwd :当前目录
cd 目录 :即change directory切换到目录,实例如下:
cd ~ #切换到/root目录下,即家目录下
cd / #切换到根目录
cd ./f1 #切换到当前目录下的f1文件
cd .. #切换到上级目录
cd /var/tmp #切换到根目录下的/var/tmp下
#注意,.表示当前目录,..表示上级目录,什么都不添加默认的是当前目录下的
ls 目录 : 展示当前目录下的列表,目录不写时默认为当前目录
ls [-adl] 目录:
-a :表示展示所有目录下文件和目录,包括隐藏文件
-d :表示展示仅列出目录本身,而不是列出目录内的文件数据
-l: 长数据串列出,包含文件的属性与权限等等数据,即详细展示
cd ~/yh #切换到/root目录下的yh目录
ls -al #展示yh目录下所有文件和目录的详细信息
chown 用户名 目录或文件 :修改目录或文件所属的用户
chgrp 用户组 目录或文件 :修改目录或文件所属的用户组
chown yh /root/f1 #修改f1的用户为yh
chgrp yhz /root/f1 #修改f1的用户组为yhz
chmod 修改文件的属性,文件的属性由左边第一部分的10个字符来确定,
chmod 就是对以上用户、用户组、非用户组的人的权限进行修改。
方式1:
chmod 764 f1 #修改当前目录下f1目录的属性权限为rwxrw-r--
方式2:
chmod u=rwx,g=rw,o=r f1
方式3:
chmod u-w,g+x,o+rw f1 #这种方式以加减的方式实现权限的增减
cp 来源 目的地,实现目录和文件的复制
cp /root/f1 /tmp/f #将root下的f1文件目录复制到tmp下的f目录,只复制了当前目录
mkdir,rmdir,rm创建删除目录,以及删除文件
cp -r 来源 目的地 #实现递归复制,-r表示递归就是整个文件夹下的都会复制过去
mkdir -p f1/f2/f3 #能够递归创建文件夹
rmdir-p f1/f2/f3 #删除文件夹 (删除空的目录)
rm -rv file #直接递归删除该文件夹,不提示
mv f1 f2 #把某文件移到某目录下
查看文档内容:
cat file:第一行开始读文件第一行
tac file:最后一行开始读文件最后一行
more file:能一页一页的看,初试加载一页后也可以一行一行的加载
head [-n number] 文件 :取出文件前面几行,eg:head -n 4 f1 取出f1前4行
tail [-n number] 文件:取出文件后几行
用户与用户组部分
Linux是多用户系统,每个用户有自己对应的主目录,用户在登录时键入正确的用户名和口令后,进入系统和自己的主目录,也叫家目录。增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow, /etc/group等。
添加用户账号:在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和登录Shell等资源。刚添加的账号是被锁定的,无法使用。
添加用户的命令:
useradd [-选项] 用户名
选项
-c comment 指定一段注释性描述。 -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。 -g 用户组 指定用户所属的用户组。 -G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
eg:
useradd -d /home/yh -m yh
创建用户yh,其中-d和-m选项用来为登录名sam产生一个主目录 /home/yh(/home为默认的用户主目录所在的父目录)
删除帐号:就是要将/etc/passwd, /etc/shadow, /etc/group等系统文件中的该用户记录删除,必要时还删除用户的主目录。
userdel [-r] yh #删除用户yh,加了-r则连其目录一起删除。
修改用户账号:就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。
usermod [选项] 用户名
选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样
usermod -s /bin/ksh -d /home/z –g developer yh
#将用户yh的登录Shell修改为ksh,主目录改为/home/z,用户组改为developer。
用户口令(即密码)的管理:用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令。
超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。
普通用户修改自己的口令时,passwd命令会先询问原口令,验证后再要求用户输入两遍新口令,如果两次输入的口令一致,则将这个口令指定给用户;而超级用户为用户指定口令时,就不需要知道原口令。
命令格式:
passwd [选项] 用户名,如果默认用户名,则修改当前用户的口令。
选项:
-l 锁定口令,即禁用账号。eg: passwd -l yh
-u 口令解锁。
-d 使账号无口令。eg:passwd -d yh
-f 强迫用户下次登录时修改口令。eg:passwd -f yh 当前用户为超级用户,故可以修改其他用户的口令:
passwd yh
Old password:123456
New password:123456
passwd: all authentication tokens updated successfully.
修改用户yh的密码为123456,实际密码会被隐藏,不会显示,设置成功则显示
用户组管理:每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。用户组的管理实际上就是对/etc/group文件的更新。
增加用户组:
groupadd [选项] 用户组
选项:
-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。 如不指定GID,则GID默认自动增长,在当前已有的最大组标识号的基础上加1。
groupadd group1
groupadd -g 12 group2
删除用户组:类似删除用户
groupdel group1
修改用户组属性:
groupmod [选项] 用户组
选项:
-g GID 为用户组指定新的组标识号。
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n新用户组 将用户组的名字改为新名字
groupmod -g 13 -n newgroupname group1
修改group1的GID为13,并更改名称为newgroupname
切换用户组:一个用户可以属于多个用户组,用户登录后可以切换至其所属的其他用户组。
newgrp othergroup
批量创建用户:
准备工作:首先以root登录系统,进入主目录后创建两个文件,user.txt和passwd.txt,
其中user.txt输入
user001::501:100:user:/home/user001:/bin/bash
user002::502:100:user:/home/user002:/bin/bash
user003::503:100:user:/home/user003:/bin/bash
user004::504:100:user:/home/user004:/bin/bash
user005::505:100:user:/home/user005:/bin/bash
passwd.txt输入:
user001:123456
user002:123456
user003:123456
user004:123456
user005:123456
1,以root身份执行命令 /usr/sbin/newusers,从刚创建的用户文件user.txt中导入数据,创建用户:
# newusers < user.txt
2.执行命令/usr/sbin/pwunconv,将 /etc/shadow 产生的 shadow 密码解码,然后回写到 /etc/passwd 中,并将/etc/shadow的shadow密码栏删掉。这是为了方便下一步的密码转换工作,即先取消 shadow password 功能。
# pwunconv
3.以 root 身份执行命令 /usr/sbin/chpasswd,创建用户密码,chpasswd 会将经过 /usr/bin/passwd 命令编码过的密码写入 /etc/passwd 的密码栏。
# chpasswd < passwd.txt
4.执行命令 /usr/sbin/pwconv 将密码编码为 shadow password,并将结果写入 /etc/shadow。
# pwconv
创建完成。可以执行命令 vipw 或 vi /etc/passwd 检查 /etc/passwd 文件是否已经出现这些用户的数据,并且用户的宿主目录是否已经创建
(按:q退出查看。)