工作中的硬核记录

此文档用以记录我在工作中实用的命令,工具与相关知识

# 虚拟机客户机隔离选项开启,从而实现拖放与复制:
sudo apt-get update
sudo apt-get install open-vm-tools-desktop

# 建立管道:
# https://jupyter.ihep.ac.cn/YzPmEyvDRSGpoLviXENXsQ
ssh -NfR 9922:localhost:22 grand@xxxxx

# 实现ubuntu虚拟机与windows之间的复制粘贴
sudo apt-get autoremove open-vm-tools
sudo apt-get install open-vm-tools-desktop
reboot

# 大小端读取法,以 00 00 ad c0为例
# 读取数据从低地址开始读取:
小端模式:数据低位存储到地址低位
    以文件存储为例:在.dat文件中存储的先后顺序为c0 ad 00 00, 从文件存储的地址来看,字节顺序为0 1 2 3,符合数据低位存储到地址低位

# 远程使用nohup挂起命令
nohup cmd > log.txt 2>&1 &
# 不需要重定向到log文件里: 
nohup dudaq_run > /dev/null &

# pmo001上下载python需要的包
pip3 install <package> --user

# 在拷贝前询问是否拷贝(适用于删除与移动)
alias cp='cp -i'

gtot 用法

gtot 用法: 
/home/mapx/mapx/DunhuangData/gtot/gtot  binary.dat balabalabala.root >  balabalabala.log 这样可以在你希望的路径生成 balabalabala.root 文件,然后使用/home/mapx/mapx/Reco/Package_onSite/_Process_FFT_DH_bp_gaufit_DU_NewSNR.cpp 文件去分析,你看看里面的int Ndu参数,它的值是你ROOT文件采集DU的个数,比如采集了6个DU的数据,Ndu=6;

# 这是我RUN gtot的命令。新下载的文件写入list,然后一个个转成ROOT文件
ls -1 /home/mapx/mapx/DunhuangData/Rawdata/t3_20dB/GRAND.TEST-TRIGGER.20230531232435.040.4.dat | while read n ; do file=$(basename $n);  ./gtot  $n  /home/mapx/mapx/DunhuangData/ROOTFile/TD/T3_20dB_1024_XY_${file}.root > /home/mapx/mapx/DunhuangData/ROOTFile/TD/Log/T3_20dB_1024_XY_${file}.LOG 2>&1 ;done

dbV 计算方法

ADC*109/1e6这个就是电压单位了,然后对他取log再乘以20,就是dB了,所以是dBv

一道ADC定义

14位ADC一共2^14=16384道,对应电平范围+/-0.9V,共1.8V。 所以一道ADC对应电平 1.8V/16384约等于109uV

将传感器数据转换成正常数据

//accx accy accz amb_temp press humidity battery
atm_humidity[0]*0.61035156/460.375 - 1650/460.375<<"\t"<<atm_pressure[0]*0.61035156/460.375 - 1650/460.375<<"\t"<<atm_temperature[0]*0.61035156/460.375 - 1650/460.375<<“\t”;
cout<<acceleration_x[0]*0.61035156/19.5 - 400/19.5<<"\t"<<acceleration_y[0]*0.61035156/3300./0.009+0.095/0.009<<"\t"<< //湿度
acceleration_z[0]*0.61035156*0.048 - 500*0.048<<"\t"<<battery_level[0]*0.61035156*0.109/18<<endl;

【汇报内容格式:(6月25日)重启前,(9个)DU通讯正常,重启后,(9个)DU恢复通讯,统一运行(10s/20Hz/…)模式(23)小时。】 其中括号中的内容根据实际情况调整。

rsync -Pave ‘ssh -p xxxx’ grand@xxxxx:/home/grand/workarea/raw_data/xxxxx

20230817:针对单个DU进行配置的DAQ修改

  1. elec_config.cpp
  2. elec_config.h
  3. csdaq_app.cpp

站上运行程序的一些建议:

  1. 不要在白天温度较高的时候运行

毕业论文的写作建议:

  1. 关于背景注重物理含义,目标,为实现此目标需要哪些参数,如何测得这些参数,引入到DAQ软件中
  2. 围绕实验来展开论文写作,不要围绕技术难题去写论文,这样有点儿跑题
  3. 内容伴随的目的是什么

解决虚拟机上无法拷贝到windows的问题

sudo apt-get autoremove open-vm-tools
sudo apt-get install open-vm-tools-desktop
shutdown -r now # 重启虚拟机
# yaml编译
g++ -L/home/grand/pc_installed/lib -I/home/grand/pc_installed/include  -std=c++0x modifyYAML.cpp -lyaml-cpp 

baseline:基线,两个天线之间的距离

实时传输两种方式

HTTP轮询 和 websocket

语言:Vue3 + TypeScript

2023年9月6日

定义一些的接口:触发和远程控制的一些需求,

  1. Exp-Hup

    • 信息:
    1. 上行心跳,轮询等等
    2. 上行状态
    3. 参数:名称,数据格式的类型,数值等等
    4. 工程描述:哪些模块,模块之间的关系作为配置保存在用户
    5. 配置:
      1. 运行参数
      2. 部署信息
    6. 透传信息
    7. 登陆认证
    8. 日志:DIY日志内容
    9. 软件下载与更新
    10. 控制指令
  2. Exp-Local:

    1. 初级版本,软件的更新功能
  3. Exp-DAQ:

计划

  1. 建立仓库

    1. ExpHup
    2. ExpLC
  2. channel1, channel2 均选择是或的关系?

nuc01 开发前端控制页面:

10xxxx
daq daq@ihep

docker run --rm -ti -v /home/daq/expcs/expdaq:/app -p 9000:4000 node:16.17.0 bash
cd /app/ui-web
yarn # 安装依赖
yarn start # 启动后台

http://10.xxxx

使用目录: /home/daq/expcs/expdaq

配置网卡

ifconfig直接操作操作系统内核,使用方法如下:

1. sudo ifconfig + 网卡 + 给定ip 从而可以固定网卡的ip地址
2. ifconfig -a 可以查看所有网卡,包括未启用的网卡信息也可以查看
3. sudo ifconfig + 网卡 + up 启用网卡
4. sudo ifconfig + 网卡 + down 关闭网卡
5. 当同一个ip地址分配到不同的网卡上,计算机无法识别,应当关掉一个网卡,重复步骤4

使用iperf3通信

如果可以ping通但是不能使用iperf3进行通信,则考虑关闭防火墙:

sudo systemctl stop ufw.service # 停止防火墙服务
sudo systemctl disable ufw.service # 禁用防火墙服务
sudo ufw status # 查看防火墙状态
# 若显示Status: inactive 则说明防火墙成功关闭
# 再次使用iperf3进行通讯:成功

使用cssh

  1. 安装cssh
sudo apt update
sudo apt install clusterssh
  1. 创建配置文件

在 ~/.clusterssh/ 目录中,你可以创建一个配置文件,用于定义要连接的服务器列表。可以使用文本编辑器来创建或编辑该文件:

nano ~/.clusterssh/clusters # or vim

在文件中,你可以添加要连接的服务器的别名和SSH连接信息,如下所示:

mycluster server1.example.com server2.example.com server3.example.com
  1. 启动ClusterSSH:

要启动 ClusterSSH 并连接到你的服务器集群,请使用以下命令

cssh mycluster
  1. 使用cssh

一旦打开了 ClusterSSH 窗口,你可以在其中执行命令,这些命令将同时在所有服务器上运行。你可以在窗口中输入命令,然后按 Enter 键来执行。所有服务器上的结果都会显示在各自的子窗口中。

你还可以使用以下键盘快捷键来管理 ClusterSSH 窗口:

  • Ctrl + Enter:执行命令并等待所有服务器返回结果。
  • Ctrl + C:中断正在执行的命令。
  • Ctrl + D 或 exit:退出 ClusterSSH。

添加更多服务器:
如果你想添加更多服务器到 ClusterSSH,只需编辑 ~/.clusterssh/clusters 文件并添加更多服务器别名及其SSH连接信息。

退出 ClusterSSH:
要退出 ClusterSSH,只需在 ClusterSSH 窗口中按 Ctrl + D 或者输入 exit 命令。

这就是如何在 Ubuntu 上使用 ClusterSSH 来管理多个远程服务器。请确保小心使用此工具,以免不小心在多台服务器上执行不希望的操作。

防火墙定义:

防火墙(Firewall)是计算机网络安全的重要组成部分,其主要目的是保护网络免受未经授权的访问和恶意活动的影响。以下是对防火墙概念的总结:

定义与功能:防火墙是一种网络安全设备或软件,用于监视、过滤和控制网络流量,以确保只有合法的流量可以进入或离开受保护的网络。

访问控制:防火墙允许管理员定义规则和策略,以控制谁可以访问网络资源。这包括限制特定IP地址、端口或应用程序的访问权限。

包过滤:防火墙分析传入和传出的网络数据包,根据预定义的规则过滤掉潜在的威胁和恶意流量,以保护网络免受病毒、恶意软件、网络攻击等威胁的侵害。

网络隔离:防火墙可以将网络划分为不同的安全区域,从而确保不安全的外部流量无法直接访问内部网络,提高了内部网络的安全性。

NAT(网络地址转换):防火墙执行NAT,将内部网络中的多个内部IP地址映射到单个外部IP地址,以隐藏内部网络的拓扑结构,提高隐私和安全性。

日志和审计:防火墙记录网络活动并生成日志,用于监视、审计和安全事件调查。这有助于检测异常活动和安全事件,以及进行调查和响应。

应用程序控制:某些高级防火墙具有应用程序识别功能,允许管理员基于应用程序层面的信息控制访问,以实现更细粒度的流量控制。

抵御DoS和DDoS攻击:防火墙可以协助缓解分布式拒绝服务(DDoS)和拒绝服务(DoS)攻击,通过监测和过滤大量的恶意流量来减轻网络压力。

总之,防火墙是网络安全的重要防线,用于维护网络的安全性和完整性,确保只有经过授权的用户和流量可以访问网络资源,同时防止各种网络威胁和攻击。它是保护网络和敏感信息的关键工具之一。

如何将数据中的ascill形式以10进制读出(python)

chr(eventID) 

git-hub使用

  1. 右上角找到并点击settings

tail

tail -f [filename] # 轮询查看文件更新

net-tools

netstat -anp|grep csdaq 

for almalinux ssh issue: Unable to negotiate with 192.168 port 22: no matching host key type found. Their offer: ssh-rsa

update-crypto-policies --set DEFAULT:SHA1

rename修改文件名

rename 's/old/new/' *.txt 

linux修改@后面的主机名称

sudo vi /etc/hostname

ubuntu删除指定名称的进程下的除了某一个 PID 之外的所有其他进程

pgrep example_process | grep -v 1234 | xargs kill
# example: pgrep csdaq_run|grep -v 127039|xargs kill
# Terminate all processes under the csdaq_run expect for the PID number 127039

nohup后台执行命令

nohup csdaq_run 2592000 > log_10s_mode_202404161443_DU21_DU41_30days_6.5M.txt 2>& 1 &
  • 22
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值