xpalm Posted March 23, 2018 Share #1 Posted March 23, 2018 修复"抱歉,您所指定的页面不存在",超级简单,不用重装系统,百试不爽。刚在国外网站用英语发了贴子,英语比较差。方法很简单,就是找一台工作正常的群晖把里面的这两个文件/lib/libsynoshare.so.6 /lib/libsynoshare.so.6复制出来覆盖不能网页登陆的群晖。重启系统就可以了。如果你没有开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: Product:DS3617xs Version:DSM 6.1.5-15254 Update 1 bootloader:DS3617xs 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 enabled the 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; 1 Quote Link to comment Share on other sites More sharing options...
newbier Posted April 17, 2018 Share #2 Posted April 17, 2018 那边回完了才发现原来是同胞。。。 有效,而且替换完文件后即使不重启,过会儿也会恢复登陆(我用top看了一会儿,发现替换完文件后,过一会儿synoscgi会100%占用CPU,kill掉,然后就能正常登陆了,没init6) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.