咕噜猫小站

do it, do it right, do it right now

0%

02 - Tensorflow Object Detection 环境快速安装及更新脚本

该脚本用于快速准备好 object detection 所需要的代码环境。

如脚本运行出错,则确保已安装 git, protobuf-compiler, make, python3 以及 python 下的 cython, matplotlib

更多说明请参考:

quick_install_models.sh 文件内容:

Windows 激活使用说明

以管理员的身份打开 cmd ,执行下述命令。以下命令中的 <ip> 需要替换为真实的激活服务器地址。

Windows

1
2
3
slmgr.vbs -skms <ip>
slmgr.vbs -ato
slmgr.vbs -dlv

Office x86

1
2
3
4
cd \Program Files (x86)\Microsoft Office\Office16
cscript ospp.vbs /sethst:<ip>
cscript ospp.vbs /act
cscript ospp.vbs /dstatusall

Office x86_64

基于 LDAP 的 PAM 验证

参考资料:

https://wiki.debian.org/LDAP/PAM

https://wiki.debian.org/LDAP/NSS

https://wiki.samba.org/index.php/Nslcd

https://uit.stanford.edu/service/directory/pam/local-home

https://stackoverflow.com/questions/30725840/active-directory-and-linux-nslcd-binding-without-extending-the-ad-schema

https://blogs.technet.microsoft.com/activedirectoryua/2016/02/09/identity-management-for-unix-idmu-is-deprecated-in-windows-server/

一、前言

Linux 可以通过 PAM (Pluggable Authentication Modules, 可插入认证模块)来提供认证功能,不少系统服务认证是通过 pam 来进行。 pam 的配置文件放在 /etc/pam.d/ 目录下, 其中以 common 开关的配置文件是通用认证,里面通过 pam_unix.so 模块来进行认证,该模块读取 /etc/passwd 、 /etc/shadow 等系统配置信息,做到与系统账号同步。

Git 合并经验总结

合并提交log

一、 主要方式: rebase merge(推荐)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
# 转到子分支(源分支)
git checkout develop

# 使用 rebase 合并 log。 -i 是交互式。
git rebase -i master

# 转回主分支(目标分支)
git checkout master

# 合并 develop
# 方式一:带一条 merge 记录
git merge --no-ff develop
# 方式二:不带 merge 记录
git merge develop

二、 另一种方式:squash merge(不推荐)

Git 删除历史记录中的大文件

1. 查看历史记录中最大的10个文件id 。

1
git verify-pack -v .git/objects/pack/pack-*.idx | sort -k 3 -g | tail -10

列出的结果有四列,第一列是object-id,下面要使用;第二列是文件大小,单位是字节;第三列是压缩后的大小;第四列是起始数据偏移量。

docker 基本使用

帮助(信息齐全,没事可以看看)

1
docker help

docker 最常用的几个概念

1
2
3
4
image     镜像。别人或者自己打包和发布的程序,只读。
container 容器。镜像运行起来的实例,一个镜像可以同时运行多个(容器)实例。
network   网络。多个容器可以通过关联同一个网络来组合成一个局域网。
volume    卷。  容器里的数据需要通过卷来持久化,否则把一个容器删除之后,里面的数据就全丢了。

每个都有对应的增删查命令(create ls inspect rm)

Docker Swarm 集群使用备忘

建立集群

1. 主 manager 初始化

主 manager 节点通过 docker swarm init 初始化集群

1
2
3
4
5
6
7
8
$ manager1: docker swarm init --advertise-addr 192.168.1.101
Swarm initialized: current node (n0ub7dpn90rxjq97dr0g8we0w) is now a manager.

To add a worker to this swarm, run the following command:

    docker swarm join --token SWMTKN-1-5uwpqibnvmho1png8zmhcw8274yanohee32jyrcjlait9djhsk-envtxo4dl6df2ar3qldcccfdg 192.168.1.101:2377

To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

2. worker 加入

其他 worker 节点通过给出的命令加入集群

Devpi 常用操作

client

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
# 切换仓库地址
devpi use http://localhost:8580/root/public

# 登录
devpi login <user>

# 列出仓库中的包
devpi list
devpi list <package_name>
devpi list --all <package_name>

# 删除仓库中的包
devpi remove <package_name>==<version>

Linux 常用系统命令列表

系统信息

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
uname -a            # 查看内核和操作系统信息
hostname            # 查看计算机名。修改可编辑 /etc/hostname
cat /proc/cpuinfo   # 查看 CPU 信息
env                 # 查看环境变量
lsmod               # 列出加载的内核模块
uptime              # 查看系统运行时间、用户数、负载

ps -ef              # 查看所有进程

crontab -l          # 查看当前用户的计划任务服务

硬件设备

1
2
3
lspci             # 列出所有 PCI 设备 (可加参数 -t 或 -v)
lsusb             # 列出所有 USB 设备 (可加参数 -t 或 -v)
sudo dmidecode    # 显示服务器硬件和 BIOS 信息 (可查询到内存条信息)

内存和交换分区

1
2
3
4
free                # 查看内存使用量和交换区使用量 
cat /proc/meminfo   # 查看内存信息

swapon              # 查看所有交换分区

磁盘和占用空间

1
2
3
4
5
6
df -h           # 查看各分区使用情况
du -sh <目录名>  # 查看指定目录的大小

mount           # 查看挂载的分区

sudo fdisk -l   # 查看所有磁盘

网络

1
2
3
ip addr             # 查看本机 ip 地址
sudo iptables -L    # 查看防火墙设置 
lsof -i:port        # 查看端口占用

用户登录日志

1
2
3
4
5
6
7
id <用户名>   # 查看指定用户信息 

w            # 查看当前活动用户(详细)
users        # 查看当前活动用户(只显示用户名)

last         # 查看用户登录日志。二进制日志: /var/log/wtmp
lastlog      # 查看用户最后一次的登录信息。二进制日志: /var/log/lastlog