对于在Linux上测试TCP/IP的端口是否连通,这里可以使用nc和ss命令搭配。方法很简单,如下:
sudo nc -lu 554
nc -uv 172.25.80.122 554
如果这时候正常了,也就可以利用了udp的554端口进行通信了。
554端口的机器:
~# ss -u Recv-Q Send-Q Local Address:Port Peer Address:Port Process 0 0 172.25.80.122:rtsp 172.25.80.124:36471
连接554端口的机器:
~$ ss -u Recv-Q Send-Q Local Address:Port Peer Address:Port Process 0 0 172.25.80.124:36471 172.25.80.122:rtsp
tcp的判断方法很多,如果通过nc命令,与上述差不多,只需要把u改成t就行。
sudo nc -lt 554 nc -tv 172.25.80.122 554
其他方法就不列举了。
一:宏扩展出错
#define FUN(x) 1 + x * x int main() { printf("%d\n", 3*FUN(1)); return 0; }
这里宏扩展成了 31+11。并不是3*(1+1)。
为了避免这种出错,尽量在宏这里使用括号
#define FUN(x) (1 + x * x)
二:宏内部扩展出错
#define FUN(x) (x*x) int main() { printf("%d\n", FUN(1+1)); return 0; }
这里宏内部扩展成了(1+11+1)。并不是((1+1)(1+1))
为了避免这种错误,尽量在宏的变量处添加括号
#define FUN(x) ((x)*(x))
三:宏变量自加/自减出错
#define FUN(x) (x*x) int main() { int i=2; printf("%d\n", FUN(i++)); return 0; }
这里输出是6,也就是2*3,因为i自加了为了避免这种错误,自加/自减不要在宏扩展里面用。
四:宏函数扩展错误
#define FUN(x) x=10;x+=1 int main() { int i=2; if (i == 1) FUN(i); printf("%d\n", i); return 0; }
这里因为if没有缺省括号,导致宏扩展后,x+=1在if外面了。所以输出是3而不是2
为了避免这种错误,可以使用do while写法如下
#define FUN(x) do{x=10;x+=1;}while(0)
常规命令如下:
rpm -qi 包名 查看一个包的详细信息 rpm -qf 文件名 查看一个文件是由哪个包安装的 rpm -ql 包名 查看一个包安装了哪些文件 rpm -qa 查看系统中安装了哪些包 rpm -e 删除包rpm -ivh 安装包 rpm -Uvh 升级包 rpm -i --nodeps 安装某个包有依赖关系时,忽略依赖关系,强制安装 rpm -Uvh xxx.rpm --nodeps --force 强制的
rpm降级版本安装
rpm -Uvh --oldpackage xxx.rpm
查看RPM包里的内容
如果只相知道包里的文件列表执行:
rpm -qpl packetname
如果想要导出包里的内容,而不是安装,那么执行:
rpm2cpio pkgname | cpio -ivd
rpm编译
1. 执行rpm -i you-package.src.rpm 2. cd /usr/src/redhat/SPECS (前两步和方法一相同) 3. rpmbuild -bb your-package.specs 一个和你的软件包同名的specs文件 -ba 既生成src.rpm又生成二进制rpm -bs 只生成src的rpm -bb 只生二进制的rpm -bp 执行到pre -bc 执行到 build段 -bi 执行install段 -bl 检测有文件没包含
spec文件
%pre rpm安装前执行的脚本 %post rpm安装后执行的脚本 %preun rpm卸载前执行的脚本 %postun rpm卸载后执行的脚本
arm可以找rpm包的网站
https://pkgs.org/
https://cbs.centos.org/koji/index
https://dl.fedoraproject.org/pub/epel/7/
Creset_usb_bus()
{
for i in `find /sys/bus/usb/devices/usb*`
do
hubport="${i: -1}-1"
if [ -d ${i}/${hubport} ]
then
# 重置root hub下的端口
echo 0 > ${i}/${hubport}/authorized
echo 1 > ${i}/${hubport}/authorized
# 强制设置power从auto到on
echo on > ${i}/${hubport}/power/control
fi
done
}
pacmd load-module module-combine-sink sink_name=multi_sound_card # 加载 combine 模块` pacmd set-default-sink alsa_output.platform-rt5651-sound.stereo-fallback # 设置默认声卡到rt5651上 pacmd set-default-sink multi_sound_card # 设置声卡为同时输出 pacmd set-default-sink alsa_output.platform-hdmi-sound.stereo-fallback #设置默认声卡到HDMI上
ntpdate -u time.nist.gov ntpdate -u ntp.api.bz hwclock -w
chmod +w /etc/sudoers vim /etc/sudoers 增加 user root ALL=(ALL) ALL user ALL=(ALL) ALL chmod -w /etc/sudoers
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
/etc/systemd/logind.conf HandleLidSwitch=ignore HandleLidSwitchDocked=ignore
lightdm配置文件 [SeatDefaults] autologin-user=user
export QT_DEBUG_PLUGINS=1
getconf PAGE_SIZE
/etc/udev/rules.d SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{ifindex}=="2", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0" udevadm info --query=path --path=/sys/class/net/eth0 --attribute
qtchooser -install qt5.12.2 /usr/local/Qt-5.12.2/bin/qmake export QT_SELECT=qt5.12.2
export LANG=zh_CN.UTF-8 export LANGUAGE=zh_CN.zh
taskkill /pid WIN_PID -f
经总结主要原因是14版本之后注册了两个LSP协议(vSockets DGRAM、vSockets STREAM)导致异常!
解决方法:使用LSP修复工具(例如:360安全卫士/金山毒霸里的LSP工具)修复LSP网络协议,或者重置下网络链接
1.在《启动和关闭windows功能》中 启用smb/cifs功能
2.在本地安全策略中设置《LAN管理器身份验证级别》设置为,发送LM和NTLM-如果已协商。则使用NTLM v2 会话安全
3.在《网络和共享中心》设置高级共享设置为 启动文件共享,关闭密码保护的共享
4.在smb.conf 中,设置 security=share
cd /etc/lightdm/lightdm.conf xserver-command=X -background none -nocursor 增加-nocursor
[pack] packsizelimit = 2g window = 0
linux下添加用户后,会在系统里自动加一个邮箱(系统邮箱),路径是:/var/spool/mail/用户名.
rm -rf /var/spool/mail/用户名
Get-FileHash -Algorithm MD5 *.tar.gz
dd if=/dev/zero of=test.img status=progress
rngd -r /dev/urandom
To free pagecache: echo 1 > /proc/sys/vm/drop_cachesTo free dentries and inodes: echo 2 > /proc/sys/vm/drop_cachesTo free pagecache, dentries and inodes: echo 3 > /proc/sys/vm/drop_caches
/etc/security/pwquality.conf minlen = 6 minclass = 2 usercheck = 0
arecord -Dhw:0,0 -r48000 -f S16_LE -c 2 | aplay -Dhw:0,0 -r48000