Linux挂载远程SMB文件夹

临时挂载

只是临时挂载到本地server上使用,记录一下,以免哪天用到又忘了。

sudo mount -t cifs //192.168.123.164/home/music /home/user/music -o username=xx,password=xx,vers=2.0

开机挂载

vim /etc/sambapasswd
username=xx
password=xx

在/etc/fstab下追加一行

//192.168.123.164/home/music   /home/user/music   cifs    credentials=/etc/sambapasswd    0 0

这样就可以了

Ubuntu20.04安装cockpit docker

在安装完成cockpit后发现没有docker的管理模块,搜索一圈,大多数的解释是用sudo apt-get install cockpit-docker 命令来安装,但实际安装时提示无法找到安装包。

虽然平常大多数的时候基本使用docker命令来操作,但cockpit的可视化界面还是非常好用的。

没有docker管理模块
找不到cockpit-docker 安装包

搜索一圈后在Youtube上发现一个Youtuber上传的教学视频,这里记录一下

这是大佬的视频链接:https://youtu.be/fbpOOoP8zA4

访问:https://packages.ubuntu.com/

点击all
选择一个站点下载,复制链接后用wget命令下载到服务器

使用 dpkg -i 命令完成安装

安装完成后刷新下web页面,可以看到docker管理模块已被安装

HomeAssistant反向代理后访问出现400 BadRequest处理

为了安全起见,给HomeAssistant配置反向代理,在确保SSL证书和Nginx的反向代理配置没有问题后,访问HTTPS的URL地址后,会出现400 BadRequest的问题。

查看logs后发现系统提示

2021-12-26 23:55:17 ERROR (MainThread) [homeassistant.components.http.forwarded] A request from a reverse proxy was received from 192.168.123.XXX, but your HTTP integration is not set-up for reverse proxies

大概的意思是需要配置下反向代理服务器的地址,应该是为了安全,但这在之前的几个版本里并不存在相关的配置——坑

搜索下,有位大佬给了解决方案,链接在此:【新提醒】升级到2021.7后外网打不开web页面的解决方法 - 『HomeAssistant』综合讨论区 - 『瀚思彼岸』» 智能家居技术论坛 - Powered by Discuz! (hassbian.com)

非常感谢分享

http:
use_x_forwarded_for: true
trusted_proxies:
- 192.168.123.0/24 # Add the IP address of the proxy server

重启容器后可正常访问https的地址。

用于容器监控的命令行工具CTOP

CTOP是一款基于go语言开发的docker应用监控软件,它可用于在容器层级间监控进程,容器通过利用控制器组(cgroup)的资源管理功能,提供了操作系统层级的虚拟化环境,简单实用。

一、openEuler安装CTOP

GitHub地址:GitHub - bcicen/ctop: Top-like interface for container metrics

sudo wget https://github.com/bcicen/ctop/releases/download/0.7.6/ctop-0.7.6-linux-amd64 -O /usr/local/bin/ctop

sudo chmod +x /usr/local/bin/ctop

一些其他命令

-a:仅显示活动容器
-f :设置初始过滤字符串
-h:显示帮助对话框
-i:反转默认颜色
-r:反向容器排序顺序
-s:选择初始容器排序字段
-scale-cpu:显示cpu占系统总数的百分比
-v:输出版本信息并退出

Docker安装pgAdmin

用pgAdmin来管理之前安装postGIS数据,本地笔记本卡到不行,实在不想在安装其他的软件。

1、Docker安装pgAdmin

拉取pgAdmin

docker pull dpage/pgadmin4

运行并设置登录账号和密码

docker run -d -p 5433:80 --name pgadmin4 -e PGADMIN_DEFAULT_EMAIL=admin@XXXXXXOOOOOO.com -e PGADMIN_DEFAULT_PASSWORD=NMBD dpage/pgadmin4

在浏览器访问http://IP:5433 填入设置的登录账号和密码即可正常访问

Docker安装PostGIS,端口无法映射问题处理

PostGIS是个开源的软件,是 Postgres数据库的一款扩展插件,主要用于实现空间数据库,提供了存储空间地理数据的支持,能够进行空间数据管理、数量测量与几何拓扑分析。

因工作需要用到QGIS软件,为了避免每次都要到一次工参的麻烦,又不想在本地笔记本电脑上安装数据库软件,因此打算在openEuler的Docker上安装个PostGIS,方便日常工作使用。

本文主要参考了这位大佬的文档,非常感谢作者的分享。

https://juejin.cn/post/6844903661886242824

Docker上安装PostGIS

1、创建本地文件

命令:mkdir postgre_data && cd postgre_data

2、安装PostGIS

大佬的命令:

docker run --name=postgis -d -e POSTGRES_USER=sde -e POSTGRES_PASS=sde -e POSTGRES_DBNAME=gis -e ALLOW_IP_RANGE=0.0.0.0/0 -p 5432:5432 -v /root/postgre_data:/var/lib/postgresql --restart=always kartoza/postgis:9.6-2.4

大佬的命令在执行后,容器启动后无端口信息,无端口绑定,docker也无法访问,Google一下,有人建议将端口映射命令放在 --name= 前面 也就是一下的命令形式

docker run -p 5432:5432 --name=postgis -d -e POSTGRES_USER=sde -e POSTGRES_PASS=sde -e POSTGRES_DBNAME=gis -e ALLOW_IP_RANGE=0.0.0.0/0 -v /root/postgre_data:/var/lib/postgresql --restart=always kartoza/postgis:9.6-2.4

按照这种方式Pull镜像后,还是无法正常运行,没有端口绑定信息。

查看log信息发现提示:initdb: could not access directory "/var/lib/postgresql/9.6/main": Permission denied

提示无目录访问权限,查看data的目录权限

修改下目录权限,再重启docker,就可以正常绑定端口了。

openEuler安装docker及Portainer

在虚拟机上测试了一段时间的openeuler,发现还蛮好用的,主要是系统文档非常详细,系统本身的资源调度较好,在1G内存的机器上运行速度也还可以,准备安装到群晖虚拟机上,做docker应用服务器用。

一、openEuler的安装

安装很简单,基本和Centos一样,只是需要注意的一点是,安装时候选择最小安装时把基本那项勾选上,不然后面常用的tools还得一个个装回去,太蛮烦。

官方文档的网络配置很详细,我这边直接用nmtui命令,系统安装时候我设置了静态IP,只要激活下网卡,重启后就正常可用了。配置好网络后,更新下系统,这个基本属于开箱即用的,openEuler的默认源速度还是可以的,所以没有修改就直接用了。

二、openEuler安装个cockpit

openEuler默认是安装cockpit,所以只要start一下就可以了

使用命令:systemctl start cockpit

加入开机启动:systemctl enable cockpit.socket

cockpit默认端口为9090,防火墙默认没有开放,需要在防火墙添加下9090端口

使用命令:firewall-cmd --zone=public --add-port=9090/tcp

浏览器方位 https://IP:9090 即可正常访问,账号密码为系统账号密码

二、openEuler安装docker

一条命令就可以了:yum install docker

docker安装完毕,查看下docker的版本,openEuler默认是18.09.0的版本。

三、在docker 安装Portainer

Portainer 是docker的一个图形化管理工具,可以用来快速部署docker容器,查看日志等功能,强烈推荐和我一样的新手安装。

安装命令:

docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock --restart=always --name portainer portainer/portainer

防火墙添加下 9000端口:firewall-cmd --zone=public --add-port=9000/tcp

Docker安装mongodb,退出代码132

心血来潮,打算部署个rocket.chat服务器,在docker上安装Mongodb时出现,运行几秒后停止,报退出代码132(Exited (132)。

查询运行日志,看到为Mongodb 版本为5.0,CPU不支持AVX指令集导致无法运行

我CPU是Intel的J1900,Google了一下,妈的,果然不支持AVX。

在Google一圈后,发现Mongodb 4.4.9 版本是构架不需要AVX指令集,用portainer重新安装4.4.9版本就可以顺利安装了。

ubuntu20.04配置apt代理

在国内访问Docker的镜像服务器是特别慢的,有时候需要给Server配置下代理服务器以方便快速安装某些功能,做下记录

sudo vi /etc/apt/apt.conf

然后输入一下代码:

Acquire::http::Proxy "http://192.168.123.230:7890";
Acquire::https::Proxy "http://192.168.123.230:7890";

具体的代理IP地址以实际为准,我这边是我的另外一台设备的clash的代理。

群晖安装Windows XP

为了方便在办公室里远程回来管理家里的其他服务器设备,虽然可以直接把路由器的端口暴露在公网上,但毕竟不是很安全,于是,打算在群晖的VMM里面安装一台Windows xp,方便远程桌面访问,你问我为什么不用Windows 7,开玩笑,4G内存的群晖是没资格用Windows 7的好吧。

群晖里安装Windows xp 很容易,这里不再赘述,主要问题在于安装Windows xp发现显卡,网卡驱动全部找不到。

一堆的驱动问题

安装群晖提示,在安装Synology_VMM_Guest_Tool后系统依旧存在找不到驱动的情况。

经过Google的一番搜索,终于找到解决。How-to Install WinXP in the Virtual Machine Manager (VMM) : synology (reddit.com)

需要在虚拟机进行设置。然后再安装 Synology_VMM_Guest_Tool 。

  1. “视频卡”设置为cirrus
  2. 网卡设置为:virtio
“视频卡”设置为cirrus
“视频卡”设置为cirrus网卡设置为:virtio

设置后保存,重新开启Windows xp后,可以看到开始提醒发现新的硬件,按照提示安装驱动即可正常使用。