[RH124] 2-命令行的使用

1.登录图形界面

可以在登录时修改图形界面风格,例如GNOME,GNOME Classic等。

电源设置:

在setting中选择电源设置,将black screen修改为never,即永不黑屏。

按Window键,可以打开应用板:

2.命令使用

可以使用三种方式来输入命令:

1.远程链接

2.终端

3.字符界面 

远程链接后面会讲。

终端:图形界面中在桌面上点击右键,可以打开终端(terminal)

ctrl+shift+T可以打开新的终端页签。每个终端都会链接到shell进程。终端是终端,shell进程是shell进程,不能混为一谈,每个终端会启动并链接一个shell进程。

可以在终端界面中点击右键修改终端的风格,例如字体、字色、背景色等:

字符界面:

ctrl+alt+F1为图形界面。

ctrl+alt+F2-6为字符界面,可以在字符界面使用tty来查看是第几个字符界面。

如果在字符界面使用startx命令来启动图形界面,则这个图形界面就会代替该字符界面。例如在tty2中启动startx。那么该图形界面就在tty2中。

3.命令

命令格式:

命令名称   +    option可选项 +   参数

例如:ls -l  /leo

命令是个动作(动词),参数是动作的对象,而option就是如果将动作作用于该参数。

举个现实生活中的例子:吃饭。吃就是命令,饭就是参数。如果是“小口的吃饭”,那么小口就是option。

在Linux命令中,我们的option使用"-"来表示,例如ls -l中的"-l"。并且可以将多个option组合起来,例如ls -la,相当于ls -l -a /leo(如果没有参数就表示查看当前路径下的内容)。

 

如果option是英文全称,例如help,则使用"--"来表示,即--help。(如果使用-help,shell会认为是-h -e -l -p的组合)

 

whoami  =  who am i   查看当前登录用户 ,  后者输出的信息更详细。

who  =  w :查看目前登录所有用户,  后者输出的信息更详细。

ls -lah /leo : 查看/leo目录里的所有文件详细信息。-l表示详细信息,-a表示全部文件(包含隐藏),-h表示显示大小单位,例如MB、GB等。注意,该命令显示的记录中,只会显示文件夹本身的大小,而不会包含文件夹里面文件的大小。

du -h /leo :查看/leo目录总的大小(包含其中的文件,不包括".."的大小)。-s可以只显示总大小。

4.Bash提供的快捷键

Tab键:补全命令。

#号:注释。

上下键:查看已使用过的命令。

history命令:列出已使用过的命令。清除history,使用history -c

!号+数字:例如!25,表示重新执行histroy列表中的第25条命令。

在终端里选中需要复制粘贴的内容:点击鼠标中间滚轮就可以直接完成复制和粘贴。

如果快速引用上一条命令的最后一个参数:使用"alt+."或者在按ESC松手后马上按"."。

 

Ctrl+a :光标移到命令开头。

Ctrl+e :光标移到命令末尾。

Ctrl+u :从光标删除到开头。

Ctrl+k :从光标删除到末尾。

 

Ctrl+左 :按一个一个单词(空格分隔)往左移光标。

Ctrl+右 :按一个一个单词(空格分隔)往右移光标。

 

Ctrl+r :从历史命令里搜索。

Ctrl+l :相当于clear,清屏。

Ctrl+Shift+t :在终端中新建一个页签。

 

Ctrl+pageup :向前切换一个终端页签。

Ctrl+pagedown :向后切换一个终端页签。

Ctrl+Shift+'+' :放大当前终端页签。

Ctrl+'-' :缩小当前终端页签。

Ctrl+d :关闭一个终端页签。

5.切换root用户(重点)

当我们以普通用户登录时:

例如使用hanxinda用户登录,我们在使用mount /dev/cdrom /mnt挂载光盘时,提示mount:only root can do that。

那么我们需要获取root权限。

切换到root用户,有两种方式:

su root :切换到root用户,并且保持当前所在目录。例如我们在hanxinda的家目录。那么切换后就在/home/hanxinda中。可以简写为su。

su - root :切换到root用户,所在目录也切换到root的家目录/root。可以简写为su -。

这两种方式的区别是存在着环境变量的问题,在RH254课程中讲解。推荐使用su - root的形式。

 

sudo:(重点)

例如当hanxinda用户想执行mount命令时,需要root权限才能执行,但是hanxinda用户并不知道root密码。那么就需要root用户给hanxinda用户授权能够执行mount命令。

需要先使用root用户登录,然后使用vim(需要使用:wq!强制保存)、gedit、visudo来编辑/etc/sudoers,在里面作如下定义:

hanxinda leokale=(root) /bin/mount

其中hanxinda是需要执行/bin/mount的普通用户,leokale是主机名(使用hostname查看),root是指执行/bin/mount时使用root权限,/bin/mount时授权使用的命令。

然后hanxinda用户使用sudo mount /dev/cdrom /mnt就可以执行成功了。

初次执行sudo时,会让你输入hanxinda用户的密码,密码默认保存5分钟(可能是)。

sudo -l:可以查看详细信息。

sudo -k:可以删除保存的密码,下次执行sudo时会被提醒输入密码。

 

如果不想在执行sudo时输入密码,可以在sudoers文件中做如下修改:

hanxinda  leokale=(root)  NOPASSWD:  /bin/mount,/bin/umount

允许执行所有命令 :hanxinda  leokale=(root)  NOPASSWD:  ALL

(注意,如果不生效,可以检查一下hanxinda属于哪个用户组,如果属于管理员用户组。在该条配置后面有一条默认配置%admin ALL=(ALL) ALL,这是配置admin用户组,所以会覆盖我们修改的配置,所以可以把我们编辑的配置写在sudoers文件的最后。)

 

我们也可以不在/etc/sudoers中进行修改:

可以在/etc/sudoers.d下自己创建一个文件,来写入我们的配置(hanxinda  leokale=(root)  NOPASSWD:  /bin/mount,/bin/umount)。

 

sudo -i : 可以不需要root密码(只需要hanxinda用户)直接切换到root用户。

(前提是%admin ALL=(ALL) ALL 或者 hanxinda  leokale=(root)  NOPASSWD:  ALL

 

猜你喜欢

转载自www.cnblogs.com/leokale-zz/p/12531307.html