From owner-freebsd-users-jp@FreeBSD.ORG Sat Aug 23 01:57:15 2014 Return-Path: Delivered-To: freebsd-users-jp@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9EA919D8 for ; Sat, 23 Aug 2014 01:57:15 +0000 (UTC) Received: from ns.ribbon.or.jp (ns.ribbon.or.jp [210.171.172.74]) by mx1.freebsd.org (Postfix) with ESMTP id 124073C2F for ; Sat, 23 Aug 2014 01:57:14 +0000 (UTC) Received: by ns.ribbon.or.jp (Postfix, from userid 1001) id D2E4AE622A; Sat, 23 Aug 2014 10:57:03 +0900 (JST) Date: Sat, 23 Aug 2014 10:57:03 +0900 From: ribbon sv user To: freebsd-users-jp@freebsd.org Message-ID: <20140823015703.GA1954@ns.ribbon.or.jp> Reply-To: freebsd-users-jp@freebsd.org References: <20140817222054.GA9385@ns.ribbon.or.jp> <53F675E7.30300@aj.admwt.jp> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-2022-jp Content-Disposition: inline In-Reply-To: <53F675E7.30300@aj.admwt.jp> User-Agent: Mutt/1.5.21 (2010-09-15) Subject: [FreeBSD-users-jp 95268] Re: =?iso-2022-jp?b?GyRCJW0hPCUrJWskTiVqJV0lOCVIJWobKEIo?= =?iso-2022-jp?b?GyRCJSslPyVtJTAbKEIpGyRCJCw4KyQoJEokLyRKJEMkPxsoQg==?= X-BeenThere: freebsd-users-jp@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Discussion relevant to FreeBSD communities in Japan List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 23 Aug 2014 01:57:15 -0000 On Fri, Aug 22, 2014 at 07:42:47AM +0900, Masato Minda wrote: > On 2014/08/18 7:20, ribbon sv user wrote: > > 今FreeBSD 9.3Rで動いている1台で pkg update をすると、 > > > > # pkg update > > Updating repository catalogue > > No valid repository found. > > > > となってしまいます。 > > pkg update -f としたらどうでしょうか。 変わらずでした。 で、もう少し調べてみました。 ファイルが見つからない、のだろうと思って、どのファイルをアクセスしているか 調べて見ました。truss -f pkg update を掛けてみたのですが、予想に反して、pkg がforkする 部分でforkに失敗していました。 750: readlink("/etc/malloc.conf",0xbfbfe6c6,1024) ERR#2 'No such file or directory' 750: issetugid(0x2854d2d9,0xbfbfe6c6,0x400,0x28075e47,0x3,0x28084290) = 0 (0x0) 750: break(0x806f690) = 0 (0x0) 750: break(0x8400000) = 0 (0x0) 750: mmap(0x0,4194304,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 677335040 (0x285f5000) 750: mmap(0x289f5000,2142208,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 681529344 (0x289f5000) 750: munmap(0x285f5000,2142208) = 0 (0x0) 750: umask(0x12,0x0,0x0,0xbfbfec40,0x0,0x2806d1a0) = 18 (0x12) 750: fork() = 751 (0x2ef) ★ 750: wait4(751,{ EXITED,val=70 },0x0,0x0) = 751 (0x2ef) 750: sigprocmask(SIG_BLOCK,SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2,0x0) = 0 (0x0) 750: sigprocmask(SIG_SETMASK,0x0,0x0) = 0 (0x0) 750: sigprocmask(SIG_BLOCK,SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|S 正常な場合、ここ(★)でforkされます。 正常な場合ですが、pkg バージョン 1.2.7 ではうまくいき、1.3.6 (現時点での最新) ではだめでした。 しかし、別の機械、また、FreeBSD 9.3をクリヤインストールし、その直後に pkg だけ入れた場合には、バージョン 1.3.6 でも正常に動作しました。 となると、何かライブラリが足引っ張っているのかな、と思い、ldd で比較してみたのですが、 1) うまくいかないものの(1.3.6) # ldd /usr/sbin/pkg /usr/sbin/pkg: libarchive.so.5 => /usr/lib/libarchive.so.5 (0x2806f000) libelf.so.1 => /usr/lib/libelf.so.1 (0x280ae000) libfetch.so.6 => /usr/lib/libfetch.so.6 (0x280cf000) libucl.so.1 => /usr/lib/private/libucl.so.1 (0x280e0000) libsbuf.so.6 => /lib/libsbuf.so.6 (0x280ee000) libssl.so.6 => /usr/lib/libssl.so.6 (0x280f1000) libcrypto.so.6 => /lib/libcrypto.so.6 (0x2813d000) libc.so.7 => /lib/libc.so.7 (0x282a0000) libz.so.6 => /lib/libz.so.6 (0x283d2000) libbz2.so.4 => /usr/lib/libbz2.so.4 (0x283e6000) liblzma.so.5 => /usr/lib/liblzma.so.5 (0x283f6000) libbsdxml.so.4 => /lib/libbsdxml.so.4 (0x28419000) 2) クリヤインストール直後のうまくいくもの(1.3.6) # ldd /usr/sbin/pkg /usr/sbin/pkg: libarchive.so.5 => /usr/lib/libarchive.so.5 (0x2806f000) libelf.so.1 => /usr/lib/libelf.so.1 (0x280ae000) libfetch.so.6 => /usr/lib/libfetch.so.6 (0x280cf000) libucl.so.1 => /usr/lib/private/libucl.so.1 (0x280e0000) libsbuf.so.6 => /lib/libsbuf.so.6 (0x280ee000) libssl.so.6 => /usr/lib/libssl.so.6 (0x280f1000) libcrypto.so.6 => /lib/libcrypto.so.6 (0x2813d000) libc.so.7 => /lib/libc.so.7 (0x282a0000) libz.so.6 => /lib/libz.so.6 (0x283d2000) libbz2.so.4 => /usr/lib/libbz2.so.4 (0x283e6000) liblzma.so.5 => /usr/lib/liblzma.so.5 (0x283f6000) libbsdxml.so.4 => /lib/libbsdxml.so.4 (0x28419000) 1) との差はないです 3) 別のマシンでうまくいっているもの(1.3,6) # ldd /usr/sbin/pkg /usr/sbin/pkg: libarchive.so.5 => /usr/lib/libarchive.so.5 (0x2806c000) libelf.so.1 => /usr/lib/libelf.so.1 (0x280ab000) libfetch.so.6 => /usr/lib/libfetch.so.6 (0x280cc000) libc.so.7 => /lib/libc.so.7 (0x280dc000) libz.so.6 => /lib/libz.so.6 (0x2820e000) libbz2.so.4 => /usr/lib/libbz2.so.4 (0x28222000) liblzma.so.5 => /usr/lib/liblzma.so.5 (0x28232000) libbsdxml.so.4 => /lib/libbsdxml.so.4 (0x28255000) libcrypto.so.6 => /lib/libcrypto.so.6 (0x28274000) libssl.so.6 => /usr/lib/libssl.so.6 (0x283d7000) 1)、2)と比べて、 libucl.so,libsbuf.soを使っていません。 4) ver 1.2.7 の場合 # ldd /usr/sbin/pkg /usr/sbin/pkg: libarchive.so.5 => /usr/lib/libarchive.so.5 (0x2806c000) libelf.so.1 => /usr/lib/libelf.so.1 (0x280ab000) libfetch.so.6 => /usr/lib/libfetch.so.6 (0x280cc000) libc.so.7 => /lib/libc.so.7 (0x280dc000) libz.so.6 => /lib/libz.so.6 (0x2820e000) libbz2.so.4 => /usr/lib/libbz2.so.4 (0x28222000) liblzma.so.5 => /usr/lib/liblzma.so.5 (0x28232000) libbsdxml.so.4 => /lib/libbsdxml.so.4 (0x28255000) libcrypto.so.6 => /lib/libcrypto.so.6 (0x28274000) libssl.so.6 => /usr/lib/libssl.so.6 (0x283d7000) となりました。バージョン1.3.6でうまくいく/うまくいかない場合のライブラリに、 機種ごとに差が出てしまいました。 ちなみに、このファイルはpkgというパッケージファイル内には pkg info -l pkg で確認したところ入っていませんでした。 というわけで、わけ分からなくなってしまいました。 なので、これ以上調べてもますますわけ分からなくなりそうなので、 9.3をインストールして、再度設定することにしようと思っています。 oota