一些ExifTool常用的修改照片日期的命令

关于ExifTool的使用,应参考官方文档FAQ官方论坛

下面罗列一些可能会常用到的、使用ExifTool工具来修改照片日期(如Exif中的DateTimeOriginal等)等的命令:

Continue reading “一些ExifTool常用的修改照片日期的命令”

Status-1849

SQLite 3的INTEGER PRIMARY KEYROWID的别名。在插入数据时,这种类型的列的取值会[参考]:

  • 选取当前表内比已记录了的ROWID大的最小的整数;
  • 如果ROWID已经到达了最大的可用整数(9223372036854775807),那么随机选择一个正整数:
    • 若该被选取的正整数没有在当前表的ROWID中使用,则返回该正整数;否则继续随机选择;
    • 若在一定次数的尝试之后,没有找到可用的正整数,则该插入失败,返回SQLITE_FULL

可以通过在创建表示对列添加AUTOINCREMENT的属性来改变选取算法。

也就是说,在仅使用INTEGER PRIMARY KEY声明的列中,存在新旧行数据(旧行数据被删除)用同一ROWID的可能。

Status-1843

MySQL的replication允许在主、从服务器中对同一个数据库使用不同的名称(通过replicate-rewrite-db实现),所以在查询时要么使用正确的数据库名(对应到主从服务器中会不同),要么避免使用数据库名(依赖先使用USE选取数据库)。

据说,PostgreSQL在Logical Replication模式下允许数据在不同操作系统 / 数据库 / PostgreSQL(大)版本 / 等之间流动,因此也允许同一数据表(table)在不同的数据库中。

关于学习BASH的资料

这段时间不务正业地在写一个BASH脚本,参考了一些资料,有一些感受,记录一下。

关于学习资料,最先看的是阮一峰推荐《Bash 脚本教程》。🤔怎么说呢,如果作为小白为了看懂BASH脚本来入门的话,这个教程还算有用,毕竟是中文。如果要来写脚本,那有点不太合适了。找来找去,还是在tldp(The Linux Documentation Project)上的两套英文教程最合适:

Continue reading “关于学习BASH的资料”

云平台VPS全新安装纯净的官方Ubuntu系统

在使用国内云平台的VPS时,默认安装的操作系统中总有很多监控的后台服务:有些可能时真的用来监控系统健康的,有些就不好说了。这些东西看起来既不安全,又占资源,即使卸载/删除,也可能无法做到完全清理,不如索性重装个纯净的系统。

这里指到的VPS一般适用于KVM,要排除掉共用系统内核的虚拟技术如OpenVZ这种。这篇日志大部分是参考(其实是备份给自己用)某大神(METO)的一篇文章《服务器安装全新 Ubuntu 18.04》,并加入了对Ubuntu 20.04的支持。实际上这个加入的部分很小啦,后面会提到。

Continue reading “云平台VPS全新安装纯净的官方Ubuntu系统”

在配置多IP的操作系统上选择出站IP

当操作系统配置了多个IP(IPv4或IPv6地址),可能在一个或多个适配器(adapter)或网络接口(interface)上,操作系统对外连接时会涉及到:

  • 接口(interface)选择
  • 接口选定之后,可能会涉及到出站IP选择

按照我的理解,这两个选择都会涉及到路由;当路由选择了一个接口之后,如果该接口上还配置了多个IP,出站IP可能会根据路由来选择;当路由没有指定该选择哪个IP时,操作系统可能会根据一些规则来选择出站IP。这篇日志会积累记录与出站IP选择有关的内容。

Continue reading “在配置多IP的操作系统上选择出站IP”

Status-1131

分类总是很难的,因此才有了一个叫做“分类学”(taxonomy)的科学分支。在实际中某个简单的应用里,如WordPress,常用的分类方法:

  • category:类别,存在层次的(hierarchical)
  • tag:标签,不存在层次的

想一想以前在Drupal中被taxonomy支配的经历,现在依然存在:究竟应该怎么设置分类,应该如何使用分类。