Captain的个人博客

Docker基于Alpine构建SSH服务

1. SSH (Secure Shell) 简介

SSH是最为常见的远程连接协议,其是可以帮助我们在互联网中使用Shell 的程序和协议。SSH 为我们在互联网中传递对服务器的操作,并对服务器返回的结果进行加密,以确保远程操作服务器时的安全;对服务器的远程操作,Shell程序比必然是输入指令和展示结果最有效的工具,每一位开发者或多或少都会对Shell程序有所了解;对于为运维人员,使用Shell程序更是家常便饭,对服务器的所有操作,以及查看监测服务器的状态都需要通过Shell程序。

hugo插件之代码块拷贝插件

1. 添加按钮

我们通过检查博客内容页面发现,hugo生成的每个代码块格式如下:

没有语法突出显示的代码块具有相同的结构,但周围没有 <div class=highlight> 。为了考虑到这两种情况,我选择了作为<pre>元素下面的<code>子元素。

golang图片处理库image基本操作

1. 基本操作

图片的基本读取与保存。

2. 读取

图片读取和文件读取类似,需要先获取流:

  • 注册图片的解码器(如:jpg则import _ “image/jpeg”, png则import _ “image/png”)
  • 通过os.open打开文件获取流;
  • 通过image.Decode解码流,获取图片;
 1import _ "image/jpeg"
 2func readPic() image.Image {
 3    f, err := os.Open("C:\\hatAndSunglass.jpg")
 4    if err != nil {
 5        panic(err)
 6    }
 7    defer f.Close()
 8
 9    img, fmtName, err := image.Decode(f)
10    if err != nil {
11        panic(err)
12    }
13    fmt.Printf("Name: %v, Bounds: %+v, Color: %+v", fmtName, img.Bounds(), img.ColorModel())
14
15    return img
16}

解码后返回的第一个参数为Image接口:

Linux 笔记整理

1. Linux 常见目录

目录 用途
/ 根目录,通常不储存文件
/bin 二进制目录,存放用户级 GNU 工具
/boot 启动目录,存放启动文件
/dev 设备目录
/etc 系统配置文件目录
/home 主目录,Linux 在这里创建用户目录
/lib 库目录,存放系统和应用程序的库文件
/media 媒体目录,可移动媒体设备的常用挂载点
/mnt 挂在目录,另一个常用挂载点
/opt 可选目录,常用于存放第三方软件包和数据文件
/root root 用户的主目录
/sbin 系统二进制目录,存放 GNU 管理员级工具
/run 运行目录,存放系统运作时的运行时数据
/proc 进程目录,存放现有硬件和当前进程的相关信息
/srv 服务目录,存放本地服务的相关文件
/sys 系统目录,存放系统硬件信息的相关文件
/tmp 临时目录,可以在该目录中创建删除临时工作文件
/usr 用户二进制目录
/var 可变目录

2. 常用命令

  • pwd:显示 shell 会话当前目录。. 表示当前目录,.. 表示当前文件目录的父目录。
  • man:查看手册。
  • cd destination:切换目录。
  • ls:显示当前目录下的文件和目录。
    • -F:区分文件和目录,目录文件名后会添加/
    • -a:将隐藏文件和普通文件及目录一起显示出来。
    • -R:递归选项。列出当前目录下包含的子目录中的文件。
    • -l:产生长列表格式的输出,包含了目录中每个文件的相关信息:文件类型,权限,硬链接总数,属主的用户名,组名,大小,上次修改时间,文件名或目录名。
    • -i:查看文件或目录的 inode 编号。
    • --time=atime:显示访问时间。
  • 文件扩展匹配:使用通配符。
    • ?:代表一个字符。
    • *:代表零个或多个字符。
    • []:表示一个字符位置并给出多个可能的选择,也可以指定范围。
    • !:将不需要的内容排除。
  • touch:创建空文件,或改变文件修改时间。
    • -a:改变访问时间。
  • cp source destination:复制文件。
    • -i:强制 shell 询问是否需要覆盖已有文件。
    • -R:递归地复制整个目录的内容。
  • ln -s:创建符号链接。
    • ln:创建硬链接。
    • 符号链接是一个实实在在的文件,它指向存放在虚拟目录结构中某个地方的另一个文件。这两个通过符号链接在一起的文件,彼此的内容并不相同。
    • 硬链接会创建独立的虚拟文件,其中包含了原始文件的信息和位置。但是它们从根本上而言是同一个文件。引用硬链接等同于引用了源文件。
  • mv:移动或重命名文件和目录。重命名、移动不改变 inode 编号和时间戳。
    • -i:命令试图覆盖已有文件时得到提示。
  • rm:删除。
    • -i:确认提示。
    • -f:强制删除。
    • -r:向下进入目录。
  • mkdir:创建目录。
    • -p:同时创建多个目录和子目录。
    • rmdir:只删除空目录。
  • file:查看目录、文件类型和字符编码。
  • cat:显示文本文件中所有数据。
    • -n:给所有行加上行号。
    • -b:给有文本的行加上行号。
    • -T:用 ^I 替换文中制表符。
  • more:显示文本文件中的内容,但会在显示每页数据之后停下来。
    • lessmore 的升级。
  • tail:显示文件最后几行内容。默认显示文件的末尾 10 行。
    • -n:修改所显示的行数。
    • -f:在其他进程使用该文件时查看文件的内容,这是实时监测系统日志的绝妙方式。
  • head:显示文件开头内容,默认显示前 10 行。
    • -n:修改所显示的行数。
  • ps:默认显示运行在当前控制台下的属于当前用户的进程。
  • top:实时显示进程信息。
  • kill PID:结束进程,必须为进程的属主或为 root 用户,只支持 PID。
    • killall:支持进程名。
  • mount -t type device directory:挂载媒体设备。
    • 默认输出当前系统上挂在的设备列表。
    • umount:卸载设备。
  • df:查看所有挂载磁盘使用情况。
    • -h:按用户易读的形式显示。
  • du:显示某个特定目录(默认情况是当前目录)的磁盘使用情况。
    • -c:显示所有已列出文件总的大小。
    • -h:按用户易读的形式显示。
  • sort:按会话指定的默认语言的排序规则对文本文件中的数据进行排序。
    • -n:把数字识别成数字而不是字符,并且按值排序。
    • -M:按月排序。
    • -t:指定字段分隔符。
    • -k:指定排序的字段。
    • -r:将结构按降序输出。
  • grep [options] pattern [file]:搜索数据。
    • -v:反向搜索,输出不匹配该模式的行。
    • -n:显示匹配模式的行所在的行号。
    • -c:显示有多少行含有匹配的模式。
    • -e:指定多个匹配模式。
  • gzip:压缩文件
    • gzcat:查看压缩过的文本文件的内容。
    • gunzip:解压文件。
  • tar function [option] object:归档数据。
    • -cvf:创建一个归档文件。
    • -tf:列出内容。
    • -xvf:提取内容。
    • tar -zxvf filename.tgz:解压 .tgz
  • jobs:显示出当前运行在后台模式中的所有用户的进程。
    • -l:显示命令的 PID。
  • history:查看最近使用过的命令列表。
    • -a:将命令历史记录强制写入 .bash_history 文件。
  • alias -p:查看一些常用命令的别名。
  • env / printenv 查看全局变量,printenv 也可以查看个别环境变量。
  • useradd:添加新用户
    • -D:查看默认值。
    • -m:创建 HOME目录。
  • userdel:删除用户信息,不删除文件。
    • -r:删除用户的 HOME目录以及邮件目录。
  • usermod:修改用户帐户的字段。
    • -l:修改用户账户的登录名。
    • -L:锁定账户。
    • -p:修改账户的密码。
    • -U:解除锁定。
  • passwd:修改密码。
    • -e:强制用户下次登录时修改密码。

3. 文件权限

3.1. 文件权限符

举例说明:

CentOS 7如何清理删除卸载Docker环境

1. CentOS 7 清理删除卸载 Docker 环境

这篇文章主要介绍了CentOS 7如何清理删除卸载Docker环境,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。