报错代码:
History:
- Can't hardlink/copy /var/tmp/...... to /var/cache/zypp/packages/......
- Can't provide ./x86_64/......
Abort, retry, ignore? [a/r/i] (a):
分析:
如果对应的目录存储空间不够,就会出现此类报错
解决方法:
扩大对应的存储空间或者在对应的目录里删除无用的数据
History:
- Can't hardlink/copy /var/tmp/...... to /var/cache/zypp/packages/......
- Can't provide ./x86_64/......
Abort, retry, ignore? [a/r/i] (a):
如果对应的目录存储空间不够,就会出现此类报错
扩大对应的存储空间或者在对应的目录里删除无用的数据
# authselect disable-feature with-fingerprint
# authselect check
Current configuration is valid.
# cat /etc/pam.d/fingerprint-auth
# Generated by authselect on Wed Feb 22 22:22:22 2022
# Do not modify this file manually.
# strace -fvttTyy -s 4096 -o /tmp/strace_${HOSTNAME}.log mtr -TP 443 -nrc 300 1.1.1.1
或者:
# strace --follow-forks --no-abbrev --absolute-timestamps=[time,]us --syscall-times --decode-fds=all --string-limit=4096 --output=/tmp/strace_${HOSTNAME}.log mtr -TP 443 -nrc 300 1.1.1.1
(
补充:
1) -f 或者 –follow-forks,跟随交叉
2) -v 或者 –no-abbrev,输出结果不进行缩写
3) -tt 或者 –absolute-timestamps=[time,]us,显示绝对时间的时间戳
4) -T 或者 –syscall-times,显示系统的时间
5) -yy 或者 –decode-fds=all,显示除路径外和文件描述相关的所有信息
6) -s 或者 –string-limit=,后面接数字,限制输出结果中每个字符串的长度,默认为 32
7) -o 或者 –output,后面接文件名,输出结果会导入到这个文件里
8) mtr -TP 443 -nrc 300 1.1.1.1 是要被追踪的命令
9) 这里以查询为访问 1.1.1.1 的 443 端口 300 次而新启动的本地端口在哪里被阻止了,且显示结果的字符串长度为 4096 个字节为例
)
# cat /tmp/strace_${HOSTNAME}.log | grep 'Address already in use'
3205000 09:30:00.240588 bind(5<TCP:[132224925]>, {sa_family=AF_INET, sin_port=htons(34005), sin_addr=inet_addr("192.168.0.1")}, 16) = -1 EADDRINUSE (Address already in use) <0.000045>
(
补充:
1) 这里以搜索报错 ‘Address already in use’ 为例
2) 从输出结果可以看出,使其报错的端口时 34005
)
# ss -ntulap | grep 34005
tcp ESTAB 0 0 192.168.1.1:34005 1.1.1.1:49666 users:(("xxxx",pid=1555,fd=284))
(补充:这里可以看出造成报错的端口正在被 PID 1555 占用)
# ps -aux | grep 34005
在本地局域网络中,各个设备的网卡都有自己的 ARP 缓存表,用于记录局域网中各个设备 IP 地址和 MAC 地址的对应关系。
# arp -d 192.168.0.1
(补充:这里以从本地 ARP 缓存表清楚 IP 地址 192.168.0.1 的 ARP 缓存为例)
# ping 192.168.0.1
(
补充:
1) 这里以获取 192.168.0.1 的 ARP 缓存为例。
2) 当本地尝试连接 IP 地址 192.168.0.1 时,首先发生 ARP 报文询问 IP 地址 192.168.0.1 的 MAC 地址获得 ARP 缓存。如果此缓存长期没有被使用则会自动删除。如果记录 ARP 缓存过多,那旧的 ARP 缓存会被有限删除
)
重启系统,进入内核选择界面,此时按下 “e” 键进入内核编辑界面
在 menuentry 下面,在 linux 开头的这 1 行末尾添加 init=/bin/bash
同时按下 “ctrl” 键和 “x” 键
# mount -o remount rw /
# echo 1 | passwd --stdin root
(补充:以上命令的作用是在修改的内核中,将 root 的密码修改为 1,并重启)
# reboot