Windows Terminal 配置免密码SSH登录Linux

最近发现Windows Terminal配合WinSCP可以把之前的各类shell软件(包括putty、securecrt、xshell)干掉,经过配置Windows Terminal可以既漂亮又优雅的完成远程管理任务。
基本思路如下:
1、Windows10下生成ssh公钥和私钥
2、把ssh公钥上传到linux上去,并加进authorized_keys
具体操作步骤可以参考这里

需要注意linux下的.ssh目录和authorized_keys的权限问题,参考这里。[……]

继续阅读 »

Windows 10 LTSC 2021安装WSL Ubuntu账户问题

Windows 10 LTSC 2021下安装wsl,直接安装,在输入用户名界面看不到新建用户的提示,直接关掉,再打开就直接以默认root用户进了系统。还是习惯普通账户sudo方式,于是可以这样操作:

# 新建用户,这里以新建用户ubuntu为例,以下均为root用户登陆状态
adduser ubuntu
# 设置sudo用户组权限
usermod -aG sudo ubuntu
# 设定wsl的默认用户,这里以ubuntu22.04为例,别的版本以此类推,在windows下以管理员身份打开cmd
ubuntu2204 config --default-user ubuntu
#切换到新建的用户
su ubuntu
#测试ok后禁用root用户
sudo passwd -l root

[……]

继续阅读 »

Oracle 安装、配置局域网连接及其他

  1. 安装
    安装比较简单,Windows版可参考这篇,一般建议Server版Windows
  2. 配置局域网连接
    这里很多会遇到问题,最常见的是ORA-12514,建议的步骤如下:
    1)配置防火墙规则,新建入站规则,开放1521端口(默认)
    2)打开net manager,分别配置服务和监听程序,注意选择IP地址
    3)监听程序部分配置数据库服务(重点,很多ORA-12514错误出在这里),具体可参考这里
    4)打开服务,重启 OracleOraDb11g_home1TNSListener
  3. blob文件导出
    之前把图片啥的直接存到数据库里了,存的blob格式,可用pl/sql development客户端查询数据后直接查看导出(参考),如果用navicat的话可以直接在相应blob字段选择 保存数据为,并加上相应的扩展名,具体参考

[……]

继续阅读 »

Oracle 导入dump备份数据

这是实际使用的导入语句

impdp user/password DIRECTORY=dir1 DUMPFILE=export.DMP remap_SCHEMA=db_old:db_new

实际操作有以下注意点:
1. user/password 部分注意权限问题,最好使用dba权限用户,比如system,要不会报错
2. DIRECTORY=dir1需要注意先建好directory并授权完成,可参考上一篇
3. remap_SCHEMA这部分 导出的数据库名与导入的库名不一致需要这样remap(重新映射)一下;如果一致的话,直接换成SCHEMA=db_name即可

更多语法可参考这篇。[……]

继续阅读 »

Oracle 中的 Directory

  相比MySQL等其他的dbms,Directory是Oracle特有的。为啥要有Directory呢,个人理解简单的说就是文件系统路径的快捷方式,并在相应的系统表里存储。每个Directory与用户绑定,在其他与文件系统交互的场景下使用,比如expdp/impdp 数据导出导入。

基本操作如下:

# 查询现有的目录
select * from dba_directories;
# 创建目录
create or replace directory DIR1 as 'D:\data';
# 把刚刚创建的目录赋权(读写权限)给用户USER1
grant read,write on directory DIR1 to USER1;
# 删除目录
drop directory DIR1;

[……]

继续阅读 »

RouterOS 6.47+ DNS转发

关于6.47的DNS除了新增了DoH功能外,还增加了静态条目多种类型,

*) dns – added support for forwarding DNS queries of static entries to specific server;
*) dns – added support for multiple type static entries;

正好有需求,某些特定网站需要单独解析,配合静态路由设置,单独走特定VPN线路
配置DNS转发具体在ip dns static下,新增一条记录,type里选择FWD(转发),可以直接在name里写域名,或者在regexp里写正则表达式,比如*.baidu.com,在winbox里的Regexp里可以这样写:
. *\.baidu\.com
这样一来,相当于RouterOS原生提供了类似DNSmasq的功能,能够干很多事情
参考这篇[……]

继续阅读 »

Ubuntu14.04下硬盘UUID缺失问题解决

  上篇提到数据被误删恢复,这次还是那台机器(某Ubuntu14.04@VMware ESXi的虚拟机),数据备份好之后,需要配置fstab自动挂载,结果新盘硬是找不到UUID。参考这篇解决:

# 切换到root
sudo -i
# 生成uuid并写入
uuidgen | xargs tune2fs /dev/sdc1 -U
# 查看硬盘UUID
ls -l /dev/disk/by-uuid
# 或者
blkid
[……]

继续阅读 »

Ubuntu 14.04下恢复误删文件

  上一篇刚刚提到服务器升级了,想把某Ubuntu服务器的存储也升级成NVMe硬盘。按照之前的思路,新建一块NVMe数据磁盘上的虚拟盘,挂载到服务器上,挂载点设置在/home(之前已经扩容过一次,/home/对应的是一块500G虚拟磁盘),同时把数据备份一下。新盘挂到后,把数据由旧盘复制新盘上去。不知怎么样脑抽了一下,嫌速度慢,就停下来,并直接把复制一半的数据删除,执行rm -rf *,一看结果是在原数据目录执行的命令……

  搜索看如何恢复数据,最后按照这篇,利用extundelete基本恢复了数据。步骤如下:
1. 将旧盘安装到其他linux虚拟机上,并查看旧盘标识符
sudo fdisk -l
这里我的旧盘是sdb1
2. 下载安装恢复软件
sudo apt-get install extundelete
3. 执行恢复
extundelete --restore-all /dev/sdb1
执行起来比较耗费CPU和内存,建议找台性能强点的机器,恢复的文件在当前执行命令目录下的RECOVERED_FILES目录下[……]

继续阅读 »

VMWARE ESXi 5.5安装NVMe 硬盘驱动

  最近给某台老旧联想服务器(ThinkServer TD350)做了升级,先是把CPU由一块E5-2609 V3升级到两块E5-2680 V4,内存又加了64G,后来觉得存储性能还是有问题,主板提供了7条PCIE插槽,双路E5 PCIE通道又管够,打算上NVMe接口的固态盘。装上之后,BIOS可认,同时也可以设置作为启动设备。但遇到了一个问题,虚拟平台装的是ESXi 5.5,直接启动进入配置认不到硬盘。
研究了一下,ESXi 5.5太老,没有内置NVMe支持,需要手动装驱动之后就好了。
1. 准备工作
– 配置ESXi Shell和SSH,以便登录上去执行命令行。可参考这篇这篇;
– 下载驱动
这里下载驱动
2. 安装驱动
SSH连接ESXi后,利用SCP工具将VIB格式驱动文件上传到相应目录,或者直接将驱动文件上传到数据存储中(以datastore1为例,可在Shell下通过以下路径/vmfs/volumes/datastore1/访问)
在Shell里执行:
esxcli software vib install -v <路径>/nvme-1.0e.0.30-1v[......]

继续阅读 »

修改数据库字段解决WordPress默认主题损坏的问题

  一直喜欢maupassant主题,该主题为cho大神针对Typecho开发的版本,之前使用的针对wp改的版本和WP Editor.MD 存在兼容问题,后台每个页面点击都一秒多才响应,今天换了另外一个改进版本,结果该版本主题传上去,直接提示主题损坏,进入后台删除该主题,结果仍然提示maupassant主题目录不存在。按理说把当前主题删除后,应该会启用默认主题的,可能之前不小心删掉了部分默认主题。研究了一下可以通过直接改数据库来解决,具体如下:
  登录数据库后(习惯使用navicat),打开表wp-options,修改template和stylesheet字段为其他可用主题名称,我这里之前有twentyfifteen,就改成了这个。

update wp-options t set t.template='twentyfifteen',t.stylesheet='twentyfifteen';
[……]

继续阅读 »