|
lxpalm
发表于 2018-3-23 21:09
来自 中国浙江杭州
修复"抱歉,您所指定的页面不存在",超级简单,不用重装系统,百试不爽
本文只做为学习交流用途,不建议大家使用盗版系统,有能力尽量转白裙
修复"抱歉,您所指定的页面不存在",超级简单,不用重装系统,百试不爽。刚在国外网站用英语发了贴子,英语比较差。方法很简单,
重启系统就可以了。如果你没有开telnet或者ssh,那你就用系统救援u盘引盘进导,把文件拷进去就可以了。
以下是英文原版,介绍排查查找问题的过程。大神请轻拍。有效在帖子里回复。
how to fix "Sorry, that page doesn't exist"
Today ,My synology Can't login in DSM!!! Fisrt , I named it as synology_A。there is another synology is work well,named it as synology_B。
synology_A info:
ProductS3617xs
VersionSM 6.1.5-15254 Update 1
bootloaderS3617xs 6.1 Jun's Mod V1.02b
Then I telnet in synology
telnet x.x.x.x
>sudo -i #login in as root,password is same as admin.
Then I compare synology_A and synology_B's Process.I find synology_A has many [defunct] process.
root@synology_A:~# ps -ef | grep cgi
root 2948 10340 0 Mar20 ? 00:00:00 [synoscgi_______] <defunct>
root 10280 1 0 Mar19 ? 00:00:08 /usr/syno/sbin/synocgid -D
root 10340 1 0 Mar19 ? 00:00:26 synoscgi
system 10470 10340 0 Mar19 ? 00:00:00 synoscgi
system 29109 10340 0 17:28 ? 00:00:00 synoscgi
root 29180 29148 0 17:30 pts/5 00:00:00 grep --color=auto cgi
system 31659 10340 0 Mar20 ? 00:00:00 synoscgi
system 31834 10340 0 Mar20 ? 00:00:00 synoscgi
system 31924 10340 0 Mar20 ? 00:00:00 synoscgi
root@synology_A:~# kill -9 10340 (kill the parent process)
root@synology_A:~# ps -ef | grep cgi
root 10280 1 0 Mar19 ? 00:00:08 /usr/syno/sbin/synocgid -D
root 29205 29148 0 17:30 pts/5 00:00:00 grep --color=auto cgi
Then I start up the process 'synoscgi'
root@synology_A:~# synoscgi
synoscgi: error while loading shared libraries: /lib/libsynoshare.so.6: invalid ELF header
Hahahaha,the 'libsynoshare.so.6' is a invalid ELF header.
I use shell compare synology_A and synology_B's Directory '/lib' I find there is two file is different!.
synology_A:
fc6a81a0cef83cc98e7af02e068646ec ./libsynoshare.so.6
657ad98f8a46e0961804b3ad69ff257e ./libsynopkg.so.1
synology_B:
8efad47899b4eeaaccebb6efb5cf8ddc ./libsynoshare.so.6
5bb625ce2b7193e3a2cc3637cd33c7ec ./libsynopkg.so.1
Ok,Try to copy synology_B's file to synology_A.
root@synology_A:~# scp root@x.x.x.x:/lib/libsynoshare.so.6 /lib/libsynoshare.so.6
root@synology_A:~# scp root@x.x.x.x:/lib/libsynopkg.so.1 /lib/libsynopkg.so.1
Start the process,it works!:
root@synology_A:~# synoscgi
Copyright (c) 2003-2018 Synology Inc. All rights reserved.
Usage: synoscgi (Version 15254)
--help: this help
--mode: scgi|apid (required) run as synoscgi or synoapid
scgi related params:
--idle-child={childNumber} (optional, default: 10) max idle child number
--max-child={childNumber} (optional, default: 65535) max child number
apid related params:
--conf (required) apid config realpath
Then Reboot it!
root@synology_A:~# init 6
finnaly synology_A is come back! it can be login in.
Note:
1、The above tow files you can ask some one to send you.
2、You can test let /lib/libsynopkg.so.1 /lib/libsynoshare.so.6 have no write authority like this:
chmod u-w /lib/libsynopkg.so.1
chmod u-w /lib/libsynoshare.so.6
I have not test above.
3、You can use scp \ wget \curl to download files into synology. Or use usb storage mount Or use Samba(Samba is also working)
4、If you have not enable telnet or ssh server,you can't login in. You can Use 'Linux SystemRescue' iso write to usb storage to bootloader into SystemRescue ,then copy tow files into synology's filesystems;
|
|