我正在使用一個樹莓派 A+和樹莓派 傑西。我遇到了非常奇怪的錯誤,我所做的修改似乎是過了一會兒又恢復了。
範例1: 我刪除了 /etc/apt/sources.list.d 檔案 collabora.list 和 raspi.list。它工作正常(rm 上沒有錯誤,目錄為空)。但過了一段時間,我看到的是這樣的:
$ ls -al
ls: cannot access collabora.list: No such file or directory
ls: cannot access raspi.list: No such file or directory
total 8
drwxr-xr-x 2 root root 4096 Apr 4 09:57 .
drwxr-xr-x 6 root root 4096 Dec 21 2016 ..
-????????? ? ? ? ? ? collabora.list
-????????? ? ? ? ? ? raspi.list
實施例2:我在 /etc/sysctl.conf 中加入了這兩行:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
再次,它工作了一段時間。然後突然間,我再次看到 IPv6,而該檔案不再包含我的行!
$ grep ipv6 /etc/sysctl.conf
#net.ipv6.conf.all.forwarding=1
#net.ipv6.conf.all.accept_redirects = 0
#net.ipv6.conf.all.accept_source_route = 0
實施例3:我已在 /etc/network/interfaces 中新增了 DNS 伺服器。
dns-nameservers 9.9.9.9 8.8.8.8
效果很好。過了一會兒,我意識到我不再有名稱解析了。我回到我的文件,發現這條線已經不存在了。
好吧,現在你會認為我瘋了,我沒有在正確的系統上編輯文件。那麼,讓我再做一次。
cat /etc/network/interfaces
auto lo
iface lo inet loopback
wireless-power off
allow-hotplug wlan0
iface wlan0 inet static
address 192.168.0.15
gateway 192.168.0.254
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
wpa-ssid "blah"
wpa-psk MYSECRET
讓我們證明我沒有名稱解析:
$ ping google.com
ping: unknown host google.com
$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=57 time=21.4 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=57 time=20.2 ms
現在我編輯 /etc/network/interfaces 以新增 DNS 伺服器:
$ sudo -s
[sudo] password for user:
root@wipi:/etc/apt/sources.list.d# vi /etc/network/interfaces
# grep dns /etc/network/interfaces
dns-nameservers 9.9.9.9 8.8.8.8
現在我重啟載入新配置(我可以執行 ifdown、ifup、true)。
$ ssh [email protected]
Last login: Wed Dec 21 22:17:34 2016 from cray3.home
user@wipi ~ $
我確實有名稱解析:
$ ping google.com
PING google.com (216.58.210.206) 56(84) bytes of data.
64 bytes from mrs04s09-in-f206.1e100.net (216.58.210.206): icmp_seq=1 ttl=55 time=21.2 ms
64 bytes from mrs04s09-in-f206.1e100.net (216.58.210.206): icmp_seq=2 ttl=55 time=21.3 ms
然後,我嘗試刷新我的套件來源apt-get 更新。它不能完全正常工作,因為協作不可用。
W: Failed to fetch http://raspberrypi.collabora.com/dists/jessie/rpi/binary-armhf/Packages 404 Not Found [IP: 2a00:1098:0:82:1000:25:2eeb:e3e2 80]
所以,我刪除它:
$ sudo rm collabora.list
這次我遇到了一些其他錯誤(見下文)。
W: Failed to fetch http://archive.raspberrypi.org/debian/dists/jessie/main/binary-armhf/Packages Hash Sum mismatch
我還測試我仍然有名稱解析。這個 archive.raspberrypi.org 位於我的來源中的 raspi.list 中,因此我刪除了 raspi.list 並重新更新。
$ sudo rm raspi.list
$ sudo apt-get update
但 apt-get update 的情況越來越糟:
W: Failed to fetch http://mirrordirector.raspbian.org/raspbian/dists/jessie/main/binary-armhf/Packages Hash Sum mismatch
W: Failed to fetch http://mirrordirector.raspbian.org/raspbian/dists/jessie/non-free/binary-armhf/Packages Hash Sum mismatch
現在,我再次嘗試 ping,砰!無名稱解析:
$ ping google.com
ping: unknown host google.com
邊註:
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 15G 5.1G 9.0G 37% /
devtmpfs 87M 0 87M 0% /dev
tmpfs 91M 0 91M 0% /dev/shm
tmpfs 91M 8.5M 83M 10% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 91M 0 91M 0% /sys/fs/cgroup
/dev/mmcblk0p1 56M 21M 36M 38% /boot
tmpfs 19M 0 19M 0% /run/user/1001
$ mount
dev/mmcblk0p2 on / type ext4 (rw,noatime,data=ordered)
...
/dev/mmcblk0p1 on /boot type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro)
$ uname -a
Linux wipi 4.4.38+ #938 Thu Dec 15 15:17:54 GMT 2016 armv6l GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 8.0 (jessie)
Release: 8.0
Codename: jessie
系統位於 SD 卡上。沒有電源問題。它透過 Wifi 適配器取得網路。
謝謝你的任何想法。