> 文章列表 > LiangGaRy_学习笔记_Day03

LiangGaRy_学习笔记_Day03

LiangGaRy_学习笔记_Day03

1、Docker相关命令介绍

1.1、关闭与启动Docker

  • systemctl start docker:启动docker
  • systemctl stop docker:停止docker
  • systemctl enable docker:设置docker开机自启
  • systemctl restart docker:重启docker
  • systemctl status docker:查看docker状态
#启动docker
[root@Test1 ~]# systemctl start docker#重启docker
[root@Test1 ~]# systemctl restart docker#停止docker
[root@Test1 ~]# systemctl stop docker#设置开机自启动docker
[root@Test1 ~]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.#查看docker服务状态
[root@Test1 ~]# systemctl status docker

1.2、docker命令

  • docker pull:拉镜像
  • docker ps:查看docker容器进程
  • docker rmi:删除容器
  • docker rm -f:强制删除容器
#docker 拉nginx镜像
[root@Test1 ~]# docker pull nginx#查看是否成功-->0为成功;非0为不成功
[root@Test1 ~]# echo $?
0#docker启动一个nginx容器
[root@Test1 ~]# docker run -itd nginx
7c2d41ed5e778c059da134cf3a3834ad7996eb87a775c4e5298ab2b973cdc2fb#查看docker进程
[root@Test1 ~]# docker ps
CONTAINER ID   IMAGE     COMMAND                   CREATED          STATUS          PORTS     NAMES
7c2d41ed5e77   nginx     "/docker-entrypoint.…"   12 seconds ago   Up 10 seconds   80/tcp    compassionate_mayer#查看docker的镜像
[root@Test1 ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
nginx        latest    605c77e624dd   15 months ago   141MB
centos       centos7   eeb6ee3f44bd   19 months ago   204MB

2、本地yum源于网络yum源

2.1、配置本地yum源

  • 注意编写的路径:
    • linux中的repo源都存放在/etc/yum.repo.d/这个目录下
  • 注意一定是以repo结尾的
#编写本地yum源的repo文件#进入到这个目录中编写
[root@Test1 ~]# cd /etc/yum.repos.d/#这里就注意一定要用.repo结尾
[root@Test1 yum.repos.d]# vim local.repo 
[local_repo]					#这个是名称,可以随便改
name=local_repo					#这个也是名称,可以理解为描述
baseurl=file:///mnt/cdrom		#这个非常重要-->这个是路径,找包的路径;#file://-->这个表示代表本地路径查找#http://-->这个代表是网络提供的路径#ftp://-->这个就是ftp服务器提供的路径
enabled=1			#这里代表是否启用-->0为不启动,1为启用
gpgcheck=0			#这里是代表是否校验包的精确性

–>编写好文件之后–>需要注意一下虚拟机中

  • 虚拟机–>点击–>右键–>然后点击设置–>点击到CD/DVD–>完成

然后再回到虚拟机进行挂载

  • 挂载目录–>注意设备文件都存放于/dev/的路径下
  • 配置文件中的/mnt/cdrom没有这个目录就需要创建
#创建目录
[root@Test1 ~]# mkdir  /mnt/cdrom/#把光盘挂载到指定的目录中
[root@Test1 ~]# mount -t iso9660 /dev/cdrom /mnt/cdrom/
mount: /dev/sr0 写保护,将以只读方式挂载#清除所有的yum源记录
[root@Test1 ~]# yum clean all#然后-->检测是否可以出现包#看到有包代表光盘源配置成功--
Loading mirror speeds from cached hostfile
源标识                                        源名称                                         状态
local_repo                                    local_repo                                     启用: 4,021
repolist: 4,021
[root@Test1 ~]# 

2.2、配置网络yum源

网络yum源配置网址

  • 阿里云的网络yum源地址:
    • 这个是最常用的
    • https://mirrors.aliyun.com/centos/?spm=a2c6h.13651104.mirror-free-trial.2.2a3f320cMroOcO
  • 清华大学的yum源
    • 地址:https://mirrors.tuna.tsinghua.edu.cn/
#配置阿里云的网络yum源#备份原来的源
[root@Test1 ~]# mv /etc/yum.repos.d/* /tmp#然后直接下载官方提供的repo文件
[root@Test1 ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo#最后校验:
[root@Test1 ~]# yum repolist all
..........#看到有包代表配置成功

3、shell终端

3.1、Linux的终端

Linux桌面:

  • KDE图形化界面
  • GNOME图形化界面

虚拟机操作

  • ctrl+shift+t:打开终端(合并终端)
  • ctrl+shift+N:开启终端
  • shift+ctrl+加号:终端字体放大
  • shift+ctrl+减号:终端字体缩小

tty:linux终端

#查看linux的终端
[root@Test1 ~]# tty
/dev/pts/0

3.2、Linux关机命令

shutdown命令

  • 作用:关闭服务器
  • 语法:shutdown + 选项
  • 常见用法:
    • shutdown +10 :十分钟后关闭计算机
    • shutdown -c :取消关机的操作
#系统立马关机
[root@Test1 ~]# shutdown -h now#系统十分钟后关机
[root@Test1 ~]# shutdown +10#取消关机操作
[root@Test1 ~]# shutdown -c 

wall命令

  • 作用:Linux中通知其他已经在线的终端
    • 广播作用–>凡是在线的都是广播
  • 语法:wall + 通知信息
#首先登陆两个终端-->一个是root-->一个liangjiawei用户#root用户
[root@Test1 ~]# #liangjiawei用户
[liangjiawei@Test1 ~]$ #root用户广播在线用户
[root@Test1 ~]# wall "System will shotdown in 10 mimutes "
[root@Test1 ~]# 
Broadcast message from root@Test1 (pts/0) (Wed Apr 12 14:24:07 2023):System will shotdown in 10 mimutes #到普通用户查看也能收到
[liangjiawei@Test1 ~]$ 
Broadcast message from root@Test1 (pts/0) (Wed Apr 12 14:24:07 2023):System will shotdown in 10 mimutes 

3.3、认识shell终端

shell:用户与内核进行交互操作的一种接口

  • 接收用户的命令–>交给Linux内核去执行;

shell管理范围:

  • 对文件可以管理
  • 对用户可以管理
  • 对权限可以管理
  • 对磁盘可以管理
  • 对软件可以管理
  • 对网络可以管理

命令的分类:

  • 内部命令:在系统启动是就调入内存,常驻内存命令;执行非常快
  • 外部命令:是系统软件的功能,用户需要时才从硬盘中读入内存

type命令

  • 作用:查看命令是否是外部命令还是内部命令
  • 语法:type
#内部命令
[root@Test1 ~]# type cd
cd 是 shell 内嵌#外部命令
[root@Test1 ~]# type cat
cat 是 /usr/bin/cat

3.4、认识快捷键

ctrl+c:终止命令操作

ctrl+d:退出登陆

ctrl+l:清屏

ctrl+r:搜索命令

ctrl+a:光标更换至行首

ctrl+e:光标切换至行尾

ctrl+左右键:按照单词来左右切换

4、用户相关的命令

4.1、用户的分类

Linux的用户分类

系统中Linux用户是按照UID来分类的;

  • 超级管理员:一般系统默认的就是root
    • UID为0的用户就是超级用户
  • 普通用户:UID的范围就是1000~65535
    • 通常用$来表示
  • 系统用户:UID为1-1000以内的用户
    • 系统用户:httpd 、mysql、ftp等等

4.2、whoami命令

作用:查看当前用户是谁

语法:whoami

#查看当前用户是谁-->当前用户就是root
[root@Test1 ~]# whoami 
root#查看当前用户-->当前用户就是liangjiawei
[liangjiawei@Test1 ~]$ whoami 
liangjiawei

4.3、useradd命令

作用:添加用户

语法:useradd + 选项 + 用户名

选项:

  • c:加上备注文字,备注文字保存在passwd的备注栏中。
  • d:指定用户登入时的启始目录。
  • D:变更预设值。
  • e:指定账号的有效期限,缺省表示永久有效。
  • f:指定在密码过期后多少天即关闭该账号。
  • g:指定用户所属的群组。
  • G:指定用户所属的附加群组。
  • m:自动建立用户的登入目录。
  • M:不要自动建立用户的登入目录。
  • n:取消建立以用户名称为名的群组。
  • r:建立系统账号。
  • s:指定用户登入后所使用的shell。
  • u:指定用户ID号。
#创建用户-->创建普通用户
[root@Test1 ~]# useradd zhangsan#创建系统用户
[root@Test1 ~]# useradd -r mysql#切换普通用户
[root@Test1 ~]# su - zhangsan
[zhangsan@Test1 ~]$ whoami
zhangsan

普通用户直接修改UID号,可以成为超级用户

  • 需要root用户操作;
    • 这里需要修改一个文件/etc/passwd文件
      • 这个文件普通用户是没法打开
  • 更变后,普通用户的权限非常大
#修改zhangsan用户的UID为0
[root@Test1 ~]# vim /etc/passwd
..........#找到zhangsan的那一行-->把1002:1002的UID和GID改为0
zhangsan:x:1002:1002::/home/zhangsan:/bin/bash#改为如下-->就改成了0-->然后保存退出
zhangsan:x:0:0::/home/zhangsan:/bin/bash#切换一下zhangsan用户#明显发现zhangsan已经是#开头-->成为了超级用户
[root@Test1 ~]# su - zhangsan
上一次登录:三 412 14:21:33 CST 2023192.168.75.1pts/1 上
[root@Test1 ~]# 

4.4、su命令

作用:切换用户

语法:su

说明:

  • su :直接切换–>这里是bash的环境变量没有变化
    • 用户的家目录还是保留原来的
  • su -:这里就是环境变量也跟着改变
    • 用户的家目录更变
#直接切换
[root@Test1 ~]# pwd
/root
#切换用户后-->家目录路径没变化
[root@Test1 ~]# su zhangsan
[zhangsan@Test1 root]$ pwd
/root#切换加上-
[root@Test1 ~]# su - zhangsan
上一次登录:三 412 15:19:46 CST 2023pts/0 上#这里发现家用户直接发生了变化
[zhangsan@Test1 ~]$ pwd
/home/zhangsan

4.5、id命令

作用:查看当前用户的信息

语法:id + 用户名

#查看当前用户
[root@Test1 ~]# id zhangsan
uid=0(root) gid=0(root)=0(root)

5、基础命令

5.1、pwd命令

作用:查看当前路径

语法:pwd

#查看当前路径
[root@Test1 ~]# cd /usr/local/
[root@Test1 local]# pwd
/usr/loca

5.2、cd命令

作用:切换路径

语法:cd

常见用法

#切换路径到/etc/
[root@Test1 local]# cd /etc/#切换到家目录
[root@Test1 etc]# cd
[root@Test1 /]# cd ~
[root@Test1 ~]# #切换到上次所在目录
[root@Test1 ~]# cd -
/etc
[root@Test1 etc]# #切换上一层目录
[root@Test1 etc]# cd ..
[root@Test1 /]# 

5.3、echo命令

作用:在linux命令行上输出内容

  • 或者通过定向符号写入指定的文件中

语法:echo + 选项+“内容”

选项:

  • -n:不会自动换行
  • -E:不解释转义字符
  • -e:让转义字符显示自己的特性
    • \\a:发出警告声
    • \\c:最后不加换行符
    • \\n:换行
    • \\t:相当于tab键
    • \\r:光标移至行首,但不换行

背景颜色范围

echo -e "\\e[40;37m黑底白字 \\e[0m"
黑底白字
echo -e "\\e[41;37m深红白字 \\e[0m"
深红白字
echo -e "\\e[42;37m绿底白字 \\e[0m"
绿底白字
echo -e "\\e[43;37m黄底白字 \\e[0m"
黄底白字
echo -e "\\e[44;37m蓝底白字 \\e[0m"
蓝底白字
echo -e "\\e[45;37m紫底白字 \\e[0m"
紫底白字
echo -e "\\e[46;37m深绿白字 \\e[0m"
深绿白字
echo -e "\\e[47;30m白底黑字 \\e[0m"
白底黑字

字体颜色范围:

echo -e "\\e[1;30m黑色字体 \\e[0m"
黑色字体
echo -e "\\e[1;31m红色字体 \\e[0m"
红色字体
echo -e "\\e[1;32m绿色字体 \\e[0m"
绿色字体
echo -e "\\e[1;33m黄色字体 \\e[0m"
黄色字体
echo -e "\\e[1;34m蓝色字体 \\e[0m"
蓝色字体
echo -e "\\e[1;35m紫色字体 \\e[0m"
紫色字体
echo -e "\\e[1;36m深绿字体 \\e[0m"
深绿字体
echo -e "\\e[1;37m白色字体 \\e[0m"
白色字体

演示echo命令

#Linux输出内容
[root@Test1 ~]# echo "this is liangjiawei"
this is liangjiawei#加入-e;tab
[root@Test1 ~]# echo -e "this is \\tliangjiawei"
this is 	liangjiawei#换行
[root@Test1 ~]# echo -e "this is \\nliangjiawei"
this is 
liangjiawei

echo结合重定向

#向一个文件追加内容#如果没有这个文件则会自动创建这个文件
[root@Test1 ~]# echo "this is liangjiawei" >>/root/liangjiawei.txt#查看内容
[root@Test1 ~]# ls liangjiawei.txt 
liangjiawei.txt

echo打印变量

#设置一个变量
[root@Test1 ~]# LJW=liangjiawei
#echo输出变量-->注意需要添加一个$符号
[root@Test1 ~]# echo $LJW
liangjiawei

5.4、cat命令

作用:查看文件内容的命令

语法:cat+选项+文件名

选项:

  • -n:显示行号
  • -A:显示换行符
#查看文件内容
[root@Test1 ~]# cat -n liangjiawei.txt 1	this is liangjiawei
[root@Test1 ~]# cat -A liangjiawei.txt 
this is liangjiawei$

5.5、ls命令

作用:查看文件、目录的信息

语法:ls+选项

选项:

  • -l:列出文件的详细信息
  • -a.:显示目录下所有文件,包括.和…开头的隐藏文件
  • -d:只查看目录本身而不查看目录下的文件
  • -S:以文件的大小进行排序
  • -h:以人类能够识别的方式显示

ls命令参数演示:

  • -l:详细显示文件信息
#长格式显示文件信息
[root@Test1 ~]# ls -l liangjiawei.txt 
-rw-r--r-- 1 root root 20 412 15:45 liangjiawei.txt
[root@Test1 ~]# ls -l列出的内容有
#第一列内容:文件权限归属 -rw-r--r--
#第二列:硬链接数量
#第三列:文件所有者
#第四列:文件所属组
#第五~第七:文件的时间属性
#第八列:文件名

字符文件的类型

  • -:表示文件
  • d:表示目录
  • b:表示块设备
  • c:表示字符设备
  • p:管道文件
  • l:连接文件

通过颜色来判断文件的类型

  • 蓝色:目录
  • 黑色:文件
  • 浅蓝色:链接文件
  • 绿色:可执行文件
  • 黑底黄字:设备文件

ls命令参数演示:

  • -a:显示包括.和…开头的隐藏文件
#普通查看只会显示当前目录下的文件
[root@Test1 ~]# cd /
[root@Test1 /]# ls
bin   dev  home  lib64  mnt  proc  run   srv  tmp     usr
boot  etc  lib   media  opt  root  sbin  sys  tomcat  var#查看包括.和..开头的隐藏文件#.表示当前目录#..表示当前目录的上一级目录
[root@Test1 /]# ls -a
.   bin   dev  home  lib64  mnt  proc  run   srv  tmp     usr
..  boot  etc  lib   media  opt  root  sbin  sys  tomcat  var

ls命令参数演示:

  • -d:只查看目录本身而不查看目录下的文件
#当ls命令查看目录的时候,只会查看目录下的内容
[root@Test1 /]# ls /
bin   dev  home  lib64  mnt  proc  run   srv  tmp     usr
boot  etc  lib   media  opt  root  sbin  sys  tomcat  var#如果加上-d:只显示目录本身信息
[root@Test1 /]# ls -d /
/

ls命令参数演示:

  • -S:以文件的大小进行排序
#普通排序
[root@Test1 /]# ll /
总用量 16
lrwxrwxrwx.   1 root root    7 32 06:37 bin -> usr/bin
dr-xr-xr-x.   5 root root 4096 32 06:42 boot
drwxr-xr-x   20 root root 3240 326 08:25 dev
drwxr-xr-x.  75 root root 8192 412 15:26 etc
drwxr-xr-x.   5 root root   58 412 15:16 home
......#以文件的大小排序-->瞬间整齐排序
[root@Test1 /]# ll -S /
总用量 16
drwxr-xr-x.  75 root root 8192 412 15:26 etc
dr-xr-xr-x.   5 root root 4096 32 06:42 boot
drwxr-xr-x   20 root root 3240 326 08:25 dev
drwxr-xr-x   24 root root  660 412 14:16 run
..........

ls命令参数演示:

  • -h:以人类能够识别的方式显示
#查看/下的文件
[root@Test1 /]# ls -lSh /
总用量 16K
drwxr-xr-x.  75 root root 8.0K 412 15:26 etc
dr-xr-xr-x.   5 root root 4.0K 32 06:42 boot
...........

5.6、alias命令

作用:设置别名

语法:alias+别名=命令

#查看系统
[root@Test1 ~]# cat /etc/redhat-release 
CentOS Linux release 7.6.1810 (Core) #设置一个别名
[root@Test1 ~]# alias xitong='cat /etc/redhat-release '
[root@Test1 ~]# xitong 
CentOS Linux release 7.6.1810 (Core) 

永久设置别名

  • 针对于当前用户生效
    • 每个用户在家目录下都有一个.bashrc的文件,
#查看一下当前家路径的位置
[liangjiawei@Test1 ~]$ pwd
/home/liangjiawei#查看一下吟唱文件[liangjiawei@Test1 ~]$ ls -a
.  ..  .bash_history  .bash_logout  .bash_profile  .bashrc#把别名写进.bashrc的文件
[liangjiawei@Test1 ~]$ vim .bashrc 
..........#在最后添加
alias xitong='cat /etc/redhat-release'#重新读取一下文件
[liangjiawei@Test1 ~]$ source  .bashrc#尝试一下直接使用
[liangjiawei@Test1 ~]$ xitong 
CentOS Linux release 7.6.1810 (Core) 
  • 针对全局用户生效
    • 需要写入一个/etc/bashrc这个文件
#写入配置文件当中,就可以直接使用
[root@Test1 ~]# vim /etc/bashrc #在末行添加即可
alias xitong='cat /etc/redhat-release'#重载文件
[root@Test1 ~]# source  /etc/bashrc #尝试调用命令
[root@Test1 ~]# xitong 
CentOS Linux release 7.6.1810 (Core) 

5.7、unalias命令

作用:取消别名

语法:unalias

#取消别名
[root@Test1 ~]# unalias  xitong
[root@Test1 ~]# xitong
-bash: xitong: 未找到命令