root用户:一个特殊的管理帐户也被称为超级用户,root已接近完整的系统控制。对系统损害几乎有无限的能力,除非必要,不要登录为root

普通(非特权)用户:权限有限,造成损害的能力比较有限

CentOS 6 :UID 0为管理员 1-500为系统用户 500之后为普通用户
CentOS 7 :UID 0为管理员 1-1000为系统用户 1000之后为普通用户
UID为0即为管理员,可有多个用户名的UID为0,也就是可以有多个管理员

w、who 查看当前所有用户
whoami 、who * * 查看当前用户wKioL1eZhUbAuWuRAAAyot0dE2k559.png-wh_50
服务器非必要部件,用户与主机交互,必然用到的设备

物理终端:直接接入本机的显示器和键盘设备/dev/console

虚拟终端:附加在物理终端之上的以软件方式虚拟实现的终端,设备文件路径:/dev/tty#,CentOS 6默认启动6个虚拟终端Ctrl+Alt+F#: [1,6]

图形终端:属于虚拟终端,附加在物理终端之上的以软件方式虚拟实现的终端,但额外会提供桌面环境Ctrl+Alt+F1;

模拟终端:图形界面打开的命令行以及基于ssh协议或telnet协议等远程打开的界面,设备文件:/dev/pts/# [0, ∞)

查看当前的终端设备:tty

wKiom1eZhbiQxTOaAAAH9ht7YYo460.png-wh_50

切换终端 Ctrl+Alt+Fn  或使用命令 chvt n

runlevel 5 下重启X window: Ctrl+Alt+Backspace或init 3 后init 5

交互式接口:启动终端后,在终端设备附加一个交互式应用程序

GUI:Graphic User Interface  protocol, window manager, desktop
  GNOME (C, 图形库gtk),
  KDE (C++,图形库qt)
  XFCE (轻量级桌面)

CLI:Command Line Interface
  shell程序:sh(bourn) csh tcsh ksh(korn) bash (bourn again shell)GPL zsh
Shell 是Linux系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。
shell也被称为LINUX的命令解释器(command interpreter)
shell是一种高级程序设计语言
GNU Bourne-Again Shell(bash)是GNU计划中重要的工具软件之一,目前也是Linux标准的shell ,与sh兼容。CentOS默认使用

显示当前使用的shell:
echo ${SHELL}
显示当前系统使用的所有shell:
cat /etc/shells

wKioL1eZiM6xLunmAAAbg7skZNc390.png-wh_50命令提示符:prompt
[root@localhost~]#
显示提示符格式:
[root@localhost~]:echo $PS1
[\u@\h \W]\$

wKioL1eZiRjC-j4UAAANDAwkS0Y559.png-wh_50

\u 用户名
\h 第一个点号前的主机名
\W 工作目录的最后一个目录

PS1中各符号的意义

wKiom1eZjASCmxU5AAC8nGlj1cc397.png-wh_50


prompt:
管理员:#   普通用户:$
输入命令,回车,提请shell程序找到键入命令所对应的可执行程序或代码,并由其分析后提交给内核分配资源将其运行起来

在shell中可执行的命令有两类:
内部命令:由shell自带的,而且通过某命令形式提供

外部命令:在当前系统的某文件系统路径下有对应的可执行程序文件;which,whereis
区别当前使用的命令是内部或外部命令:

type  -a COMMAND 查看命令类型(包括内部命令、外部命令及命令别名)

wKiom1eZjKCxtETFAAAOFNsrH2g532.png-wh_50

enable COMMAND 启用内部命令

enable -n COMMAND 禁用内部命令

wKiom1eZj0XCRoDCAABR2Mnbq9Q029.png-wh_50

hash命令:
搜寻到的外部命令PATH路径结果缓存至kv(key-value)存储中(只有从PATH路径中并执行后才会有缓存)

hash :显示hash缓存

hash –r :清除缓存

hash -d COMMAND:删除指定的命令

wKiom1eZjbOBD_CNAABCOxxWFEg033.png-wh_50

COMMAND [OPTIONS...] [ARGUMENTS...]
选项:用于启用或关闭命令的某个或某些功能;
短选项:-c, 例如:-l, -h
长选项:--word,例如:--all, --human-readable
参数:命令的作用对象,比如文件名,用户名等
注意:
1、多选项,以及多参数和命令之间使用空白字符分隔
2、取消和结束命令执行:Ctrl+c,Ctrl+d
3、多个命令可以用;符号分开
4、一个命令可以用\分成多行

系统时钟:由Linux内核通过CPU的工作频率进行的;
硬件时钟:主板CMOS(只有通过系统时钟修改硬件时钟)

date:显示系统时钟

hwclock,clock: 显示硬件时钟
-s, --hctosys以硬件时钟为准,校正系统时钟
-w, --systohc以系统时钟为准,校正硬件时钟
设置系统时间 date [MMDDhhmm[[CC]YY].ss]

如2000年8月10日10时30分30秒

    date 081010302000.30

wKioL1eZkfziXoqDAABOWn59-TE877.png-wh_50cal-显示日历 [[MM][[CC]YY]

nano–文本编辑

^指Ctrl    M-指Alt

wKiom1eZknuwq7ZwAAAut6m_H14210.png-wh_50screen命令:
打开新的screen:
screen
退出并关闭screen:
exit
剥离当前screen:
Ctrl+a,d
显示所有已经打开的screen:
screen -ls
恢复某screen
screen -r [SESSION]

终端共享(需要同一用户同时登录在同一台主机)

screen -S ID:发起共享

screen -x ID : 参与共享

wKiom1eZlG6gftAgAAAilfI7suY447.png-wh_50


echo命令
功能:显示字符
语法:echo [-neE][字符串]
说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号
echo "$VAR_NAME": 变量会替换,双引号表弱引用
echo '$VAR_NAME': 变量不会替换,强引用
$echo –e “Enter the file name: \c”
echo 需要使用-e 参数来打印转义字符
echo命令选项:
-n 不在字符的最后自动换行
-e 若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:
\a 发出警告声;
\b 退格键
\c 最后不加上换行符号;
\n 换行且光标移至行首;
\r 光标移至行首,但不换行;
\t 插入tab;
\\插入\字符;
\0nnn 插入nnn(八进制)所代表的ASCII字符
echo -e "\033[43;31mred color\033[0m"
\xHH插入HH(十六进制)所代表的ASCII字符

df 查看挂载信息

-h 以人类易读的方式列出如KB、MB、GB

wKioL1eZldOz_Q4YAABsYFSTAEI211.png-wh_50


图形界面下设置开机自动(管理员与普通用户均可)
vim /etc/gdm/custom.conf  在[deamon]下添加如下两行
AutomaticLoginEnable=Ture
AutomaticLogin=用户名
注:危险操作,仅供实验操作。

wKiom1eZlyGTI27LAAAjs5C8oY0329.png-wh_50退出登录: exit |  logout  | Ctrl+d

清除屏幕: clear | Ctrl+l

终止程序:Ctrl+c

which 文件名:在PATH路径中寻找外部命令
whereis 文件名:在文件数据库中寻找文件

wKiom1eZlTzQCrUiAAAZUz0zZ-U764.png-wh_50

ls 查看文件
 -a 查看所有文件,包括. .. 及以.开头的隐藏文件
 -A 查看所有文件,但不包括. ..
 -l 查看详细信息