zfstui 一个基于文本用户界面的ZFS查看器|github上项目下载、安装、卸载

2023-10-21 学长 NAS

https://github.com/volkerp/zfstui

官方之给了

pip还有git的方式安装和下载

pip安装上去要380M

虽然pvetool的smb安装的时候安装了python3 但是没有装那么大

git安装上去也得要48M

cd ~

wget https://github.com/volkerp/zfstui/archive/refs/heads/master.zip

然后看看包里有什么

unzip -l master.zip

unzip master.zip

cd zfstui-master

python3 setup.py install


删除:

/usr/local/lib/python3.11/dist-packages

修改easy-install.pth

把 ./zfstui-0.1.1-py3.11.egg所在行删掉

rm /usr/local/lib/python3.11/dist-packages/zfstui-0.1.1-py3.11.egg  /usr/local/bin/zfstui

***根据你的python版本未必是3.11


项目很好但是只有查看功能。。。

评论(0) 浏览(265)

ssh显示出tty1上的数据

2023-10-20 学长 NAS

ssh不会自动显示除外接显示器上的数据

导致有些信息不会即使显示出来

stty -aF /dev/tty1

查看tty1的属性

主要看columns 是多少

然后用fold

fold -w 160 /dev/vcs1

我的屏幕是160宽的


或者用

dmesg -T | tail -n 1

查看最后一行,当然不加tail筛选最后一行也行,-T是显示时间成为人类可以认知的格式

参考:

https://cloud.tencent.com/developer/article/1640395

评论(0) 浏览(227)

ZFS中黑群的分区挂不上???

2023-10-20 学长 NAS

最后还是把pve装回来了

windows的运行稳定性不行,truenas装过,没有限制分区大小选项。。。

群辉是mdadm+btrfs,pve和truenas是基于zfs的

zpool status

发现有 scan信息:

scrub没进行完

zpool scrub -s

先停止之前的

难怪一挂就内存还有CPU使用率飙升。。。

然后再pool上重新执行

zpool scrub ZFS

还有错误

zpool status -v

看到就在 ZFS/vm-101-disk-2:<0x1>

zfs get volsize

看到就在黑群的分区上。。。

最后一次是第四个硬盘不知道怎么就读不到了。。。

重启能读到但是btrfs崩了,系统没法启动。。。那时候系统是btrfs10的但还是没法修复。。。

等待扫描修复完成。。。之前是按照raid0做的不知道还能不能读到文件

目前里面有9T数据。。。


未来规划,黑群晖只做docker用,把ZFS用文件夹的方式直接NFS给群晖读写

PVE直接对外面做SMB。。。PVE直接对硬盘操作4块盘能到1600M的最大读写,虚拟化之后就50M

主要因为虚拟化后性能损失。。。挺大。。。N3150最多跑到3.4瓦。。。(windows下的数据)



ZFS 碎片处理:

zpool list

zpool set autotrim=on rpool

zpool trim rpool

呃。。。我的硬盘不支持trim。。。

查看具体实体硬盘使用状况:

zpool list -vP


评论(0) 浏览(193)

linux下修改efi引导

2023-10-20 学长 NAS

efibootmgr

重点是看order

更改顺序

efibootmgr -o 对应的序号,四位的,英文标点

efibootmgr -B 删除,再加小b是删除指定的编号

添加efi引导,但总不成功。。。不知道为什么。。。

efibootmgr -c -d /dev/sda -p 1 -L "PVE" -l "\EFI\BOOT\BOOTX64.EFI"


用分区工具改efi大小会导致无法引导。。。不知道啥原因。。。

一个G不知道为啥要这么大

还好我按扇区复制了整个linux的efi分区


pe盘中的 DiskGenius的工具中也有efi引导顺序修改


如果在启动时候打开引导菜单出现一堆人字纹说明。。。设置的efi引导有问题

删除就好了

反正华擎 N3150-ITX 出现这个就没法修改引导顺序


另外pve安装盘的debug中有grub 编译功能

第一个#的chroot到bussybox之前的直接跳过 ctrl D

有root时候就可以使用grub工具了,也就是说,pve默认带grub编辑的,没必要下载grub2 mkconfig



grub-install /dev/sda

会出现 grub-install.real error cannot find efi directory

因为gurb-install会默认加载 /boot/efi 的引导分区

所以先mkdir /boot/efi

然后把fdisk -l|grep EFI找到的efi分区挂上去

如果没挂载/boot/efi

gurb-install -d 模板和img的路径 --boot-directory=挂载的EFI路径

详见gurb-install --help


参考

Linux与Windows 10用grub引导教程 - 星朝 - 博客园 (cnblogs.com)


efi引导重命名

https://bbs.archlinux.org/viewtopic.php?id=155830

pve引导修复

https://pve.proxmox.com/wiki/ZFS:_Switch_Legacy-Boot_to_Proxmox_Boot_Tool

很多图的文章帮助理解架构

https://www.cnblogs.com/zerxoi/p/13252573.html


先通过官方的iso用ventory引导上去

然后进advanced,进debug,然后按照上面官网的先导入zpool最后chroot

如果进去了,没法运行就再执行一遍,大概率是指令漏了或者输错了

修复钱可以复制下windowsefi分区中EFI/Microsoft下的文件,然后复制到linux修复好的EFI文件夹中

然后改BCD, 把windows boot manager中的.efi指向 systemd中的那个efi文件

pve的好处是boot自己就会生成不用改grub.cfg最起码8.0.4是这样的

efibootmgr 主要作用还是改名,还有改变引导顺序

改名就是得先删除,然后再重新建立。。。并且还得吧硬盘 分区号 还有 uuid 对上去。。。不然一堆无法使用的人字纹。。。


加PE一定要把sdi配置对,不然无法启动

要是能把ventoy做到启动项就好了

评论(0) 浏览(335)

重新部署后没 新建用户 每次重启都弹sysprep

2023-10-19 学长 NAS

XCOPY %windir%\System32\svchost.exe %windir%\System32\oobe\audit.exe /X

覆盖就好了

直接复制整个系统会导致很多问题

建议安装完后重新复制系统前运行sysprep

当然是同一台机器就不用这样了


shift+F10 输入

compmgmt.msc

启用相关用户

taskmgr 

任务管理器结束网络连接流

taskkill /f /im OOBENetworkConnectionFlow.exe

win11下没作用↑↑↑


shift + F10 输入 

taskmgr 可以打开浏览器 访问本主页 方便复制代码

在命令提示符窗口输入 用来解决重启后一直显示 SYSPREP的问题

XCOPY %windir%\System32\svchost.exe %windir%\System32\oobe\audit.exe /X

然后按ctr+shift+F3

会重启并尝试通过Administrator登录,如果你没启用这个用户可以通过compmgmt.msc或者lusrmgr.msc

没启用也没事,可以尝试新建一个本地用户


评论(0) 浏览(204)

wsl 开启sshd

2023-10-18 学长 NAS

参考

https://www.hanselman.com/blog/how-to-ssh-into-wsl2-on-windows-10-from-an-external-machine

先安装

wsl

sudo apt install openssh-server

sudo ssh-keygen -A

测试下

sudo sshd -t


评论(0) 浏览(212)

删除PVE后windows 下 zfs的挂在 群晖分区

2023-10-18 学长 NAS

pve系统分区的btrfs崩盘,目测是raid10但是还是无法修复

虽然更绝btrfsck的提示做了几步重构了tree什么的

还是无法正常启动

并且硬盘读写缓慢。。。

一块硬盘还好,但是4块硬盘的虚拟化3150那不能直通速度狠拉跨

现在数据主要在4个分区中的ZFS

但是因为linux分区的删除

///跟linux系统分区删除无关一直跳过到下一个///

直接在windows中尝试zpool list出现了

/dev/zfs and /proc/self/mounts are required.
Try running 'udevadm trigger' and 'mount -t proc proc /proc' as root.
猜测是pve的分区丢失导致的


wsl中安装zfs尝试挂在。。。

先安装zfs:

sudo apt install zfsutils-linux

zpool list看下zfs基本功能出来没

The ZFS modules are not loaded.
Try running '/sbin/modprobe zfs' as root to load them.

其实破解的UFS可以读到但是因为但是zfs新建zvol的没选择discard,并且给了几乎全部的空间。。。真要恢复出来数据空间需要巨大,肯定也巨长

复制最新的zfs

Releases · openzfs/zfs · GitHub

进wsl wget下

cd ~

wget https://github.com/openzfs/zfs/releases/download/zfs-2.2.0/zfs-2.2.0.tar.gz

tar -zxvf zfs-2.2.0.tar.gz

./configure

发现没gcc之类的编译环境,先 sudo apt install gcc

又出现update错误 sudo apt-get update --fix-missing

重装下gcc

还得zlib-devel

ubuntu中得用apt install zlib1g

apt install zlib1g-dev

还缺libuuid-devel

apt install uuid-dev

继续缺libblkid-devel

apt install libblkid-dev

缺libssl-devel

apt install libssl-dev

缺 kernel devel package

apt install linux-headers-$(uname -r)

因为是微软特制的没有对应的linux-headers-4.4.0-22621-Microsoft


我再看看网上都是怎么在wsl下使用zfs的。。。

发现有个zfs on wsl的项目

https://github.com/alexhaydock/zfs-on-wsl


///跟删除pve 的 linux分区无关,是360把相关的驱动删除了,重新安装Releases · openzfsonwindows/openzfs (github.com)

就行了

在powershell里

$a=zpool import | select-string "pool:"; echo $a

为啥这么写,因为powershell没有grep

找到可以导入的zfs pool我的是ZFS

zpool import -f ZFS

然后参考微软官网:关于在 WSL 2 中安装 Linux 磁盘的入门 | Microsoft Learn

GET-CimInstance -query "SELECT * from Win32_DiskDrive"

获得硬盘列表,为啥不用diskpart因为得用DiskPath

wsl --mount \\.\PHYSICALDRIVE4 --bare

最好加--bare,因为尝试不加发现挂在很久也没结束。。。

wsl1这么挂在找不到的,wls1只能通过windows中已经识别的分区来挂载

另外得去硬盘管理中把zfs对应的zvol改成offline不然挂不上去wsl2

lsblk -f

查看识别到了没,识别到linux_raid_member,看来得用dm

先安装mdadm

sudo apt install mdadm

用到mdam肯定得用lvm的

sudo apt install lvm2

先md组建


sudo mdadm --assemble /dev/md0 /dev/sdc5 --update=devicesize --verbose

sudo vgchange -ay

ll /dev/mapper/

看到挂载成功到vg1-volume_1

再挂到文件夹上

sudo mkdir /mnt/30T

sudo mount /dev/mapper/vg1-volume_1 /mnt/30T

呃。。。btrfs貌似也没有。。。

sudo apt install btrfs-progs

然后重新试着挂载到文件夹


挂载失败。。。

sudo btrfs check /dev/mapper/vg1-volume_1

发现有错误

尝试下只读挂起

sudo mount -t btrfs -o ro /dev/mapper/vg1-volume_1 /mnt/30T

诶。。。也挂不起来

sudo btrfs check --repair /dev/mapper/vg1-volume_1

修复下。。。还是挂不起来。。。


好家伙看了官网不是在mapper下。。。

https://kb.synology.com/hu-hu/DSM/tutorial/How_can_I_recover_data_from_my_DiskStation_using_a_PC

先运行sudo lvs

然后 ls /dev/vg1


https://askubuntu.com/questions/882121/shr-raid-drives-with-crashed-nas-os-synology


https://stackoverflow.com/questions/46472439/fix-btrfs-btrfs-parent-transid-verify-failed-on


mdadm -Asf && vgchange -ay



只能说能加载zfs但是长期运行经常蓝屏。。。。。。

 

切换还有安装都得打开windows update,我一般默认是关闭的更新的。。。毕竟只是N3150

wsl 安装

Windows10/11 三步安装wsl2 Ubuntu20.04(任意盘) - 知乎 (zhihu.com)

得先开启虚拟机平台还有子系统

wsl --install

安装wsl

wsl --set-version Ubuntu 2

把默认安装在1的改到2下

wsl --set-default Ubuntu

设置默认的wsl

wsl --set-default-version 2

设置wsl2为默认


wsl -d 其他的发行本

运行其他的wsl

wsl --unregister 要删除的发行本

wsl -l -v 查看安装的发行本

wsl -l --online 查看可以安装的其他发行本


把wsl1的切换成2

输入wsl进ubuntu

设置root密码方便切换成root使用,sudo passwd root




评论(0) 浏览(291)

pve下设置nfs,把ZFS分享出来

2023-10-13 学长 NAS

nfs 是按照访问地址来限制的默认没密码

安装通过pvetools或者

apt install nfs-kernel-server nfs-common

vi /etc/exports

要共享的目录 共享的网端/掩码(rw,syn,no_root_squash,no_subtree_check,crossmnt) 

确保局域网绝对安全才给no_root_squash

systemctl restart nfs-server

对zfs的挂载点得使用,不然挂不上去

zfs set sharenfs=on <pool>


smb的特殊设置

zfs set sharesmb=on <pool>

跟PVE的甲骨文不一样。。。

smb开启follow symlinks = yes

因为ZFS不支持多挂载点。。。只能软链了

vi /etc/samba/smb.conf

wide links = yes

allow insecure wide links = yes

放在[global]下面,子项不会起作用。。。可能造成不安全,看怎么用

systemctl restart smb

https://www.samba.org/samba/docs/current/man-html/smb.conf.5.html

还得给可以写入的目录777不然wide link拿不到权限。。。


参考: https://cshihong.github.io/2018/10/16/NFS%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%90%AD%E5%BB%BA%E4%B8%8E%E9%85%8D%E7%BD%AE/

https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/manage-smb/how-create-smb-share-zfs.html#GUID-0E991115-8B9C-42D7-9B95-47ED8670745A


评论(0) 浏览(214)

zfs创建、数据转存、硬盘替换、扩容

2023-10-13 学长 NAS

/dev/sda5 contains a filesystem of type 'ext4'
/dev/sdb5 contains a filesystem of type 'ext4'
/dev/sdc5 contains a filesystem of type 'ext4'
/dev/sdd6 contains a filesystem of type 'ext4'
之前新建过4个8T的ext4,现在想尝试zfs

 zpool create ZFS raidz /dev/sda5 /dev/sdb5 /dev/sdc5 /dev/sdd6 -f

诶。。。其实有图形界面。。

在节点磁盘下的ZFS中可以直接添加相关的分区,不需要指令运行。。。


还是做raid 0吧。。。风险有点大

不加raidz创建的就是raid0

zpool create ZFS /dev/sda5 /dev/sdb5 /dev/sdc5 /dev/sdd6



转存到另外一个ZFS池中

后记:

fdisk默认是做成linux基础分区,PVE不带parted

fdisk 具体的硬盘

m查看操作指南

l找打 zfs是157

n一路默认下去

t将刚才新分区改成157

w保存

fdisk只是对分区表进行修改

然后操作下一个硬盘


按照zfs新建的分区因为没格式化在web界面中是识别不到的

 zpool create pool1 raidz /dev/sda6 /dev/sdb6 /dev/sdc6

没错这次我想做个5了。。。因为上次的0因为sata接线的问题出现过崩盘。。好不容易才把数据重新写回答哦NTFS中去


然后就是复制zfs的问题了

复制之前先拍快照,因为经常用的直接发送没有权限因为经常用的基本上都是kernel挂载的

zfs snapshot -r ZFS@back

意思是ZFS池中左右的都拍快照,-r是递归

然后就是发送和接收

zfs send -R ZFS@back | zfs recv -F pool1

带进度的

zfs send -Rv ZFS@back | pv | zfs recv -F pool1

要删除数据中心中存储中添加的,不然发送会终端还不提醒具体错误!!!

如果没快照过就不用加-R了


复制下直接写入目录的内容,zfs在pve中只能做虚拟硬盘和tm的虚拟盘用

cp -r /ZFS /pool1/

其实没必要已经给ZFS整体拍了快照了。。。


最后删除原来的raid0存储池,

zpool destroy ZFS

把pool1改成原来的ZFS,这样虚拟机就不用一个个改硬盘位置了。。。

先去掉新的池

zpool export pool1

导入的时候后面加上新的名字就改名了

zpool import pool1 ZFS

这时候zpool list以下会看到改成什么样了

把快照撤掉

zfs destroy -R ZFS@back

用起来的话也就是以前get 属性的时候写着的是default现在是received


另外把pve装机时候的16G local删掉。。。毕竟这点容量真指望不上。。。

local dir可以删

但是local 没法删除,得去web编辑成为disable

删掉/etc/pve/storage.cfg中的配置也没用。。。


一堆废话:

pve做nas还是不太顺手。。。毕竟同步还是群晖的工具好用。。。主要是smb挂载的分区自带的群晖网盘读不到???

目前也不知道怎么让其被读到。。。volume1整个都是从lvs上挂载的。。。要是能搞明白存储池具体在黑裙中的设置就好了

说白了就是同步的问题,其实群晖的driver server也是一言难尽。。。就是什么好像都有了。。。就是不太好用。。。说不上好用

先下载了微力同步,支持的平台确实多不是没有99,只是有免费的freefilesync。而且我手机主要是通过vls看smb,电脑上只是把工作学习文档同步到网盘上。。。并且微力需要两端都要安装其软件。。。如果要用到freefilessync的捐赠版本功能就可以考虑微力同步的

但是群晖的虚拟性能真是一言难尽。。。并且安装nas的系统必然会把整个盘子的分区列表给删了。。。

当然也能先做到虚拟硬盘然后再改分区,再重做引导。。。总之纠结。。。目前已经重做了一个黑群引导USB

其实不用chipgenius也能查到vid和pid,windows自带的设备管理器--磁盘驱动器--详细信息中找父系中有



Ubuntu Manpage: zfs-destroy — Destroys the given dataset(s), snapshot(s), or bookmark.

How To Rename a ZFS Pool | TrueNAS Community

How to remove local (Directory) storage properly? | Proxmox Support Forum

Duplicating a zpool – Dan Langille's Other Diary

数据太多发送接收会等很久甲骨文官网给出来的指令加|pv|在发送和接收中间,但是pve默认没装pv。。。

或者用dry run,加nv指令,n是假跑,v是查看verbose啰嗦的意思,冗长。。。但是真跑的时候因为有管道符号显示不出来。。。pv目前版本138kb

Monitoring the Progress of ZFS Send Streams - Managing ZFS File Systems in Oracle® Solaris 11.2


今天又发现有个分区因为用diskginus的时候跟其他的磁盘分区列表有几个扇区的偏移

果断改

先fdisk /dev/sdd建立个zfs的分区,不装黑群晖了。。。又要倒腾数据。。。之前只是同步没有更好的选择

zpool replace ZFS sdc4 sdd5

zpool status

等待替换完成旧的sdc4被移除

然后就可以调整sdc4的分区列表了

进pe调整。。。毕竟后面的那个分区是ntfs的。。。linux没工具能调。。。


然后就是扩容问题了

现在有从3个分区的raidz要扩展到4个分区的

Adding Devices to a Storage Pool - Managing ZFS File Systems in Oracle® Solaris 11.3

要搞清楚add和attach是不一样的,简单的增加容量是add,但是并不会组到raidz里面去。。。

如果不小心add错。。。目前没有删除的办法。。。所以最好加checkpint。。。

要么就先转存到其他zfs再摧毁目前的。。。

评论(0) 浏览(492)

cadence 利用calibre抽取后仿的技巧:大小写问题

2023-10-9 学长 NAS

引用自 https://bbs.eetop.cn/thread-921479-1-1.html

因为calibre默认是导入是全大写的的


LAYOUT CASE YES
SOURCE CASE YES
LVS COMPARE CASE YES

直接加到pex的rule里面就行了

不行就看看是不是有其他CASE 设置了

不用像楼主那样再加个控制选项


提示找不到SPICE的

MGC_CALIBRE_SCHEMATIC_SERVER=ic:9199

改成9189,2022版本原理图和版图合成一个端口了


另外./rule找不到把它改成绝对路径

或者直接复制rule到pex running dir里面就不用改成绝对路径了


ERROR: Error RES2 on line 3587 of /Calibre/rcx/rules - undefined layer name parameter: poly.

这个是引用错rule,应该引用calibre.rcx的


如果提示管脚不对tmsc的需要再netlist设置中include addsource

去到目录输入 find $PWD就不用复制两边,直接复制完整路径就行了


如果生成的calibreview太小,应该的是没添加calibre.view文件转化出来的只有kb大小,一般都得上MB



评论(0) 浏览(408)

手机版 | RSS | FEED

苏ICP备16066175号