该文章引自:
原文标题:SecureCRT跨端同步技巧+CRT文件夹路径变量+CRT自动日志
文章出处:【微信号:网络技术干货圈,微信公众号:网络技术干货圈】欢迎添加关注!文章转载请注明出处。
一、SecureCRT自动记录会话
对于运维和网工狗来说,shell客户端能自动记录会话日志是很用用的。
一来日后想找历史配置的时候,可以回溯当年dis cu过的配置
二来出现问题扯皮的时候,起码可以提供一个审计日志,说不是自己干的。
SecureCRT一键给所有session开启自动日志的办法如下:
【Options】->【Global Options】->【Default Session】->【Edit Default Settings】
在**【Log File】**配置页下,填入保存文件的路径和文件名称。
此处可以使用占位符来自动根据日期和会话名称生成日志文件名。
也可以自动在会话开始和结束的时候,在日志中自动插入提示信息。
例如此处:
日志文件名:%Y-%M-%D-%S-%H.log
会话开始时插入:——–start at %Y-%M-%D–%h:%m——–
会话结束时插入:——–stop at %Y-%M-%D–%h:%m——–
点击确定按钮后,提示是否对已有的会话进行更新,点击“更新所有会话”
自动保存的日志效果如下:
二、SecureCRT跨设备同步
如果电脑很多,保存的会话又很多,我们可以使用一个云服务来自动同步CRT的会话列表(例如nas,网盘,onedrive,icloud等)。
我使用微软的OneDrive来同步,当然使用iCloud,Google Drive甚至是百度网盘都可以。
【Options】->【Global Options】->【Configuration Paths】
将默认全局配置路径指向网盘的同一个文件夹即可。
然后,再把原先CRT的配置文件全部拷贝到这个目录下,以后就在这个目录下继续工作就好了。
MacOS端指向Onedrive所在目录
Windows端指向Onedrive所在目录
任何一台电脑的CRT配置完成后,会自动在网盘的目录下创建CRT必要的目录结构,如下:
之后任何一台电脑的CRT都会访问这个共享的网盘目录,会话和配置就会同步起来啦。
三、跨端同步的路径变量问题
同志们,精彩的地方来了。
第一个【一、SecureCRT自动记录会话】话题中,我们写的日志保存路径是绝对路径
第二个【二、SecureCRT跨设备同步】话题中,我们明显发现Windwos和MacOS的路径格式不一样。
那么有没有办法让跨端同步的时候,日志文件也保存到共享网盘里呢?
SecureCRT的路径配置中,是支持变量的。
${VDS_CONFIG_PATH}:全局配置文件的路径
${VDS_INSTALL_PATH}:CRT的安装路径
${VDS_USER_DATA_PATH}:用户数据目录路径
${VDS_SSH_DATA_PATH}:SSH Key保存路径
这些变量会根据操作系统和CRT的全局配置自动带入,并且在ini文件中仍然以变量名进行保存。以此在跨端同步的时候实现最大兼容性。
本例中,如果想把日志文件也保存到共享网盘里,需要在配置日志文件的时候使用变量路径,继承全局配置文件的变量【${VDS_CONFIG_PATH}/SecureCRT_Config_LogFiles/%Y-%M-%D-%S-%H.log】。甚至你可以使用相对路径,每天生成一个目录这种【${VDS_CONFIG_PATH}/../../../SecureCRT_log/%Y-%M/remote/%Y-%M-%D-%S-%H.log】。如下图所示:
点击确定后,再次去各台PC上查看,发现日志文件的路径已经根据不同的操作系统自动调整了。
MacOS下:
Windows下:
同时我们查看session的ini文件,也会发现,ini内保存的logfile路径依然是通过变量名进行存储的。
这样不管更换多少台电脑,只要正确配置全局配置文件路径,log文件路径都会正确继承。
您必须登录才能发表评论。