Linux命令-练习

题目

创建test目录,在里面创建aa bb cc三个目录,在aa里创建hello文件,在bb里创建world目录,在cc里创建itcast.py,然后执行ls -R,最后删除test

查看当前Ubuntu的系统时间

把命令cal执行后看到的结果存放到 cal.txt文件中

创建一个文件 test.txt,修改其权限为 所有者可读可写,其他人没有任何权限

(较难,多与同学讨论)创建一个叫xiaohua的用户,然后创建一个新的用户组叫meinv,并将xiaohua用户添加到这个用户组中,然后创建一个新的文件,名字叫123.py,并修它的用户组为meinv

将 所学的所有命令,至少敲2遍,并能说出其功能

解题步骤

创建test目录

CD Desktop
 mkdir test

在里面创建aa bb cc三个目录

cd test
 mkdir aa
 mkdir bb
 mkdir cc

在aa里创建hello文件,在bb里创建world目录,在cc里创建itcast.py

cd aa
 touch hello
 cd ..
 mkdir bb/world
 touch cc/itcast.py

然后执行ls -R,最后删除test

ls -r
 rm -rf test

查看当前Ubuntu的系统时间

(更改时区为上海,并查询结果)

timedatectl set-timezone "Asia/Shanghai"
 timedatectl status

把命令cal执行后看到的结果存放到 cal.txt文件中

cal > cal.txt​

创建一个文件 test.txt,修改其权限为 所有者可读可写,其他人没有任何权限

touch test.txt
 chmod 700 testtxt

(较难,多与同学讨论)创建一个叫xiaolang的用户

cd .. 
 ls
 sudo useradd xiaolang

然后创建一个新的用户组叫meinv,并将xiaohua用户添加到这个用户组中

sudo groupadd meinv
 sudo usermod -g meinv xiaolang

然后创建一个新的文件,名字叫123.py,并修它的用户组为meinv

touch 123.py
 chgrp 123.py meinv

将 所学的所有命令,至少敲2遍,并能说出其 功能

touch test.txt
 chmod 700 test.txt

遇到的问题

创建用户的问题

创建用户xiaolang时出现如下情况

输入:

useradd xiaolang

反馈

useradd Permission denied

cannot lock /ect/passwd; try again later

解决办法

cd ~

cd ..

此时,到达home目录

使用ls 反馈为用户名:mllt9920 (用户文件夹)

提升权限创建用户

sudu useradd xiaolang -m -d /home/xiaolang

提升输入密码,输入密码后即可创建成功

相关资料

修改文件权限:chmod

chmod 修改文件权限有两种使用格式:字母法与数字法。

字母法:chmod u/g/o/a +/-/= rwx 文件

[ u/g/o/a ]含义
uuser 表示该文件的所有者
ggroup 表示与该文件的所有者属于同一组( group )者,即用户组
oother 表示其他以外的人
aall 表示这三者皆是
[ +-= ]含义
+增加权限
-撤销权限
=设定权限
rwx含义
rread 表示可读取,对于一个目录,如果没有r权限,那么就意味着不能通过ls查看这个目录的内容。
wwrite 表示可写入,对于一个目录,如果没有w权限,那么就意味着不能在目录下创建新的文件。
xexcute 表示可执行,对于一个目录,如果没有x权限,那么就意味着不能通过cd进入这个目录。

数字法:“rwx” 这些权限也可以用数字来代替

字母说明
r读取权限,数字代号为 "4"
w写入权限,数字代号为 "2"
x执行权限,数字代号为 "1"
-不具任何权限,数字代号为 "0"

如执行:chmod u=rwx,g=rx,o=r filename 就等同于:chmod u=7,g=5,o=4 filename

chmod 751 file:

  • 文件所有者:读、写、执行权限
  • 同组用户:读、执行的权限
  • 其它用户:执行的权限

修改文件所有者:chown

修改文件所属组:chgrp

修改用户所在组:usermod

使用方法:usermod -g 用户组 用户名

为创建的普通用户添加sudo权限

添加、删除组账号:groupadd、groupdel

groupadd 新建组账号 groupdel 组账号 cat /etc/group 查看用户组

添加用户账号:useradd

在Unix/Linux中添加用户账号可以使用adduser或useradd命令,因为adduser命令是指向useradd命令的一个链接,因此,这两个命令的使用格式完全一样。

useradd命令的使用格式如下: useradd [参数] 新建用户账号

参数含义
-d指定用户登录系统时的主目录,如果不使用该参数,系统自动在/home目录下建立与用户名同名目录为主目录
-m自动建立目录
-g指定组名称

相关说明:

  • Linux每个用户都要有一个主目录,主目录就是第一次登陆系统,用户的默认当前目录(/home/用户);
  • 每一个用户必须有一个主目录,所以用useradd创建用户的时候,一定给用户指定一个主目录;
  • 用户的主目录一般要放到根目录的home目录下,用户的主目录和用户名是相同的;
  • 如果创建用户的时候,不指定组名,那么系统会自动创建一个和用户名一样的组名。
命令含义
useradd -d /home/abc abc -m创建abc用户,如果/home/abc目录不存在,就自动创建这个目录,同时用户属于abc组
useradd -d /home/a a -g test -m创建一个用户名字叫a,主目录在/home/a,如果主目录不存在,就自动创建主目录,同时用户属于test组
cat /etc/passwd查看系统当前用户名

查看有哪些用户组

方法一:

cat /etc/group

方法二:

groupmod +三次tab键

新创建的用户,默认不能sudo,需要进行一下操作

sudo usermod -a -G adm 用户名
 ​
 sudo usermod -a -G sudo 用户名

usermod -g 与 -G的区别

-g用来制定这个用户默认的用户组

-G一般配合'-a'来完成向其它组添加

切换用户:su

可以通过su命令切换用户,su后面可以加“-”。su和su –命令不同之处在于,su -切换到对应的用户时会将当前的工作目录自动转换到切换后的用户主目录:

注意:如果是ubuntu平台,需要在命令前加“sudo”,如果在某些操作需要管理员才能操作,ubuntu无需切换到root用户即可操作,只需加“sudo”即可。sudo是ubuntu平台下允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,减少了root 用户的登陆和管理时间,提高了安全性。

命令含义
su切换到root用户
su root切换到root用户
su -切换到root用户,同时切换目录到/root
su - root切换到root用户,同时切换目录到/root
su 普通用户切换到普通用户
su - 普通用户切换到普通用户,同时切换普通用户所在的目录

Ubuntu下切换到root的简单命令:

设置用户密码:passwd

在Unix/Linux中,超级用户可以使用passwd命令为普通用户设置或修改用户口令。用户也可以直接使用该命令来修改自己的口令,而无需在命令后面使用用户名。

退出登录账户: exit

如果是图形界面,退出当前终端;

如果是使用ssh远程登录,退出登陆账户;

如果是切换后的登陆用户,退出则返回上一个登陆账号。

查看登录用户:who

who命令用于查看当前所有登录系统的用户信息。

常用选项:

选项含义
-m或am I只显示运行who命令的用户名、登录终端和登录时间
-q或--count只显示用户的登录账号和登录用户的数量
-u或--heading显示列标题

查看当前用户:whoami

whoami该命令用户查看当前系统当前账号的用户名。可通过cat /etc/passwd查看系统用户信息。

由于系统管理员通常需要使用多种身份登录系统,例如通常使用普通用户登录系统,然后再以su命令切换到root身份对传统进行管理。这时候就可以使用whoami来查看当前用户的身份。

最后修改:2021 年 03 月 28 日 09 : 09 PM
如果觉得我的文章对你有用,请随意赞赏