[实践OK]Mac 安装wireshark The capture session could not be initiated on capture device "en0" (You don't have permission to capture on that device).
Unix/LinuxC技术 jack 2022-11-7 11:42
If you installed Wireshark using the package from wireshark.org, close this dialog and click on the "installing ChmodBPF" link in "You can fix this by installing ChmodBPF." on the main screen, and then complete the installation procedure.
原文链接:https://blog.csdn.net/qq_38376348/article/details/121419684
ls /dev/bpf*
/dev/bpf0 /dev/bpf10 /dev/bpf12 /dev/bpf14 /dev/bpf16 /dev/bpf2 /dev/bpf4 /dev/bpf6 /dev/bpf8
/dev/bpf1 /dev/bpf11 /dev/bpf13 /dev/bpf15 /dev/bpf17 /dev/bpf3 /dev/bpf5 /dev/bpf7 /dev/bpf9
没有给bpf权限
解决办法
chmod 777 /dev/bpf*
重新打开软件后:
可以看到en0网卡流量有变化了
==============================================================
The capture session could not be initiated on capture device "en0" (You don't have permission to capture on that device).
Please check to make sure you have sufficient permissions.
If you installed Wireshark using the package from wireshark.org, close this dialog and click on the "installing ChmodBPF" link in "You can fix this by installing ChmodBPF." on the main screen, and then complete the installation procedure.
来自:https://blog.csdn.net/qq_38376348/article/details/121419684
原文链接:https://blog.csdn.net/qq_38376348/article/details/121419684
ls /dev/bpf*
/dev/bpf0 /dev/bpf10 /dev/bpf12 /dev/bpf14 /dev/bpf16 /dev/bpf2 /dev/bpf4 /dev/bpf6 /dev/bpf8
/dev/bpf1 /dev/bpf11 /dev/bpf13 /dev/bpf15 /dev/bpf17 /dev/bpf3 /dev/bpf5 /dev/bpf7 /dev/bpf9
没有给bpf权限
解决办法
chmod 777 /dev/bpf*
重新打开软件后:
可以看到en0网卡流量有变化了
==============================================================
The capture session could not be initiated on capture device "en0" (You don't have permission to capture on that device).
Please check to make sure you have sufficient permissions.
If you installed Wireshark using the package from wireshark.org, close this dialog and click on the "installing ChmodBPF" link in "You can fix this by installing ChmodBPF." on the main screen, and then complete the installation procedure.
来自:https://blog.csdn.net/qq_38376348/article/details/121419684
[实践OK]CentOS 8 的 yum 安装组件出错 —— Cannot prepare internal mirrorlist: No URLs in mirrorlist
Unix/LinuxC技术 jack 2022-10-27 19:08
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
现象:
CentOS Linux 8 - BaseOS 73 B/s | 38 B 00:00
错误:为 repo 'baseos' 下载元数据失败 : Cannot prepare internal mirrorlist: No URLs in mirrorlist
原因:
CentOS 8 于2021年底停止维护,CentOS 7 将于 2024 年 6 月底停止维护。
如果业务过渡期仍需要使用 CentOS 8 中的一些安装包,建议切换至 CentOS-Vault 源。
解决办法:
来自:https://blog.csdn.net/Shockang/article/details/126335260
出现新的问题:
Module yaml error: Unexpected key in data: static_context [line 9 col 3]
Module yaml error: Unexpected key in data: static_context [line 9 col 3]
Module yaml error: Unexpected key in data: static_context [line 9 col 3]
解决办法:
然后尝试 yum install git
引发了新的错误
Module yaml error: Unexpected key in data: static_context [line 9 col 3]
Module yaml error: Unexpected key in data: static_context [line 9 col 3]
解决方法:
修改 BaseOS.repo 文件的 baseurl 参数
[baseos]
baseurl=htps://vault.centos.org/centos/$releasever/BaseOS/$basearch/os/
修改 AppStream.repo 文件的 baseurl 参数
[appstream]
baseurl=htps://vault.centos.org/centos/$releasever/AppStream/$basearch/os/
来自:https://blog.csdn.net/tfstone/article/details/124263456
现象:
CentOS Linux 8 - BaseOS 73 B/s | 38 B 00:00
错误:为 repo 'baseos' 下载元数据失败 : Cannot prepare internal mirrorlist: No URLs in mirrorlist
原因:
CentOS 8 于2021年底停止维护,CentOS 7 将于 2024 年 6 月底停止维护。
如果业务过渡期仍需要使用 CentOS 8 中的一些安装包,建议切换至 CentOS-Vault 源。
解决办法:
来自:https://blog.csdn.net/Shockang/article/details/126335260
出现新的问题:
Module yaml error: Unexpected key in data: static_context [line 9 col 3]
Module yaml error: Unexpected key in data: static_context [line 9 col 3]
Module yaml error: Unexpected key in data: static_context [line 9 col 3]
解决办法:
然后尝试 yum install git
引发了新的错误
Module yaml error: Unexpected key in data: static_context [line 9 col 3]
Module yaml error: Unexpected key in data: static_context [line 9 col 3]
解决方法:
修改 BaseOS.repo 文件的 baseurl 参数
[baseos]
baseurl=htps://vault.centos.org/centos/$releasever/BaseOS/$basearch/os/
修改 AppStream.repo 文件的 baseurl 参数
[appstream]
baseurl=htps://vault.centos.org/centos/$releasever/AppStream/$basearch/os/
来自:https://blog.csdn.net/tfstone/article/details/124263456
据说:FreeBSD 12.2之前编译器采用的是CLANG的编译器。
FreeBSD13.1采用的是:LLVM Clang 11编译器构建出来的。[LLVM+CLANG]
理念上讲先进有好处,但是一些旧的硬件机型还是旧的好,
做DHCP和域名解析啥的场景建设采用FreeBSD12.2更稳定。[有老硬件有关]
编译器对旧硬件的亲和性是软硬件稳定性的重要考量因素![新硬件装13吧]
FreeBSD 常用稳定功能,配合一台CentOS7.6.1810 3.10.0-957:
DHCPD:dhcpd.conf
DNSMASQ
glances 是一款用于 Linux、BSD 的开源命令行系统监视工具,它使用 Python 语言开发,能够监视 CPU、负载、内存、磁盘 I/O、网络流量、文件系统、系统温度等信息。安装方法:https://jackxiang.com/post/11587/
安装方法:https://jackxiang.com/post/11587/
办公网络INODE H3C-IMC 是部署在windows上的一套软件,新版本实现了不需要负载均衡实现两台PC Server 机器实现负载均衡自动切换。
IMC的后台控制端WEB升级成Https后,用MACINODE登录入网时会出现兼容问题???
FreeBSD13.1采用的是:LLVM Clang 11编译器构建出来的。[LLVM+CLANG]
理念上讲先进有好处,但是一些旧的硬件机型还是旧的好,
做DHCP和域名解析啥的场景建设采用FreeBSD12.2更稳定。[有老硬件有关]
编译器对旧硬件的亲和性是软硬件稳定性的重要考量因素![新硬件装13吧]
FreeBSD 常用稳定功能,配合一台CentOS7.6.1810 3.10.0-957:
DHCPD:dhcpd.conf
DNSMASQ
glances 是一款用于 Linux、BSD 的开源命令行系统监视工具,它使用 Python 语言开发,能够监视 CPU、负载、内存、磁盘 I/O、网络流量、文件系统、系统温度等信息。安装方法:https://jackxiang.com/post/11587/
安装方法:https://jackxiang.com/post/11587/
办公网络INODE H3C-IMC 是部署在windows上的一套软件,新版本实现了不需要负载均衡实现两台PC Server 机器实现负载均衡自动切换。
IMC的后台控制端WEB升级成Https后,用MACINODE登录入网时会出现兼容问题???
[实践OK]Linux命令行学习神器 TLDR
Unix/LinuxC技术 jack 2022-8-28 23:15
tldr,tldr全称Too long, Don’t read,翻译成中文就是[太长不读]。tldr根据二八原则将命令的常用场景给出示例,让人一看就懂。
tldr tar
From:https://www.cnblogs.com/xingxia/p/npm_tldr.html
More:https://www.hi-linux.com/posts/16098.html
mac安装并使用tldr:
https://blog.csdn.net/weixin_49268249/article/details/120403250
tldr ln
ln
Creates links to files and directories.
More information: <https://www.gnu.org/software/coreutils/ln>.
- Create a symbolic link to a file or directory:
ln -s /path/to/file_or_directory path/to/symlink
- Overwrite an existing symbolic link to point to a different file:
ln -sf /path/to/new_file path/to/symlink
- Create a hard link to a file:
ln /path/to/file path/to/hardlink
tldr tar
From:https://www.cnblogs.com/xingxia/p/npm_tldr.html
More:https://www.hi-linux.com/posts/16098.html
mac安装并使用tldr:
https://blog.csdn.net/weixin_49268249/article/details/120403250
tldr ln
ln
Creates links to files and directories.
More information: <https://www.gnu.org/software/coreutils/ln>.
- Create a symbolic link to a file or directory:
ln -s /path/to/file_or_directory path/to/symlink
- Overwrite an existing symbolic link to point to a different file:
ln -sf /path/to/new_file path/to/symlink
- Create a hard link to a file:
ln /path/to/file path/to/hardlink
下午发现服务器风扇一直转,然后 top 看了下,发现一个叫'systemdd-dev'的程序把 cpu 跑满了。
#uptime
22:53:21 up 46 days, 3:57, 1 user, load average: 10.48, 10.73, 10.82
top看到:
一个叫'systemdd-dev'的程序把 cpu 跑满了。
polkitd 1310107 7584 99 7月23 ? 55-10:12:06 /tmp/.lib/systemdd-dev
ls /tmp/.lib/systemdd-dev
ls: 无法访问'/tmp/.lib/systemdd-dev': 没有那个文件或目录
strace -f -p 1310107
[pid 1366321] sched_yield() = 0
[pid 1366320] sched_yield() = 0
[pid 1366325] sched_yield() = 0
[pid 1366328] sched_yield() = 0
polkitd 1310107 7584 99 7月23 ? 55-09:43:59 /tmp/.lib/systemdd-dev
polkitd:x:998:996:User for polkitd:/:/sbin/nologin
#cat /proc/1310107/status
Name: systemdd-dev
Umask: 0022
State: S (sleeping)
Tgid: 1310107
Ngid: 0
Pid: 1310107
PPid: 7584
TracerPid: 0
Uid: 998 998 998 998
Gid: 998 998 998 998
Mems_allowed_list: 0
voluntary_ctxt_switches: 1498969
nonvoluntary_ctxt_switches: 119
解决办法:
从上面进程的父亲进程号:7584得知是git,于是定位到容器。
#ps -ef|grep 7584
root 7584 7541 0 6月12 ? 00:00:00 /bin/bash /assets/wrapper
root 8523 7584 0 6月12 ? 00:00:18 runsvdir -P /opt/gitlab/service log: .........................................................................................................................
root 11249 7584 0 6月12 ? 00:00:00 /bin/bash /opt/gitlab/bin/gitlab-ctl tail
root 925975 898775 0 22:52 pts/4 00:00:00 grep --color=auto 7584
polkitd 1309744 7584 0 7月23 ? 00:03:21 /bin/bash /tmp/.lib/systemdd-udevd
polkitd 1309748 7584 0 7月23 ? 00:00:17 /var/opt/gitlab/gitlab-workhorse/java
polkitd 1310107 7584 99 7月23 ? 55-10:12:06 /tmp/.lib/systemdd-dev
docker ps -a
1b1a3af4b528 gitlab/gitlab-ce "/assets/wrapper" 15 months ago Up 6 weeks (healthy) 0.0.0.0:8226->22/tcp, 0.0.0.0:8341->80/tcp, 0.0.0.0:8848->443/tcp gitlab
docker stop 1b1a3af4b528
uptime #负载下来了
23:01:18 up 46 days, 4:05, 1 user, load average: 0.09, 2.41, 6.67
可能有黑客入住容器?
#uptime
22:53:21 up 46 days, 3:57, 1 user, load average: 10.48, 10.73, 10.82
top看到:
一个叫'systemdd-dev'的程序把 cpu 跑满了。
polkitd 1310107 7584 99 7月23 ? 55-10:12:06 /tmp/.lib/systemdd-dev
ls /tmp/.lib/systemdd-dev
ls: 无法访问'/tmp/.lib/systemdd-dev': 没有那个文件或目录
strace -f -p 1310107
[pid 1366321] sched_yield() = 0
[pid 1366320] sched_yield() = 0
[pid 1366325] sched_yield() = 0
[pid 1366328] sched_yield() = 0
polkitd 1310107 7584 99 7月23 ? 55-09:43:59 /tmp/.lib/systemdd-dev
polkitd:x:998:996:User for polkitd:/:/sbin/nologin
#cat /proc/1310107/status
Name: systemdd-dev
Umask: 0022
State: S (sleeping)
Tgid: 1310107
Ngid: 0
Pid: 1310107
PPid: 7584
TracerPid: 0
Uid: 998 998 998 998
Gid: 998 998 998 998
Mems_allowed_list: 0
voluntary_ctxt_switches: 1498969
nonvoluntary_ctxt_switches: 119
解决办法:
从上面进程的父亲进程号:7584得知是git,于是定位到容器。
#ps -ef|grep 7584
root 7584 7541 0 6月12 ? 00:00:00 /bin/bash /assets/wrapper
root 8523 7584 0 6月12 ? 00:00:18 runsvdir -P /opt/gitlab/service log: .........................................................................................................................
root 11249 7584 0 6月12 ? 00:00:00 /bin/bash /opt/gitlab/bin/gitlab-ctl tail
root 925975 898775 0 22:52 pts/4 00:00:00 grep --color=auto 7584
polkitd 1309744 7584 0 7月23 ? 00:03:21 /bin/bash /tmp/.lib/systemdd-udevd
polkitd 1309748 7584 0 7月23 ? 00:00:17 /var/opt/gitlab/gitlab-workhorse/java
polkitd 1310107 7584 99 7月23 ? 55-10:12:06 /tmp/.lib/systemdd-dev
docker ps -a
1b1a3af4b528 gitlab/gitlab-ce "/assets/wrapper" 15 months ago Up 6 weeks (healthy) 0.0.0.0:8226->22/tcp, 0.0.0.0:8341->80/tcp, 0.0.0.0:8848->443/tcp gitlab
docker stop 1b1a3af4b528
uptime #负载下来了
23:01:18 up 46 days, 4:05, 1 user, load average: 0.09, 2.41, 6.67
可能有黑客入住容器?
[实践OK]CentOS和MacBook下的cal命令取LANG里面的哪个参数项实现显示中文和英文的?export LC_TIME="zh_CN.UTF-8",变中文,设置export LC_TIME="en_US.UTF-8"立即变英文。
Unix/LinuxC技术 jack 2022-7-14 11:20
背景:干了十年模糊了英文的月份、周,特别是缩写,像rpmbuild打包的日志必须要缩写对,像Git提交日期都是英文的月份,所以这个英文是绕不开的,得捡起来,怎么捡起来先从Unix/Linux操作系统的cal 命令开始入门最好了。
rpmbuild打包:https://jackxiang.com/post/9689/
#rpmbuild -ba openresty-1.19.9.1.el7.x86_64.spec
错误:%changelog 没有按照时间顺序降序排列
%changelog
* Tue Mar 8 2022 dong xiang <xiangdong@staff.cntv.com>
- Initial openresty rpm package
* Wed Feb 15 2017 1.11.2.5-%(date +%y%m%d%H%M%%S)
-update openresty to 1.11.2.5
Git log:
git log index.html
Author: yuchangchun <yuchangchun @staff.xxxx.cn>
Date: Thu May 26 17:06:22 2022 +0800 【Thu May】
打包demo环境
最终,结论:export LC_TIME="zh_CN.UTF-8",变中文,设置export LC_TIME="en_US.UTF-8"立即变英文。
Mac终端默认是中文:
export LC_TIME="en_US.UTF-8"
cal -y #显示全年,也就知道了是5月周2。
~/.oh-my-zsh/.alias 设置zsh快捷键
alias scal='export LANG=en_US.UTF-8 && cal -y'
export LANG=zh_CN.UTF-8
echo $LANG
zh_CN.UTF-8
cal
cal
七月 2022
日 一 二 三 四 五 六
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
export LANG=en_US.UTF-8
cal
July 2022
Su Mo Tu We Th Fr Sa
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
locale -a #列出所有支持的公共位置串里找到en_US.UTF-8
locale
LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="zh_CN.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL=
中文
LANG="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_CTYPE="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_ALL=
rpmbuild打包:https://jackxiang.com/post/9689/
#rpmbuild -ba openresty-1.19.9.1.el7.x86_64.spec
错误:%changelog 没有按照时间顺序降序排列
%changelog
* Tue Mar 8 2022 dong xiang <xiangdong@staff.cntv.com>
- Initial openresty rpm package
* Wed Feb 15 2017 1.11.2.5-%(date +%y%m%d%H%M%%S)
-update openresty to 1.11.2.5
Git log:
git log index.html
Author: yuchangchun <yuchangchun @staff.xxxx.cn>
Date: Thu May 26 17:06:22 2022 +0800 【Thu May】
打包demo环境
最终,结论:export LC_TIME="zh_CN.UTF-8",变中文,设置export LC_TIME="en_US.UTF-8"立即变英文。
Mac终端默认是中文:
export LC_TIME="en_US.UTF-8"
cal -y #显示全年,也就知道了是5月周2。
~/.oh-my-zsh/.alias 设置zsh快捷键
alias scal='export LANG=en_US.UTF-8 && cal -y'
export LANG=zh_CN.UTF-8
echo $LANG
zh_CN.UTF-8
cal
cal
七月 2022
日 一 二 三 四 五 六
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
export LANG=en_US.UTF-8
cal
July 2022
Su Mo Tu We Th Fr Sa
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
locale -a #列出所有支持的公共位置串里找到en_US.UTF-8
locale
LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="zh_CN.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL=
中文
LANG="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_CTYPE="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_ALL=
[程序员不高兴] 说:蓝奏云下载地址::https://wwm.lanzouy.com/i5Yh2050755i
官网:https://effidit.qq.com/
网页版本:
https://effidit.qq.com/demo
更多操作:
https://mp.weixin.qq.com/s/mBF_PDF-Hp62N0Ji7pfyUQ
官网:https://effidit.qq.com/
网页版本:
https://effidit.qq.com/demo
更多操作:
https://mp.weixin.qq.com/s/mBF_PDF-Hp62N0Ji7pfyUQ
[实践OK]每两周执行一次定时任务
Unix/LinuxC技术 jack 2022-4-27 16:34
crontab这个定时工具单对于日期默认颗粒度是“单”,也就是单天,单周,单月等等,但是如果需要每双周发送一次消息,那么原生态的crontab就做不到了。
正确的写法是:
echo $(date +\%W) #date +\%W获取当前的周数
17
expr `date +\%W` \% 2 #一般用于整数值计算使用expr做算术运算
1
这个规则的意思就是每双周的周五11点59分,启动DINGdingBot这个脚本。
先说expr,这是一个计算命令,一般用于整数值,比如expr 14 % 9,返回就是5。那么这个脚本的意思就很明白了,先用date +\%W获取当前的周数,如果可以被2整除,就是0,0可以执行后面的语句,如果不能被2整除,那么后面的语句也就不会执行。其实说白了,就是每周五的11点59分,判断一下当前周数是否是2的倍数,如果是就可以去执行脚本,如果不是就无视掉。
最后推荐一个好网站可以查看crontab的效果:
https://tooltt.com/crontab-parse/
另一个工具感觉弱一点,但是验证(50 9 8-14,22-28 * 5好像又是对的,和此文作者说的不符合。):
https://www.matools.com/crontab
,不过这个网站只能看基础的crontab配置,想玩花就不行了。
摘自:https://brucewayne2099.github.io/2020/09/12/%E6%AF%8F%E4%B8%A4%E5%91%A8%E6%89%A7%E8%A1%8C%E4%B8%80%E6%AC%A1%E5%AE%9A%E6%97%B6%E4%BB%BB%E5%8A%A1/
正确的写法是:
echo $(date +\%W) #date +\%W获取当前的周数
17
expr `date +\%W` \% 2 #一般用于整数值计算使用expr做算术运算
1
这个规则的意思就是每双周的周五11点59分,启动DINGdingBot这个脚本。
先说expr,这是一个计算命令,一般用于整数值,比如expr 14 % 9,返回就是5。那么这个脚本的意思就很明白了,先用date +\%W获取当前的周数,如果可以被2整除,就是0,0可以执行后面的语句,如果不能被2整除,那么后面的语句也就不会执行。其实说白了,就是每周五的11点59分,判断一下当前周数是否是2的倍数,如果是就可以去执行脚本,如果不是就无视掉。
最后推荐一个好网站可以查看crontab的效果:
https://tooltt.com/crontab-parse/
另一个工具感觉弱一点,但是验证(50 9 8-14,22-28 * 5好像又是对的,和此文作者说的不符合。):
https://www.matools.com/crontab
,不过这个网站只能看基础的crontab配置,想玩花就不行了。
摘自:https://brucewayne2099.github.io/2020/09/12/%E6%AF%8F%E4%B8%A4%E5%91%A8%E6%89%A7%E8%A1%8C%E4%B8%80%E6%AC%A1%E5%AE%9A%E6%97%B6%E4%BB%BB%E5%8A%A1/
[FreeBSD] Freebsd重启后出现was not properly dismounted报错
Unix/LinuxC技术 jack 2022-3-30 10:24
解决办法:
进入单用户 #fsck -p
#shutdown -r now
实践:
应该是直接进入单用户模式了:
vim /etc/fstab #(dum=0, pass#=0),之前都是1,全改为0。
学习的BSD的教材上,作者明确指出不要用reboot和halt执行重启和关机动作,那样系统不会执行rc.shutdown脚本导致不能在文件系统上设立“清除”标记,下次开机时系统会自动调用FSCK来检查文件系统一的。
异常掉电可能引起磁盘分区被标记为dirty,默认地,系统下一次启动时会运行fsck进行分区检查和错误恢复。如果fsck过程中某个操作需要用户干预或确认,而现在的应用没有使用显示器和键盘鼠标,启动过程可能无法继续进行。
1、编辑/etc/fstab,将分区标记为无须检查(dum=0, pass#=0),详见man fstab
2、编辑/etc/rc.conf,添加以下内容:
fsck_y_enable="YES"
fsck_background="NO"
這個檔案用來定義開機時要掛入的檔案分割區。
# 裝置名稱 掛入點 檔案系統 參數 Dump Pass#
/dev/ad0s1b none swap sw 0 0
/dev/ad0s1a / ufs rw 1 1
原文链接:https://blog.csdn.net/ncdawen/article/details/574279
掛入點就是你要將來源掛到什麼地方,其中 swap 沒有掛入點,所以是 none。
檔案系統就是要掛入的類型,必須在 kernel 中有定義。一般 FreeBSD 的檔案是 ufs,硬碟要掛入的設定就是 ufs。如果是 cdrom 就是
cd9660。
ufs 本地的 UNIX 檔案系統。
mfs 本地的 memory-based UNIX 檔案系統。
nfs 和 Sun Microsystems 相容的 "Network File System"。
swap 用來作 swapping 的檔案系統。
msdos DOS 相容的檔案系統。
cd9660 CD-ROM 的檔案系統。
procfs 用來存取執行程序(process)的檔案系統。
kernfs 用來存取核心參數(kernel parameter)的檔案系統。
原文链接:https://blog.csdn.net/ncdawen/article/details/574279
进入单用户 #fsck -p
#shutdown -r now
实践:
应该是直接进入单用户模式了:
vim /etc/fstab #(dum=0, pass#=0),之前都是1,全改为0。
学习的BSD的教材上,作者明确指出不要用reboot和halt执行重启和关机动作,那样系统不会执行rc.shutdown脚本导致不能在文件系统上设立“清除”标记,下次开机时系统会自动调用FSCK来检查文件系统一的。
异常掉电可能引起磁盘分区被标记为dirty,默认地,系统下一次启动时会运行fsck进行分区检查和错误恢复。如果fsck过程中某个操作需要用户干预或确认,而现在的应用没有使用显示器和键盘鼠标,启动过程可能无法继续进行。
1、编辑/etc/fstab,将分区标记为无须检查(dum=0, pass#=0),详见man fstab
2、编辑/etc/rc.conf,添加以下内容:
fsck_y_enable="YES"
fsck_background="NO"
這個檔案用來定義開機時要掛入的檔案分割區。
# 裝置名稱 掛入點 檔案系統 參數 Dump Pass#
/dev/ad0s1b none swap sw 0 0
/dev/ad0s1a / ufs rw 1 1
原文链接:https://blog.csdn.net/ncdawen/article/details/574279
掛入點就是你要將來源掛到什麼地方,其中 swap 沒有掛入點,所以是 none。
檔案系統就是要掛入的類型,必須在 kernel 中有定義。一般 FreeBSD 的檔案是 ufs,硬碟要掛入的設定就是 ufs。如果是 cdrom 就是
cd9660。
ufs 本地的 UNIX 檔案系統。
mfs 本地的 memory-based UNIX 檔案系統。
nfs 和 Sun Microsystems 相容的 "Network File System"。
swap 用來作 swapping 的檔案系統。
msdos DOS 相容的檔案系統。
cd9660 CD-ROM 的檔案系統。
procfs 用來存取執行程序(process)的檔案系統。
kernfs 用來存取核心參數(kernel parameter)的檔案系統。
原文链接:https://blog.csdn.net/ncdawen/article/details/574279
理解谁干的,有可能是nm干的,或者黑客干的,极有可能是CentOS8引入两个管理网络的network和NetworkManager都启动后“打架”干的。
实际上这俩都开了:
systemctl status network
● network.service - LSB: Bring up/down networking
Loaded: loaded (/etc/rc.d/init.d/network; generated)
Active: active (exited) since Sat 2022-03-26 05:56:48 CST; 9min ago
#systemctl status NetworkManager
● NetworkManager.service - Network Manager
Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2022-03-26 05:56:41 CST; 9min ago
Docs: man:NetworkManager(8)
Main PID: 2465 (NetworkManager)
只开network的步骤:
一、都禁用:
systemctl mask network
Created symlink /etc/systemd/system/network.service → /dev/null.
systemctl mask NetworkManager
Created symlink /etc/systemd/system/NetworkManager.service → /dev/null.
二、启用一个:
/usr/lib/systemd/systemd-sysv-install enable network
#下面提示怎么启用:
systemctl enable network
network.service is not a native service, redirecting to systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable network
三、测试NetworkManager 被彻底禁用了:
systemctl start NetworkManager
Failed to start NetworkManager.service: Unit NetworkManager.service is masked.
mask彻底禁用systemctl服务:
https://blog.csdn.net/stpice/article/details/104569146/
----------------------------------------------------------
cd /etc/sysconfig/network-scripts/ifcfg-lanbr0
#cat ifcfg-
ifcfg-eno1 ifcfg-lanbr0 ifcfg-lo
在桥接的网卡lanbr0新增:
/etc/sysconfig/network-scripts/
DNS1=202.106.196.115
DNS2=114.114.114.114
重启动后,会将/etc/resolv.conf的配置重新刷成上面的(测试过删除一行:nameserver 114.114.114.114,重启后会自动加上):
#cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 202.106.196.115
nameserver 114.114.114.114
#cat ifcfg-eno1
DEVICE="eno1"
ONBOOT="yes"
BRIDGE="lanbr0"
#cat ifcfg-lanbr0
DEVICE="lanbr0"
ONBOOT="yes"
TYPE="Bridge"
BOOTPROTO="none"
IPADDR="10.10.0.1**"
NETMASK="255.255.255.0"
GATEWAY="10.10.0.1"
DNS1=202.106.196.115
DNS2=114.114.114.114
Centos重新启动网络配置文件,/etc/resolv.conf被覆盖或清空问题解决
实际上这俩都开了:
systemctl status network
● network.service - LSB: Bring up/down networking
Loaded: loaded (/etc/rc.d/init.d/network; generated)
Active: active (exited) since Sat 2022-03-26 05:56:48 CST; 9min ago
#systemctl status NetworkManager
● NetworkManager.service - Network Manager
Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2022-03-26 05:56:41 CST; 9min ago
Docs: man:NetworkManager(8)
Main PID: 2465 (NetworkManager)
只开network的步骤:
一、都禁用:
systemctl mask network
Created symlink /etc/systemd/system/network.service → /dev/null.
systemctl mask NetworkManager
Created symlink /etc/systemd/system/NetworkManager.service → /dev/null.
二、启用一个:
/usr/lib/systemd/systemd-sysv-install enable network
#下面提示怎么启用:
systemctl enable network
network.service is not a native service, redirecting to systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable network
三、测试NetworkManager 被彻底禁用了:
systemctl start NetworkManager
Failed to start NetworkManager.service: Unit NetworkManager.service is masked.
mask彻底禁用systemctl服务:
https://blog.csdn.net/stpice/article/details/104569146/
----------------------------------------------------------
cd /etc/sysconfig/network-scripts/ifcfg-lanbr0
#cat ifcfg-
ifcfg-eno1 ifcfg-lanbr0 ifcfg-lo
在桥接的网卡lanbr0新增:
/etc/sysconfig/network-scripts/
DNS1=202.106.196.115
DNS2=114.114.114.114
重启动后,会将/etc/resolv.conf的配置重新刷成上面的(测试过删除一行:nameserver 114.114.114.114,重启后会自动加上):
#cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 202.106.196.115
nameserver 114.114.114.114
#cat ifcfg-eno1
DEVICE="eno1"
ONBOOT="yes"
BRIDGE="lanbr0"
#cat ifcfg-lanbr0
DEVICE="lanbr0"
ONBOOT="yes"
TYPE="Bridge"
BOOTPROTO="none"
IPADDR="10.10.0.1**"
NETMASK="255.255.255.0"
GATEWAY="10.10.0.1"
DNS1=202.106.196.115
DNS2=114.114.114.114
Centos重新启动网络配置文件,/etc/resolv.conf被覆盖或清空问题解决
cat short-if.go
go build short-if.go
./short-if
1
SpaceX
./short-if
2
Virgin Galactic
./short-if
0
Space Adventures
如果不加:
rand.Seed(time.Now().Unix())
其值一直是:2
原因是:https://blog.csdn.net/weixin_33816821/article/details/94581126
Go语言的switch语法学习之num的简短声明也可用于switch语句的一部分:
./short-switch
Virgin Galactic
./short-switch
Random spaceline # 4
cat scope-rules.go #几月有多少天的一个判断:
./scope-rules
AD 2018 10 24
default:
day := rand.Intn(31) + 1
fmt.Println(era, year, month, day)
}
fmt.Println(month,day) //作用域不再有了。
go build scope-rules.go
# command-line-arguments
./scope-rules.go:22:14: undefined: month
./scope-rules.go:22:20: undefined: day
包括switch的每个case也是都拥有自己独立的作用域,每个分支里面的day变量在分支结束后,day变量将不再处于作用域之内,switch分支的作用域是唯一一种无需使用大括号标识的作用域。
cat random-date.go
#./random-date
AD 2018 11 30
#./random-date
AD 2018 11 30
研究下闰年:
cat random-date-study.go
./random-date-study
AD 2000 2 18
AD 2000 2 4
AD 2000 2 6
AD 2000 2 8
AD 2000 2 7
AD 2000 2 21
AD 2000 2 7
AD 2000 2 29
AD 2000 2 12
AD 2000 2 12
go build short-if.go
./short-if
1
SpaceX
./short-if
2
Virgin Galactic
./short-if
0
Space Adventures
如果不加:
rand.Seed(time.Now().Unix())
其值一直是:2
原因是:https://blog.csdn.net/weixin_33816821/article/details/94581126
Go语言的switch语法学习之num的简短声明也可用于switch语句的一部分:
./short-switch
Virgin Galactic
./short-switch
Random spaceline # 4
cat scope-rules.go #几月有多少天的一个判断:
./scope-rules
AD 2018 10 24
default:
day := rand.Intn(31) + 1
fmt.Println(era, year, month, day)
}
fmt.Println(month,day) //作用域不再有了。
go build scope-rules.go
# command-line-arguments
./scope-rules.go:22:14: undefined: month
./scope-rules.go:22:20: undefined: day
包括switch的每个case也是都拥有自己独立的作用域,每个分支里面的day变量在分支结束后,day变量将不再处于作用域之内,switch分支的作用域是唯一一种无需使用大括号标识的作用域。
cat random-date.go
#./random-date
AD 2018 11 30
#./random-date
AD 2018 11 30
研究下闰年:
cat random-date-study.go
./random-date-study
AD 2000 2 18
AD 2000 2 4
AD 2000 2 6
AD 2000 2 8
AD 2000 2 7
AD 2000 2 21
AD 2000 2 7
AD 2000 2 29
AD 2000 2 12
AD 2000 2 12
[实践OK]Centos8 Golang安装
Unix/LinuxC技术 jack 2022-3-6 01:04
下载:
https://golang.google.cn/dl/go1.17.8.linux-amd64.tar.gz
完成之后解压到/usr/local
tar -C /usr/local -xzf go1.17.8.linux-amd64.tar.gz
打开环境变量文件
vi /etc/profile.d/golang.sh
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
export GOPATH=/root/go
export PATH=$PATH:$GOPATH/BIN
刷新环境变量
source /etc/profile.d/golang.sh
https://golang.google.cn/dl/go1.17.8.linux-amd64.tar.gz
完成之后解压到/usr/local
tar -C /usr/local -xzf go1.17.8.linux-amd64.tar.gz
打开环境变量文件
vi /etc/profile.d/golang.sh
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
export GOPATH=/root/go
export PATH=$PATH:$GOPATH/BIN
刷新环境变量
source /etc/profile.d/golang.sh
[实践OK]CentOS8 阿里源 CentOS Linux release 8.5更换阿里yum源,centos8yum源不可用解决,Module yaml error: Unexpected key in data: static_context
Unix/LinuxC技术 jack 2022-3-6 00:48
一、CentOS Linux release 8.5更换阿里yum源:
来自:https://blog.csdn.net/alfiy/article/details/121897360
二、Centos8 不在维护,第三方的镜像站中均已移除CentOS 8的源,yum install 会报错建议更换源。
备份旧的:
cd /etc/yum.repos.d/
mv CentOS-Base-aliyun-8.repo CentOS-Base-aliyun-8.repo.bak
mv CentOS-Base.repo CentOS-Base.repo.bak
下载新的:
wget https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo -O /etc/yum.repos.d/Centos-vault-8.5.2111.repo
wget https://mirrors.aliyun.com/repo/epel-archive-8.repo -O /etc/yum.repos.d/epel-archive-8.repo
yum clean all && yum makecache
下载:
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
yum install -y epel-release
yum clean all
rpm --rebuilddb
yum update
yum list
yum makecache
来自:https://www.ngui.cc/article/show-390936.html
来自:https://blog.csdn.net/alfiy/article/details/121897360
二、Centos8 不在维护,第三方的镜像站中均已移除CentOS 8的源,yum install 会报错建议更换源。
备份旧的:
cd /etc/yum.repos.d/
mv CentOS-Base-aliyun-8.repo CentOS-Base-aliyun-8.repo.bak
mv CentOS-Base.repo CentOS-Base.repo.bak
下载新的:
wget https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo -O /etc/yum.repos.d/Centos-vault-8.5.2111.repo
wget https://mirrors.aliyun.com/repo/epel-archive-8.repo -O /etc/yum.repos.d/epel-archive-8.repo
yum clean all && yum makecache
下载:
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
yum install -y epel-release
yum clean all
rpm --rebuilddb
yum update
yum list
yum makecache
来自:https://www.ngui.cc/article/show-390936.html
curl -v -d'1)杰克。
2)杰克\r\n3)杰克东
3)你是谁 "a" "b"
[空行的空格全是下划]
4)jack ' x.xxxx.com
来自:https://blog.csdn.net/zhaozhi406/article/details/11131971
https://www.xknote.com/blog/1127037.html
2)杰克\r\n3)杰克东
3)你是谁 "a" "b"
[空行的空格全是下划]
4)jack ' x.xxxx.com
来自:https://blog.csdn.net/zhaozhi406/article/details/11131971
https://www.xknote.com/blog/1127037.html
[小众限速]Centos7限速和测速
Unix/LinuxC技术 jack 2022-1-11 15:45
背景:有时你想测试一下传说中的微服务如熔断,服务器的接口超时(尤其是上传姑且叫大文件),这个rpm包应该是有用的。
限速
wondershaper是国外人开发的一款在Linux内核下基于TC工具的对整块网卡的限度工具。
第一种安装方法
首先下载wondershaper的rpm安装包:wondershaper-1.1a-7.noarch.rpm
安装wondershaper:
[root@localhost ~]# rpm -ivh wondershaper-1.1a-7.noarch.rpm
第二种安装方法
由于Centos7第三方库内才有这个软件,先安装第三方库
yum install epel-release -y
yum install wondershaper -y
限速命令:
第一个参数为网卡接口名,后面两个数字分别代表上行和下行的速度(单位Kb)
[root@localhost ~]# wondershaper eth0 5000 500
取消限速:
[root@localhost ~]# wondershaper clear eth0
来自:https://www.shuzhiduo.com/A/LPdo61bg53/
限速
wondershaper是国外人开发的一款在Linux内核下基于TC工具的对整块网卡的限度工具。
第一种安装方法
首先下载wondershaper的rpm安装包:wondershaper-1.1a-7.noarch.rpm
安装wondershaper:
[root@localhost ~]# rpm -ivh wondershaper-1.1a-7.noarch.rpm
第二种安装方法
由于Centos7第三方库内才有这个软件,先安装第三方库
yum install epel-release -y
yum install wondershaper -y
限速命令:
第一个参数为网卡接口名,后面两个数字分别代表上行和下行的速度(单位Kb)
[root@localhost ~]# wondershaper eth0 5000 500
取消限速:
[root@localhost ~]# wondershaper clear eth0
来自:https://www.shuzhiduo.com/A/LPdo61bg53/
[实践OK]Alfred 修改内置 Terminal 为 iTerm2
Unix/LinuxC技术 jack 2021-12-10 16:06
Alfred是Mac下一个非常强大的工具,网上有许多如何使用的教程,我目前也只是会使用一些基本功能。其中一个我特别喜欢的功能就是直接可以在Alfred里面输入shell命令(默认需要在命令前家>符号,表示是shell命令),然后就会自动打开终端执行。但这里有个问题就是Alfred默认使用Mac自带的Terminal,而大多数在Mac经常使用终端的一般都会使用iTerm2,因为它配合zsh+oh my zsh,真的是非常强大。对于目前最新的iTerm 3.x版本,可以通过如下方法将Alfred内置的Terminal改为iTerm2:
打开Alfred的"Preferences->features->Terminal/shell",将"Application"选为"custom",然后将下面的编辑框中的脚本内容替换为下面的
需要注意的是不同的iTerm2版本脚本内容不太一样,该脚本适用于最新的iTerm2版本,即iTerm2 3.0.
实践来自:https://www.cxymm.net/article/qq_29855509/120960802
打开Alfred的"Preferences->features->Terminal/shell",将"Application"选为"custom",然后将下面的编辑框中的脚本内容替换为下面的
需要注意的是不同的iTerm2版本脚本内容不太一样,该脚本适用于最新的iTerm2版本,即iTerm2 3.0.
实践来自:https://www.cxymm.net/article/qq_29855509/120960802
sudo codesign --force --deep --sign - /Applications/PhotoScapeX.app
修复失败。
修复失败。




