読者です 読者をやめる 読者になる 読者になる

cookies.txt      .scr

ただのテキストファイルのようだ

ArchLinux、/usr/binにまとめちゃうってよ。

linux

こないだArchLinuxのinitscriptsが続々削除された旨の記事を書いたが、
こんどは(/bin, /sbin, /usr/bin, /usr/sbin), (/lib, /usr/lib)を統合しようとかいう大変革が。
https://www.archlinux.org/news/binaries-move-to-usrbin-requiring-update-intervention/

filesystemとかいうcoreにいるやつなんだが、(/bin, /sbin, /usr/sbin)の中身を/usr/binに移しやがる。
それで互換のためだと言いながら、/bin, /sbin, /usr/sbinから/usr/binへ飛ばすためのsymlinkを張ろうとする。
が、普通、/binとかってのは元からあるものなので、上書きできずにsymlink張りは失敗する。


意図された動作なのか違うのか、yaourt -Syuuaしたときに、(/bin,/sbin,/usr/sbin)の中身を/usr/binに移動こそすれ、symlinkが張られなかった。
すると何が起こるか。
もともと/usr/binにあるものはともかく、ほとんどのものが動かなくなる。
/bin/shすらないんだもの。
ここで焦ってrebootすると痛い目にあう。なぜってinitすら移動されている。

一番正しい安全な対処は、上に張ったリンクの通りだが、
最低限rm -rf /bin /sbin /usr/sbinしろということだったのだと今更ながら思う。

        • 5日 0:17追記

書いてからもいろいろしたけど、なんとかなった。
全然責任は持てないけど、うまくいく場合もあるっぽいよ、ということで。

mv /bin/* /sbin/* /usr/sbin/* /usr/bin
export PATH=/usr/bin:$PATH
rm -r /bin /sbin /usr/sbin
pacman -S filesystem


libのほうはどうやったか忘れた。操作したかどうかも覚えてない。
最後にはsymlinkが張られているのが確認できたし、たぶん成功したっぽ