Linux1 用户的创建和删除
Linux终端用户管理添加、删除和修改用户账户
Linux终端用户管理添加、删除和修改用户账户在Linux操作系统中,用户账户管理是系统管理员工作中的一项基本任务。
通过终端可以方便地完成用户账户的添加、删除和修改操作。
本文将介绍如何在Linux终端中进行用户账户管理的相关操作。
一、添加用户账户要添加一个新的用户账户,可以使用以下命令:```shellsudo useradd [选项] 用户名```其中,[选项]为可选参数,可根据需要使用不同的参数来添加用户。
常用参数如下:- `-c`:指定用户的注释。
- `-m`:自动创建与用户同名的主目录。
- `-s`:指定用户的默认Shell。
- `-g`:指定用户的主要用户组。
- `-G`:指定用户的附加用户组。
例如,要添加一个用户名为"testuser",注释为"Test User",并将其加入primarygroup主要用户组和secondarygroup附加用户组,可以使用以下命令:```shellsudo useradd -c "Test User" -g primarygroup -G secondarygroup testuser ```添加用户时,还需设置用户的密码。
可以通过以下命令为用户设置密码:```shellsudo passwd 用户名```在输入以上命令后,系统会提示你输入新密码并进行确认。
二、删除用户账户要删除一个用户账户,可以使用以下命令:```shellsudo userdel 用户名```该命令将删除指定的用户账户和相关的用户组,但不会删除用户的主目录和个人文件。
如果需要同时删除用户的主目录,可以使用以下命令:```shellsudo userdel -r 用户名```请在使用删除用户命令时,谨慎操作,确保不会误删重要用户账户。
三、修改用户账户要修改一个用户账户的属性,可以使用以下命令:```shellsudo usermod [选项] 用户名```其中,[选项]为可选参数,可根据需要使用不同的参数来修改用户属性。
Linux1 表的创建、复制、删除和修改
Linux1 表的创建、复制、删除和修改在关系型数据库管理系统中,数据库用来将多个表有机地组织起来,数据表用来存储数据。
每个数据库表由行和列组成,每一行为一条记录,每个记录包含多个列(字段)。
MySQL可以使用SQL的数据定义语言(DDL)来创建、删除和修改表结构。
1.创建表在MySQL中创建表,可使用“create table 表名称(字段1,字段2……字段n,[表级约束])[TYPE=表类型];”格式的SQL语句。
其中,字段i(i=1,2,…,n)的格式为“字段名字段类型[字段约束]”。
字段类型用来规定了某个字段所允许输入的数据的类型,部分常用的字段类型如表4-2所示表4-2 常用的字段类型为常用的字段约束。
表4-3 常见的字段约束表级约束,用于指定表的主键、外键、索引和唯一约束,如表4-4所示。
表4-4 表级约束表类型,用于指定表的类型(即数据的存储格式),如表4-5所示。
表4-5 表类型例如,要在学生选课数据库中创建一个名为student 的表(存放学生的有关信息),可在终端中输入“create table student (sno varchar (7) not null,sname varchar(20) not null,ssex char (1) default ‘t’,sbirthday date,sdepa char (20),primary key (sno ));“命令,并按【回车】键执行,如图4-16所示。
图4-16 创建student 表提 示 在终端中输入命令时,若命令太长则可书写一部分后,按【回车】键将其分割为几个小部分进行输入,即图4-16中的书写方式。
然后,使用desc (descibe ) student 命令查看表结构,如图4-17所示。
图4-17 student 表的创建及查看在执行“create table 表名称”语句创建表之前,必需通过使用use 命令使用xsxk 数据库,或者使用database_name.table_name 方式来指定当前要使用的数据库。
Linux1 用户权限的设置
Linux1 用户权限的设置前面多次提到过MySQL授权表是用来控制用户连接数据库服务器和访问数据库的权限。
在表user、db和host中,所有权限字段都被声明为ENUM(…N‟,…Y‟),即美国权限字段值都可以被设置为…N‟或…Y‟,默认为…N‟。
表4-7列出了表user、db和host 中可设置权限的字段。
表4-7 可设置权限的字段提 示 表中带“*”号的字段是授权表user 、db 和host 共有的字段,不带“*”号的字段仅是授权表user 中的字段。
在表tables_priv 和columns_priv 中,权限字段被声明为set 类型,即可以从所定义的权限集合中选择任意权限。
表4-8列出了tables_priv 和columns_priv 表中自动设置权限的字段。
MySQL 提供了两种修改授权表中的访问权限的方法,一种使用insert 、update 和delete 等dml 语句手工修改表中的信息;另一种是用grant 和revoke 语句。
前者比较直观,但由于各授权表中字段数很多,很容易出错,后者更好。
1.使用grant语句授权MySQL 中,通常使用“GRANT 权限列表[(字段列表)] [,类型 [(字段列表)]…] ON 数据库名称.表名称 TO 用户名@域名或IP 地址 [IDENTIFIED BY …密码值‟][WITH GRANT OPTION] [WITH GRANT OPTION]”语句格式对用户的权限进行设置。
下面通过例子来说明如何使用grant 语句来授权。
授予哪个用户可以进行连接,从哪里连接管理员可以允许用户在特定的主机或涉及范围很宽的一组主机中进行连接。
在一个极端,如果知道用户将仅从哪个主机中进行连接,则可限定对单个主机的访问。
例如,授予guest 用户可以从任意主机连接到数据库服务器,并具有完全访问学生选课数据库xsxk 的权限,可输入“grant all xsxk.* to guest@‟%‟ identified by …guest‟;”命令并按【回车】键执行,如图4-46所示。
用户与用户组管理实训报告
用户与用户组管理实训报告一、实训背景本次实训是针对用户与用户组管理的操作进行的。
在Linux系统中,用户和用户组的管理是非常重要的,可以有效保护系统的安全性和稳定性。
因此,掌握用户和用户组管理技能是Linux系统管理员必备的基本技能之一。
二、实训目标1. 熟悉Linux系统中用户和用户组的概念及其作用;2. 掌握添加、删除、修改用户和用户组等基本操作;3. 熟练掌握Linux系统中常用的权限设置方法;4. 提高对Linux系统安全性和稳定性的认识。
三、实训内容1. 用户管理1.1 查看当前登录用户信息命令:whoami1.2 添加新用户命令:useradd username1.3 修改密码命令:passwd username1.4 删除已有用户命令:userdel username2. 用户组管理2.1 创建新群组命令:groupadd groupname2.2 将已有用户加入群组中命令:usermod -aG groupname username2.3 删除已有群组命令:groupdel groupname3. 权限设置3.1 更改文件或目录所有者命令:chown owner file/dirname3.2 更改文件或目录所属群组命令:chgrp groupname file/dirname3.3 更改文件或目录的权限命令:chmod mode file/dirname四、实训步骤1. 查看当前登录用户信息使用whoami命令查看当前登录用户信息。
2. 添加新用户使用useradd命令添加一个新用户,例如:useradd testuser3. 修改密码使用passwd命令修改新用户的密码,例如:passwd testuser4. 删除已有用户使用userdel命令删除已有的用户,例如:userdel testuser5. 创建新群组使用groupadd命令创建一个新群组,例如:groupadd testgroup6. 将已有用户加入群组中使用usermod命令将已有的用户加入到新创建的群组中,例如:usermod -aG testgroup testuser7. 删除已有群组使用groupdel命令删除已有的群组,例如:groupdel testgroup8. 更改文件或目录所有者和所属群组使用chown和chgrp命令更改文件或目录的所有者和所属群组,例如:chown root:root /testfile.txtchgrp root /testfile.txt9. 更改文件或目录的权限使用chmod命令更改文件或目录的权限,例如:chmod 755 /testfile.txt五、实训总结通过本次实训,我深刻认识到了Linux系统中用户和用户组管理对系统安全性和稳定性的重要性。
【Linux】使用useradd命令新建用户
【Linux】使⽤useradd命令新建⽤户如何新建⽤户Linux下新建⽤户需要使⽤useradd和passwd命令最基础的使⽤⽅法如下:useradd <username> # 新建⼀个名为<username>的⽤户passwd <username> <password> # 为该⽤户设定密码为<password>新建⽤户的最佳实践不过作为服务器管理员,有时候我们需要连带着完成⼀些其他的⽬的例如修改⽤户的默认shell(默认的/bin/sh功能太少,甚⾄不能使⽤⽅向键和Tab键)以及为新⽤户指定home⽬录的位置于是我们可以这么使⽤useradd -d <homedir> -m -s /bin/bash <username>对上述命令的翻译:新建⽤户<username>-s:指定shell到/bin/bash-d:指定其home⽬录为<homedir>-m:如果指定的home⽬录不存在,则新建P.S. 对useradd命令的Usage翻译:【待翻译】Usage: useradd [options] LOGINuseradd -Duseradd -D [options]Options:--badnames 对⽤户名不做检测-b, --base-dir BASE_DIR 为新建的⽤户指定home⽬录到BASE_DIR下--btrfs-subvolume-home use BTRFS subvolume for home directory-c, --comment COMMENT GECOS field of the new account-d, --home-dir HOME_DIR home directory of the new account-D, --defaults print or change default useradd configuration-e, --expiredate EXPIRE_DATE expiration date of the new account-f, --inactive INACTIVE password inactivity period of the new account-g, --gid GROUP name or ID of the primary group of the newaccount-G, --groups GROUPS list of supplementary groups of the newaccount-h, --help display this help message and exit-k, --skel SKEL_DIR use this alternative skeleton directory-K, --key KEY=VALUE override /etc/login.defs defaults-l, --no-log-init do not add the user to the lastlog andfaillog databases-m, --create-home create the user's home directory-M, --no-create-home do not create the user's home directory-N, --no-user-group do not create a group with the same name asthe user-o, --non-unique allow to create users with duplicate(non-unique) UID-p, --password PASSWORD encrypted password of the new account-r, --system create a system account-R, --root CHROOT_DIR directory to chroot into-P, --prefix PREFIX_DIR prefix directory where are located the /etc/* files-s, --shell SHELL login shell of the new account-u, --uid UID user ID of the new account-U, --user-group create a group with the same name as the user-Z, --selinux-user SEUSER use a specific SEUSER for the SELinux user mapping--extrausers Use the extra users database。
linux创建用户、文件夹、用户组的添加和删除的命令及解说
创建用户、设置密码、修改用户、删除用户:useradd testuser 创建用户testuserpasswd testuser 给已创建的用户testuser设置密码说明:新创建的用户会在/home下创建一个用户目录testuserusermod --help 修改用户这个命令的相关参数userdel testuser 删除用户testuserrm -rf testuser 删除用户testuser所在目录------------------------------------------------------------在权限允许的范围内:创建用户:命令行窗口下用户的相互切换:su 用户名说明:su是switch user的缩写,表示用户切换从新的用户状态下输入“exit”即可退回到刚才的用户状态$Su rootPassword:#useradd testuser(新建testuser用户)# Password testuser(给testuser设置密码)Changing password for user testuser。
(更改testuser密码)New password:(输入新密码)Re type new password:(再次输入新的密码)Passwd: all authentication tokens updated successfully (身份验证更新成功) #cd /home(到home这个目录)#ls(查看此层目录文件)#pwd(查看当前路径)#rm –rf testuser强制删除testuser目录文件#ls创建新用户后,同时会在etc目录下的passwd文件中添加这个新用户的相关信息---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------创建文件夹:mkdir /home/u1 创建文件夹/home/u1chown oracle /home/u1 表示改变目录所有者为oracle账户;chgrp dba /home/u1 改变/home/u1目录为dba所有;chmod 755 /home/u1 表示oracle账户对/home/u1目录有755权限;rmdir /home/u1 表示删除/home/u1目录hostname可以查看linux的计算机名;whoami可以查看当前用户;pwd显示当前路径;df查看系统的硬件信息ls -lrt l表示显示详细列表,-t表示按时间排序,-r反向排序cat orcl_ora_3436.trc|grep bucket---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------用户组的添加和删除:groupadd testgroup组的添加groupdel testgroup 组的删除说明:组的增加和删除信息会在etc目录的group文件中体现出来。
linux_创建用户命令
将用户名 user2 的主目录路径设置在/home/user1,登陆的 Shell 设置为/usr/bin/gcc。 一般情况下 usermod 命令会参照命令指令的部分修改用户帐号信息。但 usermod 不允许改变 正在线上的使用者帐号名称,因此,当用 usermod 来改变用户帐号信息时,必须确认这名没 在电脑上执行任何程序。
Linux 创建用户命令 3:usermod 命令用来修改用户信息 其命令格式如下: # usermod〔选项〕〔用户名〕 常用命令选项 -d 更新使用者新的登陆目录 -e 设置新用户的停止日期,日期格式为 MM/DD/YY -f 帐户过期几日后永久停权。当值为 0 时帐号则立刻被停权。而当值为-1 时则关闭此功能。 预设值为-1 -g 更新使用者新用户加入群组 -G 定义使用者为一堆 groups 的成员。每个群组使用“??”隔开,不可以夹杂空白字 -l 变更用户登陆时的名称,同时使用者目录名也会跟着更动成新的名称 -s 指定新用户 Shell -u 用户 ID 值,必须为唯一的 ID 值。用户目录树下所用的文档目录其 userID 会自动变更, 放在拥护目录外的文档则要自行手动更动 例如,下面的命令修改用户信息:
-f:新增的一个已经存在的群组帐号,系统会出现错误讯息然后结束 groupadd.
如果是这样的情况,不会新增这个群组(如果是这个情况,系统不会在新增一次)。也 可同时加上-g 选项,当你加上一个 GID 时,此时 GID 就不用是唯一值,可不加-o 参数,建好 的群组会显示建立后的结果(adding a group as neither –g or –o options were specified),这是 Red Hat Linux 额外增设的选项。
Linux下创建、删除文件和文件夹命令
学习Linux二(创建、删除文件和文件夹命令)创建文件夹【mkdir】一、mkdir命令使用权限所有用户都可以在终端使用mkdir 命令在拥有权限的文件夹创建文件夹或目录。
二、mkdir命令使用格式格式:mkdir [选项] DirName三、mkdir命令功能通过mkdir 命令可以实现在指定位置创建以DirName(指定的文件名)命名的文件夹或目录。
要创建文件夹或目录的用户必须对所创建的文件夹的父文件夹具有写权限(了解Linux文件-文件夹权限请点击这里)。
并且,所创建的文件夹(目录)不能与其父目录(即父文件夹)中的文件名重名,即同一个目录下不能有同名的(区分大小写)。
四、mkdir命令选项说明命令中的[选项]一般有以下两种:-m 用于对新建目录设置存取权限,也可以用chmod 命令进行设置。
-p 需要时创建上层文件夹(或目录),如果文件夹(或目录)已经存在,则不视为错误。
五、mkdir命令使用举例例一:在桌面下面创建以“demo”命名的文件夹。
使用以下命令即可。
mkdir 桌面/demo例二:在桌面下面创建以“demo”命名的文件夹,并且给文件夹赋权限,权限为123。
mkdir 123 桌面/demo删除文件夹【rm】一、rm命令使用权限所有用户都可以在终端使用rm命令删除目录。
二、rm命令使用格式格式:rm [选项] DirName三、rm命令功能删除档案及目录。
四、rm命令选项说明命令中的[选项]一般有以下几种:-i 删除前逐一询问确认。
-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
-r 将目录及以下之档案亦逐一删除。
五、rm命令使用举例例一:删除所有C语言程序文档;删除前逐一询问确认。
rm -i *.c例二:将Finished 子目录及子目录中所有档案删除。
rm -r Finished注:在linux没有回收站,在试用rm命令的时候,一定要小心些,删除之后就无法再恢复了。
创建文件【vi】一、进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filenamevi filename....filename :打开多个文件,依次进行编辑二、移动光标类命令h :光标左移一个字符l :光标右移一个字符space:光标右移一个字符Backspace:光标左移一个字符k或Ctrl+p:光标上移一行j或Ctrl+n :光标下移一行Enter :光标下移一行w或W :光标右移一个字至字首b或B :光标左移一个字至字首e或E :光标右移一个字至字尾) :光标移至句尾( :光标移至句首}:光标移至段落开头{:光标移至段落结尾nG:光标移至第n行首n+:光标下移n行n-:光标上移n行n$:光标移至第n行尾H :光标移至屏幕顶行M :光标移至屏幕中间行L :光标移至屏幕最后行0:(注意是数字零)光标移至当前行首$:光标移至当前行尾三、屏幕翻滚类命令Ctrl+u:向文件首翻半屏Ctrl+d:向文件尾翻半屏Ctrl+f:向文件尾翻一屏Ctrl+b;向文件首翻一屏nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。
Linux中创建管理用户用户组命令linux操作系统电脑资料
Linux中创建管理用户、用户组命令linux操作系统 -电脑资料在这里我们给大家介绍在linux中用户及组的基本概念,以及如何创建管理用户、组 ,有需要了解的朋友可一起来看看,Linux中创建管理用户、用户组命令linux操作系统。
使用Linux时,需要以一个用户的身份登陆,从而限制一个使用者能够访问的资源;而组则是用来方便组织管理用户。
用户与组•每个用户拥有一个UserID•每个用户属于一个主组,属于一个或多个附属组•每个组拥有一个GroupID•每个进程以一个用户身份运行,并受该用户可访问的资源限制•每个可登陆用户有一个指定的SHELL系统中的文件都有一个所属用户及所属组,用户、组信息保存在以下三个文件中:/etc/passwd 用户信息/etc/shadow 用户密码/edc/group 组信息命令id用以显示当前用户的信息,命令passwd可以修改当前用户的密码;以下命令可以显示登陆用户信息:whoami 显示当前用户who 显示当前登陆的用户信息w 显示登陆用户的详细信息命令useradd添加一个用户:useradd 用户名-d 指定用户家目录-s 指定用户登陆shell-u 指定用户uid-g 指定用户所属主组-G 指定用户所属附属组命令usermod修改一个用户的信息:usermod 参数用户名-l 修改用户名-u 修改uid-g 修改用户主组-G 修改用户附属组-L 锁定用户-U 解锁用户例1:# useradd -d /usr/sam -m sam此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录),电脑资料《Linux中创建管理用户、用户组命令linux操作系统》。
例2:# useradd -s /bin/sh -g group -G adm,root gem此命令新建了一个用户gem,该用户的登录Shell是/bin/sh,他属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。
《Linux系统管理》Linux软件包管理实验报告一
《Linux系统管理》Linux软件包管理实验报告一、实验目的:1.了解作为系统管理员如何为新用户建立帐户2.如何增加、设置或修改账户和组3.掌握常用软件包的管理方法4.掌握网络通信管理5.掌握进程管理6.掌握常用的磁盘管理命令(1)查看student用户的配置文件及管理文件(3)将student用户更名为newStudent(4)显示当前登录的账户信息(2)删除创建的用户。
2.组管理(1)创建一个公共组group1(2)将group1组更名为group(3)添加group组的成员student1,student2,student3,student4,并给每一个用户分配一个密码(2)设定student1为group组的管理员(5)将group组内的用户student3和student4删除3.常用软件包的管理方法(1)RPM软件包①查询系统中安装的所有RPM软件包②查询httpd-2.4.6-90.el7.centos.x86_64.rpm,若不在请安装此包③查询httpd-2.4.6-90.el7.centos.x86_64.rpm包中文件的信息④查询ftp-0.17-67.el7.x86_64.rpm包中文件的信息⑤查询系统中已安装(python-cffi-1.6.0-5.el7.x86_64)包里所包含的文件⑥查询系统中指定文件所属的软件包⑦查询apache-commons-cli-1.2-13.el7.noarch.rpm,若不在请安装此包。
⑧删除apache-commons-cli-1.2-13.el7.noarch.rpm包(2)YUM软件包①查看YUM软件仓库配置文件的关键信息。
②进行YUM本地资源的配置。
③采用YUM命令进行软件包的查询,并安装httpd包(主要观察安装的过程)。
(3)TAR软件包①将整个/etc目录打包压缩成myetc.tar.gz文件,并保存在/root目录中。
Linux新建用户和组命令
Linux新建⽤户和组命令⽤户的⾓⾊是通过UID和GID识别的。
UID⽤户ID:相当于各为的⾝份证,在系统中是唯⼀的GID组ID:相当于各为的家庭或者你们的学校。
1、新建⽤户及设置密码命令如下:useradd 【参数】 ⽤户名-g 属组-u 设置uid-m 创建家⽬录-M 没有家⽬录-G 指定属于多个组-s 指定登录shell-d 指定家⽬录-c 注释-D 改变它默认的属性-e 指定的⽇期是帐号失效的⽇期,在xshell中可以man⼀下useradd。
实例如下:useradd -c "admin" -m abc解释:创建⼀个abc普通⽤户,并加备注“admin”和⾃动建⽴家⽬录。
2、使⽤ passwd 命令为新建⽤户设置密码和修改⽤户密码:passwd 参数 ⽤户名-l:锁定已经命名的账户名称-u:解开账户锁定状态-x, --maximum=DAYS:密码使⽤最⼤时间(天)-n, --minimum=DAYS:密码使⽤最⼩时间(天)-d:删除使⽤者的密码-S:检查指定使⽤者的密码认证种类--stdin:⾮交互式修改/设置密码,弊端是操作⽇志能查密码,⽤history -c ⼲掉。
实例:passwd ⽤户名echo 123345|passwd --stdin ⽤户名注意:当我们删除⼀个⽤户的密码时,登录时就⽆需密码。
3、修改⽤户:usermod 参数 ⽤户名-c:修改⽤户帐号的备注⽂字。
-d:修改⽤户登⼊时的⽬录。
-e:修改帐号的有效期限。
-f: 改在密码过期后多少天即关闭该帐号。
-g:修改⽤户所属的群组。
-G:修改⽤户所属的附加群组。
-l:修改⽤户帐号名称。
-L:锁定⽤户密码,使密码⽆效。
-s:修改⽤户登⼊后所使⽤的shell。
-u:修改⽤户ID。
-U:解除密码锁定。
常⽤的参数包括-c, -d, -m, -g, -G, -s, -u以及-o等,与useradd命令中的选项⼀样,可以为⽤户指定新的资源值。
Linux基本操作命令(一)
Linux基本操作命令(⼀)⽬录1.⽂件和⽬录操作命令2.⽤户和⽤户组操作命令3.vim编辑器操作命令4.打包和解压操作命令5.系统操作命令为什么要学习linux?1.linux是⼀款操作系统2.linux经常来作为服务器操作系统来⽤作⽤:1.查看⽇志(任何操作的⽇志)2.定位bug(查看⽇志,⽇志级别:info/debug/error....)3.搭建环境(搭建测试环境)以上三条就是测试⼈员会在⼯作经常要⽤的三点需要的软件1.CENTOS 6.8----linux操作系统2.Xshell 5---远程连接⼯具其它还有PYTT secureCRT3.winSCP---windows与linux传输⼯具⽂件和⽬录操作命令1.linux终端共有6个,分别tty1---tty6 通过ctrl + alt+F1~F6进⾏切换2.[root@localhost ~]# 后光标闪烁表⽰可以执⾏命令/编辑root===表⽰当前登录的⽤户名@----表⽰在localhost---主机域名~ ---- 表⽰root⽤户的家⽬录root⽤户的家⽬录路径:/root普通⽤户的家⽬录 ~普通⽤户的家⽬录 /home/普通⽤户的⽤户名⽬录# ---- 表⽰是root $ ---表⽰是普通⽤户3.快捷键ctrl+c 终⽌当前命令ctrl+l 清屏ctrl+D =exit 当前⽤户退出ctrl+z 暂停当前命令 fg---恢复执⾏TAB键----⾃动补全如果输⼊的字符串是唯⼀的,单击tab键就会⾃动补全如果输⼊的字符串不是唯⼀的,双击tab键显⽰所有以输⼊的字符开头的⽬录或⽂件linux命令⼀样的可以⾃动补全注意点:⾃动补全只补全当前⽬录下存在的⽬录或⽂件名称4.⽬录/----表⽰根⽬录常⽤⽬录/home 普通⽤户的家⽬录/root 是root⽤户的家⽬录不管是普通⽤户还是root登录成功后,所在位置都是在各⾃的家⽬录下/etc 配置⽂件位置(⽤户、密码、服务的配置⽂件等)/opt 保存第三⽅软件安装位置/usr/local 安装第三⽅软件的位置/tmp 临时⽂件,⾃动清空不管是存放软件包或者⽂件时,都去新建相应的⽬录,最好是当前登录⽤户家⽬录下⾯,不要随意删除别⼈的⽂件5.绝对路径和相对路径什么是绝对路径?什么是相对路径?绝对路径是从根⽬录开始的完整路径相对路径是从当前位置(⽤户所在的路径位置)开始的路径. 表⽰当前⽬录.. 表⽰上⼀级⽬录pwdpwd --查看当前位置的路径(是从根⽬录开始)cd ----切换⽬录ls1.ls ---list---显⽰当前⽬录或指定⽬录下⽂件和⽬录经常使⽤的选项:ls -l ==ll ---查看当前⽬录下的⽂件和⽬录,以较长格式显⽰⽂件和⽬录显⽰格式讲解:第⼀个 -/d/l 表⽰⽂件类型- ⼆进制⽂件 d ⽬录 l 软链接第⼆个部分 rwxrwxrwx 表⽰各类⽤户的权限r -read 读权限 w-wirte 写权限 x ---执⾏权限r-x 表⽰只有读和执⾏权限rwx rwx rwx第⼀个rwx表⽰⽂件或⽬录所属⽤户的权限第⼆个rwx表⽰⽂件或⽬录所属组的权限第三个rwx表⽰⽂件或⽬录其他⽤户的权限第三个部分 root 表⽰⽂件或⽬录所属⽤户的⽤户名第四个部分 root 表⽰⽂件或⽬录所属组的组名第五个部分 12288 表⽰⽂件或⽬录的⼤⼩第六个部分 Feb 25 18:41 表⽰⽂件或⽬录的最后修改时间第七个部分⽂件或⽬录的名称2.ls -a ==ls --all 查看当前⽬录下的所有⽂件和⽬录,包括隐藏⽂件3.ls -h 表⽰以容易理解的格式显⽰⽂件的⼤⼩, 必须与-l⼀起使⽤,才能有所体现4.ls -i 显⽰⽂件和⽬录的i节点每⼀个⽂件和⽬录的i节点都是唯⼀的,我们可以通过i节点来查找⽂件和⽬录mkdirmkdir --创建新⽬录格式:mkdir [-p] 路径/新⽬录名1.在当前⽬录下创建新⽬录2.在指定的⽬录下创建新⽬录3.-p, --parents no error if existing, make parent directories as needed ---递归创建⽬录rmdirrmdir ---删除空⽬录1.如果是⽬录是⾮空,不能删除[root@localhost cc]# rmdir test/rmdir: failed to remove `test/': Directory not empty'2.不能删除⾮⽬录[root@localhost ~]# rmdir install.logrmdir: failed to remove `install.log': Not a directory'rmrm ---删除⽂件和⽬录⽤法:rm [选项]... ⽂件...不管是⽂件还是⽬录,经常使⽤就是rm -rf 要删除的东西(可以是多个,中间⽤空格隔开)[root@localhost tmp]# rm -rf cc test yum.logrm -rf *---删除当前⽬录下所有⽂件和⽬录rm -rf te*--删除以te开头的所有⽂件和⽬录删除以.1og结尾的内容:rm -rf *.log使⽤rm命令时,⼀定确保这个⽂件和⽬录确定要删除,在liunx系统⾥⾯删除是不可逆的,没有回收站1.删除⽂件[root@localhost tmp]# rm ifcfg-eth0rm:是否删除普通⽂件 "ifcfg-eth0"?y[root@localhost tmp]# rm -f test.log --删除不询问2.删除⽬录--- -r 同时会询问是否删除[root@localhost test_dir]# rm -r test/rm: descend into directory `test'? yrm: remove directory `test/testt'? yrm: remove directory `test'? y'3.如果不想在删除过程⼀直有询问,可以使⽤-f---强制删除(需要更加谨慎) force[root@localhost test_dir]# rm -rf test/强制删除,并且没有询问如果有些⽂件使⽤rm 不能删除,我们也可以加上-f,同样的含义强制删除,并且没有询问cpcp --复制⽂件或⽬录⽤法:cp [选项] 原⽂件或⽬录⽬标⽬录语法:cp -rp [原⽂件或⽬录][⽬标⽬录]1.复制⽂件:[root@localhost test_dir]#cp /etc/sysconfig/network-scripts/ifcfg-eth0 /tmp/test[root@localhost test_dir]#cp /etc/sysconfig/network-scripts/ifcfg-eth0 ..[root@localhost test_dir]# cp /etc/sysconfig/network-scripts/ifcfg-eth0 /tmp2.-p 保留原⽂件或⽬录的属性,属性就是ls -l所展⽰的东西[root@localhost tmp]# cp -p /etc/sysconfig/network-scripts/ifcfg-eth0 /tmp3.-r 复制⽬录[root@localhost tmp]# cp -r ./test_dir/test .结论:cp 复制⽂件或⽬录,复制成功后,原⽂件或⽬录还存在在复制的过程中,还可以改名mvmv与cp 最⼤的区别就是⼀个不保留原⽂件,⼀个保留原⽂件1.剪切--不改名[root@localhost test_dir]# mv ../ifcfg-eth0 .2.剪切-改名[root@localhost tmp]# mv test_dir/ifcfg-eth0 ./test.log3.改名[root@localhost test_dir]# mv test tests作⽤:⽤来备份场景:放了⼀个lib⽂件运⾏,开发说你替换⼀下lib⽂件但是我们保证开发的lib的⽂件就是OK ,那这种情况最好备份mv chaa.lib chaa.lib.baktouchtouch -创建空⽂件[root@localhost test]# touch test.log这个命令不经常⽤,创建⽂件是vim编辑器catcat 显⽰⽂件内容[root@localhost test]# cat yum.conf⼀次性将⽂件内容完全展⽰出来,并且退出从⽽可得出cat不适合查看⽂件很⼤的⽂件,cat只适合于查看⽂件内容偏⼩的⽂件tactac 倒着显⽰⽂件内容[root@localhost test]# tac test.log适合查看⽂件内容偏⼩的,并且将最⼀⾏显⽰在最前⾯moremore 分页显⽰⽂件的内容空格或f 向下翻页enter键换⾏(⼀⾏⼀⾏的显⽰)同时在页⾯最下⽅的位置显⽰⽂件显⽰的当前进度q或Q 退出缺点:只能向下翻页,不能向上查看lessless 分页显⽰⽂件的内容(向上翻页)空格或f 向下翻页enter键换⾏q或Q 退出pgup/pgdn 向上/向下⼀页⼀页切换⽅向键向上/向下⼀⾏⼀⾏切换在⽂件中查找指定字符串时:2.在/后⾯输⼊要查找的指定字符串⽐如:/error3.回车⽬前显⽰的⼀个指定字符串是从当前位置查找到的第⼀个,可以按“n”继续向下查找其它的此⽅法经常⽤于在⽇志定位问题,或在修改⽂件要修改指定内容less是显⽰⽂件内容命令中⽤得最多的headhead --显⽰⽂件前⾯⼏⾏1.在不跟任何选项和参数时,默认显⽰⽂件的前⼗⾏[root@localhost test]# head services.log2.只显⽰⽂件的前⾯5⾏(⾏数前的-很重要)[root@localhost test]# head -5 services.logtailtail 显⽰⽂件最后的⼏⾏1.默认显⽰⽂件的最后⼗⾏[root@localhost test]# tail test.log2.只显⽰⽂件的最后三⾏ -n[root@localhost test]# tail -3 test.log==[root@localhost test]# tail -n 3 test.log3.-f 动态显⽰⽂件的最后⼏⾏(经常⽤)tail -400f XX.log动态就是显⽰⽂件新增的内容⽤于场景:主要⽤于实时动态显⽰操作⽇志同样是⽤于定位bugchmodchmod -改变⽂件或⽬录的权限(读写执⾏)user group other所有者所有组其它⼈+ 增加 - 删除 = 等于1.将⽂件的写权限删除[root@localhost test]# chmod u-w test.log2.给所有组增加执⾏的权限[root@localhost test]# chmod g+x test.log3.给其它⼈赋于读写执⾏的权限[root@localhost test]# chmod o=rwx test.log4.错误⽅式chmod u=rw o=r test.log这种⽅式不⾏,不能同时修改所有者、所有组和其它⼈的权限以上根据⽤户来+-=三种⽅式来修改权限,显得过于⿇烦解决⽅法:r=4 w=2 x=14+2+1=7 ⽤7这⼀个数字来代表所有权限1.给所有者赋读写权限,所有组为读执⾏权限其它⼈赋读权限[root@localhost test]# chmod 654 test.log通过数字的⽅式同时修改不同⽤户的权限2.给所有⽤户都赋于读写权限6[root@localhost test]# chmod 666 test.log⽬前更改权限最简便的⽅法,也是最常⽤的3.给⽬录赋权[root@localhost test]# chmod 764 test12/同时在⽂件或⽬录前可以加上绝对路径或相对路径4.-R 递归修改⽂件或⽬录的权限(经常使⽤)[root@localhost test]# chmod -R 644 ./test12/test是同时将⽬录下⾯所有的⽂件和⼦⽬录中内容权限⼀并修改chmod root和普通⽤户都有权限chownchown 改变⽂件的所有者(经常使⽤)1.改变test_dir.log⽂件的所有者为root[root@localhost test]# chown root test_dir.log2.普通⽤户改变log.log的所有者[test@localhost ~]$ chown test log.logchown: changing ownership of `log.log': Operation not permitted'chown普通⽤户是没权限进⾏操作这个命令,只有root才有权限去改变⽂件或⽬录的所有者chgrpchgrp 改变⽂件和⽬录的所有组[root@localhost test]# chgrp test test但是这个命令我们⼀般不⽤,因为很少会去只改变⽂件和⽬录的所有组如果要改变所有组,⼀般会同时改变所有者和所有组如果是同时改变所有者和所有组,可以⽤chown经常使⽤的⽅式[root@localhost test]# chown wq:wq testumaskumask ---显⽰⽂件和⽬录的默认权限775/755 创建⼀个⽬录664/644 创建⼀个⽂件022 umask---取反--7557-0=7 7-2=5 7-2=5代表⼀个⽬录初始的权限为755,⼀个⽂件的初始权限为644(⽂件没有可执⾏权限)findfind ---⽂件搜索格式:find [搜索范围][匹配条件]1.根据name来搜索(经常⽤)a.精确搜索[root@localhost test]# find /etc -name servicesb.模糊搜索init开头的⽂件和⽬录[root@localhost test]# find /etc -name init*c.模糊搜索init结尾的⽂件和⽬录[root@localhost test]# find /etc -name *initd.模糊搜索包含init的⽂件和⽬录[root@localhost test]# find /etc -name *init*e.模糊搜索以init开头的后⾯只有三个字符串的⽂件或⽬录 * 代表⼀组字符串代表⼀个字符[root@localhost test]# find /etc -name initlinux对⼤⼩很敏感,⽽且空格也敏感[root@localhost test]# find /etc -name INITf.根据name搜索时,不区分⼤⼩写⽤选项 -iname[root@localhost test]# find /etc -iname INIT/etc/inittab[root@localhost test]# find /etc -name INIT没有搜索出任何数据2.根据⽂件⼤⼩搜索a.⼤于4096的⽂件 +4096[root@localhost test]# find /etc -size +4096b.⼩于4096的⽂件 -4096[root@localhost test]# find /etc -size -4096c.等于4096的⽂件[root@localhost test]# find /etc -size 4096d.⼤于4096同时⼩于641020的⽂件 -a[root@localhost test]# find /etc -size +4096 -a -size -641020 e.⼤于4096或者⼩于641020的⽂件[root@localhost test]# find /etc -size +4096 -o -size -6410203.根据⽂件所有者去搜索[root@localhost test]# find /home/test -user test[root@localhost test]# find -user test如果不写搜索范围,默认搜索从当前⽬录开始,搜索下⾯匹配的⽂件和⽬录4.根据⽂件属性搜索a.搜索5分钟之内内容被修改的⽂件[root@localhost test]# find . -mmin -5⽂件内容被修改的同时,⽂件属性也会被修改b.搜索3分钟之内⽂件属性被修改的⽂件[root@localhost test]# find . -cmin -3amin cmin mmin后⾯接分钟atime ctime mtime后⾯接⼩时5.根据⽂件类型来搜索- ⼆进制⽂件f d ⽬录 l 软链接1.搜索⽬录---⽂件类型为d[root@localhost test]# find . -type d2.搜索当前⽬录下⽂件类型为⽂件 f[root@localhost test]# find . -type - ---错误find: -type 的参数未知: -[root@localhost test]# find . -type f ---正确3.搜索当前⽬录下的⽂件类型为软链接 l[root@localhost test]# find . -type l4.在根⽬录下搜索⽂件名称为services的⽂件[root@localhost test]# find / -name services -type fgrepgrep --搜索⽂件的内容1.搜索test.log这个⽂件中包含qwer字符串的⾏[root@localhost test]# grep qwer ./test.log2.不区分⼤⼩写进⾏搜索选项 -i[root@localhost test]# grep -i test test.log3.搜索不包含123的⽂件内容[root@localhost test]# grep -v 123 test.log4.搜索不包含test的⽂件内容,不区分⼤⼩写[root@localhost test]# grep -iv test test.log5.搜索不是以1开头的⽂件内容[root@localhost test]# grep -v ^1 test.log6.搜索以1开头的⾏[root@localhost test]# grep ^1 test.log^ 表⽰以什么开头在shell脚本 #表⽰注释7.屏蔽掉注释⾏ --[root@localhost test]# grep -v ^# sysctl.conf8.经常使⽤的⼀种⽅法---管道|[root@localhost test]# ps -ef |grep javaps -ef 查询进程|管道符 command1 | command2将command1的输出作为command2的输⼊[root@localhost test]# ls -l |grep testlnln --链接命令链接分为软链接和硬链接1.给⽬录创建软链接 -s[root@localhost tmp]# ln -s /tmp/test/test12/test ./test1 lrwxrwxrwx. 1 root root 21 Apr 14 21:06 test1 -> /tmp/test/test12/test 软链接的⼤⼩⾮常⼩,只是⼀个链接软链接相当于windows下⾯的快捷⽅式2.给⽂件创建软链接[root@localhost tmp]# ln -s /tmp/test/test12/test/tw.log .软链接的⽬标⽂件和原⽂件的i节点不同3.给⽂件创建⼀个硬链接[root@localhost tmp]# ln /tmp/test/test12/test/tw.log ./tw1.log硬链接的i节点相同[root@localhost tmp]# ln /tmp/test/test12/test ./test_dir ln: `/tmp/test/test12/test': hard link not allowed for directory'硬链接不能针对⽬录使⽤,只能对⽂件使⽤。
Linux1 使用phpMyAdmin (2)
Linux1 使用phpMyAdmin在完成配置后,就可以使用phpMyAdmin工具来访问MySQL数据库了。
1.登录phpMyAdmin在地址栏输入http://localhost/phpMyAdmin/index.php按【回车】键,在弹出的对话框中输入用户名和密码,就进入了如图4-78的phpMyAdmin管理界面。
此时可以看到在页面上方标示的用户是以root@localhost身份连接到MySQL数据库服务器的。
整个界面分为MySQL和phpMyAdmin两个部分。
图4-78 phpMyAdmin管理界面如果在进入phpMySQL的欢迎界面后,页面下方出现如图4-79所示的提示,这表明需要mbstring扩展模块。
图4-79 错误提示要安装mbstring,可在RedHat Enterprise Linux5.4的第2张安装光盘的相应目录(可由用户任意指定)下找到它的RPM安装软件包php-mbstring-4.3.9-3.8.i386.rpm。
然后,使用“rpm –vih 软件按包绝对路径”命令格式进行安装,如图4-80所示。
图4-80 安装mbstring1.MySQL栏MySQL栏中包括MySQL字符集、显示MySQL的运行信息、显示MySQL的系统变量等一系列选项,代表的含义如下:●“MySQL字符集”MySQL默认字符集utf8(一种储存和传送的格式),phpmyadmin支持也是utf8默认,用其建库可识别中文。
●“创建一个新的数据库”文本框及“创建”按钮可用来创建一个新的数据库。
●“显示MySQL的运行信息”超链接可显示MySQL服务器运行的信息,其中包括服务器和启动、已运行了多长时间、访问服务器的网络数据流量、查询统计和系统状态变量值等,部分界面如图4-81所示。
图4-81 显示MySQL的运行信息●“显示MySQL的系统变量”超链接可显示服务器的系统变量及其设置值,其部分界面如图4-82所示。
linux删除用户命令
linux删除用户命令Linux下删除以后的时候我们需要通过相关的命令来实现。
下面由店铺为大家整理linux删除用户命令的相关知识,希望对大家有帮助!linux删除用户命令简介userdel 是一个底层用于删除用户的工具。
在 Debian 上,我们通常会使用deluser 命令。
userdel 会查询系统账户文件,例如/etc/password 和 /etc/group。
那么它会删除所有和用户名相关的条目。
在我们删除它之前,用户名必须存在。
linux删除用户命令的用法由于 userdel 会修改系统账户文件,那么我们需要root特权来运行它。
不然我们会遇到一个报错信息“只有root权限才能执行这项操作”或者类似的信息。
在我们得到特权后,我们可以通过输入 userdel 从你的控制台删除用户。
下面是一个默认使用 userdel 的样例。
$ sudo userdel pasadena或者# userdel pasadena正如你所见,我们不能没有root权限而删除用户pasadena。
当我们有权限时,系统不会给出错误信息,这意味着用户已经成功删除。
完全删除用户家目录不带选项使用userdel,只会删除用户。
用户的家目录将仍会在/home目录下。
当我们进入/home目录时,我们仍旧可以看到ID 1002拥有pasadena 文件夹。
已创建的用户通常会有一个与用户名相同的组名。
1002是 pasadena 用户名的 UID 和 pasadena 组名的 GID。
为了在删除用户时完全删除家目录,我们可以使用-r 选项。
这个选项同样会删除用户的邮件池,如果存在的话。
强制删除一个用户userdel 提供了-f 选项来强制删除用户。
甚至当用户已经登入Linux 系统时此选项仍旧生效。
请看一下示例截图。
截图的上面显示用户pasadena 已经登录了系统。
它被标记的进程6218是 SSHD 进程。
而当我们用“userdel -f pasadena”只会显示已经登录的要被删除的用户信息。
Linux1 索引的创建与删除
Linux1 索引的创建与删除为了加快数据查询速度,MySQL运行用户为一个表达特定字段设置索引,一个索引就是该字段值的一个目录列表。
有了索引,MySQL就不必通过浏览表中的每一行来查找和指定查询条件相匹配的记录,而是通过索引来查找和值得查询条件相匹配的记录。
这样对于一个数据量很大的表来说,由于索引比较小,使用索引可以明显地减少数据查询的执行时间。
索引可以在使用create table语句创建表的同时创建,也可以使用create index语句在已存在表中添加。
1.创建表的同时创建索引前面提到过在使用create table语句创建表student时,使用primary key子句为该表指定一个主键sno,那么MySQL会自动为该表的sno字段创建索引。
此外,在创建表时还可以用index子句或unique子句来创建索引。
例如,创建一个选课课程表course,将课程编号cno字段定义为主键,同时为课程名称cname创建一个名为cna的索引,则需要在终端中输入“create table course (cno varchar (5)not null,cname varchar (30)not null,teacher varchar (20),primary key (con),index can (cname));”命令,并按【回车】键,如图4-32所示。
图4-32 在创建表的同时创建索引如果将子句index cna(cname)改为unique(cname),则创建的是unique(独一无二)索引,该索引要求索引字段中的值必须是唯一的,即表中各条记录中该字段的值不能相同。
若想在表中插入一个与现有记录中该字段值相同的记录,则会失败,如图4-33所示。
图4-33 创建unique索引2.向已存在的表添加索引使用create index语句可以用来向已存在的表添加索引,它的基本语句格式为“create [unique] index 索引名on 表名称(字段名1[(长度)],…);”。
Linux添加删除用户和用户组
Linux添加删除⽤户和⽤户组本⽂总结了Linux添加或者删除⽤户和⽤户组时常⽤的⼀些命令和参数。
1、建⽤户:adduser phpq //新建phpq⽤户passwd phpq //给phpq⽤户设置密码2、建⼯作组groupadd test //新建test⼯作组3、新建⽤户同时增加⼯作组useradd -g test phpq //新建phpq⽤户并增加到test⼯作组注::-g 所属组 -d 家⽬录 -s 所⽤的SHELL4、给已有的⽤户增加⼯作组usermod -G groupname username (这个会把⽤户从其他组中去掉)usermod -a groupname username或者:gpasswd -a user group如果添加了⽤户,添加了组,然后使这个组⾥的⼈都可以sudo 到公共账号下可以/etc/sudoers.d 下⾯建⽴⼀个⽂件内容如下,就可以是etl组的所有⽤户都可以⽆密码的切到etl⽤户下。
%etl ALL=(ALL) NOPASSWD: /bin/su etl%etl ALL=(ALL) NOPASSWD: /bin/su - etl5、临时关闭:在/etc/shadow⽂件中属于该⽤户的⾏的第⼆个字段(密码)前⾯加上*就可以了。
想恢复该⽤户,去掉*即可。
或者使⽤如下命令关闭⽤户账号:passwd peter –l重新释放:passwd peter –u6、永久性删除⽤户账号userdel petergroupdel peterusermod –G peter peter (强制删除该⽤户的主⽬录和主⽬录下的所有⽂件和⼦⽬录)7、从组中删除⽤户编辑/etc/group 找到GROUP1那⼀⾏,删除 A或者⽤命令gpasswd -d A GROUP8、显⽰⽤户信息id usercat /etc/passwd。
创建用户(adduser和useradd)和删除用户(userdel)
创建⽤户(adduser和useradd)和删除⽤户(userdel)⼀、常⽤命令:(1)创建⽤户命令两条:adduseruseradd(2)⽤户删除命令:userdel⼆、两个⽤户创建命令之间的区别adduser:会⾃动为创建的⽤户指定主⽬录、系统shell版本,会在创建时输⼊⽤户密码。
useradd:需要使⽤参数选项指定上述基本设置,如果不使⽤任何参数,则创建的⽤户⽆密码、⽆主⽬录、没有指定shell版本。
三、使⽤adduser例如:$ adduser apple输出显⽰:这样在创建⽤户名时,就创建了⽤户的主⽬录以及密码。
默认情况下:adduser在创建⽤户时会主动调⽤ /etc/adduser.conf;在创建⽤户主⽬录时默认在/home下,⽽且创建为 /home/⽤户名如果主⽬录已经存在,就不再创建,但是此主⽬录虽然作为新⽤户的主⽬录,⽽且默认登录时会进⼊这个⽬录下,但是这个⽬录并不是属于新⽤户,当使⽤userdel删除新⽤户时,并不会删除这个主⽬录,因为这个主⽬录在创建前已经存在且并不属于这个⽤户。
为⽤户指定shell版本为:/bin/bash因此常⽤参数选项为:(1) --home:指定创建主⽬录的路径,默认是在/home⽬录下创建⽤户名同名的⽬录,这⾥可以指定;如果主⽬录同名⽬录存在,则不再创建,仅在登录时进⼊主⽬录。
(2) --quiet:即只打印警告和错误信息,忽略其他信息。
(3) --debug:定位错误信息。
(4) --conf:在创建⽤户时使⽤指定的configuration⽂件。
(5) --force-badname:默认在创建⽤户时会进⾏/etc/adduser.conf中的正则表达式检查⽤户名是否合法,如果想使⽤弱检查,则使⽤这个选项,如果不想检查,可以将/etc/adduser.conf中相关选项屏蔽。
如:四、使⽤useradd注意:在使⽤useradd命令创建新⽤户时,不会为⽤户创建主⽬录,不会为⽤户指定shell版本,不会为⽤户创建密码。
linux新建用户、用户组以及为新用户分配权限
linux新建⽤户、⽤户组以及为新⽤户分配权限Linux 系统是⼀个多⽤户多任务的分时操作系统,任何⼀个要使⽤系统资源的⽤户,都必须⾸先向系统管理员申请⼀个账号,然后以这个账号的⾝份进⼊系统。
⽤户的账号⼀⽅⾯可以帮助系统管理员对使⽤系统的⽤户进⾏跟踪,并控制他们对系统资源的访问;另⼀⽅⾯也可以帮助⽤户组织⽂件,并为⽤户提供安全性保护。
每个⽤户账号都拥有⼀个惟⼀的⽤户名和各⾃的⼝令。
⽤户在登录时键⼊正确的⽤户名和⼝令后,就能够进⼊系统和⾃⼰的主⽬录。
实现⽤户账号的管理,要完成的⼯作主要有如下⼏个⽅⾯:⽤户账号的添加、删除与修改。
⽤户⼝令的管理。
⽤户组的管理。
⼀、Linux系统⽤户账号的管理⽤户账号的管理⼯作主要涉及到⽤户账号的添加、修改和删除。
添加⽤户账号就是在系统中创建⼀个新账号,然后为新账号分配⽤户号、⽤户组、主⽬录和登录Shell等资源。
刚添加的账号是被锁定的,⽆法使⽤。
1、添加新的⽤户账号使⽤ useradd命令,其语法如下:代码:useradd 选项⽤户名其中各选项含义如下:代码:-c comment 指定⼀段注释性描述。
-d ⽬录指定⽤户主⽬录,如果此⽬录不存在,则同时使⽤-m选项,可以创建主⽬录。
-g ⽤户组指定⽤户所属的⽤户组。
-G ⽤户组,⽤户组指定⽤户所属的附加组。
-s Shell⽂件指定⽤户的登录Shell。
-u ⽤户号指定⽤户的⽤户号,如果同时有-o选项,则可以重复使⽤其他⽤户的标识号。
⽤户名指定新账号的登录名。
例1:代码:# useradd –d /usr/sam -m sam此命令创建了⼀个⽤户sam,其中-d和-m选项⽤来为登录名sam产⽣⼀个主⽬录/usr/sam(/usr为默认的⽤户主⽬录所在的⽗⽬录)。
例2:代码:# useradd -s /bin/sh -g group –G adm,root gem此命令新建了⼀个⽤户gem,该⽤户的登录Shell是/bin/sh,它属于group⽤户组,同时⼜属于adm和root⽤户组,其中group⽤户组是其主组。
linux下把一个用户从某个组中删除,而不删除用户
linux下把⼀个⽤户从某个组中删除,⽽不删除⽤户查看当前⽤户/登录⽤户基本语法whoami / who am I⽤户组介绍类似于⾓⾊,系统可以对有共性的多个⽤户进⾏统⼀的管理。
新增组语法groupadd 组名案例演⽰添加test和dev组[root@songzuozhen ~]# groupadd test[root@songzuozhen ~]# groupadd dev删除组语法groupdel 组名案例演⽰[root@songzuozhen ~]# groupdel test[root@songzuozhen ~]# groupdel dev增加⽤户时直接加上组语法useradd –g ⽤户组⽤户名案例[root@songzuozhen ~]# useradd -g dev xiaohong[root@songzuozhen ~]# id xiaohonguid=1003(xiaohong) gid=1002(dev) 组=1002(dev)修改⽤户的组语法usermod –g ⽤户组⽤户名案例演⽰[root@songzuozhen ~]# groupadd test[root@songzuozhen ~]# usermod -g test xiaohong[root@songzuozhen ~]# id xiaohonguid=1003(xiaohong) gid=1003(test) 组=1003(test)⽤户和组的相关⽂件/etc/passwd ⽂件⽤户(user)的配置⽂件,记录⽤户的各种信息每⾏的含义:⽤户名:⼝令:⽤户标识号:组标识号:注释性描述:主⽬录:登录Shell/etc/shadow ⽂件⼝令的配置⽂件每⾏的含义:登录名:加密⼝令:最后⼀次修改时间:最⼩时间间隔:最⼤时间间隔:警告时间:不活动时间:失效时间:标志/etc/group ⽂件组(group)的配置⽂件,记录Linux包含的组的信息每⾏含义:组名:⼝令:组标识号:组内⽤户列表拓展:删除组删除组时,必须在该组没有⽤户的情况下进⾏删除。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Linux1 用户的创建和删除
首次安装MySQL时,MySQL会自动授予用户都可以从本地连接MySQL服务器。
但只有MySQL管理员root才可以完全访问系统中的索引数据库(默认只有test 和mysql两个数据库),而其他用户只能访问test数据库。
前面提到过,默认的数据库MySQL中有5个授权表(表4-6),MySQL由安装程序自动设置。
这5个授权表共同决定哪个用户可以连接服务器、连接方式及连接后可以执行哪些操作。
初始化时,表host、table_priv和columnts_priv是空的,表user和db就决定了MySQL默认的访问规则。
下面以MySQL管理员身份查看表user和db的内容。
表4-6 MySQL中的5个授权表
要查看数据库MySQL中的表user前4个字段的内容,可使用“select host,user,password,select_priv from er;”命令。
命令中“er”的含义是数据库MySQL中的表user。
如果事先使用命令use MySQL选择了当前使用的数据库,则可以将“use mysql”简化为“user”,该命令执行情况如图4-37所示。
图4-37 MySQL中表user的前4个字段内容
如图4-37所示,第1条表明MySQL授予用户root可以从本地(localhost)连接到数据库服务器,并对服务器中所有数据库都拥有完全控制的权限(从表user的第4个字段起的所有关于权限的字段值都是…Y‟);第2条记录表明,任何其他用户(对于表user中的字段user值为空,相当于匿名用户)也可以从本地(localhost或localhost.localadmin)连接到数据库,但对系统中的所有数据库都没有访问权限(从表user的第4个字段起的所有关于权限的字段值都是…N‟)。
要查看数据库MySQL中表db的前4个字段内容,可在终端中输入“select host,db,user,select_priv from mysql.db;”命令,并按【回车】键,如图4-38所示。
图4-38 MySQL中表db的前4个字段内容
由图4-38所示,表db定义了任何用户可以从任何主机访问数据库test(或以test开头的),并且对该数据库拥有完全的访问权限(从表db的第4个字段起的索引关于权限的字段值都是…Y‟)。
字符“%”被用做通配符,字符“\_”被用做转义符。
虽然在表db中定义了允许任何用户可以从任何主机访问数据库test,但由于在表user中限制任何用户只能从本地(localhost或localhost.localadmin)来连接数据库服务器,两个表共同作用下MySQL默认设置时任何用户只能从本地完全访问数据库test。
下面用一种直观的方法来为数据库服务器创建/删除新用户,以及更改用户密码。
1.创建新用户
创建一个新用户guest,并设置密码,同时允许它从任何主机连接到数据服务器,可执行以下步骤。
首先,在终端中输入“mysql –uroot –p”命令,并按【回车】键以MySQL管理员身份从本地连接到数据库服务器,如图4-39所示。
图4-39 连接数据库服务器
连接到服务器后,使用“insert into er(host,user,password)values (…%‟,‟guest‟,pass word(…password‟));”创建新用户guest,并设置密码,同时允许新用户从任何主机连接数据库服务器,如图4-40所示。
图4-40 创建新用户
Password()函数会为密码加密,这样表user字段password保存的是经过加密的密码。
提示
然后,使用“flush privileges;”命令刷新MySQL授权表,“select host,user,password,select_priv from er;”命令查看创建的用户,如图4-41所示。
图4-41 刷新及查看授权表
设置完成后测试新用户是否可以使用,可在远程客户端使用“mysql –h 192.168.0.35 –u guest –p”命令连接数据库。
其中,“-h”选项用于指定所连接的数据库服务器的IP地址或域名,具体测试情况如图4-42所示。
图4-42 从远程客户端连接数据库服务器
由图4-42可看出,使用命令show databases 查看当前用户可用的数据库,只有数据库test 。
提 示 在创建新用户后一定要使用flush privileges 命令重载授权表。
如果Linux 系统开启了防火墙,则在远程连接mysql 的时候需要关闭防火墙或者设置运行tcp 端口3306通过,可使用“/sbin/iptables –IINPUT –p tcp –dport 3306 –j ACCEPT”命令开放tcp 端口3306。
2
.删除用户
MySQL 中,可使用delete 语句删除用户。
例如,删除用户guest ,则需要输入“delete from er where user = …guest‟;”命令,并按【回车】键,如图4-43所示。
图4-43 删除用户guest
删除后一定要记得用flush privileges 命令刷新MySQL 授权表,如图4-44所示。
图4-44 刷新MySQL 授权表
3.更改用户密码
MySQL 授权表与MySQL 常规表没有什么本质的区别,因此也可以用update 语句修改其内容,包括用户密码。
此外,还有一种更简单的更改用户密码的方法。
例如,要将用户guest 密码改为“guest ”,可使用“set password for guest@…%‟=pa ssword (…guest‟
);”命令。
当用户在登录MySQL 的时候也可以看到基本格式为“guest@%”的字段,它的含义是“用户名@客户端的域名”。
这条命令的执行情况如图
4-45所示。
图4-45 更改用户密码
提 示 由于这里使用set password 语句更改用户密码,所以不需要执行flush privileges 语句来刷新MySQL 授权表,修改的设置即可生效。