{ "version": "https://jsonfeed.org/version/1.1", "user_comment": "This feed allows you to read the posts from this site in any feed reader that supports the JSON Feed format. To add this feed to your reader, copy the following URL -- https://matoken.org/blog/category/linux/debian-linux/stretch/feed/json -- and add it your reader.", "next_url": "https://matoken.org/blog/category/linux/debian-linux/stretch/feed/json?paged=2", "home_page_url": "https://matoken.org/blog/category/linux/debian-linux/stretch", "feed_url": "https://matoken.org/blog/category/linux/debian-linux/stretch/feed/json", "language": "ja", "title": "stretch – matoken's blog", "description": "Is there no plan B?", "icon": "https://matoken.org/blog/wp-content/uploads/2025/03/cropped-1865f695c4eecc844385acef2f078255036adccd42c254580ea3844543ab56d9.jpeg", "items": [ { "id": "http://matoken.org/blog/?p=2290", "url": "https://matoken.org/blog/2019/01/17/try-sharerenamer-which-can-customize-the-public-link-url-of-nextcloud/", "title": "Nextcloud\u306e\u516c\u958b\u30ea\u30f3\u30afURL\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u308bShareRenamer\u3092\u8a66\u3059", "content_html": "

Nextcloud\u3067URL\u3067\u5171\u6709\u3092\u884c\u3046\u3068\uff0c\u30e9\u30f3\u30c0\u30e0\u306a\u6587\u5b57\u5217\u306eURL\u304c\u751f\u6210\u3055\u308c\u307e\u3059\uff0e\u3053\u308c\u306f\u7b2c\u4e09\u8005\u304c\u63a8\u6e2c\u3057\u306b\u304f\u3044\u3088\u3046\u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff0e
\n\u3057\u304b\u3057\uff0c\u5370\u5237\u7269\u306a\u3069\u3067URL\u3092\u6559\u3048\u308b\u969b\u306b\u306f\u5165\u529b\u3059\u308b\u306e\u304c\u3068\u3066\u3082\u9762\u5012\u3067\u3059\uff0e

\n

ShareRenamer\u3092\u4f7f\u3046\u3068URL\u3092\u4efb\u610f\u306e\u6587\u5b57\u5217\u306b\u5909\u66f4\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308b\u306e\u3067\u3053\u306e\u554f\u984c\u304c\u89e3\u6c7a\u3067\u304d\u305d\u3046\u3067\u3059\uff0e

\n\n

ShareRenamer\u3092\u5c0e\u5165\u3057\u305f\u5f8c\u306bURL\u3067\u5171\u6709\u3092\u884c\u3046\u3068\uff0crename\u7528\u306e\u30c6\u30ad\u30b9\u30c8\u30dc\u30c3\u30af\u30b9\u308b\u304c\u73fe\u308c\u307e\u3059\uff0e\u3053\u306e\u30c6\u30ad\u30b9\u30c8\u30dc\u30c3\u30af\u30b9\u306b\u4efb\u610f\u306e\u6587\u5b57\u5217\u3092\u5165\u529b\u3057\u3066\u300cRename\u300d\u30dc\u30bf\u30f3\u3092\u62bc\u3059\u3068\u597d\u304d\u306a\u6587\u5b57\u5217\u306b\u5909\u66f4\u3067\u304d\u307e\u3059\uff0e

\n

\"20190115-21-01-54-25819.jpg\"
\n

\n

\"20190115-21-01-52-26787.jpg\"
\n

\n

\u4e00\u822c\u516c\u958b\u3057\u3066\u306f\u3044\u3051\u306a\u3044\u5834\u5408\u306f\u30d1\u30b9\u30ef\u30fc\u30c9\u3067\u4fdd\u8b77\u3059\u308b\u3088\u3046\u306b\u3057\u307e\u3057\u3087\u3046\uff0e

\n

\n", "content_text": "Nextcloud\u3067URL\u3067\u5171\u6709\u3092\u884c\u3046\u3068\uff0c\u30e9\u30f3\u30c0\u30e0\u306a\u6587\u5b57\u5217\u306eURL\u304c\u751f\u6210\u3055\u308c\u307e\u3059\uff0e\u3053\u308c\u306f\u7b2c\u4e09\u8005\u304c\u63a8\u6e2c\u3057\u306b\u304f\u3044\u3088\u3046\u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff0e\n\u3057\u304b\u3057\uff0c\u5370\u5237\u7269\u306a\u3069\u3067URL\u3092\u6559\u3048\u308b\u969b\u306b\u306f\u5165\u529b\u3059\u308b\u306e\u304c\u3068\u3066\u3082\u9762\u5012\u3067\u3059\uff0e\nShareRenamer\u3092\u4f7f\u3046\u3068URL\u3092\u4efb\u610f\u306e\u6587\u5b57\u5217\u306b\u5909\u66f4\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308b\u306e\u3067\u3053\u306e\u554f\u984c\u304c\u89e3\u6c7a\u3067\u304d\u305d\u3046\u3067\u3059\uff0e\n\nShareRenamer – \u30a2\u30d7\u30ea – App Store – Nextcloud\n\nShareRenamer\u3092\u5c0e\u5165\u3057\u305f\u5f8c\u306bURL\u3067\u5171\u6709\u3092\u884c\u3046\u3068\uff0crename\u7528\u306e\u30c6\u30ad\u30b9\u30c8\u30dc\u30c3\u30af\u30b9\u308b\u304c\u73fe\u308c\u307e\u3059\uff0e\u3053\u306e\u30c6\u30ad\u30b9\u30c8\u30dc\u30c3\u30af\u30b9\u306b\u4efb\u610f\u306e\u6587\u5b57\u5217\u3092\u5165\u529b\u3057\u3066\u300cRename\u300d\u30dc\u30bf\u30f3\u3092\u62bc\u3059\u3068\u597d\u304d\u306a\u6587\u5b57\u5217\u306b\u5909\u66f4\u3067\u304d\u307e\u3059\uff0e\n\n\n\n\n\u4e00\u822c\u516c\u958b\u3057\u3066\u306f\u3044\u3051\u306a\u3044\u5834\u5408\u306f\u30d1\u30b9\u30ef\u30fc\u30c9\u3067\u4fdd\u8b77\u3059\u308b\u3088\u3046\u306b\u3057\u307e\u3057\u3087\u3046\uff0e", "date_published": "2019-01-17T07:27:18+09:00", "date_modified": "2019-01-17T07:27:18+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "nextcloud", "Debian", "Linux", "stretch" ] }, { "id": "http://matoken.org/blog/?p=2190", "url": "https://matoken.org/blog/2018/10/23/debian-ubuntu-borrows-the-upstream-package/", "title": "Debian, Ubuntu \u3067 \u4e0a\u6d41\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u501f\u308a\u3066\u304f\u308b", "content_html": "
\n
\n
\n

\u4ee5\u524d\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u8a18\u4e8b\u3092\u66f8\u304d\u307e\u3057\u305f\uff0e

\n
\n\n
\n

\u4eca\u3067\u3082\u3053\u306eblog\u306e\u4e2d\u3067\u306f\u30a2\u30af\u30bb\u30b9\u304c\u591a\u304f\uff0c\u6700\u8fd1\u3082\u30c8\u30e9\u30c3\u30af\u30d0\u30c3\u30af\u3092\u3082\u3089\u3044\u307e\u3057\u305f\uff0e

\n
\n\n
\n

\u3053\u306e\u5f53\u6642\u306f arm64 \u306e mozc\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u306a\u304f\u3066\u81ea\u5206\u3067build \u3057\u305f\u3068\u3044\u3046\u8a71\u306a\u306e\u3067\u3059\u304c\uff0c\u73fe\u5728\u306fDebian \u3067\u306f buster(testing), Ubuntu \u3067\u306fartful(17.10) \u4ee5\u964d\u3067\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u5b58\u5728\u3057\u307e\u3059\uff0e
\n\u306a\u306e\u3067\u3053\u306e\u91ce\u826f\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u4f7f\u3046\u3088\u308a\u3082\u516c\u5f0f\u306e\u4e0a\u6d41\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u501f\u308a\u308b\u307b\u3046\u304c\u5927\u62b5\u306e\u5834\u5408\u3044\u3044\u3068\u601d\u3044\u307e\u3059\uff0e
\n\u3068\u3044\u3046\u3053\u3068\u3067\u624b\u9806\u3092\u66f8\u3044\u3066\u304a\u304d\u307e\u3059\uff0e

\n
\n
\n

\u30d1\u30c3\u30b1\u30fc\u30b8\u30d5\u30a1\u30a4\u30eb\u3060\u3051\u304c\u5fc5\u8981\u306a\u5834\u5408\u306f\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u30da\u30fc\u30b8\u304b\u3089\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u53ef\u80fd\u3067\u3059\uff0e

\n
\n\n
\n

\u91ce\u826f\u30d1\u30c3\u30b1\u30fc\u30b8\u306f\u8fd1\u65e5\u4e2d\u306b\u524a\u9664\u3057\u307e\u3059\uff0e

\n
\n
\n
\n

Debian stretch arm64 \u306b Debian buster arm64 \u306e mozc \u3092\u501f\u308a\u3066\u304f\u308b

\n
\n
\n
Debian stretch arm64 \u3067\u306f mozc-data \u3057\u304b\u306a\u3044
\n
\n
$ apt-cache search mozc\r\nmozc-data - Mozc input method - data files
\n
\n
\n\n
\n

buster(testing) \u306emozc \u3092\u501f\u308a\u3066\u304f\u308b\u3053\u3068\u306b\u3059\u308b\uff0e

\n
\n\n
\n

/etc/apt/preferences \u3067 buster \u306e\u512a\u5148\u5ea6\u3092\u4e0b\u3052\u308b

\n
\n
\n
/etc/apt/preferences
\n
\n
Package: *\r\nPin: release n=buster\r\nPin-Priority: 100
\n
\n
\n
\n
/etc/apt/sources.list \u306b buster(testing) \u3092 \u8ffd\u52a0 \u8a2d\u5b9a
\n
\n
deb http://deb.debian.org/debian buster main
\n
\n
\n
\n

\u203bsources.list \u306e\u7de8\u96c6\u306b\u306f apt edit-sources \u3092\u4f7f\u3046\u3068\u6587\u6cd5\u30c1\u30a7\u30c3\u30af\u3092\u3057\u3066\u304f\u308c\u308b\u306e\u3067\u304a\u3059\u3059\u3081

\n
\n
\n
\u30d1\u30c3\u30b1\u30fc\u30b8\u60c5\u5831\u306e\u66f4\u65b0
\n
\n
$ sudo apt update
\n
\n
\n
\n
mozc\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u78ba\u8a8d
\n
\n
$ apt-cache search mozc\r\nmozc-data - Mozc input method - data files\r\nfcitx-dbus-status - Addon for Fcitx to set/get/monitor IM statuses via D-Bus\r\nemacs-mozc - Mozc for Emacs\r\nemacs-mozc-bin - Helper module for emacs-mozc\r\nfcitx-mozc - Mozc engine for fcitx - Client of the Mozc input method\r\nibus-mozc - Mozc engine for IBus - Client of the Mozc input method\r\nmozc-server - Server of the Mozc input method\r\nmozc-utils-gui - GUI utilities of the Mozc input method\r\nuim-mozc - Mozc engine for uim - Client of the Mozc input method
\n
\n
\n
\n
\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u5c0e\u5165
\n
\n
$ apt install fcitx-mozc -t buster
\n
\n
\n
\n

\u5f8c\u306f\u901a\u5e38\u306e apt update && apt upgrade \u3067 stretch \u3067\u5c0e\u5165\u3057\u305f\u30d1\u30c3\u30b1\u30fc\u30b8\u306f stretch \u3067\uff0cbuster \u3067\u5c0e\u5165\u3057\u305f\u30d1\u30c3\u30b1\u30fc\u30b8\u306fbuster \u3067\u66f4\u65b0\u3055\u308c\u308b\u306f\u305a\uff0e

\n
\n
\n
\n
\n

Ubuntu 16.04 LTS xenial arm64 \u306b Ubuntu 18.04 LTS bionic arm64 \u306e mozc \u3092\u501f\u308a\u3066\u304f\u308b

\n
\n
\n

Debian\u306e\u624b\u9806\u3068\u540c\u3058\u3067\u3082ok\u3060\u3068\u601d\u3046\u3051\u3069\u5ff5\u306e\u70ba\u4ee5\u4e0b\u306e\u624b\u9806\u3092\u771f\u4f3c\u3057\u3066\u307f\u308b\uff0e

\n
\n\n
\n

mozc \u306f Ubuntu 17.10 artful \u304b\u3089\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u304c\uff0c\u3082\u3046\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u306e\u3067Ubuntu 18.04 bionic \u3092\u4f7f\u3046\uff0e

\n
\n\n
\n

\u6a19\u6e96\u306e\u30ea\u30ea\u30fc\u30b9\u3092 xenial \u306b\u8a2d\u5b9a

\n
\n
\n
/etc/apt/apt.conf.d/01ubuntu
\n
\n
APT::Default-Release \"xenial\";
\n
\n
\n
\n

mozc \u3092pinning\u3059\u308b

\n
\n
\n
/etc/apt/preferences
\n
\n
Package: *mozc*\r\nPin: release n=xenial\r\nPin-Priority: -10\r\n\r\nPackage: *mozc*\r\nPin: release n=bionic\r\nPin-Priority: 900
\n
\n
\n
\n

/etc/apt/sources.list \u306b buster(testing) \u3092 \u8ffd\u52a0 \u8a2d\u5b9a

\n
\n
\n
/etc/apt/sources.list
\n
\n
deb http://ports.ubuntu.com/ bionic main universe
\n
\n
\n
\n

\u203bsources.list \u306e\u7de8\u96c6\u306b\u306f apt edit-sources \u3092\u4f7f\u3046\u3068\u6587\u6cd5\u30c1\u30a7\u30c3\u30af\u3092\u3057\u3066\u304f\u308c\u308b\u306e\u3067\u304a\u3059\u3059\u3081
\n\u203bmirror\u306b\u3088\u308a arm64 \u304c\u7f6e\u304b\u308c\u3066\u3044\u306a\u3044\u306e\u3067\u6ce8\u610f

\n
\n
\n
\u30d1\u30c3\u30b1\u30fc\u30b8\u60c5\u5831\u306e\u66f4\u65b0
\n
\n
$ sudo apt update
\n
\n
\n
\n
\u691c\u7d22\u7d50\u679c\u306bmozc\u304c\u51fa\u3066\u304f\u308b
\n
\n
$ apt-cache search mozc\r\nmozc-data - Mozc input method - data files\r\nibus-mozc - Mozc engine for IBus - Client of the Mozc input method\r\nmozc-server - Server of the Mozc input method\r\nmozc-utils-gui - GUI utilities of the Mozc input method\r\nemacs-mozc - Mozc for Emacs\r\nemacs-mozc-bin - Helper module for emacs-mozc\r\nfcitx-mozc - Mozc engine for fcitx - Client of the Mozc input method\r\nuim-mozc - Mozc engine for uim - Client of the Mozc input method
\n
\n
\n
\n
\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u5c0e\u5165
\n
\n
$ sudo apt install fcitx-mozc -t bionic
\n
\n
\n
\n
\n
\n", "content_text": "\u4ee5\u524d\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u8a18\u4e8b\u3092\u66f8\u304d\u307e\u3057\u305f\uff0e\n\n\n\n\nUbuntu 16.04 aarch64\u74b0\u5883\u3067mozc pkg\u304c\u7121\u3044\u306e\u3067source pkg\u304b\u3089build \u2013 matoken\u2019s meme\n\n\nDebian\u3067\u3082arm64\u3067mozc build \u2013 matoken\u2019s meme\n\n\n\n\n\u4eca\u3067\u3082\u3053\u306eblog\u306e\u4e2d\u3067\u306f\u30a2\u30af\u30bb\u30b9\u304c\u591a\u304f\uff0c\u6700\u8fd1\u3082\u30c8\u30e9\u30c3\u30af\u30d0\u30c3\u30af\u3092\u3082\u3089\u3044\u307e\u3057\u305f\uff0e\n\n\n\n\nChromebook C101PA\u306ecrostini\u3067Linux\u30a2\u30d7\u30ea\u3092\u4f7f\u3063\u3066\u307f\u305f | \u307d\u3093\u307d\u3093\u30c6\u30c3\u30af\n\n\n\n\n\u3053\u306e\u5f53\u6642\u306f arm64 \u306e mozc\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u306a\u304f\u3066\u81ea\u5206\u3067build \u3057\u305f\u3068\u3044\u3046\u8a71\u306a\u306e\u3067\u3059\u304c\uff0c\u73fe\u5728\u306fDebian \u3067\u306f buster(testing), Ubuntu \u3067\u306fartful(17.10) \u4ee5\u964d\u3067\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u5b58\u5728\u3057\u307e\u3059\uff0e\n\u306a\u306e\u3067\u3053\u306e\u91ce\u826f\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u4f7f\u3046\u3088\u308a\u3082\u516c\u5f0f\u306e\u4e0a\u6d41\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u501f\u308a\u308b\u307b\u3046\u304c\u5927\u62b5\u306e\u5834\u5408\u3044\u3044\u3068\u601d\u3044\u307e\u3059\uff0e\n\u3068\u3044\u3046\u3053\u3068\u3067\u624b\u9806\u3092\u66f8\u3044\u3066\u304a\u304d\u307e\u3059\uff0e\n\n\n\u30d1\u30c3\u30b1\u30fc\u30b8\u30d5\u30a1\u30a4\u30eb\u3060\u3051\u304c\u5fc5\u8981\u306a\u5834\u5408\u306f\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u30da\u30fc\u30b8\u304b\u3089\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u53ef\u80fd\u3067\u3059\uff0e\n\n\n\n\nDebian\u2009\u2014\u2009\u30d1\u30c3\u30b1\u30fc\u30b8\u691c\u7d22\u7d50\u679c\u2009\u2014\u2009mozc\n\n\nUbuntu \u2013 \u30d1\u30c3\u30b1\u30fc\u30b8\u691c\u7d22\u7d50\u679c\u2009\u2014\u2009mozc\n\n\n\n\n\u91ce\u826f\u30d1\u30c3\u30b1\u30fc\u30b8\u306f\u8fd1\u65e5\u4e2d\u306b\u524a\u9664\u3057\u307e\u3059\uff0e\n\n\n\nDebian stretch arm64 \u306b Debian buster arm64 \u306e mozc \u3092\u501f\u308a\u3066\u304f\u308b\n\n\nDebian stretch arm64 \u3067\u306f mozc-data \u3057\u304b\u306a\u3044\n\n$ apt-cache search mozc\r\nmozc-data - Mozc input method - data files\n\n\n\n\n\nDebian\u2009\u2014\u2009\u30d1\u30c3\u30b1\u30fc\u30b8\u691c\u7d22\u7d50\u679c\u2009\u2014\u2009mozc\n\n\n\n\nbuster(testing) \u306emozc \u3092\u501f\u308a\u3066\u304f\u308b\u3053\u3068\u306b\u3059\u308b\uff0e\n\n\n\n\n\u300c\u7b2c2\u7ae0 Debian \u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u300d\u306e\u300c2.7.6. unstable \u304b\u3089\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u3068\u5171\u306b\u3001testing \u3092\u8ffd\u3044\u304b\u3051\u308b\u300d\u3092\u53c2\u8003\u306b\u8a2d\u5b9a\u3059\u308b\n\n\n\n\n/etc/apt/preferences \u3067 buster \u306e\u512a\u5148\u5ea6\u3092\u4e0b\u3052\u308b\n\n\n/etc/apt/preferences\n\nPackage: *\r\nPin: release n=buster\r\nPin-Priority: 100\n\n\n\n/etc/apt/sources.list \u306b buster(testing) \u3092 \u8ffd\u52a0 \u8a2d\u5b9a\n\ndeb http://deb.debian.org/debian buster main\n\n\n\n\u203bsources.list \u306e\u7de8\u96c6\u306b\u306f apt edit-sources \u3092\u4f7f\u3046\u3068\u6587\u6cd5\u30c1\u30a7\u30c3\u30af\u3092\u3057\u3066\u304f\u308c\u308b\u306e\u3067\u304a\u3059\u3059\u3081\n\n\n\u30d1\u30c3\u30b1\u30fc\u30b8\u60c5\u5831\u306e\u66f4\u65b0\n\n$ sudo apt update\n\n\n\nmozc\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u78ba\u8a8d\n\n$ apt-cache search mozc\r\nmozc-data - Mozc input method - data files\r\nfcitx-dbus-status - Addon for Fcitx to set/get/monitor IM statuses via D-Bus\r\nemacs-mozc - Mozc for Emacs\r\nemacs-mozc-bin - Helper module for emacs-mozc\r\nfcitx-mozc - Mozc engine for fcitx - Client of the Mozc input method\r\nibus-mozc - Mozc engine for IBus - Client of the Mozc input method\r\nmozc-server - Server of the Mozc input method\r\nmozc-utils-gui - GUI utilities of the Mozc input method\r\nuim-mozc - Mozc engine for uim - Client of the Mozc input method\n\n\n\n\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u5c0e\u5165\n\n$ apt install fcitx-mozc -t buster\n\n\n\n\u5f8c\u306f\u901a\u5e38\u306e apt update && apt upgrade \u3067 stretch \u3067\u5c0e\u5165\u3057\u305f\u30d1\u30c3\u30b1\u30fc\u30b8\u306f stretch \u3067\uff0cbuster \u3067\u5c0e\u5165\u3057\u305f\u30d1\u30c3\u30b1\u30fc\u30b8\u306fbuster \u3067\u66f4\u65b0\u3055\u308c\u308b\u306f\u305a\uff0e\n\n\n\n\nUbuntu 16.04 LTS xenial arm64 \u306b Ubuntu 18.04 LTS bionic arm64 \u306e mozc \u3092\u501f\u308a\u3066\u304f\u308b\n\n\nDebian\u306e\u624b\u9806\u3068\u540c\u3058\u3067\u3082ok\u3060\u3068\u601d\u3046\u3051\u3069\u5ff5\u306e\u70ba\u4ee5\u4e0b\u306e\u624b\u9806\u3092\u771f\u4f3c\u3057\u3066\u307f\u308b\uff0e\n\n\n\n\nPinningHowto – Community Help Wiki\n\n\n\n\nmozc \u306f Ubuntu 17.10 artful \u304b\u3089\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u304c\uff0c\u3082\u3046\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u306e\u3067Ubuntu 18.04 bionic \u3092\u4f7f\u3046\uff0e\n\n\n\n\nUbuntu \u2013 \u30d1\u30c3\u30b1\u30fc\u30b8\u691c\u7d22\u7d50\u679c\u2009\u2014\u2009mozc\n\n\n\n\n\u6a19\u6e96\u306e\u30ea\u30ea\u30fc\u30b9\u3092 xenial \u306b\u8a2d\u5b9a\n\n\n/etc/apt/apt.conf.d/01ubuntu\n\nAPT::Default-Release \"xenial\";\n\n\n\nmozc \u3092pinning\u3059\u308b\n\n\n/etc/apt/preferences\n\nPackage: *mozc*\r\nPin: release n=xenial\r\nPin-Priority: -10\r\n\r\nPackage: *mozc*\r\nPin: release n=bionic\r\nPin-Priority: 900\n\n\n\n/etc/apt/sources.list \u306b buster(testing) \u3092 \u8ffd\u52a0 \u8a2d\u5b9a\n\n\n/etc/apt/sources.list\n\ndeb http://ports.ubuntu.com/ bionic main universe\n\n\n\n\u203bsources.list \u306e\u7de8\u96c6\u306b\u306f apt edit-sources \u3092\u4f7f\u3046\u3068\u6587\u6cd5\u30c1\u30a7\u30c3\u30af\u3092\u3057\u3066\u304f\u308c\u308b\u306e\u3067\u304a\u3059\u3059\u3081\n\u203bmirror\u306b\u3088\u308a arm64 \u304c\u7f6e\u304b\u308c\u3066\u3044\u306a\u3044\u306e\u3067\u6ce8\u610f\n\n\n\u30d1\u30c3\u30b1\u30fc\u30b8\u60c5\u5831\u306e\u66f4\u65b0\n\n$ sudo apt update\n\n\n\n\u691c\u7d22\u7d50\u679c\u306bmozc\u304c\u51fa\u3066\u304f\u308b\n\n$ apt-cache search mozc\r\nmozc-data - Mozc input method - data files\r\nibus-mozc - Mozc engine for IBus - Client of the Mozc input method\r\nmozc-server - Server of the Mozc input method\r\nmozc-utils-gui - GUI utilities of the Mozc input method\r\nemacs-mozc - Mozc for Emacs\r\nemacs-mozc-bin - Helper module for emacs-mozc\r\nfcitx-mozc - Mozc engine for fcitx - Client of the Mozc input method\r\nuim-mozc - Mozc engine for uim - Client of the Mozc input method\n\n\n\n\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u5c0e\u5165\n\n$ sudo apt install fcitx-mozc -t bionic", "date_published": "2018-10-23T23:10:12+09:00", "date_modified": "2018-10-23T23:10:12+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Apt-Pinning", "Debian", "package", "Ubuntu", "Bionic Beaver(18.04LTS)", "buster", "Linux", "stretch", "testing", "xenial(16.04)" ] }, { "id": "http://matoken.org/blog/?p=2143", "url": "https://matoken.org/blog/2018/09/27/prevents-erroneous-system-outages-in-ssh-environment-molly-guard/", "title": "ssh\u74b0\u5883\u3067\u306e\u8aa4\u3063\u305f\u30b7\u30b9\u30c6\u30e0\u505c\u6b62\u3092\u9632\u3050molly-guard", "content_html": "
\n
\n
\n

\u6700\u8fd1 shutdown \u306e man \u3092\u898b\u6bd4\u3079\u305f\u308a\u3057\u3066\u305f\u306e\u3067\u3059\u304c\uff0c\u305d\u306e\u3068\u304d\u306b systemd, sysvinit \u4ee5\u5916\u306b molly-guard \u3068\u3044\u3046\u898b\u77e5\u3089\u306c\u3082\u306e\u304c\uff0e

\n
\n
\n
\n
$ apt-file search /sbin/shutdown\r\nmolly-guard: /sbin/shutdown\r\nsystemd-sysv: /sbin/shutdown\r\nsysvinit-core: /sbin/shutdown
\n
\n
\n
\n

\u30d1\u30c3\u30b1\u30fc\u30b8\u60c5\u5831\u3092\u307f\u308b\u3068 shutdown \u30b3\u30de\u30f3\u30c9\u306a\u3069\u3092\u7f6e\u304d\u63db\u3048\u3066 ssh \u63a5\u7d9a\u6642\u306b\u306f\u78ba\u8a8d\u306e\u305f\u3081\u306b\u30db\u30b9\u30c8\u540d\u3092\u805e\u304f\u3088\u3046\u306b\u306a\u308b\u3088\u3046\u3067\u3059\uff0e
\n\u3053\u308c\u306b\u3088\u308a\u624b\u5143\u306ePC\u306e\u518d\u8d77\u52d5\u3092\u3057\u305f\u3064\u3082\u308a\u304c\u30ea\u30e2\u30fc\u30c8\u306e\u30b5\u30fc\u30d0\u3092\u518d\u8d77\u52d5\u3057\u3066\u3057\u307e\u3046\u306a\u3069\u3068\u3044\u3063\u305f\u3053\u3068\u304c\u9632\u3052\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\uff0e

\n
\n
\n
\n
$ apt show molly-guard\r\nPackage: molly-guard\r\nVersion: 0.6.4\r\nPriority: extra\r\nSection: admin\r\nMaintainer: Francois Marier <francois@debian.org>\r\nInstalled-Size: 57.3 kB\r\nDepends: procps\r\nEnhances: init, kexec-tools, mosh, openssh-server, pm-utils, systemd, sysvinit, upstart\r\nTag: implemented-in::shell, interface::commandline, network::server,\r\n protocol::ssh, role::program, scope::utility\r\nDownload-Size: 13.8 kB\r\nAPT-Manual-Installed: yes\r\nAPT-Sources: http://ftp.jp.debian.org/debian stretch/main amd64 Packages\r\nDescription: protects machines from accidental shutdowns/reboots\r\n The package installs a shell script that overrides the existing\r\n shutdown/reboot/halt/poweroff/coldreboot/pm-hibernate/pm-suspend* commands\r\n and first runs a set of scripts, which all have to exit successfully,\r\n before molly-guard invokes the real command.\r\n .\r\n One of the scripts checks for existing SSH sessions. If any of the four\r\n commands are called interactively over an SSH session, the shell script\r\n prompts you to enter the name of the host you wish to shut down. This should\r\n adequately prevent you from accidental shutdowns and reboots.\r\n .\r\n molly-guard diverts the real binaries to /lib/molly-guard/.  You can bypass\r\n molly-guard by running those binaries directly.
\n
\n
\n
\n

\u65e9\u901f\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e

\n
\n
\n
\n
$ sudo apt install molly-guard\r\n    :\r\npackage diverts others to: /lib/molly-guard/coldreboot\r\n/sbin/halt\r\npackage diverts others to: /lib/molly-guard/halt\r\n/sbin/pm-hibernate\r\n/sbin/pm-suspend\r\n/sbin/pm-suspend-hybrid\r\n/sbin/poweroff\r\npackage diverts others to: /lib/molly-guard/poweroff\r\n/sbin/reboot\r\npackage diverts others to: /lib/molly-guard/reboot\r\n/sbin/shutdown\r\npackage diverts others to: /lib/molly-guard/shutdown
\n
\n
\n
\n

\u3053\u306e\u3042\u305f\u308a\u306e\u30b3\u30de\u30f3\u30c9\u304c\u7f6e\u304d\u63db\u308f\u3063\u3066\u3044\u307e\u3059\uff0e

\n
\n
\n
\n
$ ls -l /sbin | grep molly\r\nlrwxrwxrwx 1 root root        28 Aug 16  2016 coldreboot -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root        28 Aug 16  2016 halt -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root        28 Aug 16  2016 pm-hibernate -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root        28 Aug 16  2016 pm-suspend -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root        28 Aug 16  2016 pm-suspend-hybrid -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root        28 Aug 16  2016 poweroff -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root        28 Aug 16  2016 reboot -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root        28 Aug 16  2016 shutdown -> /lib/molly-guard/molly-guard
\n
\n
\n
\n

\u30b3\u30de\u30f3\u30c9\u985e\u306f /lib/molly-guard \u4ee5\u4e0b\u306b\u9000\u907f\u3055\u308c\u308b\u3088\u3046\u3067\u3059\uff0e

\n
\n
\n
sysvinit
\n
\n
$ ls -lA /lib/molly-guard\r\ntotal 48\r\n-rwxr-xr-x 1 root root 18952 Feb 13  2017 halt\r\n-rwxr-xr-x 1 root root  2767 Aug 16  2016 molly-guard\r\nlrwxrwxrwx 1 root root     4 Feb 13  2017 poweroff -> halt\r\nlrwxrwxrwx 1 root root     4 Feb 13  2017 reboot -> halt\r\n-rwxr-xr-x 1 root root 23368 Feb 13  2017 shutdown
\n
\n
\n
\n
systemd
\n
\n
$ ls -lA /lib/molly-guard\r\ntotal 4\r\nlrwxrwxrwx 1 root root   14 Jun 14 05:20 halt -> /bin/systemctl\r\n-rwxr-xr-x 1 root root 2767 Aug 16  2016 molly-guard\r\nlrwxrwxrwx 1 root root   14 Jun 14 05:20 poweroff -> /bin/systemctl\r\nlrwxrwxrwx 1 root root   14 Jun 14 05:20 reboot -> /bin/systemctl\r\nlrwxrwxrwx 1 root root   14 Jun 14 05:20 shutdown -> /bin/systemctl
\n
\n
\n
\n

ssh \u7d4c\u7531\u3067 shutdown(sysvinit) \u3092\u8a66\u307f\u308b\u3068\u3053\u306e\u3088\u3046\u306b hostname \u3092\u6c42\u3081\u3089\u308c\u307e\u3059\uff0e\u3053\u3053\u3067\u8aa4\u3063\u305f hostname \u3092\u66f8\u304f\u3068 shutdown \u304c\u30ad\u30e3\u30f3\u30bb\u30eb\u3055\u308c\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ sudo shutdown -f -P -h +10 \"kernel update (`uname -r`)\"\r\nW: molly-guard: SSH session detected!\r\nPlease type in hostname of the machine to shutdown: desktop\r\nGood thing I asked; I won't shutdown debian ...\r\nW: aborting shutdown due to 30-query-hostname exiting with code 1.
\n
\n
\n
\n

\u6b63\u3057\u3044 hostname \u3092\u6307\u5b9a\u3059\u308b\u3068 shutdown \u304c\u547c\u3070\u308c\u307e\u3059\uff0e

\n
\n
\n
\n
$ sudo shutdown -f -P -h +10 \"kernel update (`uname -r`)\"\r\nW: molly-guard: SSH session detected!\r\nPlease type in hostname of the machine to shutdown: debian\r\n\r\nBroadcast message from root@debian (pts/0) (Thu Sep 27 06:15:28 2018):\r\n\r\nkernel update (4.9.0-3-amd64)\r\nThe system is going DOWN for system halt in 10 minutes!\r\n^C\r\nShutdown cancelled.
\n
\n
\n
\n

ssh\u7d4c\u7531\u3067\u306a\u3044\u5834\u5408\u306f molly-guard \u306f\u3059\u3050\u306b shutdown \u3092\u547c\u3073\u307e\u3059\uff0e

\n
\n
\n
\n
$ sudo shutdown -f -P -h +10 'poweroff'\r\n^C\r\nShutdown cancelled.
\n
\n
\n
\n
\n

\u74b0\u5883

\n
\n
\n
\n
$ dpkg-query -W systemd-sysv molly-guard\r\nmolly-guard     0.6.4\r\nsystemd-sysv    232-25+deb9u4\r\n$ dpkg-query -W sysvinit-core\r\nsysvinit-core   2.88dsf-59.9\r\n$ cat /etc/os-release\r\nPRETTY_NAME=\"Debian GNU/Linux 9 (stretch)\"\r\nNAME=\"Debian GNU/Linux\"\r\nVERSION_ID=\"9\"\r\nVERSION=\"9 (stretch)\"\r\nID=debian\r\nHOME_URL=\"https://www.debian.org/\"\r\nSUPPORT_URL=\"https://www.debian.org/support\"\r\nBUG_REPORT_URL=\"https://bugs.debian.org/\"\r\n$ cat /etc/debian_version\r\n9.5\r\n$ uname -m\r\nx86_64
\n
\n
\n
\n
\n
\n", "content_text": "\u6700\u8fd1 shutdown \u306e man \u3092\u898b\u6bd4\u3079\u305f\u308a\u3057\u3066\u305f\u306e\u3067\u3059\u304c\uff0c\u305d\u306e\u3068\u304d\u306b systemd, sysvinit \u4ee5\u5916\u306b molly-guard \u3068\u3044\u3046\u898b\u77e5\u3089\u306c\u3082\u306e\u304c\uff0e\n\n\n\n$ apt-file search /sbin/shutdown\r\nmolly-guard: /sbin/shutdown\r\nsystemd-sysv: /sbin/shutdown\r\nsysvinit-core: /sbin/shutdown\n\n\n\n\u30d1\u30c3\u30b1\u30fc\u30b8\u60c5\u5831\u3092\u307f\u308b\u3068 shutdown \u30b3\u30de\u30f3\u30c9\u306a\u3069\u3092\u7f6e\u304d\u63db\u3048\u3066 ssh \u63a5\u7d9a\u6642\u306b\u306f\u78ba\u8a8d\u306e\u305f\u3081\u306b\u30db\u30b9\u30c8\u540d\u3092\u805e\u304f\u3088\u3046\u306b\u306a\u308b\u3088\u3046\u3067\u3059\uff0e\n\u3053\u308c\u306b\u3088\u308a\u624b\u5143\u306ePC\u306e\u518d\u8d77\u52d5\u3092\u3057\u305f\u3064\u3082\u308a\u304c\u30ea\u30e2\u30fc\u30c8\u306e\u30b5\u30fc\u30d0\u3092\u518d\u8d77\u52d5\u3057\u3066\u3057\u307e\u3046\u306a\u3069\u3068\u3044\u3063\u305f\u3053\u3068\u304c\u9632\u3052\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\uff0e\n\n\n\n$ apt show molly-guard\r\nPackage: molly-guard\r\nVersion: 0.6.4\r\nPriority: extra\r\nSection: admin\r\nMaintainer: Francois Marier <francois@debian.org>\r\nInstalled-Size: 57.3 kB\r\nDepends: procps\r\nEnhances: init, kexec-tools, mosh, openssh-server, pm-utils, systemd, sysvinit, upstart\r\nTag: implemented-in::shell, interface::commandline, network::server,\r\n protocol::ssh, role::program, scope::utility\r\nDownload-Size: 13.8 kB\r\nAPT-Manual-Installed: yes\r\nAPT-Sources: http://ftp.jp.debian.org/debian stretch/main amd64 Packages\r\nDescription: protects machines from accidental shutdowns/reboots\r\n The package installs a shell script that overrides the existing\r\n shutdown/reboot/halt/poweroff/coldreboot/pm-hibernate/pm-suspend* commands\r\n and first runs a set of scripts, which all have to exit successfully,\r\n before molly-guard invokes the real command.\r\n .\r\n One of the scripts checks for existing SSH sessions. If any of the four\r\n commands are called interactively over an SSH session, the shell script\r\n prompts you to enter the name of the host you wish to shut down. This should\r\n adequately prevent you from accidental shutdowns and reboots.\r\n .\r\n molly-guard diverts the real binaries to /lib/molly-guard/. You can bypass\r\n molly-guard by running those binaries directly.\n\n\n\n\u65e9\u901f\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e\n\n\n\n$ sudo apt install molly-guard\r\n :\r\npackage diverts others to: /lib/molly-guard/coldreboot\r\n/sbin/halt\r\npackage diverts others to: /lib/molly-guard/halt\r\n/sbin/pm-hibernate\r\n/sbin/pm-suspend\r\n/sbin/pm-suspend-hybrid\r\n/sbin/poweroff\r\npackage diverts others to: /lib/molly-guard/poweroff\r\n/sbin/reboot\r\npackage diverts others to: /lib/molly-guard/reboot\r\n/sbin/shutdown\r\npackage diverts others to: /lib/molly-guard/shutdown\n\n\n\n\u3053\u306e\u3042\u305f\u308a\u306e\u30b3\u30de\u30f3\u30c9\u304c\u7f6e\u304d\u63db\u308f\u3063\u3066\u3044\u307e\u3059\uff0e\n\n\n\n$ ls -l /sbin | grep molly\r\nlrwxrwxrwx 1 root root 28 Aug 16 2016 coldreboot -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root 28 Aug 16 2016 halt -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root 28 Aug 16 2016 pm-hibernate -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root 28 Aug 16 2016 pm-suspend -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root 28 Aug 16 2016 pm-suspend-hybrid -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root 28 Aug 16 2016 poweroff -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root 28 Aug 16 2016 reboot -> /lib/molly-guard/molly-guard\r\nlrwxrwxrwx 1 root root 28 Aug 16 2016 shutdown -> /lib/molly-guard/molly-guard\n\n\n\n\u30b3\u30de\u30f3\u30c9\u985e\u306f /lib/molly-guard \u4ee5\u4e0b\u306b\u9000\u907f\u3055\u308c\u308b\u3088\u3046\u3067\u3059\uff0e\n\n\nsysvinit\n\n$ ls -lA /lib/molly-guard\r\ntotal 48\r\n-rwxr-xr-x 1 root root 18952 Feb 13 2017 halt\r\n-rwxr-xr-x 1 root root 2767 Aug 16 2016 molly-guard\r\nlrwxrwxrwx 1 root root 4 Feb 13 2017 poweroff -> halt\r\nlrwxrwxrwx 1 root root 4 Feb 13 2017 reboot -> halt\r\n-rwxr-xr-x 1 root root 23368 Feb 13 2017 shutdown\n\n\n\nsystemd\n\n$ ls -lA /lib/molly-guard\r\ntotal 4\r\nlrwxrwxrwx 1 root root 14 Jun 14 05:20 halt -> /bin/systemctl\r\n-rwxr-xr-x 1 root root 2767 Aug 16 2016 molly-guard\r\nlrwxrwxrwx 1 root root 14 Jun 14 05:20 poweroff -> /bin/systemctl\r\nlrwxrwxrwx 1 root root 14 Jun 14 05:20 reboot -> /bin/systemctl\r\nlrwxrwxrwx 1 root root 14 Jun 14 05:20 shutdown -> /bin/systemctl\n\n\n\nssh \u7d4c\u7531\u3067 shutdown(sysvinit) \u3092\u8a66\u307f\u308b\u3068\u3053\u306e\u3088\u3046\u306b hostname \u3092\u6c42\u3081\u3089\u308c\u307e\u3059\uff0e\u3053\u3053\u3067\u8aa4\u3063\u305f hostname \u3092\u66f8\u304f\u3068 shutdown \u304c\u30ad\u30e3\u30f3\u30bb\u30eb\u3055\u308c\u307e\u3057\u305f\uff0e\n\n\n\n$ sudo shutdown -f -P -h +10 \"kernel update (`uname -r`)\"\r\nW: molly-guard: SSH session detected!\r\nPlease type in hostname of the machine to shutdown: desktop\r\nGood thing I asked; I won't shutdown debian ...\r\nW: aborting shutdown due to 30-query-hostname exiting with code 1.\n\n\n\n\u6b63\u3057\u3044 hostname \u3092\u6307\u5b9a\u3059\u308b\u3068 shutdown \u304c\u547c\u3070\u308c\u307e\u3059\uff0e\n\n\n\n$ sudo shutdown -f -P -h +10 \"kernel update (`uname -r`)\"\r\nW: molly-guard: SSH session detected!\r\nPlease type in hostname of the machine to shutdown: debian\r\n\r\nBroadcast message from root@debian (pts/0) (Thu Sep 27 06:15:28 2018):\r\n\r\nkernel update (4.9.0-3-amd64)\r\nThe system is going DOWN for system halt in 10 minutes!\r\n^C\r\nShutdown cancelled.\n\n\n\nssh\u7d4c\u7531\u3067\u306a\u3044\u5834\u5408\u306f molly-guard \u306f\u3059\u3050\u306b shutdown \u3092\u547c\u3073\u307e\u3059\uff0e\n\n\n\n$ sudo shutdown -f -P -h +10 'poweroff'\r\n^C\r\nShutdown cancelled.\n\n\n\n\n\u74b0\u5883\n\n\n\n$ dpkg-query -W systemd-sysv molly-guard\r\nmolly-guard 0.6.4\r\nsystemd-sysv 232-25+deb9u4\r\n$ dpkg-query -W sysvinit-core\r\nsysvinit-core 2.88dsf-59.9\r\n$ cat /etc/os-release\r\nPRETTY_NAME=\"Debian GNU/Linux 9 (stretch)\"\r\nNAME=\"Debian GNU/Linux\"\r\nVERSION_ID=\"9\"\r\nVERSION=\"9 (stretch)\"\r\nID=debian\r\nHOME_URL=\"https://www.debian.org/\"\r\nSUPPORT_URL=\"https://www.debian.org/support\"\r\nBUG_REPORT_URL=\"https://bugs.debian.org/\"\r\n$ cat /etc/debian_version\r\n9.5\r\n$ uname -m\r\nx86_64", "date_published": "2018-09-27T06:34:31+09:00", "date_modified": "2018-09-27T06:35:30+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "molly-guard", "shutdown", "ssh", "Debian", "Linux", "stretch" ] }, { "id": "http://matoken.org/blog/?p=2113", "url": "https://matoken.org/blog/2018/09/14/switch-between-php-5-php-7-0-with-debian-stretch/", "title": "Debian stretch \u3067 php5 / php7.0 \u3092\u5207\u308a\u66ff\u3048", "content_html": "
\n

update-alternatives \u3067 OK \u304b\u306a\u3068\u601d\u3063\u305f\u306e\u3067\u3059\u304c\uff0c

\n
\n
\n
\n
$ sudo update-alternatives --config php\r\nThere are 2 choices for the alternative php (providing /usr/bin/php).\r\n\r\n  Selection    Path             Priority   Status\r\n\r\n--------------------\r\n\r\n* 0            /usr/bin/php7.0   70        auto mode\r\n  1            /usr/bin/php5     50        manual mode\r\n  2            /usr/bin/php7.0   70        manual mode\r\n  Press <enter> to keep the current choice[*], or type selection number: 0\r\n$ php -v\r\nPHP 7.0.30-0+deb9u1 (cli) (built: Jun 14 2018 13:50:25) ( NTS )\r\nCopyright (c) 1997-2017 The PHP Group\r\nZend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies\r\n    with Zend OPcache v7.0.30-0+deb9u1, Copyright (c) 1999-2017, by Zend Technologies
\n
\n
\n
\n

apache \u3067\u306f php5 \u306e\u307e\u307e\u3067\u3059\uff0e

\n
\n
\n
\n
$ w3m -dump http://localhost/phpinfo.php|grep -m1 'PHP Version'\r\nPHP Version 5.6.30-0+deb8u1
\n
\n
\n
\n

apache module \u3092\u5207\u308a\u66ff\u3048\u305f\u3089ok\u3067\u3057\u305f\uff0e

\n
\n
\n
\n
$ sudo a2dismod php5\r\n$ sudo a2enmod php7.0\r\n$ systemctl restart apache2
\n
\n
\n
\n
\u74b0\u5883
\n
\n
$ dpkg-query -W apache2 php5 libapache2-mod-php5 php7.0 libapache2-mod-php7.0\r\napache2 2.4.25-3+deb9u5\r\nlibapache2-mod-php5     5.6.30+dfsg-0+deb8u1\r\nlibapache2-mod-php7.0   7.0.30-0+deb9u1\r\nphp5    5.6.30+dfsg-0+deb8u1\r\nphp7.0  7.0.30-0+deb9u1\r\n$ lsb_release -d\r\nDescription:    Debian GNU/Linux 9.5 (stretch)\r\n$ uname -m\r\nx86_64
\n
\n
\n", "content_text": "update-alternatives \u3067 OK \u304b\u306a\u3068\u601d\u3063\u305f\u306e\u3067\u3059\u304c\uff0c\n\n\n\n$ sudo update-alternatives --config php\r\nThere are 2 choices for the alternative php (providing /usr/bin/php).\r\n\r\n Selection Path Priority Status\r\n\r\n--------------------\r\n\r\n* 0 /usr/bin/php7.0 70 auto mode\r\n 1 /usr/bin/php5 50 manual mode\r\n 2 /usr/bin/php7.0 70 manual mode\r\n Press <enter> to keep the current choice[*], or type selection number: 0\r\n$ php -v\r\nPHP 7.0.30-0+deb9u1 (cli) (built: Jun 14 2018 13:50:25) ( NTS )\r\nCopyright (c) 1997-2017 The PHP Group\r\nZend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies\r\n with Zend OPcache v7.0.30-0+deb9u1, Copyright (c) 1999-2017, by Zend Technologies\n\n\n\napache \u3067\u306f php5 \u306e\u307e\u307e\u3067\u3059\uff0e\n\n\n\n$ w3m -dump http://localhost/phpinfo.php|grep -m1 'PHP Version'\r\nPHP Version 5.6.30-0+deb8u1\n\n\n\napache module \u3092\u5207\u308a\u66ff\u3048\u305f\u3089ok\u3067\u3057\u305f\uff0e\n\n\n\n$ sudo a2dismod php5\r\n$ sudo a2enmod php7.0\r\n$ systemctl restart apache2\n\n\n\n\u74b0\u5883\n\n$ dpkg-query -W apache2 php5 libapache2-mod-php5 php7.0 libapache2-mod-php7.0\r\napache2 2.4.25-3+deb9u5\r\nlibapache2-mod-php5 5.6.30+dfsg-0+deb8u1\r\nlibapache2-mod-php7.0 7.0.30-0+deb9u1\r\nphp5 5.6.30+dfsg-0+deb8u1\r\nphp7.0 7.0.30-0+deb9u1\r\n$ lsb_release -d\r\nDescription: Debian GNU/Linux 9.5 (stretch)\r\n$ uname -m\r\nx86_64", "date_published": "2018-09-14T06:34:26+09:00", "date_modified": "2018-09-14T06:34:26+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "apahce httpd", "Debian stretch", "php", "Debian", "Linux", "stretch" ] }, { "id": "http://matoken.org/blog/?p=1993", "url": "https://matoken.org/blog/2018/07/12/mailmans-ban_list-as-image/", "title": "Mailman\u306eban_list\u3092\u753b\u50cf\u306b\u3059\u308b", "content_html": "

\u6700\u8fd1Mailman\u306bbot\u304b\u3089\u3067\u3042\u308d\u3046\u767b\u9332\u304c\u6ca2\u5c71\u3084\u3063\u3066\u304f\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\uff0e\u767b\u9332\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u306f\u5927\u62b5\u30e1\u30b8\u30e3\u30fc\u306a\u30d5\u30ea\u30fc\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3067\u751f\u304d\u3066\u3044\u308b\u3088\u3046\u306a\u306e\u3067\u3059\u304c\uff0cquota\u3084\u8ee2\u9001\u91cf\u306e\u30a8\u30e9\u30fc\u3068\u306a\u3063\u3066\u5e30\u3063\u3066\u304d\u307e\u3059\uff0e\u3053\u308c\u3089\u306e\u30a8\u30e9\u30fc\u30e1\u30fc\u30eb\u3067\u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u304c\u3042\u3075\u308c\u3066\u8f9b\u3044\u3067\u3059\uff0e

\n

Mailman\u306bcaptcha\u304b\u4f55\u304b\u3092\u8a2d\u7f6e\u3067\u304d\u308b\u30d7\u30e9\u30b0\u30a4\u30f3\u3068\u304b\u7121\u3044\u304b\u306a\u3068\u63a2\u3057\u3066\u307f\u305f\u306e\u3067\u3059\u304c\uff0c\u516c\u5f0f\u3067\u306f\u306a\u3044\u3088\u3046\u3067\u3059\uff0esource\u3092\u4fee\u6b63\u3057\u3066Google\u306eReCaptcha\u3092\u5b9f\u88c5\u3057\u3066\u3044\u308b\u4eba\u306f\u5c45\u307e\u3059\u304c\uff0c\u30d0\u30fc\u30b8\u30e7\u30f3\u30a2\u30c3\u30d7\u306e\u305f\u3073\u306b\u30d1\u30c3\u30c1\u3059\u308b\u306e\u306f\u9762\u5012\u3067\u3059\uff0e\u6700\u8fd1\u3082\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30db\u30fc\u30eb\u304c\u898b\u3064\u304b\u3063\u3066\u3044\u307e\u3059\u3057\u653e\u7f6e\u3059\u308b\u308f\u3051\u306b\u3082\u751f\u304d\u307e\u305b\u3093\uff0e

\n\n

\u8a72\u5f53\u30e1\u30fc\u30eb\u3092\u898b\u308b\u3068\u5e78\u3044\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u306f\u4f7f\u3044\u56de\u3057\u3067\u30d0\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u306f\u591a\u304f\u3042\u308a\u307e\u305b\u3093\uff0e\u3068\u308a\u3042\u3048\u305aMailman\u306eban_list\u306b\u3053\u308c\u3089\u306e\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3092\u767b\u9332\u3057\u3066mailq\u306b\u6e9c\u307e\u3063\u3066\u3044\u308b\u8a72\u5f53\u30e1\u30fc\u30eb\u306fdrop\u3057\u307e\u3057\u305f\uff0e1\u9031\u9593\u304f\u3089\u3044\u3057\u305f\u3089\u30ea\u30e2\u30fc\u30c8\u304b\u3089\u306e\u30a8\u30e9\u30fc\u30e1\u30fc\u30eb\u3082\u7121\u304f\u306a\u3063\u3066\u9759\u304b\u306b\u306a\u308b\u3068\u826f\u3044\u306a\u3068\u601d\u3063\u3066\u3044\u307e\u3059\uff0e
\nban_list\u306b\u767b\u9332\u3057\u307e\u3057\u305f\u304c\uff0c\u3082\u3057\u304b\u3057\u305f\u3089bot\u3067\u306f\u306a\u304f\u666e\u901a\u306b\u767b\u9332\u3057\u3088\u3046\u3068\u3057\u3066\u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u304c\u3042\u3075\u308c\u3066\u3044\u308b\u4eba\u3082\u5c45\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e\u305d\u308c\u304c\u89e3\u308b\u3088\u3046\u306bban_list\u3092\u7533\u3057\u8fbc\u307f\u30da\u30fc\u30b8\u306b\u8868\u793a\u3059\u308b\u3053\u3068\u306b\u3057\u307e\u3057\u305f\uff0e\u305d\u306e\u307e\u307e\u8868\u793a\u3059\u308b\u306e\u306f\u826f\u304f\u306a\u3044\u6c17\u304c\u3059\u308b\u306e\u3067\u753b\u50cf\u306b\u3057\u3066\u30ce\u30a4\u30ba\u3092\u6563\u3089\u3057\u3066\u6ce2\u578b\u5909\u5f62\u3092\u304b\u3051\u3066\u307f\u307e\u3057\u305f\uff0e
\nMailman\u306econfig_list\u30b3\u30de\u30f3\u30c9\u3067\u8a2d\u5b9a\u3092\u51fa\u529b\u3057\u3066ban_list\u3092\u30d5\u30a1\u30a4\u30eb\u306b\u66f8\u304d\u51fa\u3057\uff0cImagemagick\u306econvert\u30b3\u30de\u30f3\u30c9\u3067\u30ce\u30a4\u30ba\u3068\u6ce2\u578b\u5909\u5f62\u306e\u30d5\u30a3\u30eb\u30bf\u3092\u304b\u3051\u3066\u753b\u50cf\u3092\u751f\u6210\u3057\u307e\u3057\u305f\uff0e
\n\u3053\u3093\u306a\u611f\u3058\u306e\u753b\u50cf\u306b\u306a\u308a\u307e\u3059\uff0e\u3053\u308c\u3092\u7533\u3057\u8fbc\u307f\u30da\u30fc\u30b8\u306b\u8aac\u660e\u3068\u4e00\u7dd2\u306b\u8f09\u305b\u307e\u3059\uff0e(\u30ce\u30a4\u30ba\u306e\u305b\u3044\u3067\u5bb9\u91cf\u304c\u5927\u304d\u304f\u2026\u2026)

\n

\"image\"

\n

cron\u306b\u767b\u9332\u3057\u307e\u3057\u305f\uff0e

\n
$ sudo -u list crontab -l|grep ban_list
39 * * * *      /usr/lib/mailman/bin/config_list -c -o /dev/stdout users|grep ^ban_list |sed -e 's/^.*\\[\\|\\]\\|'\\''\\|'\\ '//g'|sed -e 's/\\@/ at /g'|tr -s ',' '\\n' | sort -n > /var/lib/mailman/lists/users/ban_list && convert -size 1024x600 -background '#FFFFFF' -density 36 -gravity Center -fill black -font SetoFont label:\"users ban_list `stat -c \\%y /var/lib/mailman/lists/users/ban_list|cut -f1 -d.`\\n\\n`cat /var/lib/mailman/lists/users/ban_list`\" -attenuate 5 -noise 7 +noise Gaussian -wave 15x`expr \\( 100 + $((RANDOM \\% 100)) \\)` /var/lib/mailman/archives/public/users/ban_list.jpg
\n

\u2026\u2026\u9577\u3044\u3067\u3059\u306d\uff0e\u305d\u308c\u306b\u753b\u50cf\u30b5\u30a4\u30ba\u56fa\u5b9a\u306a\u306e\u3067list\u304c\u5897\u3048\u308b\u3068\u6587\u5b57\u30b5\u30a4\u30ba\u304c\u5c0f\u3055\u304f\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3059\uff0e\u3066\u3053\u3068\u3067script\u306b\uff0e

\n
#!/bin/sh
 
LISTNAME='users'
FONT='SetoFont'
BANLIST='/var/lib/mailman/lists/users/ban_list'
IMAGE='/var/lib/mailman/archives/public/users/ban_list.jpg'
 
# ban_list\u3092\u62bd\u51fa\u3057\u3066\u30d5\u30a1\u30a4\u30eb\u306b\u66f8\u304d\u51fa\u3057
/usr/lib/mailman/bin/config_list -c -o /dev/stdout ${LISTNAME} | grep ^ban_list | sed -e 's/^.*\\[\\|\\]\\|'\\''\\|'\\ '//g' | sed -e 's/\\@/ at /g' | tr -s ',' '\\n' | sort -n > ${BANLIST}
 
# ban_list\u306e\u884c\u6570\u306b\u3088\u3063\u3066\u753b\u50cf\u9ad8\u3055\u3092\u8a08\u7b97
BANWC=`wc -l ${BANLIST} | cut -d\\  -f1`
HIGHT=`expr \\( ${BANWC} \\* 60 + 120 \\)`
 
# \u753b\u50cf\u306b\u66f8\u304d\u51fa\u3059\u6587\u5b57\u5217\u3092\u4f5c\u6210
LABEL=\"users ban_list `stat -c \\%${BANLIST} | cut -f1 -d.`\\n\\n`cat ${BANLIST}`\"
 
# \u6ce2\u578b\u5909\u5f62\u306e\u6ce2\u306e\u6df1\u3055\u3092\u8a08\u7b97
WAVEX=`expr \\( 10 + $((RANDOM % 10)) \\)`
WAVEY=`expr \\( 100 + $((RANDOM % 100)) \\)`
 
# \u753b\u50cf\u4f5c\u6210
convert -size 1024x${HIGHT} -background '#FFFFFF' -density 36 -gravity Center -fill black -font ${FONT} label:\"${LABEL}\" -attenuate 5 -noise 7 +noise Gaussian -wave ${WAVWX}x${WAVEY} ${IMAGE}
 
\n

\u3066\u3053\u3068\u3067\u3068\u308a\u3042\u3048\u305a\u306e\u5bfe\u51e6\u7642\u6cd5\u3067\u3059\u304c\u2026\u2026\uff0e

\n

\u74b0\u5883

\n
$ lsb_release -d
Description:    Debian GNU/Linux 9.4 (stretch)
$ uname -m
x86_64
$ dpkg-query -W mailman
mailman 1:2.1.23-1+deb9u2
$ dpkg-query -W imagemagick
imagemagick     8:6.9.7.4+dfsg-11+deb9u4
\n", "content_text": "\u6700\u8fd1Mailman\u306bbot\u304b\u3089\u3067\u3042\u308d\u3046\u767b\u9332\u304c\u6ca2\u5c71\u3084\u3063\u3066\u304f\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\uff0e\u767b\u9332\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u306f\u5927\u62b5\u30e1\u30b8\u30e3\u30fc\u306a\u30d5\u30ea\u30fc\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3067\u751f\u304d\u3066\u3044\u308b\u3088\u3046\u306a\u306e\u3067\u3059\u304c\uff0cquota\u3084\u8ee2\u9001\u91cf\u306e\u30a8\u30e9\u30fc\u3068\u306a\u3063\u3066\u5e30\u3063\u3066\u304d\u307e\u3059\uff0e\u3053\u308c\u3089\u306e\u30a8\u30e9\u30fc\u30e1\u30fc\u30eb\u3067\u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u304c\u3042\u3075\u308c\u3066\u8f9b\u3044\u3067\u3059\uff0e\nMailman\u306bcaptcha\u304b\u4f55\u304b\u3092\u8a2d\u7f6e\u3067\u304d\u308b\u30d7\u30e9\u30b0\u30a4\u30f3\u3068\u304b\u7121\u3044\u304b\u306a\u3068\u63a2\u3057\u3066\u307f\u305f\u306e\u3067\u3059\u304c\uff0c\u516c\u5f0f\u3067\u306f\u306a\u3044\u3088\u3046\u3067\u3059\uff0esource\u3092\u4fee\u6b63\u3057\u3066Google\u306eReCaptcha\u3092\u5b9f\u88c5\u3057\u3066\u3044\u308b\u4eba\u306f\u5c45\u307e\u3059\u304c\uff0c\u30d0\u30fc\u30b8\u30e7\u30f3\u30a2\u30c3\u30d7\u306e\u305f\u3073\u306b\u30d1\u30c3\u30c1\u3059\u308b\u306e\u306f\u9762\u5012\u3067\u3059\uff0e\u6700\u8fd1\u3082\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30db\u30fc\u30eb\u304c\u898b\u3064\u304b\u3063\u3066\u3044\u307e\u3059\u3057\u653e\u7f6e\u3059\u308b\u308f\u3051\u306b\u3082\u751f\u304d\u307e\u305b\u3093\uff0e\n\nMailman and captcha\nCVE – CVE-2018-5950\nCVE – CVE-2018-13796\n\n\u8a72\u5f53\u30e1\u30fc\u30eb\u3092\u898b\u308b\u3068\u5e78\u3044\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u306f\u4f7f\u3044\u56de\u3057\u3067\u30d0\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u306f\u591a\u304f\u3042\u308a\u307e\u305b\u3093\uff0e\u3068\u308a\u3042\u3048\u305aMailman\u306eban_list\u306b\u3053\u308c\u3089\u306e\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3092\u767b\u9332\u3057\u3066mailq\u306b\u6e9c\u307e\u3063\u3066\u3044\u308b\u8a72\u5f53\u30e1\u30fc\u30eb\u306fdrop\u3057\u307e\u3057\u305f\uff0e1\u9031\u9593\u304f\u3089\u3044\u3057\u305f\u3089\u30ea\u30e2\u30fc\u30c8\u304b\u3089\u306e\u30a8\u30e9\u30fc\u30e1\u30fc\u30eb\u3082\u7121\u304f\u306a\u3063\u3066\u9759\u304b\u306b\u306a\u308b\u3068\u826f\u3044\u306a\u3068\u601d\u3063\u3066\u3044\u307e\u3059\uff0e\nban_list\u306b\u767b\u9332\u3057\u307e\u3057\u305f\u304c\uff0c\u3082\u3057\u304b\u3057\u305f\u3089bot\u3067\u306f\u306a\u304f\u666e\u901a\u306b\u767b\u9332\u3057\u3088\u3046\u3068\u3057\u3066\u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u304c\u3042\u3075\u308c\u3066\u3044\u308b\u4eba\u3082\u5c45\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e\u305d\u308c\u304c\u89e3\u308b\u3088\u3046\u306bban_list\u3092\u7533\u3057\u8fbc\u307f\u30da\u30fc\u30b8\u306b\u8868\u793a\u3059\u308b\u3053\u3068\u306b\u3057\u307e\u3057\u305f\uff0e\u305d\u306e\u307e\u307e\u8868\u793a\u3059\u308b\u306e\u306f\u826f\u304f\u306a\u3044\u6c17\u304c\u3059\u308b\u306e\u3067\u753b\u50cf\u306b\u3057\u3066\u30ce\u30a4\u30ba\u3092\u6563\u3089\u3057\u3066\u6ce2\u578b\u5909\u5f62\u3092\u304b\u3051\u3066\u307f\u307e\u3057\u305f\uff0e\nMailman\u306econfig_list\u30b3\u30de\u30f3\u30c9\u3067\u8a2d\u5b9a\u3092\u51fa\u529b\u3057\u3066ban_list\u3092\u30d5\u30a1\u30a4\u30eb\u306b\u66f8\u304d\u51fa\u3057\uff0cImagemagick\u306econvert\u30b3\u30de\u30f3\u30c9\u3067\u30ce\u30a4\u30ba\u3068\u6ce2\u578b\u5909\u5f62\u306e\u30d5\u30a3\u30eb\u30bf\u3092\u304b\u3051\u3066\u753b\u50cf\u3092\u751f\u6210\u3057\u307e\u3057\u305f\uff0e\n\u3053\u3093\u306a\u611f\u3058\u306e\u753b\u50cf\u306b\u306a\u308a\u307e\u3059\uff0e\u3053\u308c\u3092\u7533\u3057\u8fbc\u307f\u30da\u30fc\u30b8\u306b\u8aac\u660e\u3068\u4e00\u7dd2\u306b\u8f09\u305b\u307e\u3059\uff0e(\u30ce\u30a4\u30ba\u306e\u305b\u3044\u3067\u5bb9\u91cf\u304c\u5927\u304d\u304f\u2026\u2026)\n\ncron\u306b\u767b\u9332\u3057\u307e\u3057\u305f\uff0e\n$ sudo -u list crontab -l|grep ban_list39 * * * *      /usr/lib/mailman/bin/config_list -c -o /dev/stdout users|grep ^ban_list |sed -e 's/^.*\\[\\|\\]\\|'\\''\\|'\\ '//g'|sed -e 's/\\@/ at /g'|tr -s ',' '\\n' | sort -n > /var/lib/mailman/lists/users/ban_list && convert -size 1024x600 -background '#FFFFFF' -density 36 -gravity Center -fill black -font SetoFont label:\"users ban_list `stat -c \\%y /var/lib/mailman/lists/users/ban_list|cut -f1 -d.`\\n\\n`cat /var/lib/mailman/lists/users/ban_list`\" -attenuate 5 -noise 7 +noise Gaussian -wave 15x`expr \\( 100 + $((RANDOM \\% 100)) \\)` /var/lib/mailman/archives/public/users/ban_list.jpg\n\u2026\u2026\u9577\u3044\u3067\u3059\u306d\uff0e\u305d\u308c\u306b\u753b\u50cf\u30b5\u30a4\u30ba\u56fa\u5b9a\u306a\u306e\u3067list\u304c\u5897\u3048\u308b\u3068\u6587\u5b57\u30b5\u30a4\u30ba\u304c\u5c0f\u3055\u304f\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3059\uff0e\u3066\u3053\u3068\u3067script\u306b\uff0e\n#!/bin/sh LISTNAME='users'FONT='SetoFont'BANLIST='/var/lib/mailman/lists/users/ban_list'IMAGE='/var/lib/mailman/archives/public/users/ban_list.jpg' # ban_list\u3092\u62bd\u51fa\u3057\u3066\u30d5\u30a1\u30a4\u30eb\u306b\u66f8\u304d\u51fa\u3057/usr/lib/mailman/bin/config_list -c -o /dev/stdout ${LISTNAME} | grep ^ban_list | sed -e 's/^.*\\[\\|\\]\\|'\\''\\|'\\ '//g' | sed -e 's/\\@/ at /g' | tr -s ',' '\\n' | sort -n > ${BANLIST} # ban_list\u306e\u884c\u6570\u306b\u3088\u3063\u3066\u753b\u50cf\u9ad8\u3055\u3092\u8a08\u7b97BANWC=`wc -l ${BANLIST} | cut -d\\  -f1`HIGHT=`expr \\( ${BANWC} \\* 60 + 120 \\)` # \u753b\u50cf\u306b\u66f8\u304d\u51fa\u3059\u6587\u5b57\u5217\u3092\u4f5c\u6210LABEL=\"users ban_list `stat -c \\%y ${BANLIST} | cut -f1 -d.`\\n\\n`cat ${BANLIST}`\" # \u6ce2\u578b\u5909\u5f62\u306e\u6ce2\u306e\u6df1\u3055\u3092\u8a08\u7b97WAVEX=`expr \\( 10 + $((RANDOM % 10)) \\)`WAVEY=`expr \\( 100 + $((RANDOM % 100)) \\)` # \u753b\u50cf\u4f5c\u6210convert -size 1024x${HIGHT} -background '#FFFFFF' -density 36 -gravity Center -fill black -font ${FONT} label:\"${LABEL}\" -attenuate 5 -noise 7 +noise Gaussian -wave ${WAVWX}x${WAVEY} ${IMAGE} \n\u3066\u3053\u3068\u3067\u3068\u308a\u3042\u3048\u305a\u306e\u5bfe\u51e6\u7642\u6cd5\u3067\u3059\u304c\u2026\u2026\uff0e\n\u74b0\u5883\n$ lsb_release -dDescription:    Debian GNU/Linux 9.4 (stretch)$ uname -mx86_64$ dpkg-query -W mailmanmailman 1:2.1.23-1+deb9u2$ dpkg-query -W imagemagickimagemagick     8:6.9.7.4+dfsg-11+deb9u4", "date_published": "2018-07-12T21:12:22+09:00", "date_modified": "2018-07-12T21:14:26+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Imagemagick", "mail", "maillist", "Mailman", "Debian", "Linux", "stretch" ] }, { "id": "http://matoken.org/blog/?p=1846", "url": "https://matoken.org/blog/2018/03/03/failure-to-update-lets-encrypt/", "title": "Let\u2019s Encrypt\u306e\u66f4\u65b0\u306b\u5931\u6557\u3059\u308b", "content_html": "

\u6700\u8fd1\u306f\u3053\u3093\u306a\u611f\u3058\u3067Let’s Encrypt\u306e\u8a3c\u660e\u66f8\u306e\u66f4\u65b0\u3092\u66f4\u65b0\u3057\u3066\u3044\u308b\u306e\u3067\u3059\u304c\u4eca\u56de\u5931\u6557\u3057\u307e\u3057\u305f\uff0e
\n\uff08DocumenteRoot\u3092FQDN\u306b\u3057\u3066\u3044\u308b\u524d\u63d0\uff09

\n
\n
$ sudo /bin/sh -c "/usr/bin/find /etc/letsencrypt/renewal/*.conf -type f | /usr/bin/xargs /usr/bin/basename -s .conf | xargs -n1 -I{} /usr/bin/letsencrypt renew --webroot -w /var/www/{}/ -d {}"\r\n
\n
\n

\u3053\u3093\u306a\u3075\u3046\u306b\u6012\u3089\u308c\u307e\u3059\uff0e
\n(\u4ed5\u69d8\u304c\u5909\u308f\u3063\u305f?)

\n
\n
Saving debug log to /var/log/letsencrypt/letsencrypt.log\r\nCurrently, the renew verb is capable of either renewing all installed certificates that are due to be renewed or renewing a single certificate specified by its name. If you would like to renew specific certificates by their domains, use the certonly command. The renew verb may provide other options for selecting certificates to renew in the future.\r\n
\n
\n

\u3068\u308a\u3042\u3048\u305a\u306fletsencrypt renew\u3092letsencrypt certonly\u306b\u3057\u305f\u3089\u901a\u308a\u307e\u3057\u305f\uff0e

\n
\n
$ sudo /bin/sh -c "/usr/bin/find /etc/letsencrypt/renewal/*.conf -type f | /usr/bin/xargs /usr/bin/basename -s .conf | xargs -n1 -I{} /usr/bin/letsencrypt certonly --webroot -w /var/www/{}/ -d {}"\r\n
\n
\n

\u3053\u308c\u3067\u66f4\u65b0\u3067\u304d\u305f\u3068\u601d\u3063\u305f\u30891\u3064\u306e\u30c9\u30e1\u30a4\u30f3\u3067\u5931\u6557\u3057\u3066\u3044\u307e\u3059\uff0e

\n
\n
Saving debug log to /var/log/letsencrypt/letsencrypt.log\r\nCert is due for renewal, auto-renewing...\r\nRenewing an existing certificate\r\nPerforming the following challenges:\r\nhttp-01 challenge for files.matoken.org\r\nUsing the webroot path /var/www/files.matoken.org for all unmatched domains.\r\nWaiting for verification...\r\nCleaning up challenges\r\nFailed authorization procedure. files.matoken.org (http-01): urn:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://files.matoken.org/.well-known/acme-challenge/Be7Aiai4UH9CDqacTaEZOMH4SxSQbtFqxFcPXcCtJEs: "<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">\r\n<html><head>\r\n<title>404 Not Found</title>  \r\n</head><body>\r\n<h1>Not Found</h1>\r\n<p"\r\n\r\nIMPORTANT NOTES:\r\n - The following errors were reported by the server:\r\n\r\n   Domain: files.matoken.org  \r\n   Type:   unauthorized\r\n   Detail: Invalid response from\r\n   http://files.matoken.org/.well-known/acme-challenge/Be7Aiai4UH9CDqacTaEZOMH4SxSQbtFqxFcPXcCtJEs:\r\n   "<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">\r\n   <html><head>\r\n   <title>404 Not Found</title>\r\n   </head><body>\r\n   <h1>Not Found</h1>\r\n   <p"\r\n\r\n   To fix these errors, please make sure that your domain name was\r\n   entered correctly and the DNS A record(s) for that domain\r\n   contain(s) the right IP address.\r\n
\n
\n

\u30d5\u30a1\u30a4\u30eb\u3092DoumentRoot\u306b\u7f6e\u3044\u3066Let’s Encrypt\u304b\u3089\u30a2\u30af\u30bb\u30b9\u3055\u308c\u308b\u306e\u3067\u3059\u304c\u305d\u3053\u3067\u305d\u306e\u30d5\u30a1\u30a4\u30eb\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u3068\u5931\u6557\u3057\u3066\u3044\u307e\u3059\uff0e\u3053\u306e\u30c9\u30e1\u30a4\u30f3\u306fhttp\u3092\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f\uff0e
\n\u3066\u3053\u3068\u3067apache\u3067Rewrite\u306e\u8a2d\u5b9a\u3092\u3057\u3066\u3042\u3052\u308b\u3068

\n
\n
RewriteEngine On\r\nRewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]\r\n
\n
\n

\u901a\u308a\u307e\u3057\u305f\uff0e

\n
\n
$ sudo /usr/bin/letsencrypt certonly --webroot -w /var/www/files.matoken.org/ -d files.mato\r\nken.org\r\nSaving debug log to /var/log/letsencrypt/letsencrypt.log\r\nCert is due for renewal, auto-renewing...\r\nRenewing an existing certificate\r\nPerforming the following challenges:\r\nhttp-01 challenge for files.matoken.org\r\nUsing the webroot path /var/www/files.matoken.org for all unmatched domains.\r\nWaiting for verification...\r\nCleaning up challenges\r\nGenerating key (2048 bits): /etc/letsencrypt/keys/0003_key-certbot.pem\r\nCreating CSR: /etc/letsencrypt/csr/0003_csr-certbot.pem\r\n\r\nIMPORTANT NOTES:\r\n - Congratulations! Your certificate and chain have been saved at\r\n   /etc/letsencrypt/live/files.matoken.org/fullchain.pem. Your cert\r\n   will expire on 2018-05-31. To obtain a new or tweaked version of\r\n   this certificate in the future, simply run certbot again. To\r\n   non-interactively renew *all* of your certificates, run "certbot\r\n   renew"\r\n - If you like Certbot, please consider supporting our work by:\r\n\r\n   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate\r\n   Donating to EFF:                    https://eff.org/donate-le\r\n
\n
\n

certbot\u306eversion\u304c\u304b\u306a\u308a\u53e4\u3044\u3067\u3059\u306d\u2026\u2026\uff0e

\n
\n
$ dpkg -l|grep -i certbot\r\nii  certbot                               0.10.2-1                          all          automatically configure HTTPS using Let's Encrypt\r\nii  python-certbot                        0.10.2-1                          all          main library for certbot\r\n
\n
\n

\u3066\u3053\u3068\u3067backport\u306e\u3082\u306e\u306b\u5165\u308c\u66ff\u3048\uff0e

\n
\n
$ sudo apt remove certbot\r\n$ sudo apt install python-certbot-apache -t stretch-backports\r\n$ apt show certbot\r\nPackage: certbot\r\nVersion: 0.21.1-1~bpo9+1\r\nPriority: optional\r\nSection: web\r\nSource: python-certbot\r\nMaintainer: Debian Let's Encrypt <letsencrypt-devel@lists.alioth.debian.org>\r\nInstalled-Size: 53.2 kB\r\nProvides: letsencrypt\r\nDepends: python3-certbot (= 0.21.1-1~bpo9+1), python3:any\r\nSuggests: python3-certbot-apache, python3-certbot-nginx, python-certbot-doc\r\nBreaks: letsencrypt (<= 0.6.0)\r\nReplaces: letsencrypt\r\nHomepage: https://certbot.eff.org/\r\nDownload-Size: 20.4 kB\r\nAPT-Manual-Installed: no\r\nAPT-Sources: http://ftp.jp.debian.org/debian stretch-backports/main amd64 Packages\r\nDescription: automatically configure HTTPS using Let's Encrypt\r\n The objective of Certbot, Let's Encrypt, and the ACME (Automated\r\n Certificate Management Environment) protocol is to make it possible\r\n to set up an HTTPS server and have it automatically obtain a\r\n browser-trusted certificate, without any human intervention. This is\r\n accomplished by running a certificate management agent on the web\r\n server.\r\n .\r\n This agent is used to:\r\n .\r\n   - Automatically prove to the Let's Encrypt CA that you control the website\r\n   - Obtain a browser-trusted certificate and set it up on your web server\r\n   - Keep track of when your certificate is going to expire, and renew it\r\n   - Help you revoke the certificate if that ever becomes necessary.\r\n .\r\n This package contains the main application, including the standalone\r\n and the manual authenticators.\r\n\r\nN: There is 1 additional record. Please use the '-a' switch to see it\r\n
\n
\n

\u3066\u3053\u3068\u3067client\u304c\u53e4\u304b\u3063\u305f\u306e\u3067\u3042\u307e\u308a\u53c2\u8003\u306b\u306a\u3089\u7121\u3055\u305d\u3046\u306a\u30e1\u30e2\u3067\u3057\u305f\uff0e

\n
\n

\n\n

\n
\n", "content_text": "\u6700\u8fd1\u306f\u3053\u3093\u306a\u611f\u3058\u3067Let’s Encrypt\u306e\u8a3c\u660e\u66f8\u306e\u66f4\u65b0\u3092\u66f4\u65b0\u3057\u3066\u3044\u308b\u306e\u3067\u3059\u304c\u4eca\u56de\u5931\u6557\u3057\u307e\u3057\u305f\uff0e\n\uff08DocumenteRoot\u3092FQDN\u306b\u3057\u3066\u3044\u308b\u524d\u63d0\uff09\n\n$ sudo /bin/sh -c "/usr/bin/find /etc/letsencrypt/renewal/*.conf -type f | /usr/bin/xargs /usr/bin/basename -s .conf | xargs -n1 -I{} /usr/bin/letsencrypt renew --webroot -w /var/www/{}/ -d {}"\r\n\n\n\u3053\u3093\u306a\u3075\u3046\u306b\u6012\u3089\u308c\u307e\u3059\uff0e\n(\u4ed5\u69d8\u304c\u5909\u308f\u3063\u305f?)\n\nSaving debug log to /var/log/letsencrypt/letsencrypt.log\r\nCurrently, the renew verb is capable of either renewing all installed certificates that are due to be renewed or renewing a single certificate specified by its name. If you would like to renew specific certificates by their domains, use the certonly command. The renew verb may provide other options for selecting certificates to renew in the future.\r\n\n\n\u3068\u308a\u3042\u3048\u305a\u306fletsencrypt renew\u3092letsencrypt certonly\u306b\u3057\u305f\u3089\u901a\u308a\u307e\u3057\u305f\uff0e\n\n$ sudo /bin/sh -c "/usr/bin/find /etc/letsencrypt/renewal/*.conf -type f | /usr/bin/xargs /usr/bin/basename -s .conf | xargs -n1 -I{} /usr/bin/letsencrypt certonly --webroot -w /var/www/{}/ -d {}"\r\n\n\n\u3053\u308c\u3067\u66f4\u65b0\u3067\u304d\u305f\u3068\u601d\u3063\u305f\u30891\u3064\u306e\u30c9\u30e1\u30a4\u30f3\u3067\u5931\u6557\u3057\u3066\u3044\u307e\u3059\uff0e\n\nSaving debug log to /var/log/letsencrypt/letsencrypt.log\r\nCert is due for renewal, auto-renewing...\r\nRenewing an existing certificate\r\nPerforming the following challenges:\r\nhttp-01 challenge for files.matoken.org\r\nUsing the webroot path /var/www/files.matoken.org for all unmatched domains.\r\nWaiting for verification...\r\nCleaning up challenges\r\nFailed authorization procedure. files.matoken.org (http-01): urn:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://files.matoken.org/.well-known/acme-challenge/Be7Aiai4UH9CDqacTaEZOMH4SxSQbtFqxFcPXcCtJEs: "<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">\r\n<html><head>\r\n<title>404 Not Found</title> \r\n</head><body>\r\n<h1>Not Found</h1>\r\n<p"\r\n\r\nIMPORTANT NOTES:\r\n - The following errors were reported by the server:\r\n\r\n Domain: files.matoken.org \r\n Type: unauthorized\r\n Detail: Invalid response from\r\n http://files.matoken.org/.well-known/acme-challenge/Be7Aiai4UH9CDqacTaEZOMH4SxSQbtFqxFcPXcCtJEs:\r\n "<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">\r\n <html><head>\r\n <title>404 Not Found</title>\r\n </head><body>\r\n <h1>Not Found</h1>\r\n <p"\r\n\r\n To fix these errors, please make sure that your domain name was\r\n entered correctly and the DNS A record(s) for that domain\r\n contain(s) the right IP address.\r\n\n\n\u30d5\u30a1\u30a4\u30eb\u3092DoumentRoot\u306b\u7f6e\u3044\u3066Let’s Encrypt\u304b\u3089\u30a2\u30af\u30bb\u30b9\u3055\u308c\u308b\u306e\u3067\u3059\u304c\u305d\u3053\u3067\u305d\u306e\u30d5\u30a1\u30a4\u30eb\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u3068\u5931\u6557\u3057\u3066\u3044\u307e\u3059\uff0e\u3053\u306e\u30c9\u30e1\u30a4\u30f3\u306fhttp\u3092\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\n\u3066\u3053\u3068\u3067apache\u3067Rewrite\u306e\u8a2d\u5b9a\u3092\u3057\u3066\u3042\u3052\u308b\u3068\n\nRewriteEngine On\r\nRewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]\r\n\n\n\u901a\u308a\u307e\u3057\u305f\uff0e\n\n$ sudo /usr/bin/letsencrypt certonly --webroot -w /var/www/files.matoken.org/ -d files.mato\r\nken.org\r\nSaving debug log to /var/log/letsencrypt/letsencrypt.log\r\nCert is due for renewal, auto-renewing...\r\nRenewing an existing certificate\r\nPerforming the following challenges:\r\nhttp-01 challenge for files.matoken.org\r\nUsing the webroot path /var/www/files.matoken.org for all unmatched domains.\r\nWaiting for verification...\r\nCleaning up challenges\r\nGenerating key (2048 bits): /etc/letsencrypt/keys/0003_key-certbot.pem\r\nCreating CSR: /etc/letsencrypt/csr/0003_csr-certbot.pem\r\n\r\nIMPORTANT NOTES:\r\n - Congratulations! Your certificate and chain have been saved at\r\n /etc/letsencrypt/live/files.matoken.org/fullchain.pem. Your cert\r\n will expire on 2018-05-31. To obtain a new or tweaked version of\r\n this certificate in the future, simply run certbot again. To\r\n non-interactively renew *all* of your certificates, run "certbot\r\n renew"\r\n - If you like Certbot, please consider supporting our work by:\r\n\r\n Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate\r\n Donating to EFF: https://eff.org/donate-le\r\n\n\ncertbot\u306eversion\u304c\u304b\u306a\u308a\u53e4\u3044\u3067\u3059\u306d\u2026\u2026\uff0e\n\n$ dpkg -l|grep -i certbot\r\nii certbot 0.10.2-1 all automatically configure HTTPS using Let's Encrypt\r\nii python-certbot 0.10.2-1 all main library for certbot\r\n\n\n\u3066\u3053\u3068\u3067backport\u306e\u3082\u306e\u306b\u5165\u308c\u66ff\u3048\uff0e\n\n$ sudo apt remove certbot\r\n$ sudo apt install python-certbot-apache -t stretch-backports\r\n$ apt show certbot\r\nPackage: certbot\r\nVersion: 0.21.1-1~bpo9+1\r\nPriority: optional\r\nSection: web\r\nSource: python-certbot\r\nMaintainer: Debian Let's Encrypt <letsencrypt-devel@lists.alioth.debian.org>\r\nInstalled-Size: 53.2 kB\r\nProvides: letsencrypt\r\nDepends: python3-certbot (= 0.21.1-1~bpo9+1), python3:any\r\nSuggests: python3-certbot-apache, python3-certbot-nginx, python-certbot-doc\r\nBreaks: letsencrypt (<= 0.6.0)\r\nReplaces: letsencrypt\r\nHomepage: https://certbot.eff.org/\r\nDownload-Size: 20.4 kB\r\nAPT-Manual-Installed: no\r\nAPT-Sources: http://ftp.jp.debian.org/debian stretch-backports/main amd64 Packages\r\nDescription: automatically configure HTTPS using Let's Encrypt\r\n The objective of Certbot, Let's Encrypt, and the ACME (Automated\r\n Certificate Management Environment) protocol is to make it possible\r\n to set up an HTTPS server and have it automatically obtain a\r\n browser-trusted certificate, without any human intervention. This is\r\n accomplished by running a certificate management agent on the web\r\n server.\r\n .\r\n This agent is used to:\r\n .\r\n - Automatically prove to the Let's Encrypt CA that you control the website\r\n - Obtain a browser-trusted certificate and set it up on your web server\r\n - Keep track of when your certificate is going to expire, and renew it\r\n - Help you revoke the certificate if that ever becomes necessary.\r\n .\r\n This package contains the main application, including the standalone\r\n and the manual authenticators.\r\n\r\nN: There is 1 additional record. Please use the '-a' switch to see it\r\n\n\n\u3066\u3053\u3068\u3067client\u304c\u53e4\u304b\u3063\u305f\u306e\u3067\u3042\u307e\u308a\u53c2\u8003\u306b\u306a\u3089\u7121\u3055\u305d\u3046\u306a\u30e1\u30e2\u3067\u3057\u305f\uff0e", "date_published": "2018-03-03T14:56:42+09:00", "date_modified": "2018-03-03T14:56:42+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "certbot", "LetsEncrypt", "Debian", "Linux", "stretch" ] }, { "id": "http://matoken.org/blog/?p=1649", "url": "https://matoken.org/blog/2017/09/09/try_speedtest-cli/", "title": "speedtest.net\u304ccli\u3067\u5229\u7528\u3067\u304d\u308bspeedtest-cli\u3092\u8a66\u3059", "content_html": "

\u4e5d\u91cc \u771f\u590f @orumin \u305d\u3046\u3044\u3048\u3070 speedtest.net \u3063\u3066 Linux \u306e CLI client \u3082\u3042\u308a\u307e\u3059\u306d\u3002

\n

\u3063\u3066\u3053\u3068\u3067Linux\u306ecli\u3067\u52d5\u304fPython\u88fd\u306espeedtest-cli\u3092\u3061\u3087\u3063\u3068\u8a66\u3057\u3066\u307f\u305f\uff0e

\n\n

speedtest.net\u3067\u306e\u56de\u7dda\u901f\u5ea6\u8a08\u6e2c\u3092cli\u3067\u884c\u3048\u307e\u3059\uff0epython\u88fd\u3067pip\u3068\u304b\u3067\u5404\u7a2e\u74b0\u5883\u306b\u5c0e\u5165\u53ef\u80fd\uff0e

\n

Debian\u3060\u3068jessie\u4ee5\u964dall, Ubuntu\u3060\u306816.04LTS\u4ee5\u964dall\u306bpkg\u3082\u3042\u308b\u306e\u3067apt\u4e00\u767a\u3067\u5165\u308b\u3057\uff0cRaspberry Pi\u306a\u3069\u306eARM\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u306a\u3093\u304b\u3067\u3082\u554f\u984c\u306a\u304f\u52d5\u304d\u307e\u3057\u305f\uff0e

\n\n

\u898f\u5b9a\u5024\u306e\u52d5\u4f5c\u306fip\u304b\u3089\u30ed\u30b1\u30fc\u30b7\u30e7\u30f3\u62fe\u3063\u3066\u305d\u3053\u304b\u3089\u8fd1\u3044\u30b5\u30fc\u30d0\u30fc\u3067\u8a08\u6e2c\u3057\u305f\u7d50\u679c\u3092\u8fd4\u3059\u3088\u3046\u3067\u3059\uff0e
\n\u81ea\u5b85\u306eip\u30a2\u30c9\u30ec\u30b9\u3067\u306e\u81ea\u52d5\u5224\u5b9a\u3067\u306f\u9759\u5ca1\u306b\u306a\u3063\u3066\u305f\u306e\u3067\u624b\u52d5\u3067\u8a08\u6e2c\u30b5\u30fc\u30d0\u3092\u5909\u66f4\u3057\u3066\u9e7f\u5150\u5cf6\u3068\u6771\u4eac\u3092\u8a66\u3057\u307e\u3057\u305f\uff0e

\n

help

\n\n\n\n\n
\n
$ speedtest-cli -h\nusage: speedtest-cli [-h] [--bytes] [--share] [--simple] [--list]\n[--server SERVER] [--mini MINI] [--source SOURCE]\n[--timeout TIMEOUT] [--secure] [--version]\n\nCommand line interface for testing internet bandwidth using speedtest.net.\n--------------------------------------------------------------------------\nhttps://github.com/sivel/speedtest-cli\n\noptional arguments:\n-h, --help show this help message and exit\n--bytes Display values in bytes instead of bits. Does not affect\nthe image generated by --share\n--share Generate and provide a URL to the speedtest.net share\nresults image\n--simple Suppress verbose output, only show basic information\n--list Display a list of speedtest.net servers sorted by\ndistance\n--server SERVER Specify a server ID to test against\n--mini MINI URL of the Speedtest Mini server\n--source SOURCE Source IP address to bind to\n--timeout TIMEOUT HTTP timeout in seconds. Default 10\n--secure Use HTTPS instead of HTTP when communicating with\nspeedtest.net operated servers\n--version Show the version number and exit
\n
\n

\u898f\u5b9a\u5024\u3067\u306f\u81ea\u5b85\u306f\u9759\u5ca1\u306b\u306a\u3063\u3066\u3044\u3066\u9759\u5ca1\u30b5\u30fc\u30d0\u3067\u8a08\u6e2c\u3059\u308b(\u5b9f\u969b\u306f\u9e7f\u5150\u5cf6)

\n\n\n\n\n
\n
$ speedtest-cli\nRetrieving speedtest.net configuration...\nRetrieving speedtest.net server list...\nTesting from FreeBit (180.131.110.140)...\nSelecting best server based on latency...\nHosted by ClickL Network (Shizuoka) [0.02 km]: 110.464 ms\nTesting download speed........................................\nDownload: 2.07 Mbit/s\nTesting upload speed..................................................\nUpload: 0.92 Mbit/s
\n
\n

\u65e5\u672c\u306e\u30b5\u30fc\u30d0\u3092\u78ba\u8a8d\u3059\u308b

\n\n\n\n\n
\n
$ speedtest-cli --list|grep -i japan\n14180) ClickL Network (Shizuoka, Japan) [0.02 km]\n8407) Allied Telesis Capital Corporation (Sagamihara, Japan) [111.58 km]\n6087) Allied Telesis Capital Corporation (Fussa-shi, Japan) [120.41 km]\n6508) at2wn (Yokohama, Japan) [125.30 km]\n7510) ASEINet (Tokyo, Japan) [141.71 km]\n12546) TB (Tokyo, Japan) [141.71 km]\n12511) h3zjp (Nerima, Japan) [142.66 km]\n8348) Foxcore-LS (Sodegaura, Japan) [167.71 km]\n7139) SoftEther Corporation (Tsukuba, Japan) [192.41 km]\n6368) gatolabo (Maibara, Japan) [194.62 km]\n6766) JAIST(ino-lab) (Nomi, Japan) [232.28 km]\n13641) NextechNetworkSolutions (Nara, Japan) [237.53 km]\n6476) rxy (individual) (Osaka, Japan) [264.80 km]\n8832) prize3046 (Ikeda, Japan) [269.86 km]\n8193) kamiari (Sendai, Japan) [427.67 km]\n7976) denpa893 (Hikari, Japan) [601.03 km]\n6405) Allied Telesis Capital Corporation (Misawa, Japan) [686.38 km]\n13568) KSL (Kagoshima, Japan) [820.38 km]\n811) GLBB Japan KK (Chatan, Japan) [1397.84 km]\n6581) haza (Haebaru, Japan) [1410.56 km]
\n
\n

\u9e7f\u5150\u5cf6\u30b5\u30fc\u30d0\u3067\u8a08\u6e2c\u3057\u3066\u307f\u308b

\n\n\n\n\n
\n
$ speedtest-cli --server 13568\nRetrieving speedtest.net configuration...\nRetrieving speedtest.net server list...\nTesting from FreeBit (180.131.110.140)...\nHosted by KSL (Kagoshima) [820.38 km]: 103.499 ms\nTesting download speed........................................\nDownload: 2.20 Mbit/s\nTesting upload speed..................................................\nUpload: 0.92 Mbit/s
\n
\n

\u6771\u4eac\u3092–simple option\u3067\u8a08\u6e2c\u3057\u3066\u307f\u308b

\n\n\n\n\n
\n
$ speedtest-cli --simple --server 7510\nPing: 150.627 ms\nDownload: 1.88 Mbit/s\nUpload: 0.84 Mbit/s
\n
\n

\u30b5\u30fc\u30d0\u306e\u6570\u3092\u78ba\u8a8d\u3057\u3066\u307f\u308b

\n\n\n\n\n
\n
$ speedtest-cli --list | wc -l\n6509
\n
\n

speedtest\u306fJavaScript\u3084Adobe Flash\u304c\u5fc5\u8981\u306a\u3053\u3068\u304c\u591a\u304f\u3066\u30d8\u30c3\u30c9\u30ec\u30b9\u74b0\u5883\u306a\u3069\u3067\u306f\u9762\u5012\u3067\u3057\u305f\uff0e
\niperf\u3084netcat\u306a\u3093\u304b\u306f\u304a\u624b\u8efd\u3067\u3059\u304c\uff0c\u901f\u5ea6\u30c6\u30b9\u30c8\u5148\u306e\u30b5\u30fc\u30d0\u306e\u7528\u610f\u304c\u5fc5\u8981\u3067\u3059\uff0e

\n

\u4eca\u56de\u306espeedtest-cli\u306f\u304a\u624b\u8efd\u306b\u5c0e\u5165\u3067\u304d\u3066\u4e16\u754c\u5404\u5730\u306e\u30b5\u30fc\u30d0\u76f8\u624b\u306bcli\u3067speed test\u3082\u51fa\u6765\u3066\u3044\u3044\u611f\u3058\u3067\u3059\uff0e

\n

\n
\n
\n", "content_text": "\u4e5d\u91cc \u771f\u590f @orumin \u305d\u3046\u3044\u3048\u3070 speedtest.net \u3063\u3066 Linux \u306e CLI client \u3082\u3042\u308a\u307e\u3059\u306d\u3002\n\u3063\u3066\u3053\u3068\u3067Linux\u306ecli\u3067\u52d5\u304fPython\u88fd\u306espeedtest-cli\u3092\u3061\u3087\u3063\u3068\u8a66\u3057\u3066\u307f\u305f\uff0e\n\n\n\nGitHub – sivel/speedtest-cli: Command line interface for testing internet bandwidth using speedtest.net\n\n\n\nspeedtest.net\u3067\u306e\u56de\u7dda\u901f\u5ea6\u8a08\u6e2c\u3092cli\u3067\u884c\u3048\u307e\u3059\uff0epython\u88fd\u3067pip\u3068\u304b\u3067\u5404\u7a2e\u74b0\u5883\u306b\u5c0e\u5165\u53ef\u80fd\uff0e\nDebian\u3060\u3068jessie\u4ee5\u964dall, Ubuntu\u3060\u306816.04LTS\u4ee5\u964dall\u306bpkg\u3082\u3042\u308b\u306e\u3067apt\u4e00\u767a\u3067\u5165\u308b\u3057\uff0cRaspberry Pi\u306a\u3069\u306eARM\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u306a\u3093\u304b\u3067\u3082\u554f\u984c\u306a\u304f\u52d5\u304d\u307e\u3057\u305f\uff0e\n\n\n\nDebian — \u30d1\u30c3\u30b1\u30fc\u30b8\u691c\u7d22\u7d50\u679c — speedtest-cli\n\n\n\n\nUbuntu \u2013 \u30d1\u30c3\u30b1\u30fc\u30b8\u691c\u7d22\u7d50\u679c — speedtest-cli\n\n\n\n\u898f\u5b9a\u5024\u306e\u52d5\u4f5c\u306fip\u304b\u3089\u30ed\u30b1\u30fc\u30b7\u30e7\u30f3\u62fe\u3063\u3066\u305d\u3053\u304b\u3089\u8fd1\u3044\u30b5\u30fc\u30d0\u30fc\u3067\u8a08\u6e2c\u3057\u305f\u7d50\u679c\u3092\u8fd4\u3059\u3088\u3046\u3067\u3059\uff0e\n\u81ea\u5b85\u306eip\u30a2\u30c9\u30ec\u30b9\u3067\u306e\u81ea\u52d5\u5224\u5b9a\u3067\u306f\u9759\u5ca1\u306b\u306a\u3063\u3066\u305f\u306e\u3067\u624b\u52d5\u3067\u8a08\u6e2c\u30b5\u30fc\u30d0\u3092\u5909\u66f4\u3057\u3066\u9e7f\u5150\u5cf6\u3068\u6771\u4eac\u3092\u8a66\u3057\u307e\u3057\u305f\uff0e\nhelp\n\n\n\n$ speedtest-cli -h\nusage: speedtest-cli [-h] [--bytes] [--share] [--simple] [--list]\n[--server SERVER] [--mini MINI] [--source SOURCE]\n[--timeout TIMEOUT] [--secure] [--version]\n\nCommand line interface for testing internet bandwidth using speedtest.net.\n--------------------------------------------------------------------------\nhttps://github.com/sivel/speedtest-cli\n\noptional arguments:\n-h, --help show this help message and exit\n--bytes Display values in bytes instead of bits. Does not affect\nthe image generated by --share\n--share Generate and provide a URL to the speedtest.net share\nresults image\n--simple Suppress verbose output, only show basic information\n--list Display a list of speedtest.net servers sorted by\ndistance\n--server SERVER Specify a server ID to test against\n--mini MINI URL of the Speedtest Mini server\n--source SOURCE Source IP address to bind to\n--timeout TIMEOUT HTTP timeout in seconds. Default 10\n--secure Use HTTPS instead of HTTP when communicating with\nspeedtest.net operated servers\n--version Show the version number and exit\n\n\n\n\u898f\u5b9a\u5024\u3067\u306f\u81ea\u5b85\u306f\u9759\u5ca1\u306b\u306a\u3063\u3066\u3044\u3066\u9759\u5ca1\u30b5\u30fc\u30d0\u3067\u8a08\u6e2c\u3059\u308b(\u5b9f\u969b\u306f\u9e7f\u5150\u5cf6)\n\n\n\n$ speedtest-cli\nRetrieving speedtest.net configuration...\nRetrieving speedtest.net server list...\nTesting from FreeBit (180.131.110.140)...\nSelecting best server based on latency...\nHosted by ClickL Network (Shizuoka) [0.02 km]: 110.464 ms\nTesting download speed........................................\nDownload: 2.07 Mbit/s\nTesting upload speed..................................................\nUpload: 0.92 Mbit/s\n\n\n\n\u65e5\u672c\u306e\u30b5\u30fc\u30d0\u3092\u78ba\u8a8d\u3059\u308b\n\n\n\n$ speedtest-cli --list|grep -i japan\n14180) ClickL Network (Shizuoka, Japan) [0.02 km]\n8407) Allied Telesis Capital Corporation (Sagamihara, Japan) [111.58 km]\n6087) Allied Telesis Capital Corporation (Fussa-shi, Japan) [120.41 km]\n6508) at2wn (Yokohama, Japan) [125.30 km]\n7510) ASEINet (Tokyo, Japan) [141.71 km]\n12546) TB (Tokyo, Japan) [141.71 km]\n12511) h3zjp (Nerima, Japan) [142.66 km]\n8348) Foxcore-LS (Sodegaura, Japan) [167.71 km]\n7139) SoftEther Corporation (Tsukuba, Japan) [192.41 km]\n6368) gatolabo (Maibara, Japan) [194.62 km]\n6766) JAIST(ino-lab) (Nomi, Japan) [232.28 km]\n13641) NextechNetworkSolutions (Nara, Japan) [237.53 km]\n6476) rxy (individual) (Osaka, Japan) [264.80 km]\n8832) prize3046 (Ikeda, Japan) [269.86 km]\n8193) kamiari (Sendai, Japan) [427.67 km]\n7976) denpa893 (Hikari, Japan) [601.03 km]\n6405) Allied Telesis Capital Corporation (Misawa, Japan) [686.38 km]\n13568) KSL (Kagoshima, Japan) [820.38 km]\n811) GLBB Japan KK (Chatan, Japan) [1397.84 km]\n6581) haza (Haebaru, Japan) [1410.56 km]\n\n\n\n\u9e7f\u5150\u5cf6\u30b5\u30fc\u30d0\u3067\u8a08\u6e2c\u3057\u3066\u307f\u308b\n\n\n\n$ speedtest-cli --server 13568\nRetrieving speedtest.net configuration...\nRetrieving speedtest.net server list...\nTesting from FreeBit (180.131.110.140)...\nHosted by KSL (Kagoshima) [820.38 km]: 103.499 ms\nTesting download speed........................................\nDownload: 2.20 Mbit/s\nTesting upload speed..................................................\nUpload: 0.92 Mbit/s\n\n\n\n\u6771\u4eac\u3092–simple option\u3067\u8a08\u6e2c\u3057\u3066\u307f\u308b\n\n\n\n$ speedtest-cli --simple --server 7510\nPing: 150.627 ms\nDownload: 1.88 Mbit/s\nUpload: 0.84 Mbit/s\n\n\n\n\u30b5\u30fc\u30d0\u306e\u6570\u3092\u78ba\u8a8d\u3057\u3066\u307f\u308b\n\n\n\n$ speedtest-cli --list | wc -l\n6509\n\n\n\nspeedtest\u306fJavaScript\u3084Adobe Flash\u304c\u5fc5\u8981\u306a\u3053\u3068\u304c\u591a\u304f\u3066\u30d8\u30c3\u30c9\u30ec\u30b9\u74b0\u5883\u306a\u3069\u3067\u306f\u9762\u5012\u3067\u3057\u305f\uff0e\niperf\u3084netcat\u306a\u3093\u304b\u306f\u304a\u624b\u8efd\u3067\u3059\u304c\uff0c\u901f\u5ea6\u30c6\u30b9\u30c8\u5148\u306e\u30b5\u30fc\u30d0\u306e\u7528\u610f\u304c\u5fc5\u8981\u3067\u3059\uff0e\n\u4eca\u56de\u306espeedtest-cli\u306f\u304a\u624b\u8efd\u306b\u5c0e\u5165\u3067\u304d\u3066\u4e16\u754c\u5404\u5730\u306e\u30b5\u30fc\u30d0\u76f8\u624b\u306bcli\u3067speed test\u3082\u51fa\u6765\u3066\u3044\u3044\u611f\u3058\u3067\u3059\uff0e", "date_published": "2017-09-09T07:30:10+09:00", "date_modified": "2017-09-09T07:30:10+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "speedtest", "Artful(17.10)", "Debian", "jessie", "Linux", "sid", "stretch", "Ubuntu", "xenial(16.04)", "yakkety(16.10)", "Zesty(17.04)" ] }, { "id": "http://matoken.org/blog/?p=1637", "url": "https://matoken.org/blog/2017/08/03/try-asciidocfx-in-the-arm64/", "title": "AsciiDocFX\u3092ARM64\u74b0\u5883\u3068\u304b\u3067\u8a66\u3059", "content_html": "

\n

\u6700\u8fd1\u8efd\u3081\u306e\u30e9\u30a4\u30d6\u30d7\u30ec\u30d3\u30e5\u30fc\u304c\u51fa\u6765\u3066ARM\u74b0\u5883\u3067\u3082\u52d5\u304fAsciiDoc\u74b0\u5883\u304c\u306a\u3044\u304b\u306a\u30fc\u3068\u63a2\u3057\u3066\u3044\u307e\u3059\uff0e\u4eca\u56de\u306fAsciiDocFX\uff0e

\n
\n
\n

Java\u88fd\u306e\u30de\u30eb\u30c1\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0\u30a8\u30c7\u30a3\u30bf\uff0e\u30e9\u30a4\u30d6\u30d7\u30ec\u30d3\u30e5\u30fc\u6a5f\u80fd\u3082\u3042\u308a\uff0e

\n
\n
\n\n
\n
Asciidoc FX is a book / document editor to build PDF, Epub, Mobi and HTML books, documents and slides. AsciidocFX is also a winner of https://www.oracle.com/corporate/pressrelease/dukes-award-102815.html[Duke\u2019s Choice Award 2015].
\n
\n
\n
\n

\u5c0e\u5165

\n
\n

\u30a2\u30fc\u30ab\u30a4\u30d6\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u5c55\u958b\u3059\u308b\u3060\u3051\uff0e\u30a2\u30fc\u30ab\u30a4\u30d6\u306fOS\u5225\u306bJRE\u540c\u68b1\u7248\u3068JRE\u306a\u3057\u7248\u304c\u3042\u308b\uff0e
\nLinux\u7248JRE\u540c\u68b1\u7248\u306f\u4e2d\u3092\u898b\u308b\u3068amd64\u3060\u3063\u305f\uff0e\u4ed6\u306earchtecture\u3067\u306fNo_JRE\u3092\u9078\u3076\u3057\u304b\u306a\u3055\u305d\u3046\uff0e

\n
\n\n
\n
\u5c0e\u5165\u4f8b
\n
\n
$ wget https://github.com/asciidocfx/AsciidocFX/releases/download/v1.5.5/AsciidocFX_Linux_No_JRE.tar.gz\n$ tar xvf AsciidocFX_Linux_No_JRE.tar.gz\n$ AsciidocFX/bin/AsciidocFX
\n
\n
\n
\n

OpenJDK\u3067\u52d5\u304b\u3059\u5834\u5408\u306f openjfx pkg\u3082\u5fc5\u8981\uff0e

\n
\n
\n
\n
$ sudo apt install openjdk-8-jre openjfx
\n
\n
\n\n
\n

ARM64 + OracleJava\u74b0\u5883\u3067\u306f\u52d5\u4f5c\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u3066\u3044\u306a\u3044\uff0e

\n
\n\n
\n
\n

\u8b66\u544a

\n
\n

\u52d5\u4f5c\u306f\u3057\u305f\u304c\uff0c overlay-scrollbar \u304c\u898b\u3064\u304b\u3089\u306a\u3044\u3068\u3044\u3046\u8b66\u544a\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u51fa\u308b\uff0e

\n
\n
\n
\n
$ ./AsciidocFX\nGtk-Message: Failed to load module \"overlay-scrollbar\"
\n
\n
\n
\n

overlay-scrollbar-gtk2 pkg\u3092\u5c0e\u5165\u3059\u308b\u3053\u3068\u3067\u89e3\u6c7a\uff0e

\n
\n
\n
\n
$ sudo apt install overlay-scrollbar-gtk2
\n
\n
\n
\n
\n

\u4f7f\u3044\u52dd\u624b

\n
\n
    \n
  • \n

    \n\u30e9\u30a4\u30d6\u30d7\u30ec\u30d3\u30e5\u30fc\u304c\u3042\u308b\u306e\u306f\u3084\u306f\u308a\u4fbf\u5229\n

    \n
    \n
      \n
    • \n

      \n\u3088\u304f\u305a\u308c\u308b\u3051\u3069\u3082\u2026\u2026\n

      \n
    • \n
    \n
    \n
  • \n
  • \n

    \n\u52d5\u4f5c\u306fCore2Duo\u30de\u30b7\u30f3\u3067\u3082\u8d77\u52d5\u306b\u306f\u6642\u9593\u304c\u304b\u304b\u308b\u304c\u8d77\u52d5\u3059\u308c\u3070\u554f\u984c\u306a\u304f\u5229\u7528\u3067\u304d\u308b\n

    \n
    \n
      \n
    • \n

      \nARM64(1.2GHz 64-Bit Quad-Core ARM Cortex A54)+OpenJDK\u74b0\u5883\u3067\u306f\u30ad\u30fc\u5165\u529b\u304b\u3089\u306e\u30bf\u30a4\u30e0\u30e9\u30b0\u304c\u6c17\u306b\u306a\u3063\u3066\u8f9b\u3044\n

      \n
    • \n
    \n
    \n
  • \n
  • \n

    \n\u66f8\u304d\u51fa\u3057\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u304cHTML, PDF, Ebook(mobi/Epub), Docbook\u3068\u8c4a\u5bcc\n

    \n
    \n
      \n
    • \n

      \n\u3057\u304b\u3057GUI\u3067\u3057\u304b\u5229\u7528\u3067\u304d\u306a\u3044\u3088\u3046\u3067Marp\u3068\u540c\u3058\u3088\u3046\u306a\u3082\u3069\u304b\u3057\u3055\u304c\u3042\u308b\n

      \n
    • \n
    \n
    \n
  • \n
  • \n

    \n\u57fa\u672c\u7684\u306b3\u30da\u30a4\u30f3\u3067\uff0c\u5de6\u7aef\u306f\u30d5\u30a1\u30a4\u30e9\u30fc\uff0c\u30a2\u30a6\u30c8\u30e9\u30a4\u30f3\uff0c\u6700\u8fd1\u4f7f\u3063\u305f\u30d5\u30a1\u30a4\u30eb\u304c\u5229\u7528\u3067\u304d\u308b\u304c\u9589\u3058\u308b\u3053\u3068\u3082\u51fa\u6765\u308b(\u5de6\u7aef\u306e\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u30bf\u30d6\u3092\u30af\u30ea\u30c3\u30af)\n

    \n
  • \n
  • \n

    \n\u53f3\u7aef\u30da\u30a4\u30f3\u306f\u30d7\u30ec\u30d3\u30e5\u30fc\uff0c\u8a2d\u5b9a\u304c\u53ef\u80fd\u3067\u3053\u308c\u3082\u9589\u3058\u308b\u3053\u3068\u51fa\u6765\u308b(\u53f3\u7aef\u306e\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u30bf\u30d6\u3092\u30af\u30ea\u30c3\u30af)\n

    \n
  • \n
  • \n

    \n\u30de\u30a6\u30b9\u306e\u4e2d\u30dc\u30bf\u30f3\u3084\uff0cshift+Ins\u3067\u306e\u8cbc\u4ed8\u3051\u304c\u3067\u304d\u306a\u3044\n

    \n
  • \n
  • \n

    \n\u901a\u5e38\u306e\u30b3\u30d4\u30fc\uff0c\u30da\u30fc\u30b9\u30c8\u3082\u3067\u304d\u306a\u304f\u306a\u308b\u3053\u3068\u304c\u3042\u308b\n

    \n
  • \n
  • \n

    \n\u5229\u7528\u4e2d\u306b\u30d5\u30a9\u30f3\u30c8\u304c\u6ef2\u3080\u3088\u3046\u306a\u8868\u793a\u306b\u306a\u308b\n

    \n
    \n
      \n
    • \n

      \n\u30a8\u30c7\u30a3\u30bf\u753b\u9762\u3084\u30d7\u30ec\u30d3\u30e5\u30fc\u753b\u9762\u306f\u66f4\u65b0\u3067\u76f4\u308b\u304c\u4ed6\u306e\u90e8\u5206\u306f\u8d77\u52d5\u3057\u76f4\u3055\u306a\u3044\u3068\u76f4\u3089\u306a\u3044\n

      \n
    • \n
    \n
    \n
  • \n
\n
\n
\n

\u3066\u3053\u3068\u3067\u30de\u30a6\u30b9\u4e2d\u30dc\u30bf\u30f3\u8cbc\u308a\u4ed8\u3051\u3084\u624b\u6301\u3061\u306eARM\u3067\u91cd\u3044\u3063\u3066\u3053\u3068\u3067\u9078\u5916\u306b\uff0e

\n
\n
\n
\n", "content_text": "\u6700\u8fd1\u8efd\u3081\u306e\u30e9\u30a4\u30d6\u30d7\u30ec\u30d3\u30e5\u30fc\u304c\u51fa\u6765\u3066ARM\u74b0\u5883\u3067\u3082\u52d5\u304fAsciiDoc\u74b0\u5883\u304c\u306a\u3044\u304b\u306a\u30fc\u3068\u63a2\u3057\u3066\u3044\u307e\u3059\uff0e\u4eca\u56de\u306fAsciiDocFX\uff0e\n\n\nJava\u88fd\u306e\u30de\u30eb\u30c1\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0\u30a8\u30c7\u30a3\u30bf\uff0e\u30e9\u30a4\u30d6\u30d7\u30ec\u30d3\u30e5\u30fc\u6a5f\u80fd\u3082\u3042\u308a\uff0e\n\n\nAsciidoc Book Editor based on JavaFX 8\n\nAsciidoc FX is a book / document editor to build PDF, Epub, Mobi and HTML books, documents and slides. AsciidocFX is also a winner of https://www.oracle.com/corporate/pressrelease/dukes-award-102815.html[Duke\u2019s Choice Award 2015].\n\n\n\n\u5c0e\u5165\n\n\u30a2\u30fc\u30ab\u30a4\u30d6\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u5c55\u958b\u3059\u308b\u3060\u3051\uff0e\u30a2\u30fc\u30ab\u30a4\u30d6\u306fOS\u5225\u306bJRE\u540c\u68b1\u7248\u3068JRE\u306a\u3057\u7248\u304c\u3042\u308b\uff0e\nLinux\u7248JRE\u540c\u68b1\u7248\u306f\u4e2d\u3092\u898b\u308b\u3068amd64\u3060\u3063\u305f\uff0e\u4ed6\u306earchtecture\u3067\u306fNo_JRE\u3092\u9078\u3076\u3057\u304b\u306a\u3055\u305d\u3046\uff0e\n\n\n\n\n\nHow to Install AsciidocFX \n\n\n\n\n\n\u5c0e\u5165\u4f8b\n\n$ wget https://github.com/asciidocfx/AsciidocFX/releases/download/v1.5.5/AsciidocFX_Linux_No_JRE.tar.gz\n$ tar xvf AsciidocFX_Linux_No_JRE.tar.gz\n$ AsciidocFX/bin/AsciidocFX\n\n\n\nOpenJDK\u3067\u52d5\u304b\u3059\u5834\u5408\u306f openjfx pkg\u3082\u5fc5\u8981\uff0e\n\n\n\n$ sudo apt install openjdk-8-jre openjfx\n\n\n\n\n\n\nOpenJDK\u74b0\u5883\u3067AsciidocFX\u3092\u52d5\u304b\u3059 | matoken’s meme\n\n\n\n\n\nARM64 + OracleJava\u74b0\u5883\u3067\u306f\u52d5\u4f5c\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u3066\u3044\u306a\u3044\uff0e\n\n\n\n\n\nmatoken social:”Debian arm64\u74b0\u5883\u306bOracle Java\u5c0e\u5165\u3081\u3082”\n\n\n\n\n\n\n\u8b66\u544a\n\n\u52d5\u4f5c\u306f\u3057\u305f\u304c\uff0c overlay-scrollbar \u304c\u898b\u3064\u304b\u3089\u306a\u3044\u3068\u3044\u3046\u8b66\u544a\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u51fa\u308b\uff0e\n\n\n\n$ ./AsciidocFX\nGtk-Message: Failed to load module \"overlay-scrollbar\"\n\n\n\noverlay-scrollbar-gtk2 pkg\u3092\u5c0e\u5165\u3059\u308b\u3053\u3068\u3067\u89e3\u6c7a\uff0e\n\n\n\n$ sudo apt install overlay-scrollbar-gtk2\n\n\n\n\n\u4f7f\u3044\u52dd\u624b\n\n\n\n\n\u30e9\u30a4\u30d6\u30d7\u30ec\u30d3\u30e5\u30fc\u304c\u3042\u308b\u306e\u306f\u3084\u306f\u308a\u4fbf\u5229\n\n\n\n\n\n\u3088\u304f\u305a\u308c\u308b\u3051\u3069\u3082\u2026\u2026\n\n\n\n\n\n\n\n\u52d5\u4f5c\u306fCore2Duo\u30de\u30b7\u30f3\u3067\u3082\u8d77\u52d5\u306b\u306f\u6642\u9593\u304c\u304b\u304b\u308b\u304c\u8d77\u52d5\u3059\u308c\u3070\u554f\u984c\u306a\u304f\u5229\u7528\u3067\u304d\u308b\n\n\n\n\n\nARM64(1.2GHz 64-Bit Quad-Core ARM Cortex A54)+OpenJDK\u74b0\u5883\u3067\u306f\u30ad\u30fc\u5165\u529b\u304b\u3089\u306e\u30bf\u30a4\u30e0\u30e9\u30b0\u304c\u6c17\u306b\u306a\u3063\u3066\u8f9b\u3044\n\n\n\n\n\n\n\n\u66f8\u304d\u51fa\u3057\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u304cHTML, PDF, Ebook(mobi/Epub), Docbook\u3068\u8c4a\u5bcc\n\n\n\n\n\n\u3057\u304b\u3057GUI\u3067\u3057\u304b\u5229\u7528\u3067\u304d\u306a\u3044\u3088\u3046\u3067Marp\u3068\u540c\u3058\u3088\u3046\u306a\u3082\u3069\u304b\u3057\u3055\u304c\u3042\u308b\n\n\n\n\n\n\n\n\u57fa\u672c\u7684\u306b3\u30da\u30a4\u30f3\u3067\uff0c\u5de6\u7aef\u306f\u30d5\u30a1\u30a4\u30e9\u30fc\uff0c\u30a2\u30a6\u30c8\u30e9\u30a4\u30f3\uff0c\u6700\u8fd1\u4f7f\u3063\u305f\u30d5\u30a1\u30a4\u30eb\u304c\u5229\u7528\u3067\u304d\u308b\u304c\u9589\u3058\u308b\u3053\u3068\u3082\u51fa\u6765\u308b(\u5de6\u7aef\u306e\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u30bf\u30d6\u3092\u30af\u30ea\u30c3\u30af)\n\n\n\n\n\u53f3\u7aef\u30da\u30a4\u30f3\u306f\u30d7\u30ec\u30d3\u30e5\u30fc\uff0c\u8a2d\u5b9a\u304c\u53ef\u80fd\u3067\u3053\u308c\u3082\u9589\u3058\u308b\u3053\u3068\u51fa\u6765\u308b(\u53f3\u7aef\u306e\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u30bf\u30d6\u3092\u30af\u30ea\u30c3\u30af)\n\n\n\n\n\u30de\u30a6\u30b9\u306e\u4e2d\u30dc\u30bf\u30f3\u3084\uff0cshift+Ins\u3067\u306e\u8cbc\u4ed8\u3051\u304c\u3067\u304d\u306a\u3044\n\n\n\n\n\u901a\u5e38\u306e\u30b3\u30d4\u30fc\uff0c\u30da\u30fc\u30b9\u30c8\u3082\u3067\u304d\u306a\u304f\u306a\u308b\u3053\u3068\u304c\u3042\u308b\n\n\n\n\n\u5229\u7528\u4e2d\u306b\u30d5\u30a9\u30f3\u30c8\u304c\u6ef2\u3080\u3088\u3046\u306a\u8868\u793a\u306b\u306a\u308b\n\n\n\n\n\n\u30a8\u30c7\u30a3\u30bf\u753b\u9762\u3084\u30d7\u30ec\u30d3\u30e5\u30fc\u753b\u9762\u306f\u66f4\u65b0\u3067\u76f4\u308b\u304c\u4ed6\u306e\u90e8\u5206\u306f\u8d77\u52d5\u3057\u76f4\u3055\u306a\u3044\u3068\u76f4\u3089\u306a\u3044\n\n\n\n\n\n\n\n\n\u3066\u3053\u3068\u3067\u30de\u30a6\u30b9\u4e2d\u30dc\u30bf\u30f3\u8cbc\u308a\u4ed8\u3051\u3084\u624b\u6301\u3061\u306eARM\u3067\u91cd\u3044\u3063\u3066\u3053\u3068\u3067\u9078\u5916\u306b\uff0e", "date_published": "2017-08-03T06:14:20+09:00", "date_modified": "2017-08-03T06:14:20+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "AsciiDoc", "AsciidocFX", "Java", "Linux", "Artful(17.10)", "Debian", "stretch", "Ubuntu" ] }, { "id": "http://matoken.org/blog/?p=1631", "url": "https://matoken.org/blog/2017/08/01/debian-arm64%e7%92%b0%e5%a2%83%e3%81%aboracle-java%e5%b0%8e%e5%85%a5/", "title": "Debian arm64\u74b0\u5883\u306bOracle Java\u5c0e\u5165", "content_html": "
\n

AsciidocFX\u306fOpenJDK\u3067\u52d5\u304b\u306a\u3044\u307d\u3044\u306e\u3067Oracle Java\u5165\u308c\u3066\u307f\u3088\u3046\u3068\u3057\u3066\u5c11\u3057\u306f\u307e\u308a\u307e\u3057\u305f\uff0e

\n
\n
\n

\u203b\u305d\u306e\u5f8c\u52d5\u3044\u305f

\n\n
\n
\n
\n
\n

Oracle Java\u306f java-package \u3092\u4f7f\u3046\u3088\u3046\u306b\u306a\u3063\u305f\u306e\u304b\u306a\u308b\u307b\u3069

\n
\n
\n\n
\n
\n

\u3068\u3044\u3046\u3053\u3068\u3067\u307e\u305a\u306f java-package pkg\u3092\u5c0e\u5165\uff0e

\n
\n
\n
\n
$ sudo apt install java-package
\n
\n
\n
\n

Oracle\u304b\u3089jre\u3092\u5165\u624b\u3068\u601d\u3063\u305f\u3089arm\u306ejae\u304a\u3089\u3093\u304b\u3063\u305f\u2026\u2026

\n
\n
\n\n
\n
\n

jdk\u306b\u306f Linux ARM 32 Hard Float ABI, Linux ARM 64 Hard Float ABI \u304c\u3042\u308b\u306e\u3067\u3053\u308c\u3092\u5165\u308c\u3066\u307f\u308b\uff0e

\n
\n
\n\n
\n
\n

\u3057\u304b\u3057\u3050\u306c\u306c\uff0e

\n
\n
\n
\n
$ make-jpkg ./jdk-8u141-linux-arm64-vfp-hflt.tar.gz\nCreating temporary directory: /tmp/make-jpkg.wW7eUWpw3m\nLoading plugins: /usr/share/java-package/common.sh /usr/share/java-package/javase.sh /usr/share/java-package/jdk-doc.sh /usr/share/java-package/oracle-jdk-doc.sh /usr/share/java-package/oracle-jdk.sh /usr/share/java-package/oracle-jre.sh /usr/share/java-package/oracle-server-jre.sh\n\nDetected Debian build architecture: arm64\nDetected Debian GNU type: aarch64-linux-gnu\n\nNo matching packaging method was found for jdk-8u141-linux-arm64-vfp-hflt.tar.gz.\nPlease make sure you are using a tar.gz or a self-extracting archive\nRemoving temporary directory: done
\n
\n
\n
\n

jdk\u306earchive\u3092\u5c55\u958b\u3057\u3066 jaja -version \u3068\u304b\u3057\u3066\u307f\u308b\u3068\u52d5\u304f\u3088\u3046\u306a\u306e\u3067\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3059\u308b\u30d5\u30a1\u30a4\u30eb\u306f\u5408\u3063\u3066\u3044\u305d\u3046\uff0e

\n
\n
\n

\u30d0\u30b0\u3068\u3057\u3066\u4e0a\u304c\u3063\u3066\u3044\u305f\uff0e

\n
\n
\n\n
\n
\n

\u3053\u3061\u3089\u306e\u30d1\u30c3\u30c1\u3092\u4f7f\u308f\u305b\u3066\u3082\u3089\u3046\uff0e

\n
\n
\n\n
\n
\n
\n
$ wget 'https://bugs.debian.org/cgi-bin/bugreport.cgi?att=2;bug=863247;filename=java-package.patch;msg=10' -O java-package.patch\n$ sudo patch -P0 -d / < ./java-package.patch\n$ time make-jpkg ./jdk-8u141-linux-arm64-vfp-hflt.tar.gz\n  :\nreal    9m58.079s\nuser    8m53.790s\nsys     1m29.510s\n$ sha256sum oracle-java8-jdk_8u141_arm64.deb\n93a9b6136195616db7e33749eec783a224a125c2b3529385b548a49f5189af12  oracle-java8-jdk_8u141_arm64.deb\n$ sudo dpkg -i oracle-java8-jdk_8u141_arm64.deb
\n
\n
\n
\n

java\u3092Oracle\u306b\u5207\u308a\u66ff\u3048\u308b\uff0e

\n
\n
\n
\n
$ sudo update-alternatives --config java\nThere are 2 choices for the alternative java (providing /usr/bin/java).\n\n  Selection    Path                                              Priority   Status\n ------------------------------------------------------------\n* 0            /usr/lib/jvm/java-8-openjdk-arm64/jre/bin/java     1081      auto mode\n  1            /usr/lib/jvm/java-8-openjdk-arm64/jre/bin/java     1081      manual mode\n  2            /usr/lib/jvm/oracle-java8-jdk-arm64/jre/bin/java   318       manual mode\n\nPress <enter> to keep the current choice[*], or type selection number: 2\nupdate-alternatives: using /usr/lib/jvm/oracle-java8-jdk-arm64/jre/bin/java to provide /usr/bin/java (java) in manual mode\n$ java -version\njava version \"1.8.0_141\"\nJava(TM) SE Runtime Environment (build 1.8.0_141-b15)\nJava HotSpot(TM) 64-Bit Server VM (build 25.141-b15, mixed mode)
\n
\n
\n
\n

\u3068\u3053\u308d\u3067\uff0c\u306a\u305cOracle Java\u3092arm\u3067\u52d5\u304b\u3057\u305f\u304b\u3063\u305f\u304b\u3068\u3044\u3046\u3068AsciidocFX\u304c\u5b9f\u7528\u7684\u304b\u3069\u3046\u304b\u3092\u8a66\u3057\u305f\u304b\u3063\u305f\u304b\u3089\u3067\u3057\u305f\uff0e\u3057\u304b\u3057\u8b66\u544a\u3092\u51fa\u3057\u3066\u3059\u3050\u306b\u7d42\u4e86\u3057\u3066\u3057\u307e\u3044\u307e\u3057\u305f\u2026\u2026\uff0e
\narm\u3067\u672a\u5b9f\u88c5\u306e\u6a5f\u80fd\u3092\u4f7f\u3063\u3066\u3044\u308b\u611f\u3058\u3067\u3057\u3087\u3046\u304b?

\n
\n
\n
\n
$ AsciidocFX_Linux_No_JRE/AsciidocFX\nJava HotSpot(TM) 64-Bit Server VM warning: G1 GC is disabled in this release.
\n
\n
\n
\n

\u3066\u3053\u3068\u3067\u524a\u9664\u3057\u307e\u3057\u305f\uff0e(169MB\u306e\u5bb9\u91cf\u304c\u958b\u653e\u3055\u308c\u307e\u3057\u305f)

\n
\n
\n
\n
$ sudo apt purge oracle-java8-jdk java-package\n$ sudo rm -rf /usr/share/java-package
\n
\n
\n", "content_text": "AsciidocFX\u306fOpenJDK\u3067\u52d5\u304b\u306a\u3044\u307d\u3044\u306e\u3067Oracle Java\u5165\u308c\u3066\u307f\u3088\u3046\u3068\u3057\u3066\u5c11\u3057\u306f\u307e\u308a\u307e\u3057\u305f\uff0e\n\n\n\u203b\u305d\u306e\u5f8c\u52d5\u3044\u305f\n\n\n\n\nOpenJDK\u74b0\u5883\u3067AsciidocFX\u3092\u52d5\u304b\u3059 | matoken's meme\n\n\n\n\n\n\n\n\nOracle Java\u306f java-package \u3092\u4f7f\u3046\u3088\u3046\u306b\u306a\u3063\u305f\u306e\u304b\u306a\u308b\u307b\u3069\n\n\n\n\n\nJavaPackage – Debian Wiki\n\n\n\n\n\n\u3068\u3044\u3046\u3053\u3068\u3067\u307e\u305a\u306f java-package pkg\u3092\u5c0e\u5165\uff0e\n\n\n\n$ sudo apt install java-package\n\n\n\nOracle\u304b\u3089jre\u3092\u5165\u624b\u3068\u601d\u3063\u305f\u3089arm\u306ejae\u304a\u3089\u3093\u304b\u3063\u305f\u2026\u2026\n\n\n\n\n\nJava SE Runtime Environment 8 – Downloads\n\n\n\n\n\njdk\u306b\u306f Linux ARM 32 Hard Float ABI, Linux ARM 64 Hard Float ABI \u304c\u3042\u308b\u306e\u3067\u3053\u308c\u3092\u5165\u308c\u3066\u307f\u308b\uff0e\n\n\n\n\n\nJava SE Development Kit 8 – Downloads\n\n\n\n\n\n\u3057\u304b\u3057\u3050\u306c\u306c\uff0e\n\n\n\n$ make-jpkg ./jdk-8u141-linux-arm64-vfp-hflt.tar.gz\nCreating temporary directory: /tmp/make-jpkg.wW7eUWpw3m\nLoading plugins: /usr/share/java-package/common.sh /usr/share/java-package/javase.sh /usr/share/java-package/jdk-doc.sh /usr/share/java-package/oracle-jdk-doc.sh /usr/share/java-package/oracle-jdk.sh /usr/share/java-package/oracle-jre.sh /usr/share/java-package/oracle-server-jre.sh\n\nDetected Debian build architecture: arm64\nDetected Debian GNU type: aarch64-linux-gnu\n\nNo matching packaging method was found for jdk-8u141-linux-arm64-vfp-hflt.tar.gz.\nPlease make sure you are using a tar.gz or a self-extracting archive\nRemoving temporary directory: done\n\n\n\njdk\u306earchive\u3092\u5c55\u958b\u3057\u3066 jaja -version \u3068\u304b\u3057\u3066\u307f\u308b\u3068\u52d5\u304f\u3088\u3046\u306a\u306e\u3067\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3059\u308b\u30d5\u30a1\u30a4\u30eb\u306f\u5408\u3063\u3066\u3044\u305d\u3046\uff0e\n\n\n\u30d0\u30b0\u3068\u3057\u3066\u4e0a\u304c\u3063\u3066\u3044\u305f\uff0e\n\n\n\n\n\n#863247 – java-package: ARM support bitrotted – Debian Bug report logs\n\n\n\n\n\n\u3053\u3061\u3089\u306e\u30d1\u30c3\u30c1\u3092\u4f7f\u308f\u305b\u3066\u3082\u3089\u3046\uff0e\n\n\n\n\n\nhttps://bugs.debian.org/cgi-bin/bugreport.cgi?att=2;bug=863247;filename=java-package.patch;msg=10\n\n\n\n\n\n\n$ wget 'https://bugs.debian.org/cgi-bin/bugreport.cgi?att=2;bug=863247;filename=java-package.patch;msg=10' -O java-package.patch\n$ sudo patch -P0 -d / < ./java-package.patch\n$ time make-jpkg ./jdk-8u141-linux-arm64-vfp-hflt.tar.gz\n :\nreal 9m58.079s\nuser 8m53.790s\nsys 1m29.510s\n$ sha256sum oracle-java8-jdk_8u141_arm64.deb\n93a9b6136195616db7e33749eec783a224a125c2b3529385b548a49f5189af12 oracle-java8-jdk_8u141_arm64.deb\n$ sudo dpkg -i oracle-java8-jdk_8u141_arm64.deb\n\n\n\njava\u3092Oracle\u306b\u5207\u308a\u66ff\u3048\u308b\uff0e\n\n\n\n$ sudo update-alternatives --config java\nThere are 2 choices for the alternative java (providing /usr/bin/java).\n\n Selection Path Priority Status\n ------------------------------------------------------------\n* 0 /usr/lib/jvm/java-8-openjdk-arm64/jre/bin/java 1081 auto mode\n 1 /usr/lib/jvm/java-8-openjdk-arm64/jre/bin/java 1081 manual mode\n 2 /usr/lib/jvm/oracle-java8-jdk-arm64/jre/bin/java 318 manual mode\n\nPress <enter> to keep the current choice[*], or type selection number: 2\nupdate-alternatives: using /usr/lib/jvm/oracle-java8-jdk-arm64/jre/bin/java to provide /usr/bin/java (java) in manual mode\n$ java -version\njava version \"1.8.0_141\"\nJava(TM) SE Runtime Environment (build 1.8.0_141-b15)\nJava HotSpot(TM) 64-Bit Server VM (build 25.141-b15, mixed mode)\n\n\n\n\u3068\u3053\u308d\u3067\uff0c\u306a\u305cOracle Java\u3092arm\u3067\u52d5\u304b\u3057\u305f\u304b\u3063\u305f\u304b\u3068\u3044\u3046\u3068AsciidocFX\u304c\u5b9f\u7528\u7684\u304b\u3069\u3046\u304b\u3092\u8a66\u3057\u305f\u304b\u3063\u305f\u304b\u3089\u3067\u3057\u305f\uff0e\u3057\u304b\u3057\u8b66\u544a\u3092\u51fa\u3057\u3066\u3059\u3050\u306b\u7d42\u4e86\u3057\u3066\u3057\u307e\u3044\u307e\u3057\u305f\u2026\u2026\uff0e\narm\u3067\u672a\u5b9f\u88c5\u306e\u6a5f\u80fd\u3092\u4f7f\u3063\u3066\u3044\u308b\u611f\u3058\u3067\u3057\u3087\u3046\u304b?\n\n\n\n$ AsciidocFX_Linux_No_JRE/AsciidocFX\nJava HotSpot(TM) 64-Bit Server VM warning: G1 GC is disabled in this release.\n\n\n\n\u3066\u3053\u3068\u3067\u524a\u9664\u3057\u307e\u3057\u305f\uff0e(169MB\u306e\u5bb9\u91cf\u304c\u958b\u653e\u3055\u308c\u307e\u3057\u305f)\n\n\n\n$ sudo apt purge oracle-java8-jdk java-package\n$ sudo rm -rf /usr/share/java-package", "date_published": "2017-08-01T21:49:26+09:00", "date_modified": "2017-08-01T21:49:26+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "AsciiDoc", "AsciidocFX", "OraleJava", "Debian", "Linux", "stretch" ] }, { "id": "http://matoken.org/blog/?p=1618", "url": "https://matoken.org/blog/2017/06/05/on-debian-mozc-build-with-arm64/", "title": "Debian\u3067\u3082arm64\u3067mozc build", "content_html": "

EDIT: \u73fe\u5728\u306f\u6b21\u306e\u8a18\u4e8b\u306e\u624b\u9806\u306e\u307b\u3046\u304c\u826f\u3044\u3068\u601d\u3044\u307e\u3059 ->\u00a0Debian, Ubuntu \u3067 \u4e0a\u6d41\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u501f\u308a\u3066\u304f\u308b \u2013 matoken’s meme

\n


\n\"20170605_00:06:13-17276\"

\n

\u5148\u65e5Ubuntu 16.04 arm64\u74b0\u5883\u3067mozc pkg\u3092\u4f5c\u308a\u307e\u3057\u305f\uff0e

\n\n

\u4eca\u56de\u306fDebian stretch arm64\u3067\u3082\u4f5c\u3063\u3066\u307f\u307e\u3057\u305f\uff0e

\n

\u74b0\u5883\u306fQualcom\u306e96Board\u306eDragonBoard 410c\u306bDebian stretch aarch64\u306e\u30a4\u30e1\u30fc\u30b8(dragonboard410c_sdcard_install_debian-233.zip)\u3092\u4f7f\u3044\u307e\u3057\u305f\uff0e

\n

OS\u30a4\u30e1\u30fc\u30b8\u306e\u5165\u624b\u3084\u5c0e\u5165\u65b9\u6cd5\u306a\u3069\u306f\u4ee5\u4e0b\u306e\u3042\u305f\u308a\u306b\u3042\u308a\u307e\u3059\uff0e

\n\n

\u624b\u5143\u3067\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\u3067sd card\u306b\u66f8\u304d\u8fbc\u3093\u3060\u5f8cdip\u30b9\u30a4\u30c3\u30c1\u3067sd\u8d77\u52d5\u306b\u3057\u3066\u8d77\u52d5\u3057\u3066eMMC\u306b\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e

\n
\n
$ md5sum dragonboard410c_sdcard_install_debian-233.zip\r\nef17a1602cf0ef300e123a3224e0699d  dragonboard410c_sdcard_install_debian-233.zip\r\n$ unzip -l dragonboard410c_sdcard_install_debian-233.zip\r\nArchive:  dragonboard410c_sdcard_install_debian-233.zip\r\n  Length      Date    Time    Name\r\n---------  ---------- -----   ----\r\n4055891968  2017-05-11 05:25   db410c_sd_install_debian.img\r\n    13953  2017-05-04 21:45   LICENSE\r\n---------                     -------\r\n4055905921                     2 files\r\n$ unzip -p dragonboard410c_sdcard_install_debian-233.zip LICENSE | lv\r\n$ unzip -p dragonboard410c_sdcard_install_debian-233.zip db410c_sd_install_debian.img | pv | sudo dd of=/dev/mmcblk0 bs=4M\r\n$ sync\r\n$ sync\r\n$ sync\r\n
\n
\n

\u5f8c\u306e\u624b\u9806\u306f\u307b\u307c\u524d\u56de\u306eUbuntu\u3068\u540c\u3058\u3067\u3059\u304c\uff0c

\n
\n
dpkg-buildpackage: error: fakeroot not found, either install the fakeroot\r\npackage, specify a command with the -r option, or run this as root  \r\n
\n
\n

\u3068fakeroot\u304c\u7121\u3044\u3068\u8d77\u3053\u3089\u308c\u305f\u306e\u3067\u5c0e\u5165\u30d1\u30c3\u30b1\u30fc\u30b8\u306bfakeroot\u3092\u8ffd\u52a0\u3057\u305f\u306e\u3068\uff0c

\n
\n
virtual memory exhausted: Cannot allocate memory\r\n
\n
\n

\u3068\u3044\u3046\u611f\u3058\u3067\u30b3\u30b1\u305f\u306e\u3067\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\u3067\u30b9\u30ef\u30c3\u30d7\u30d5\u30a1\u30a4\u30eb\u3092\u8ffd\u52a0\u3057\u3066\u56de\u907f\u3057\u307e\u3057\u305f\uff0e\u524d\u56de\u306eUbuntu\u3092\u5165\u308c\u3066\u308b\u65b9\u306e\u6a5f\u68b0\u306fRAM2GB\u306a\u306e\u3067RAM1GB+SWAP1GB\u3067\u3082\u884c\u3051\u308b\u3068\u601d\u3044\u307e\u3059\u304c\u5ff5\u306e\u70ba2GB\u8ffd\u52a0\u3057\u307e\u3057\u305f\uff0e

\n
\n
$ dd if=/dev/zero of=/var/tmp/swap bs=1M count=2048\r\n$ sudo chmod 600 /var/tmp/swap\r\n$ sudo chown 0.0 /var/tmp/swap\r\n$ sudo mkswap /var/tmp/swap\r\n$ sudo swapon /var/tmp/swap\r\n$ free\r\n              total        used        free      shared  buff/cache   available\r\nMem:         945868      225736      444948       40784      275184      608980\r\nSwap:       2097148           0     2097148\r\n
\n
\n

\u3067\uff0c\u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\u3068\u5c0e\u5165\u306e\u624b\u9806\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u3057\u305f\uff0e

\n
\n
$ sudo apt update\r\n$ sudo apt upgrade\r\n$ sudo apt install build-essential devscripts fakeroot\r\n$ sudo apt build-dep mozc\r\n$ apt source mozc\r\n$ wget https://gist.githubusercontent.com/matoken/afce66ce67392c11d3ed20d7bbab5833/raw/2bb0163f30291caa6ba7b41b3d4352c7e6c0b6a7/patch\r\n$ patch -p0 < patch\r\n$ cd mozc-2.19.2623.102+dfsg\r\n$ time dpkg-buildpackage -us -uc -j4\r\n   :\r\nreal    111m31.882s\r\nuser    88m2.352s\r\nsys     10m59.828s\r\n$ dch -i\r\n$ head debian/changelog \r\nmozc (2.19.2623.102+dfsg-1.1) unstable; urgency=medium\r\n\r\n  * Non-maintainer upload.\r\n  * Update debian/control.\r\n    - Add arm64 to Architecture list.\r\n\r\n -- K.I.Matohara <matoken@gmail.com>  Sat, 03 Jun 2017 22:15:19 +0000\r\n\r\nmozc (2.19.2623.102+dfsg-1) unstable; urgency=medium\r\n\r\n$ dpkg-buildpackage -j4\r\n$ ls -la ../*dfsg-1.1_*\r\n-rw-r--r-- 1 linaro linaro  2130510 Jun  4 01:10 ../emacs-mozc-bin-dbgsym_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro   157710 Jun  4 01:10 ../emacs-mozc-bin_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro    28118 Jun  4 01:10 ../emacs-mozc_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro  2765446 Jun  4 01:10 ../fcitx-mozc-dbgsym_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro   224574 Jun  4 01:10 ../fcitx-mozc_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro  3088148 Jun  4 01:10 ../ibus-mozc-dbgsym_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro   189886 Jun  4 01:10 ../ibus-mozc_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro    14134 Jun  4 01:10 ../mozc-data_2.19.2623.102+dfsg-1.1_all.deb\r\n-rw-r--r-- 1 linaro linaro 24825020 Jun  4 01:11 ../mozc-server-dbgsym_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro 12310852 Jun  4 01:11 ../mozc-server_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro  9823936 Jun  4 01:11 ../mozc-utils-gui-dbgsym_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro   755758 Jun  4 01:11 ../mozc-utils-gui_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro    18228 Jun  4 04:00 ../mozc_2.19.2623.102+dfsg-1.1_arm64.buildinfo\r\n-rw-r--r-- 1 linaro linaro     6898 Jun  4 04:00 ../mozc_2.19.2623.102+dfsg-1.1_arm64.changes\r\n-rw-r--r-- 1 linaro linaro  1921396 Jun  4 01:10 ../uim-mozc-dbgsym_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro   192712 Jun  4 01:10 ../uim-mozc_2.19.2623.102+dfsg-1.1_arm64.deb\r\n$ sudo apt install ../mozc-server_2.19.2623.102+dfsg-1.1_arm64.deb ../fcitx-mozc_2.19.2623.102+dfsg-1.1_arm64.deb ../mozc-data_2.19.2623.102+dfsg-1.1_all.deb ../mozc-utils-gui_2.19.2623.102+dfsg-1.1_arm64.deb \r\n$ sudo apt install fcitx-ui-classic\r\n
\n
\n

\u3053\u308c\u3082\u4e00\u5fdc\u3053\u306e\u8fba\u306b\u7f6e\u3044\u3066\u304a\u304d\u307e\u3057\u305f\uff0e\u591a\u5206\u305d\u306e\u3046\u3061\u6d88\u3057\u307e\u3059\uff0e(Version\u304c\u4e0a\u304c\u3063\u305f\u9803?)

\n\n

\u3053\u308c\u3067\u3068\u308a\u3042\u3048\u305a\u624b\u5143\u306eUbuntu/Debian\u3067\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\u304c\uff0cmozc\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u30a2\u30c3\u30d7\u6bce\u306bbuild\u304c\u5fc5\u8981\u3067\u3059\uff0e\u306a\u306e\u3067BTS\u4e88\u5b9a\uff0e\u3042\u3068\u30af\u30ed\u30b9\u3067\u8a66\u3059\u306e\u3068Multiarch\u3082\u8a66\u3057\u3066\u307f\u305f\u3044\u3067\u3059\uff0e

\n

\u53c2\u8003URL

\n\n", "content_text": "EDIT: \u73fe\u5728\u306f\u6b21\u306e\u8a18\u4e8b\u306e\u624b\u9806\u306e\u307b\u3046\u304c\u826f\u3044\u3068\u601d\u3044\u307e\u3059 ->\u00a0Debian, Ubuntu \u3067 \u4e0a\u6d41\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u501f\u308a\u3066\u304f\u308b \u2013 matoken’s meme\n\n\n\u5148\u65e5Ubuntu 16.04 arm64\u74b0\u5883\u3067mozc pkg\u3092\u4f5c\u308a\u307e\u3057\u305f\uff0e\n\nUbuntu 16.04 aarch64\u74b0\u5883\u3067mozc pkg\u304c\u7121\u3044\u306e\u3067source pkg\u304b\u3089build | matoken\u2019s meme\n\n\u4eca\u56de\u306fDebian stretch arm64\u3067\u3082\u4f5c\u3063\u3066\u307f\u307e\u3057\u305f\uff0e\n\u74b0\u5883\u306fQualcom\u306e96Board\u306eDragonBoard 410c\u306bDebian stretch aarch64\u306e\u30a4\u30e1\u30fc\u30b8(dragonboard410c_sdcard_install_debian-233.zip)\u3092\u4f7f\u3044\u307e\u3057\u305f\uff0e\nOS\u30a4\u30e1\u30fc\u30b8\u306e\u5165\u624b\u3084\u5c0e\u5165\u65b9\u6cd5\u306a\u3069\u306f\u4ee5\u4e0b\u306e\u3042\u305f\u308a\u306b\u3042\u308a\u307e\u3059\uff0e\n\nDragonBoard 410 Getting Started Guide (README.md)\nDragonBoard 410 Getting Started Guide (Debian.md)\nDragonBoard 410 Getting Started Guide (LinuxSD.md)\n\n\u624b\u5143\u3067\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\u3067sd card\u306b\u66f8\u304d\u8fbc\u3093\u3060\u5f8cdip\u30b9\u30a4\u30c3\u30c1\u3067sd\u8d77\u52d5\u306b\u3057\u3066\u8d77\u52d5\u3057\u3066eMMC\u306b\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e\n\n$ md5sum dragonboard410c_sdcard_install_debian-233.zip\r\nef17a1602cf0ef300e123a3224e0699d dragonboard410c_sdcard_install_debian-233.zip\r\n$ unzip -l dragonboard410c_sdcard_install_debian-233.zip\r\nArchive: dragonboard410c_sdcard_install_debian-233.zip\r\n Length Date Time Name\r\n--------- ---------- ----- ----\r\n4055891968 2017-05-11 05:25 db410c_sd_install_debian.img\r\n 13953 2017-05-04 21:45 LICENSE\r\n--------- -------\r\n4055905921 2 files\r\n$ unzip -p dragonboard410c_sdcard_install_debian-233.zip LICENSE | lv\r\n$ unzip -p dragonboard410c_sdcard_install_debian-233.zip db410c_sd_install_debian.img | pv | sudo dd of=/dev/mmcblk0 bs=4M\r\n$ sync\r\n$ sync\r\n$ sync\r\n\n\n\u5f8c\u306e\u624b\u9806\u306f\u307b\u307c\u524d\u56de\u306eUbuntu\u3068\u540c\u3058\u3067\u3059\u304c\uff0c\n\ndpkg-buildpackage: error: fakeroot not found, either install the fakeroot\r\npackage, specify a command with the -r option, or run this as root \r\n\n\n\u3068fakeroot\u304c\u7121\u3044\u3068\u8d77\u3053\u3089\u308c\u305f\u306e\u3067\u5c0e\u5165\u30d1\u30c3\u30b1\u30fc\u30b8\u306bfakeroot\u3092\u8ffd\u52a0\u3057\u305f\u306e\u3068\uff0c\n\nvirtual memory exhausted: Cannot allocate memory\r\n\n\n\u3068\u3044\u3046\u611f\u3058\u3067\u30b3\u30b1\u305f\u306e\u3067\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\u3067\u30b9\u30ef\u30c3\u30d7\u30d5\u30a1\u30a4\u30eb\u3092\u8ffd\u52a0\u3057\u3066\u56de\u907f\u3057\u307e\u3057\u305f\uff0e\u524d\u56de\u306eUbuntu\u3092\u5165\u308c\u3066\u308b\u65b9\u306e\u6a5f\u68b0\u306fRAM2GB\u306a\u306e\u3067RAM1GB+SWAP1GB\u3067\u3082\u884c\u3051\u308b\u3068\u601d\u3044\u307e\u3059\u304c\u5ff5\u306e\u70ba2GB\u8ffd\u52a0\u3057\u307e\u3057\u305f\uff0e\n\n$ dd if=/dev/zero of=/var/tmp/swap bs=1M count=2048\r\n$ sudo chmod 600 /var/tmp/swap\r\n$ sudo chown 0.0 /var/tmp/swap\r\n$ sudo mkswap /var/tmp/swap\r\n$ sudo swapon /var/tmp/swap\r\n$ free\r\n total used free shared buff/cache available\r\nMem: 945868 225736 444948 40784 275184 608980\r\nSwap: 2097148 0 2097148\r\n\n\n\u3067\uff0c\u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\u3068\u5c0e\u5165\u306e\u624b\u9806\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u3057\u305f\uff0e\n\n$ sudo apt update\r\n$ sudo apt upgrade\r\n$ sudo apt install build-essential devscripts fakeroot\r\n$ sudo apt build-dep mozc\r\n$ apt source mozc\r\n$ wget https://gist.githubusercontent.com/matoken/afce66ce67392c11d3ed20d7bbab5833/raw/2bb0163f30291caa6ba7b41b3d4352c7e6c0b6a7/patch\r\n$ patch -p0 < patch\r\n$ cd mozc-2.19.2623.102+dfsg\r\n$ time dpkg-buildpackage -us -uc -j4\r\n :\r\nreal 111m31.882s\r\nuser 88m2.352s\r\nsys 10m59.828s\r\n$ dch -i\r\n$ head debian/changelog \r\nmozc (2.19.2623.102+dfsg-1.1) unstable; urgency=medium\r\n\r\n * Non-maintainer upload.\r\n * Update debian/control.\r\n - Add arm64 to Architecture list.\r\n\r\n -- K.I.Matohara <matoken@gmail.com> Sat, 03 Jun 2017 22:15:19 +0000\r\n\r\nmozc (2.19.2623.102+dfsg-1) unstable; urgency=medium\r\n\r\n$ dpkg-buildpackage -j4\r\n$ ls -la ../*dfsg-1.1_*\r\n-rw-r--r-- 1 linaro linaro 2130510 Jun 4 01:10 ../emacs-mozc-bin-dbgsym_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro 157710 Jun 4 01:10 ../emacs-mozc-bin_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro 28118 Jun 4 01:10 ../emacs-mozc_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro 2765446 Jun 4 01:10 ../fcitx-mozc-dbgsym_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro 224574 Jun 4 01:10 ../fcitx-mozc_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro 3088148 Jun 4 01:10 ../ibus-mozc-dbgsym_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro 189886 Jun 4 01:10 ../ibus-mozc_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro 14134 Jun 4 01:10 ../mozc-data_2.19.2623.102+dfsg-1.1_all.deb\r\n-rw-r--r-- 1 linaro linaro 24825020 Jun 4 01:11 ../mozc-server-dbgsym_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro 12310852 Jun 4 01:11 ../mozc-server_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro 9823936 Jun 4 01:11 ../mozc-utils-gui-dbgsym_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro 755758 Jun 4 01:11 ../mozc-utils-gui_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro 18228 Jun 4 04:00 ../mozc_2.19.2623.102+dfsg-1.1_arm64.buildinfo\r\n-rw-r--r-- 1 linaro linaro 6898 Jun 4 04:00 ../mozc_2.19.2623.102+dfsg-1.1_arm64.changes\r\n-rw-r--r-- 1 linaro linaro 1921396 Jun 4 01:10 ../uim-mozc-dbgsym_2.19.2623.102+dfsg-1.1_arm64.deb\r\n-rw-r--r-- 1 linaro linaro 192712 Jun 4 01:10 ../uim-mozc_2.19.2623.102+dfsg-1.1_arm64.deb\r\n$ sudo apt install ../mozc-server_2.19.2623.102+dfsg-1.1_arm64.deb ../fcitx-mozc_2.19.2623.102+dfsg-1.1_arm64.deb ../mozc-data_2.19.2623.102+dfsg-1.1_all.deb ../mozc-utils-gui_2.19.2623.102+dfsg-1.1_arm64.deb \r\n$ sudo apt install fcitx-ui-classic\r\n\n\n\u3053\u308c\u3082\u4e00\u5fdc\u3053\u306e\u8fba\u306b\u7f6e\u3044\u3066\u304a\u304d\u307e\u3057\u305f\uff0e\u591a\u5206\u305d\u306e\u3046\u3061\u6d88\u3057\u307e\u3059\uff0e(Version\u304c\u4e0a\u304c\u3063\u305f\u9803?)\n\nYandex.Disk\n\n\u3053\u308c\u3067\u3068\u308a\u3042\u3048\u305a\u624b\u5143\u306eUbuntu/Debian\u3067\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\u304c\uff0cmozc\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u30a2\u30c3\u30d7\u6bce\u306bbuild\u304c\u5fc5\u8981\u3067\u3059\uff0e\u306a\u306e\u3067BTS\u4e88\u5b9a\uff0e\u3042\u3068\u30af\u30ed\u30b9\u3067\u8a66\u3059\u306e\u3068Multiarch\u3082\u8a66\u3057\u3066\u307f\u305f\u3044\u3067\u3059\uff0e\n\u53c2\u8003URL\n\n\u7b2c6\u7ae0 \u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u30d3\u30eb\u30c9\nDebian \u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb (\u203bpdf)", "date_published": "2017-06-05T08:40:41+09:00", "date_modified": "2018-10-23T23:14:49+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "aarch64", "arm64", "Debian", "Debian stretch", "mozc", "Linux", "stretch", "testing" ] }, { "id": "http://matoken.org/blog/?p=1601", "url": "https://matoken.org/blog/2017/04/19/restore-broken-var-lib-dpkg-status-in-freedombox-of-raspberry-pi/", "title": "Raspberry Pi\u306eFreedomBox\u3067/var/lib/dpkg/status\u304c\u58ca\u308c\u305f\u306e\u3092\u5fa9\u65e7", "content_html": "

Raspberry Pi\u3067FreedomBox\u3092\u8a66\u3057\u3066\u3044\u308b\u306e\u3067\u3059\u304c\uff0c\u30b9\u30c8\u30ec\u30fc\u30b8\u304cmicroSD\u306e\u305b\u3044\u304b\u4fee\u6b63\u3057\u3066\u3044\u305f\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u4f9d\u5b58\u95a2\u4fc2\u304b\u4f55\u304b\u304c\u304a\u304b\u3057\u304f\u306a\u3063\u305f\u305b\u3044\u304b/var/lib/dpkg/status\u304c\u58ca\u308c\u3066\u3057\u307e\u3044\u307e\u3057\u305f\uff0e

\n
\n
$ sudo apt update\nHit:1 http://cdn-fastly.deb.debian.org/debian testing InRelease\nReading package lists... Error!\nE: Unable to parse package file /var/lib/dpkg/status (1)\nW: You may want to run apt-get update to correct these problems\nE: The package cache file is corrupted\n
\n
\n
\n
E: \u30d1\u30c3\u30b1\u30fc\u30b8\u30d5\u30a1\u30a4\u30eb /var/lib/dpkg/status \u3092\u89e3\u91c8\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093 (1)\nW: \u3053\u308c\u3089\u306e\u554f\u984c\u3092\u89e3\u6c7a\u3059\u308b\u305f\u3081\u306b\u306f apt-get update \u3092\u5b9f\u884c\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\nE: \u30d1\u30c3\u30b1\u30fc\u30b8\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30a1\u30a4\u30eb\u304c\u58ca\u308c\u3066\u3044\u307e\u3059\n
\n
\n

apt-get update\u3067\u6cbb\u308b\u306e\u304b\u306a\u3068\u601d\u3063\u3066\u53e9\u3044\u3066\u307f\u307e\u3057\u305f\u304c\u99c4\u76ee\u3067\u3057\u305f\uff0e

\n

Debian \u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\u306e\u7b2c2\u7ae0 Debian \u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u306b\u3088\u308b\u3068\uff0c

\n
\n

2.6.5. \u30d1\u30c3\u30b1\u30fc\u30b8\u30bb\u30ec\u30af\u30b7\u30e7\u30f3\u306e\u5fa9\u5143

\n

\u3082\u3057\u4f55\u3089\u304b\u306e\u7406\u7531\u3067 “/var/lib/dpkg/status” \u306e\u5185\u5bb9\u304c\u8150\u3063\u305f\u5834\u5408\u306b\u306f\u3001Debian \u30b7\u30b9\u30c6\u30e0\u306f\u30d1\u30c3\u30b1\u30fc\u30b8\u9078\u629e\u30c7\u30fc\u30bf\u30fc\u304c\u5931\u308f\u308c\u5927\u304d\u306a\u6253\u6483\u3092\u88ab\u308a\u307e\u3059\u3002\u53e4\u3044 “/var/lib/dpkg/status” \u30d5\u30a1\u30a4\u30eb\u306f\u3001”/var/lib/dpkg/status-old” \u3084 “/var/backups/dpkg.status.*” \u3068\u3057\u3066\u3042\u308b\u306e\u3067\u63a2\u3057\u307e\u3059\u3002

\n

“/var/backups/” \u306f\u591a\u304f\u306e\u91cd\u8981\u306a\u60c5\u5831\u3092\u4fdd\u6301\u3057\u3066\u3044\u308b\u306e\u3067\u3001\u3053\u308c\u3092\u5225\u306e\u30d1\u30fc\u30c6\u30a3\u30b7\u30e7\u30f3\u4e0a\u306b\u7f6e\u304f\u306e\u3082\u826f\u3044\u8003\u3048\u3067\u3059\u3002

\n
\n

\u3068\u306e\u3053\u3068\u306a\u306e\u3067\uff0c/var/lib/dpkg/status-old\u304b\u3089\u5fa9\u65e7\u3092\u3068\u601d\u3044\u307e\u3057\u305f\u304c\u3053\u308c\u3082\u65e2\u306b\u58ca\u308c\u3066\u3044\u308b\u30d0\u30fc\u30b8\u30e7\u30f3\uff0e/var/backups/dpkg.status.0\u306f\u307e\u3060\u58ca\u308c\u3066\u3044\u306a\u304b\u3063\u305f\u306e\u3067\u3053\u308c\u3067\u4e0a\u66f8\u304d\u3057\u3066\u5fa9\u65e7\u3057\u305f\u3088\u3046\u3067\u3059\uff0e

\n
\n
$ sudo cp /var/backups/dpkg.status.0 /var/lib/dpkg/status\n
\n
\n", "content_text": "Raspberry Pi\u3067FreedomBox\u3092\u8a66\u3057\u3066\u3044\u308b\u306e\u3067\u3059\u304c\uff0c\u30b9\u30c8\u30ec\u30fc\u30b8\u304cmicroSD\u306e\u305b\u3044\u304b\u4fee\u6b63\u3057\u3066\u3044\u305f\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u4f9d\u5b58\u95a2\u4fc2\u304b\u4f55\u304b\u304c\u304a\u304b\u3057\u304f\u306a\u3063\u305f\u305b\u3044\u304b/var/lib/dpkg/status\u304c\u58ca\u308c\u3066\u3057\u307e\u3044\u307e\u3057\u305f\uff0e\n\n$ sudo apt update\nHit:1 http://cdn-fastly.deb.debian.org/debian testing InRelease\nReading package lists... Error!\nE: Unable to parse package file /var/lib/dpkg/status (1)\nW: You may want to run apt-get update to correct these problems\nE: The package cache file is corrupted\n\n\n\nE: \u30d1\u30c3\u30b1\u30fc\u30b8\u30d5\u30a1\u30a4\u30eb /var/lib/dpkg/status \u3092\u89e3\u91c8\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093 (1)\nW: \u3053\u308c\u3089\u306e\u554f\u984c\u3092\u89e3\u6c7a\u3059\u308b\u305f\u3081\u306b\u306f apt-get update \u3092\u5b9f\u884c\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\nE: \u30d1\u30c3\u30b1\u30fc\u30b8\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30a1\u30a4\u30eb\u304c\u58ca\u308c\u3066\u3044\u307e\u3059\n\n\napt-get update\u3067\u6cbb\u308b\u306e\u304b\u306a\u3068\u601d\u3063\u3066\u53e9\u3044\u3066\u307f\u307e\u3057\u305f\u304c\u99c4\u76ee\u3067\u3057\u305f\uff0e\nDebian \u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\u306e\u7b2c2\u7ae0 Debian \u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u306b\u3088\u308b\u3068\uff0c\n\n2.6.5. \u30d1\u30c3\u30b1\u30fc\u30b8\u30bb\u30ec\u30af\u30b7\u30e7\u30f3\u306e\u5fa9\u5143\n\u3082\u3057\u4f55\u3089\u304b\u306e\u7406\u7531\u3067 “/var/lib/dpkg/status” \u306e\u5185\u5bb9\u304c\u8150\u3063\u305f\u5834\u5408\u306b\u306f\u3001Debian \u30b7\u30b9\u30c6\u30e0\u306f\u30d1\u30c3\u30b1\u30fc\u30b8\u9078\u629e\u30c7\u30fc\u30bf\u30fc\u304c\u5931\u308f\u308c\u5927\u304d\u306a\u6253\u6483\u3092\u88ab\u308a\u307e\u3059\u3002\u53e4\u3044 “/var/lib/dpkg/status” \u30d5\u30a1\u30a4\u30eb\u306f\u3001”/var/lib/dpkg/status-old” \u3084 “/var/backups/dpkg.status.*” \u3068\u3057\u3066\u3042\u308b\u306e\u3067\u63a2\u3057\u307e\u3059\u3002\n“/var/backups/” \u306f\u591a\u304f\u306e\u91cd\u8981\u306a\u60c5\u5831\u3092\u4fdd\u6301\u3057\u3066\u3044\u308b\u306e\u3067\u3001\u3053\u308c\u3092\u5225\u306e\u30d1\u30fc\u30c6\u30a3\u30b7\u30e7\u30f3\u4e0a\u306b\u7f6e\u304f\u306e\u3082\u826f\u3044\u8003\u3048\u3067\u3059\u3002\n\n\u3068\u306e\u3053\u3068\u306a\u306e\u3067\uff0c/var/lib/dpkg/status-old\u304b\u3089\u5fa9\u65e7\u3092\u3068\u601d\u3044\u307e\u3057\u305f\u304c\u3053\u308c\u3082\u65e2\u306b\u58ca\u308c\u3066\u3044\u308b\u30d0\u30fc\u30b8\u30e7\u30f3\uff0e/var/backups/dpkg.status.0\u306f\u307e\u3060\u58ca\u308c\u3066\u3044\u306a\u304b\u3063\u305f\u306e\u3067\u3053\u308c\u3067\u4e0a\u66f8\u304d\u3057\u3066\u5fa9\u65e7\u3057\u305f\u3088\u3046\u3067\u3059\uff0e\n\n$ sudo cp /var/backups/dpkg.status.0 /var/lib/dpkg/status", "date_published": "2017-04-19T00:49:36+09:00", "date_modified": "2017-04-19T00:49:36+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "apt", "Debian", "Debian stretch", "FreedomBox", "RaspberryPi", "Linux", "Raspberry Pi", "stretch", "testing" ] }, { "id": "http://matoken.org/blog/?p=1576", "url": "https://matoken.org/blog/2017/03/29/write-debian-iso-image-to-usb-memory/", "title": "Debian\u306eiso\u30a4\u30e1\u30fc\u30b8\u3092USB\u30e1\u30e2\u30ea\u306b\u66f8\u304d\u8fbc\u307f", "content_html": "

gist\u306b\u8cbc\u3063\u3066\u305f\u3082\u306e\u3060\u3051\u3069\u305b\u3063\u304b\u304f\u306a\u306e\u3067\u3053\u3061\u3089\u306b\u3082\uff0e

\n

\u30d5\u30a1\u30a4\u30eb\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9

\n

\u4eca\u56de\u306fDebian stretch Debian Installer rc2\u306ei386\u7248\u306enetinst\uff0e

\n\n
\n
$ wget http://cdimage.debian.org/cdimage/stretch_di_rc2/i386/iso-cd/debian-stretch-DI-rc2-i386-netinst.iso http://cdimage.debian.org/cdimage/stretch_di_rc2/i386/iso-cd/SHA512SUMS.sign http://cdimage.debian.org/cdimage/stretch_di_rc2/i386/iso-cd/SHA512SUMS\r\n
\n
\n
\n

\u203bi386/amd64\u3092\u3088\u304f\u4f7f\u3046\u5834\u5408\u306fmulti-arch\u3092\u4f7f\u3046\u30681\u3064\u306eUSB\u30e1\u30e2\u30ea\u3067i386/amd64\u304c\u5229\u7528\u3067\u304d\u3066\u4fbf\u5229

\n
\n

\u30c1\u30a7\u30c3\u30af\u30b5\u30e0\u30d5\u30a1\u30a4\u30eb\u306e\u7f72\u540d\u78ba\u8a8d

\n

\u30c1\u30a7\u30c3\u30af\u30b5\u30e0\u30d5\u30a1\u30a4\u30eb\u306eSHA512SUMS\u304c\u6b63\u5e38\u306a\u3082\u306e\u304b\u78ba\u8a8d

\n
\n
$ gpg --verify SHA512SUMS.sign\r\ngpg: \u7f72\u540d\u3055\u308c\u305f\u30c7\u30fc\u30bf\u304c'SHA512SUMS'\u306b\u3042\u308b\u3068\u60f3\u5b9a\u3057\u307e\u3059\r\ngpg: 2017\u5e7402\u670802\u65e5 07\u664245\u520630\u79d2 JST\u306b\u65bd\u3055\u308c\u305f\u7f72\u540d\r\ngpg:                RSA\u9375DA87E80D6294BE9B\u3092\u4f7f\u7528\r\ngpg: "Debian CD signing key <debian-cd@lists.debian.org>"\u304b\u3089\u306e\u6b63\u3057\u3044\u7f72\u540d [\u4e0d\u660e\u306e]\r\ngpg: *\u8b66\u544a*: \u3053\u306e\u9375\u306f\u4fe1\u7528\u3067\u304d\u308b\u7f72\u540d\u3067\u8a3c\u660e\u3055\u308c\u3066\u3044\u307e\u305b\u3093!\r\ngpg:       \u3053\u306e\u7f72\u540d\u304c\u6240\u6709\u8005\u306e\u3082\u306e\u304b\u3069\u3046\u304b\u306e\u691c\u8a3c\u624b\u6bb5\u304c\u3042\u308a\u307e\u305b\u3093\u3002\r\n \u4e3b\u9375\u30d5\u30a3\u30f3\u30ac\u30fc\u30d7\u30ea\u30f3\u30c8: DF9B 9C49 EAA9 2984 3258  9D76 DA87 E80D 6294 BE9B\r\n
\n
\n

\u203b\u516c\u958b\u9375\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093(public key not found)\u3068\u3044\u3046\u30a8\u30e9\u30fc\u306e\u5834\u5408\u306fgpg --keyserver keyring.debian.org --recv-keys DA87E80D6294BE9B\u3067\u9375\u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3057\u3066\u518d\u5ea6\u78ba\u8a8d\uff0e\u9375\u306eID\u3084\u30d5\u30a3\u30f3\u30ac\u30fc\u30d7\u30ea\u30f3\u30c8\u306f\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3067\u3082\u78ba\u8a8d\u3067\u304d\u308b

\n\n

\u30cf\u30c3\u30b7\u30e5\u78ba\u8a8d

\n

iso\u30d5\u30a1\u30a4\u30eb\u304c\u6b63\u3057\u304f\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3055\u308c\u3066\u3044\u308b\u304b\u78ba\u8a8d
\n\u4ee5\u4e0b\u306e\u4f8b\u306fdebian-stretch-DI-rc2-i386-netinst.iso\u3057\u304b\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u3044\u306a\u3044\u306e\u3067\u305d\u308c\u4ee5\u5916\u306e\u30a8\u30e9\u30fc\u3084\u8b66\u544a\u306f\u7121\u8996\u3059\u308b

\n
\n
$ sha512sum -c SHA512SUMS\r\nsha512sum: debian-mac-stretch-DI-rc2-i386-netinst.iso: \u305d\u306e\u3088\u3046\u306a\u30d5\u30a1\u30a4\u30eb\u3084\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306f\u3042\u308a\u307e\u305b\u3093\r\ndebian-mac-stretch-DI-rc2-i386-netinst.iso: FAILED open or read\r\ndebian-stretch-DI-rc2-i386-netinst.iso: \u5b8c\u4e86\r\nsha512sum: debian-stretch-DI-rc2-i386-xfce-CD-1.iso: \u305d\u306e\u3088\u3046\u306a\u30d5\u30a1\u30a4\u30eb\u3084\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306f\u3042\u308a\u307e\u305b\u3093\r\ndebian-stretch-DI-rc2-i386-xfce-CD-1.iso: FAILED open or read\r\nsha512sum: \u8b66\u544a: \u4e00\u89a7\u306b\u3042\u308b 2 \u500b\u306e\u30d5\u30a1\u30a4\u30eb\u304c\u8aad\u307f\u8fbc\u3081\u307e\u305b\u3093\u3067\u3057\u305f\r\n
\n
\n

usb\u30e1\u30e2\u30ea\u3078\u306e\u66f8\u304d\u8fbc\u307f

\n

USB\u30e1\u30e2\u30ea\u306e\u78ba\u8a8d

\n

\u66f8\u304d\u8fbc\u307f\u5148\u306e\u30c7\u30d0\u30a4\u30b9\u304c\u6b63\u3057\u3044\u304b\u78ba\u8a8d\u3059\u308b
\nUSB\u30e1\u30e2\u30ea\u63a5\u7d9a\u76f4\u5f8c\u306bdmesg\u3092\u78ba\u8a8d\u3057\u305f\u308afdisk\u30b3\u30de\u30f3\u30c9\u3084\u30de\u30a6\u30f3\u30c8\u3057\u3066\u4e2d\u3092\u78ba\u8a8d\u3057\u305f\u308a\u2026\u2026

\n
\n
$ dmesg\r\n  :\r\n[414356.444121] usb 1-1.2: New USB device found, idVendor=13fe, idProduct=1a00\r\n[414356.444128] usb 1-1.2: New USB device strings: Mfr=0, Product=11, SerialNumber=0\r\n[414356.444131] usb 1-1.2: Product: USB 2.0 HUB\r\n[414362.925178] usb-storage 1-1.2.1:1.0: USB Mass Storage device detected\r\n[414362.925967] scsi host6: usb-storage 1-1.2.1:1.0\r\n[414364.184209] sd 6:0:0:1: [sdb] 980480 512-byte logical blocks: (502 MB/479 MiB)\r\n[414364.187102] sd 6:0:0:1: [sdb] Write Protect is off\r\n[414364.187106] sd 6:0:0:1: [sdb] Mode Sense: 23 00 00 00\r\n[414364.190339] sd 6:0:0:1: [sdb] No Caching mode page found\r\n[414364.190345] sd 6:0:0:1: [sdb] Assuming drive cache: write through\r\n[414364.201730]  sdb: sdb1\r\n[414364.201734] sdb: p1 size 982496 extends beyond EOD, enabling native capacity\r\n[414364.214471]  sdb: sdb1\r\n[414364.214475] sdb: p1 size 982496 extends beyond EOD, truncated\r\n[414364.228961] sd 6:0:0:1: [sdb] Attached SCSI removable disk\r\n$ sudo fdisk -l /dev/sdb\r\nDisk /dev/sdb: 478.8 MiB, 502005760 bytes, 980480 sectors\r\nUnits: sectors of 1 * 512 = 512 bytes\r\nSector size (logical/physical): 512 bytes / 512 bytes\r\nI/O size (minimum/optimal): 512 bytes / 512 bytes\r\nDisklabel type: dos\r\nDisk identifier: 0x00000000\r\n\r\nDevice     Boot Start    End Sectors   Size Id Type\r\n/dev/sdb1  *       32 982527  982496 479.8M  6 FAT16\r\n
\n
\n

USB\u30e1\u30e2\u30ea\u306e\u30a2\u30f3\u30de\u30a6\u30f3\u30c8

\n

USB\u30e1\u30e2\u30ea\u3092\u30de\u30a6\u30f3\u30c8\u3057\u3066\u3044\u308b\u5834\u5408\u306f\u30a2\u30f3\u30de\u30a6\u30f3\u30c8\u3057\u3066\u304a\u304f

\n
\n
$ sudo umount /dev/sdb1\r\n$ mount | grep /dev/sdb\r\n
\n
\n

\u30d1\u30fc\u30c6\u30a4\u30b7\u30e7\u30f3\u60c5\u5831\u306e\u524a\u9664

\n

\u5ff5\u306e\u70ba\u30d1\u30fc\u30c6\u30a4\u30b7\u30e7\u30f3\u60c5\u5831\u3092\u524a\u9664\u3057\u3066\u304a\u304f

\n
\n
$ sudo wipefs /dev/sdb\r\noffset               type\r\n----------------------------------------------------------------\r\n0x1fe                dos   [partition table]\r\n\r\n$ sudo wipefs -a /dev/sdb ; sync\r\n/dev/sdb: 2 bytes were erased at offset 0x000001fe (dos): 55 aa\r\n/dev/sdb: calling ioctl to re-read partition table: \u6210\u529f\u3067\u3059\r\n
\n
\n

\u66f8\u304d\u8fbc\u307f

\n

\u9032\u6357\u72b6\u614b\u3092\u78ba\u8a8d\u3057\u305f\u3044\u5834\u5408\u306fpv\u30b3\u30de\u30f3\u30c9\u3092\u9593\u306b\u631f\u3093\u3060\u308a\uff0cddrescue / ddrescue\u306a\u3069\u304c\u5229\u7528\u3067\u304d\u308b

\n\n
\n
$ sudo dd if=./debian-stretch-DI-rc2-i386-netinst.iso of=/dev/sdb bs=4M ; sync\r\n95+1 \u30ec\u30b3\u30fc\u30c9\u5165\u529b\r\n95+1 \u30ec\u30b3\u30fc\u30c9\u51fa\u529b\r\n401604608 bytes (402 MB, 383 MiB) copied, 176.874 s, 2.3 MB/s\r\n
\n
\n

\u66f8\u304d\u8fbc\u307f\u304c\u7d42\u308f\u3063\u305f\u3089USB\u30e1\u30e2\u30ea\u3092\u53d6\u308a\u5916\u3057\u3066\u30bf\u30fc\u30b2\u30c3\u30c8\u30de\u30b7\u30f3\u3067\u5229\u7528\u3059\u308b

\n

VirtualBox\u3067\u8d77\u52d5\u78ba\u8a8d(\u4f59\u9332)

\n

\u624b\u8efd\u306b\u8a66\u305b\u308b\u30de\u30b7\u30f3\u304c\u306a\u304b\u3063\u305f\u306e\u3067VirtualBox\u304b\u3089USB\u30e1\u30e2\u30ea\u3092\u8d77\u52d5\u3057\u3066\u78ba\u8a8d\u3057\u305f

\n

USB\u30e1\u30e2\u30ea\u306e\u30c7\u30a3\u30b9\u30af\u30a4\u30e1\u30fc\u30b8\u4f5c\u6210

\n

\u76f4\u306bUSB\u30e1\u30e2\u30ea\u3092\u6307\u5b9a\u3067\u304d\u306a\u3044\u306e\u3067USB\u30e1\u30e2\u30ea\u3078\u30a2\u30af\u30bb\u30b9\u3059\u308b\u305f\u3081\u306evmdk\u30a4\u30e1\u30fc\u30b8\u3092\u4f5c\u6210

\n
\n
$ sudo VBoxManage internalcommands createrawvmdk -rawdisk /dev/sdb -filename sdb.vmdk \r\nRAW host disk access VMDK file sdb.vmdk created successfully.\r\n$ sudo cat sdb.vmdk\r\n# Disk DescriptorFile\r\nversion=1\r\nCID=1722e641\r\nparentCID=ffffffff\r\ncreateType="fullDevice"\r\n\r\n# Extent description\r\nRW 980480 FLAT "/dev/sdb" 0\r\n\r\n# The disk Data Base \r\n#DDB\r\n\r\nddb.virtualHWVersion = "4"\r\nddb.adapterType="ide"\r\nddb.geometry.cylinders="972"\r\nddb.geometry.heads="16"\r\nddb.geometry.sectors="63"\r\nddb.uuid.image="c2c9d560-049f-4c44-bf8a-0b85e820ba12"\r\nddb.uuid.parent="00000000-0000-0000-0000-000000000000"\r\nddb.uuid.modification="00000000-0000-0000-0000-000000000000"\r\nddb.uuid.parentmodification="00000000-0000-0000-0000-000000000000"\r\n
\n
\n

USB\u30e1\u30e2\u30ea\u306b\u30a2\u30af\u30bb\u30b9\u6a29\u306e\u3042\u308b\u30e6\u30fc\u30b6\u3067VirtualBox\u3092\u8d77\u52d5\u3057\u3066USB\u30e1\u30e2\u30ea\u306e\u30a4\u30e1\u30fc\u30b8\u3092\u6307\u5b9a\u3057\u3066\u8d77\u52d5

\n

\uff08\u3053\u3053\u3044\u307e\u3044\u3061\u2026\u2026\uff09

\n
\n
$ gksudo virtualbox\r\n
\n
\n

\"\"

\n
\n\n
\n", "content_text": "gist\u306b\u8cbc\u3063\u3066\u305f\u3082\u306e\u3060\u3051\u3069\u305b\u3063\u304b\u304f\u306a\u306e\u3067\u3053\u3061\u3089\u306b\u3082\uff0e\n\u30d5\u30a1\u30a4\u30eb\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\n\u4eca\u56de\u306fDebian stretch Debian Installer rc2\u306ei386\u7248\u306enetinst\uff0e\n\ndebian-stretch-DI-rc2-i386-netinst.iso : \u30a4\u30e1\u30fc\u30b8\u672c\u4f53\nSHA512SUMS : iso\u30d5\u30a1\u30a4\u30eb\u306e\u30c1\u30a7\u30c3\u30af\u30b5\u30e0\u30d5\u30a1\u30a4\u30eb\nSHA512SUMS.sign : SHA512SUMS\u306e\u7f72\u540d\u30d5\u30a1\u30a4\u30eb\n\n\n$ wget http://cdimage.debian.org/cdimage/stretch_di_rc2/i386/iso-cd/debian-stretch-DI-rc2-i386-netinst.iso http://cdimage.debian.org/cdimage/stretch_di_rc2/i386/iso-cd/SHA512SUMS.sign http://cdimage.debian.org/cdimage/stretch_di_rc2/i386/iso-cd/SHA512SUMS\r\n\n\n\n\u203bi386/amd64\u3092\u3088\u304f\u4f7f\u3046\u5834\u5408\u306fmulti-arch\u3092\u4f7f\u3046\u30681\u3064\u306eUSB\u30e1\u30e2\u30ea\u3067i386/amd64\u304c\u5229\u7528\u3067\u304d\u3066\u4fbf\u5229\n\n\u30c1\u30a7\u30c3\u30af\u30b5\u30e0\u30d5\u30a1\u30a4\u30eb\u306e\u7f72\u540d\u78ba\u8a8d\n\u30c1\u30a7\u30c3\u30af\u30b5\u30e0\u30d5\u30a1\u30a4\u30eb\u306eSHA512SUMS\u304c\u6b63\u5e38\u306a\u3082\u306e\u304b\u78ba\u8a8d\n\n$ gpg --verify SHA512SUMS.sign\r\ngpg: \u7f72\u540d\u3055\u308c\u305f\u30c7\u30fc\u30bf\u304c'SHA512SUMS'\u306b\u3042\u308b\u3068\u60f3\u5b9a\u3057\u307e\u3059\r\ngpg: 2017\u5e7402\u670802\u65e5 07\u664245\u520630\u79d2 JST\u306b\u65bd\u3055\u308c\u305f\u7f72\u540d\r\ngpg: RSA\u9375DA87E80D6294BE9B\u3092\u4f7f\u7528\r\ngpg: "Debian CD signing key <debian-cd@lists.debian.org>"\u304b\u3089\u306e\u6b63\u3057\u3044\u7f72\u540d [\u4e0d\u660e\u306e]\r\ngpg: *\u8b66\u544a*: \u3053\u306e\u9375\u306f\u4fe1\u7528\u3067\u304d\u308b\u7f72\u540d\u3067\u8a3c\u660e\u3055\u308c\u3066\u3044\u307e\u305b\u3093!\r\ngpg: \u3053\u306e\u7f72\u540d\u304c\u6240\u6709\u8005\u306e\u3082\u306e\u304b\u3069\u3046\u304b\u306e\u691c\u8a3c\u624b\u6bb5\u304c\u3042\u308a\u307e\u305b\u3093\u3002\r\n \u4e3b\u9375\u30d5\u30a3\u30f3\u30ac\u30fc\u30d7\u30ea\u30f3\u30c8: DF9B 9C49 EAA9 2984 3258 9D76 DA87 E80D 6294 BE9B\r\n\n\n\u203b\u516c\u958b\u9375\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093(public key not found)\u3068\u3044\u3046\u30a8\u30e9\u30fc\u306e\u5834\u5408\u306fgpg --keyserver keyring.debian.org --recv-keys DA87E80D6294BE9B\u3067\u9375\u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3057\u3066\u518d\u5ea6\u78ba\u8a8d\uff0e\u9375\u306eID\u3084\u30d5\u30a3\u30f3\u30ac\u30fc\u30d7\u30ea\u30f3\u30c8\u306f\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3067\u3082\u78ba\u8a8d\u3067\u304d\u308b\n\nDebian CD \u306e\u4fe1\u983c\u6027\u306e\u691c\u8a3c\n\n\u30cf\u30c3\u30b7\u30e5\u78ba\u8a8d\niso\u30d5\u30a1\u30a4\u30eb\u304c\u6b63\u3057\u304f\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3055\u308c\u3066\u3044\u308b\u304b\u78ba\u8a8d\n\u4ee5\u4e0b\u306e\u4f8b\u306fdebian-stretch-DI-rc2-i386-netinst.iso\u3057\u304b\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u3044\u306a\u3044\u306e\u3067\u305d\u308c\u4ee5\u5916\u306e\u30a8\u30e9\u30fc\u3084\u8b66\u544a\u306f\u7121\u8996\u3059\u308b\n\n$ sha512sum -c SHA512SUMS\r\nsha512sum: debian-mac-stretch-DI-rc2-i386-netinst.iso: \u305d\u306e\u3088\u3046\u306a\u30d5\u30a1\u30a4\u30eb\u3084\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306f\u3042\u308a\u307e\u305b\u3093\r\ndebian-mac-stretch-DI-rc2-i386-netinst.iso: FAILED open or read\r\ndebian-stretch-DI-rc2-i386-netinst.iso: \u5b8c\u4e86\r\nsha512sum: debian-stretch-DI-rc2-i386-xfce-CD-1.iso: \u305d\u306e\u3088\u3046\u306a\u30d5\u30a1\u30a4\u30eb\u3084\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306f\u3042\u308a\u307e\u305b\u3093\r\ndebian-stretch-DI-rc2-i386-xfce-CD-1.iso: FAILED open or read\r\nsha512sum: \u8b66\u544a: \u4e00\u89a7\u306b\u3042\u308b 2 \u500b\u306e\u30d5\u30a1\u30a4\u30eb\u304c\u8aad\u307f\u8fbc\u3081\u307e\u305b\u3093\u3067\u3057\u305f\r\n\n\nusb\u30e1\u30e2\u30ea\u3078\u306e\u66f8\u304d\u8fbc\u307f\nUSB\u30e1\u30e2\u30ea\u306e\u78ba\u8a8d\n\u66f8\u304d\u8fbc\u307f\u5148\u306e\u30c7\u30d0\u30a4\u30b9\u304c\u6b63\u3057\u3044\u304b\u78ba\u8a8d\u3059\u308b\nUSB\u30e1\u30e2\u30ea\u63a5\u7d9a\u76f4\u5f8c\u306bdmesg\u3092\u78ba\u8a8d\u3057\u305f\u308afdisk\u30b3\u30de\u30f3\u30c9\u3084\u30de\u30a6\u30f3\u30c8\u3057\u3066\u4e2d\u3092\u78ba\u8a8d\u3057\u305f\u308a\u2026\u2026\n\n$ dmesg\r\n :\r\n[414356.444121] usb 1-1.2: New USB device found, idVendor=13fe, idProduct=1a00\r\n[414356.444128] usb 1-1.2: New USB device strings: Mfr=0, Product=11, SerialNumber=0\r\n[414356.444131] usb 1-1.2: Product: USB 2.0 HUB\r\n[414362.925178] usb-storage 1-1.2.1:1.0: USB Mass Storage device detected\r\n[414362.925967] scsi host6: usb-storage 1-1.2.1:1.0\r\n[414364.184209] sd 6:0:0:1: [sdb] 980480 512-byte logical blocks: (502 MB/479 MiB)\r\n[414364.187102] sd 6:0:0:1: [sdb] Write Protect is off\r\n[414364.187106] sd 6:0:0:1: [sdb] Mode Sense: 23 00 00 00\r\n[414364.190339] sd 6:0:0:1: [sdb] No Caching mode page found\r\n[414364.190345] sd 6:0:0:1: [sdb] Assuming drive cache: write through\r\n[414364.201730] sdb: sdb1\r\n[414364.201734] sdb: p1 size 982496 extends beyond EOD, enabling native capacity\r\n[414364.214471] sdb: sdb1\r\n[414364.214475] sdb: p1 size 982496 extends beyond EOD, truncated\r\n[414364.228961] sd 6:0:0:1: [sdb] Attached SCSI removable disk\r\n$ sudo fdisk -l /dev/sdb\r\nDisk /dev/sdb: 478.8 MiB, 502005760 bytes, 980480 sectors\r\nUnits: sectors of 1 * 512 = 512 bytes\r\nSector size (logical/physical): 512 bytes / 512 bytes\r\nI/O size (minimum/optimal): 512 bytes / 512 bytes\r\nDisklabel type: dos\r\nDisk identifier: 0x00000000\r\n\r\nDevice Boot Start End Sectors Size Id Type\r\n/dev/sdb1 * 32 982527 982496 479.8M 6 FAT16\r\n\n\nUSB\u30e1\u30e2\u30ea\u306e\u30a2\u30f3\u30de\u30a6\u30f3\u30c8\nUSB\u30e1\u30e2\u30ea\u3092\u30de\u30a6\u30f3\u30c8\u3057\u3066\u3044\u308b\u5834\u5408\u306f\u30a2\u30f3\u30de\u30a6\u30f3\u30c8\u3057\u3066\u304a\u304f\n\n$ sudo umount /dev/sdb1\r\n$ mount | grep /dev/sdb\r\n\n\n\u30d1\u30fc\u30c6\u30a4\u30b7\u30e7\u30f3\u60c5\u5831\u306e\u524a\u9664\n\u5ff5\u306e\u70ba\u30d1\u30fc\u30c6\u30a4\u30b7\u30e7\u30f3\u60c5\u5831\u3092\u524a\u9664\u3057\u3066\u304a\u304f\n\n$ sudo wipefs /dev/sdb\r\noffset type\r\n----------------------------------------------------------------\r\n0x1fe dos [partition table]\r\n\r\n$ sudo wipefs -a /dev/sdb ; sync\r\n/dev/sdb: 2 bytes were erased at offset 0x000001fe (dos): 55 aa\r\n/dev/sdb: calling ioctl to re-read partition table: \u6210\u529f\u3067\u3059\r\n\n\n\u66f8\u304d\u8fbc\u307f\n\u9032\u6357\u72b6\u614b\u3092\u78ba\u8a8d\u3057\u305f\u3044\u5834\u5408\u306fpv\u30b3\u30de\u30f3\u30c9\u3092\u9593\u306b\u631f\u3093\u3060\u308a\uff0cddrescue / ddrescue\u306a\u3069\u304c\u5229\u7528\u3067\u304d\u308b\n\nLinux \u74b0\u5883\u3067\u306e Raspberry Pi \u5411\u3051 OS \u66f8\u304d\u8fbc\u307fTips | matoken’s meme\n\n\n$ sudo dd if=./debian-stretch-DI-rc2-i386-netinst.iso of=/dev/sdb bs=4M ; sync\r\n95+1 \u30ec\u30b3\u30fc\u30c9\u5165\u529b\r\n95+1 \u30ec\u30b3\u30fc\u30c9\u51fa\u529b\r\n401604608 bytes (402 MB, 383 MiB) copied, 176.874 s, 2.3 MB/s\r\n\n\n\u66f8\u304d\u8fbc\u307f\u304c\u7d42\u308f\u3063\u305f\u3089USB\u30e1\u30e2\u30ea\u3092\u53d6\u308a\u5916\u3057\u3066\u30bf\u30fc\u30b2\u30c3\u30c8\u30de\u30b7\u30f3\u3067\u5229\u7528\u3059\u308b\nVirtualBox\u3067\u8d77\u52d5\u78ba\u8a8d(\u4f59\u9332)\n\u624b\u8efd\u306b\u8a66\u305b\u308b\u30de\u30b7\u30f3\u304c\u306a\u304b\u3063\u305f\u306e\u3067VirtualBox\u304b\u3089USB\u30e1\u30e2\u30ea\u3092\u8d77\u52d5\u3057\u3066\u78ba\u8a8d\u3057\u305f\nUSB\u30e1\u30e2\u30ea\u306e\u30c7\u30a3\u30b9\u30af\u30a4\u30e1\u30fc\u30b8\u4f5c\u6210\n\u76f4\u306bUSB\u30e1\u30e2\u30ea\u3092\u6307\u5b9a\u3067\u304d\u306a\u3044\u306e\u3067USB\u30e1\u30e2\u30ea\u3078\u30a2\u30af\u30bb\u30b9\u3059\u308b\u305f\u3081\u306evmdk\u30a4\u30e1\u30fc\u30b8\u3092\u4f5c\u6210\n\n$ sudo VBoxManage internalcommands createrawvmdk -rawdisk /dev/sdb -filename sdb.vmdk \r\nRAW host disk access VMDK file sdb.vmdk created successfully.\r\n$ sudo cat sdb.vmdk\r\n# Disk DescriptorFile\r\nversion=1\r\nCID=1722e641\r\nparentCID=ffffffff\r\ncreateType="fullDevice"\r\n\r\n# Extent description\r\nRW 980480 FLAT "/dev/sdb" 0\r\n\r\n# The disk Data Base \r\n#DDB\r\n\r\nddb.virtualHWVersion = "4"\r\nddb.adapterType="ide"\r\nddb.geometry.cylinders="972"\r\nddb.geometry.heads="16"\r\nddb.geometry.sectors="63"\r\nddb.uuid.image="c2c9d560-049f-4c44-bf8a-0b85e820ba12"\r\nddb.uuid.parent="00000000-0000-0000-0000-000000000000"\r\nddb.uuid.modification="00000000-0000-0000-0000-000000000000"\r\nddb.uuid.parentmodification="00000000-0000-0000-0000-000000000000"\r\n\n\nUSB\u30e1\u30e2\u30ea\u306b\u30a2\u30af\u30bb\u30b9\u6a29\u306e\u3042\u308b\u30e6\u30fc\u30b6\u3067VirtualBox\u3092\u8d77\u52d5\u3057\u3066USB\u30e1\u30e2\u30ea\u306e\u30a4\u30e1\u30fc\u30b8\u3092\u6307\u5b9a\u3057\u3066\u8d77\u52d5\n\uff08\u3053\u3053\u3044\u307e\u3044\u3061\u2026\u2026\uff09\n\n$ gksudo virtualbox", "date_published": "2017-03-29T18:08:17+09:00", "date_modified": "2017-03-29T18:08:17+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Debian", "stretch", "usb memory", "VirtualBox", "Linux", "testing" ] }, { "id": "http://matoken.org/blog/?p=1544", "url": "https://matoken.org/blog/2017/03/01/try-mikutter-google-photos-uploader/", "title": "mikutter\u304b\u3089GooglePhotos\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u3084\u3064\u3092\u8a66\u3059", "content_html": "
\n

\u3068\u3044\u3046\u308f\u3051\u3067\u3001mikutter\u306e\u30d7\u30e9\u30b0\u30a4\u30f3\u3067\u304d\u305f\u3002 https://t.co/6hP23pBziO

\n

— \u30b9\u30e9\u30de\u30a4\u30de\u30e9\u30b9 (@slimymars) 2017\u5e742\u670825\u65e5

\n

\n\n

Google Photos\u3063\u3066\u3053\u3068\u306f\u5bb9\u91cf\u6c17\u306b\u305b\u305a\u753b\u50cf\u6295\u3052\u3089\u308c\u308b & Google+\u3068\u306e\u9023\u643a\u3082\u3067\u304d\u305d\u3046?\u3063\u3066\u3053\u3068\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n

\uff03mikutter\u306b\u3064\u3044\u3066\u306f\u3053\u3061\u3089\u3092\uff0e

\n\n

\u95a2\u9023\u30d1\u30c3\u30b1\u30fc\u30b8\u5c0e\u5165

\n
\n
$ sudo apt install ruby-oauth2\r\n
\n
\n

mikutter-google-photos-uploader plugin\u5c0e\u5165

\n
\n
$ cd ~/.mikutter/plugin\r\n$ git clone https://github.com/slimymars/mikutter-google-photos-uploader\r\n$ cd mikutter-google-photos-uploader\r\n$ bundle install\r\n
\n
\n

mikutter\u8d77\u52d5

\n

\u2026\u2026\u8a8d\u8b58\u3055\u308c\u306a\u3044\uff0emikutter\u304c\u53e4\u3044\u6240\u70ba\u306e\u3088\u3046\u3067\u3059\uff0e

\n
\n
$ grep mikutter: ~/.mikutter/plugin/mikutter-google-photos-uploader/.mikutter.yml \r\n  mikutter: 3.5.2\r\n$ dpkg-query -W mikutter\r\nmikutter        3.5.0+dfsg-1\r\n
\n
\n

Debian\u3067\u306fjessie-backports\u304b\u3089sid\u307e\u30673.5.0+dfsg-1\u3067experimental\u3060\u30513.5.2+dfsg-1\u3067\u3057\u305f\uff0e

\n\n

\u3066\u3053\u3068\u3067\uff0cexperimental\u304b\u3089\u501f\u308a\u3066\u304d\u307e\u3059\uff0e

\n

sources.list\u306bexperimental\u304c\u3042\u308b\u72b6\u614b\u3067

\n
\n
$ grep experimental /etc/apt/sources.list\r\ndeb http://dennou-q.gfd-dennou.org/debian/ experimental main non-free contrib\r\ndeb-src http://dennou-q.gfd-dennou.org/debian/ experimental main non-free contrib\r\n
\n
\n

/etc/apt/preferences.d/mikutter\u3092\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\u3067\u7528\u610f\u3057\u3066\uff0c

\n
\n
$ cat /etc/apt/preferences.d/mikutter\r\nPackage: mikutter\r\nPin: release a=experimental\r\nPin-Priority: 800\r\n
\n
\n

\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u66f4\u65b0\u3057\u3066\u5c0e\u5165\uff0e

\n
\n
$ sudo apt upgrade\r\n
\n
\n

mikutter\u3067\u306e\u8a2d\u5b9a

\n

mikutter\u304c3.5.2\u306b\u306a\u3063\u305f\u306e\u3067\u8a8d\u8b58\u3057\u307e\u3057\u305f\uff0e\u8a2d\u5b9a\u753b\u9762\u3092\u898b\u308b\u3068\uff0cGooglePhotos\u3068\u3044\u3046\u30bf\u30d6\u304c\u5897\u3048\u3066\u3044\u308b\u306e\u3067\u305d\u306e\u30bf\u30d6\u306eAuthrise code \u53d6\u5f97URL\u3092\u30d6\u30e9\u30a6\u30b6\u3067\u958b\u3044\u3066\u8a8d\u8a3c\u3057\uff0c\u51fa\u3066\u304d\u305f\u30b3\u30fc\u30c9\u3092Authrization_code\u306b\u8cbc\u308a\u4ed8\u3051\u307e\u3059\uff0e
\n\u66f4\u306bmikutter\u304b\u3089\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u4fdd\u5b58\u5148\u306e\u30a2\u30eb\u30d0\u30e0\u3092\u8ffd\u52a0\u3057\u3066\u304a\u304d\u307e\u3059\uff0eGooglePhotos\u306b\u5b58\u5728\u3057\u306a\u3044\u30a2\u30eb\u30d0\u30e0\u306f\u524d\u3082\u3063\u3066

\n\n

\u304b\u3089\u767b\u9332\u3057\u3066\u304a\u304d\u307e\u3057\u3087\u3046\uff0e\u30a2\u30eb\u30d0\u30e0\u306f\u8907\u6570\u767b\u9332\u3067\u304d\u308b\u306e\u3067\u4f8b\u3048\u3070

\n\n

\u306e\u3088\u3046\u306b\u30a2\u30eb\u30d0\u30e0\u3092\u767b\u9332\u3057\u3066\u304a\u304f\u3068\u753b\u50cf\u6574\u7406\u304c\u306f\u304b\u3069\u308a\u307e\u3059?

\n

\"20170228_19:02:23-16584\"/

\n

\u5b9f\u969b\u306e\u753b\u50cf\u4fdd\u5b58\u65b9\u6cd5\u306f\uff0cmikutter\u306e\u4fdd\u5b58\u3057\u305f\u3044\u753b\u50cf\u306e\u4e0a\u3067\u53f3\u30af\u30ea\u30c3\u30af\u3057\u3066Google Photos\u306b\u753b\u50cf\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3092\u9078\u3073\uff0c

\n

\"shutter_17-03-01_08:33:12_001\"/

\n

\u305d\u306e\u5f8c\u8868\u793a\u3055\u308c\u308b\u30a2\u30eb\u30d0\u30e0\u3092\u9078\u629e\u3059\u308b\u3060\u3051\u3067\u3059\uff0e

\n

\"menu_018\"/

\n

Google Photos\u306b\u898b\u306b\u884c\u304f\u3068\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3055\u308c\u3066\u3044\u308b\u306e\u304c\u78ba\u8a8d\u3067\u304d\u307e\u3059\uff0e

\n\n

Google+\u3078\u306e\u30af\u30ed\u30b9\u30dd\u30b9\u30c8\u306b\u3082\u4f7f\u3048\u308b\u304b\u306a\u3068\u601d\u3063\u305f\u306e\u3067\u3059\u304c\uff0cGoogle+\u306e\u6295\u7a3f\u753b\u9762\u306f\u30bf\u30a4\u30e0\u30e9\u30b0\u304c\u3042\u308b\u3088\u3046\u3067\u5c11\u3057\u5f85\u305f\u306a\u3044\u3068\u8868\u793a\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\u3053\u308c\u306fGoogle\u5074\u306e\u554f\u984c\u3067\u3059\u306d\uff0eGoogle Photos\u304b\u3089\u6295\u7a3f\u3059\u308b\u3088\u3046\u306b\u3059\u308c\u3070\u826f\u3055\u305d\u3046\u3067\u3059\uff0e

\n

\u95a2\u9023?Tweet

\n
\n

\u3066\u3053\u3068\u3067\uff0cmikutter-google-photos-uploader\u52d5\u304d\u307e\u3057\u305f\uff0eDebian\u3067\u306fruby-oauth2\u3068experimental\u306emikutter\u304c\u5fc5\u8981\u306a\u611f\u3058\u3067\u3059\uff0e pic.twitter.com/qt5vhPnhjN

\n

— \u9e7f\u5150\u5cf6Linux\u52c9\u5f37\u4f1a03/11 (@matoken) 2017\u5e742\u670828\u65e5

\n

\n
\n

\u3053\u308c\u30de\u30b8\uff01\uff1f

\n

— \u30ad\u30b7\u30ef\u30c0\u30a4\u30c8 (11\u30ab\u30e9\u30c3\u30c8) (@toshi_a) 2017\u5e742\u670828\u65e5

\n

\n
\n

\u304a\u3082\u308d\u3044\u30d7\u30e9\u30b0\u30a4\u30f3\u51fa\u3066\u304d\u305f\u3093\u3068\u3061\u3083\u3046\u304b

\n

— \u30ad\u30b7\u30ef\u30c0\u30a4\u30c8 (11\u30ab\u30e9\u30c3\u30c8) (@toshi_a) 2017\u5e742\u670828\u65e5

\n

\n
\n

\u307f\u304f\u3063\u305f\u30fc\u30fb\u30b0\u30fc\u30b0\u30eb\u30fb\u30d5\u30a9\u30c8\u30ba\u30fb\u3046p\u308d\u30fc\u3060\u3001575\u3067\u306f

\n

— \u306f\u3044\u3053\u3093 (@OBSOLETE_STD) 2017\u5e742\u670828\u65e5

\n

\n
\n

\u3066\u304a\u304f\u308c\u3060\u2026\u2026\uff01

\n

— \u30b9\u30e9\u30de\u30a4\u30de\u30e9\u30b9 (@slimymars) 2017\u5e742\u670828\u65e5

\n

\n
\n

\u308f\u304b\u308a\u3084\u3059\u3044 pic.twitter.com/Q6iEzgvx3e

\n

— \u9e7f\u5150\u5cf6Linux\u52c9\u5f37\u4f1a03/11 (@matoken) 2017\u5e742\u670828\u65e5

\n

\n

\u74b0\u5883

\n
\n
$ screenfetch\r\n         _,met$$$$$gg.           mk@x220\r\n      ,g$$$$$$$$$$$$$$$P.        OS: Debian 9.0 stretch\r\n    ,g$$P""       """Y$$.".      Kernel: x86_64 Linux 4.9.0-2-amd64\r\n   ,$$P'              `$$$.      Uptime: 4d 18h 51m\r\n  ',$$P       ,ggs.     `$$b:    Packages: 5147\r\n  `d$$'     ,$P"'   .    $$$     Shell: bash 4.4.11\r\n   $$P      d$'     ,    $$P     Resolution: 1366x768\r\n   $$:      $$.   -    ,d$$'     WM: Awesome\r\n   $$\\;      Y$b._   _,d$P'      WM Theme: default\r\n   Y$$.    `.`"Y$$$$P"'          CPU: Intel Core i5-2540M CPU @ 3.3GHz\r\n   `$$b      "-.__               GPU: Mesa DRI Intel(R) Sandybridge Mobile \r\n    `Y$$                         RAM: 13040MiB / 15934MiB\r\n     `Y$$.                      \r\n       `$$b.                    \r\n         `Y$$b.                 \r\n            `"Y$b._             \r\n                `""""           \r\n
\n
\n", "content_text": "\u3068\u3044\u3046\u308f\u3051\u3067\u3001mikutter\u306e\u30d7\u30e9\u30b0\u30a4\u30f3\u3067\u304d\u305f\u3002 https://t.co/6hP23pBziO\n— \u30b9\u30e9\u30de\u30a4\u30de\u30e9\u30b9 (@slimymars) 2017\u5e742\u670825\u65e5\n\n\nslimymars/mikutter-google-photos-uploader\n\nGoogle Photos\u3063\u3066\u3053\u3068\u306f\u5bb9\u91cf\u6c17\u306b\u305b\u305a\u753b\u50cf\u6295\u3052\u3089\u308c\u308b & Google+\u3068\u306e\u9023\u643a\u3082\u3067\u304d\u305d\u3046?\u3063\u3066\u3053\u3068\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\uff03mikutter\u306b\u3064\u3044\u3066\u306f\u3053\u3061\u3089\u3092\uff0e\n\nmikutter\n\n\u95a2\u9023\u30d1\u30c3\u30b1\u30fc\u30b8\u5c0e\u5165\n\n$ sudo apt install ruby-oauth2\r\n\n\nmikutter-google-photos-uploader plugin\u5c0e\u5165\n\n$ cd ~/.mikutter/plugin\r\n$ git clone https://github.com/slimymars/mikutter-google-photos-uploader\r\n$ cd mikutter-google-photos-uploader\r\n$ bundle install\r\n\n\nmikutter\u8d77\u52d5\n\u2026\u2026\u8a8d\u8b58\u3055\u308c\u306a\u3044\uff0emikutter\u304c\u53e4\u3044\u6240\u70ba\u306e\u3088\u3046\u3067\u3059\uff0e\n\n$ grep mikutter: ~/.mikutter/plugin/mikutter-google-photos-uploader/.mikutter.yml \r\n mikutter: 3.5.2\r\n$ dpkg-query -W mikutter\r\nmikutter 3.5.0+dfsg-1\r\n\n\nDebian\u3067\u306fjessie-backports\u304b\u3089sid\u307e\u30673.5.0+dfsg-1\u3067experimental\u3060\u30513.5.2+dfsg-1\u3067\u3057\u305f\uff0e\n\nDebian – \u30d1\u30c3\u30b1\u30fc\u30b8\u691c\u7d22\u7d50\u679c – mikutter\n\n\u3066\u3053\u3068\u3067\uff0cexperimental\u304b\u3089\u501f\u308a\u3066\u304d\u307e\u3059\uff0e\nsources.list\u306bexperimental\u304c\u3042\u308b\u72b6\u614b\u3067\n\n$ grep experimental /etc/apt/sources.list\r\ndeb http://dennou-q.gfd-dennou.org/debian/ experimental main non-free contrib\r\ndeb-src http://dennou-q.gfd-dennou.org/debian/ experimental main non-free contrib\r\n\n\n/etc/apt/preferences.d/mikutter\u3092\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\u3067\u7528\u610f\u3057\u3066\uff0c\n\n$ cat /etc/apt/preferences.d/mikutter\r\nPackage: mikutter\r\nPin: release a=experimental\r\nPin-Priority: 800\r\n\n\n\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u66f4\u65b0\u3057\u3066\u5c0e\u5165\uff0e\n\n$ sudo apt upgrade\r\n\n\nmikutter\u3067\u306e\u8a2d\u5b9a\nmikutter\u304c3.5.2\u306b\u306a\u3063\u305f\u306e\u3067\u8a8d\u8b58\u3057\u307e\u3057\u305f\uff0e\u8a2d\u5b9a\u753b\u9762\u3092\u898b\u308b\u3068\uff0cGooglePhotos\u3068\u3044\u3046\u30bf\u30d6\u304c\u5897\u3048\u3066\u3044\u308b\u306e\u3067\u305d\u306e\u30bf\u30d6\u306eAuthrise code \u53d6\u5f97URL\u3092\u30d6\u30e9\u30a6\u30b6\u3067\u958b\u3044\u3066\u8a8d\u8a3c\u3057\uff0c\u51fa\u3066\u304d\u305f\u30b3\u30fc\u30c9\u3092Authrization_code\u306b\u8cbc\u308a\u4ed8\u3051\u307e\u3059\uff0e\n\u66f4\u306bmikutter\u304b\u3089\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u4fdd\u5b58\u5148\u306e\u30a2\u30eb\u30d0\u30e0\u3092\u8ffd\u52a0\u3057\u3066\u304a\u304d\u307e\u3059\uff0eGooglePhotos\u306b\u5b58\u5728\u3057\u306a\u3044\u30a2\u30eb\u30d0\u30e0\u306f\u524d\u3082\u3063\u3066\n\n\u30d5\u30a9\u30c8 – Google \u30d5\u30a9\u30c8\n\n\u304b\u3089\u767b\u9332\u3057\u3066\u304a\u304d\u307e\u3057\u3087\u3046\uff0e\u30a2\u30eb\u30d0\u30e0\u306f\u8907\u6570\u767b\u9332\u3067\u304d\u308b\u306e\u3067\u4f8b\u3048\u3070\n\n\u30df\u30af\n\u30d5\u30ec\u30f3\u30ba\n\n\u306e\u3088\u3046\u306b\u30a2\u30eb\u30d0\u30e0\u3092\u767b\u9332\u3057\u3066\u304a\u304f\u3068\u753b\u50cf\u6574\u7406\u304c\u306f\u304b\u3069\u308a\u307e\u3059?\n\n\u5b9f\u969b\u306e\u753b\u50cf\u4fdd\u5b58\u65b9\u6cd5\u306f\uff0cmikutter\u306e\u4fdd\u5b58\u3057\u305f\u3044\u753b\u50cf\u306e\u4e0a\u3067\u53f3\u30af\u30ea\u30c3\u30af\u3057\u3066Google Photos\u306b\u753b\u50cf\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3092\u9078\u3073\uff0c\n\n\u305d\u306e\u5f8c\u8868\u793a\u3055\u308c\u308b\u30a2\u30eb\u30d0\u30e0\u3092\u9078\u629e\u3059\u308b\u3060\u3051\u3067\u3059\uff0e\n\nGoogle Photos\u306b\u898b\u306b\u884c\u304f\u3068\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3055\u308c\u3066\u3044\u308b\u306e\u304c\u78ba\u8a8d\u3067\u304d\u307e\u3059\uff0e\n\n\u30d5\u30a9\u30c8 – Google \u30d5\u30a9\u30c8\n\nGoogle+\u3078\u306e\u30af\u30ed\u30b9\u30dd\u30b9\u30c8\u306b\u3082\u4f7f\u3048\u308b\u304b\u306a\u3068\u601d\u3063\u305f\u306e\u3067\u3059\u304c\uff0cGoogle+\u306e\u6295\u7a3f\u753b\u9762\u306f\u30bf\u30a4\u30e0\u30e9\u30b0\u304c\u3042\u308b\u3088\u3046\u3067\u5c11\u3057\u5f85\u305f\u306a\u3044\u3068\u8868\u793a\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\u3053\u308c\u306fGoogle\u5074\u306e\u554f\u984c\u3067\u3059\u306d\uff0eGoogle Photos\u304b\u3089\u6295\u7a3f\u3059\u308b\u3088\u3046\u306b\u3059\u308c\u3070\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\n\u95a2\u9023?Tweet\n\n\u3066\u3053\u3068\u3067\uff0cmikutter-google-photos-uploader\u52d5\u304d\u307e\u3057\u305f\uff0eDebian\u3067\u306fruby-oauth2\u3068experimental\u306emikutter\u304c\u5fc5\u8981\u306a\u611f\u3058\u3067\u3059\uff0e pic.twitter.com/qt5vhPnhjN\n— \u9e7f\u5150\u5cf6Linux\u52c9\u5f37\u4f1a03/11 (@matoken) 2017\u5e742\u670828\u65e5\n\n\n\u3053\u308c\u30de\u30b8\uff01\uff1f\n— \u30ad\u30b7\u30ef\u30c0\u30a4\u30c8 (11\u30ab\u30e9\u30c3\u30c8) (@toshi_a) 2017\u5e742\u670828\u65e5\n\n\n\u304a\u3082\u308d\u3044\u30d7\u30e9\u30b0\u30a4\u30f3\u51fa\u3066\u304d\u305f\u3093\u3068\u3061\u3083\u3046\u304b\n— \u30ad\u30b7\u30ef\u30c0\u30a4\u30c8 (11\u30ab\u30e9\u30c3\u30c8) (@toshi_a) 2017\u5e742\u670828\u65e5\n\n\n\u307f\u304f\u3063\u305f\u30fc\u30fb\u30b0\u30fc\u30b0\u30eb\u30fb\u30d5\u30a9\u30c8\u30ba\u30fb\u3046p\u308d\u30fc\u3060\u3001575\u3067\u306f\n— \u306f\u3044\u3053\u3093 (@OBSOLETE_STD) 2017\u5e742\u670828\u65e5\n\n\n\u3066\u304a\u304f\u308c\u3060\u2026\u2026\uff01\n— \u30b9\u30e9\u30de\u30a4\u30de\u30e9\u30b9 (@slimymars) 2017\u5e742\u670828\u65e5\n\n\n\u308f\u304b\u308a\u3084\u3059\u3044 pic.twitter.com/Q6iEzgvx3e\n— \u9e7f\u5150\u5cf6Linux\u52c9\u5f37\u4f1a03/11 (@matoken) 2017\u5e742\u670828\u65e5\n\n\u74b0\u5883\n\n$ screenfetch\r\n _,met$$$$$gg. mk@x220\r\n ,g$$$$$$$$$$$$$$$P. OS: Debian 9.0 stretch\r\n ,g$$P"" """Y$$.". Kernel: x86_64 Linux 4.9.0-2-amd64\r\n ,$$P' `$$$. Uptime: 4d 18h 51m\r\n ',$$P ,ggs. `$$b: Packages: 5147\r\n `d$$' ,$P"' . $$$ Shell: bash 4.4.11\r\n $$P d$' , $$P Resolution: 1366x768\r\n $$: $$. - ,d$$' WM: Awesome\r\n $$\\; Y$b._ _,d$P' WM Theme: default\r\n Y$$. `.`"Y$$$$P"' CPU: Intel Core i5-2540M CPU @ 3.3GHz\r\n `$$b "-.__ GPU: Mesa DRI Intel(R) Sandybridge Mobile \r\n `Y$$ RAM: 13040MiB / 15934MiB\r\n `Y$$. \r\n `$$b. \r\n `Y$$b. \r\n `"Y$b._ \r\n `""""", "date_published": "2017-03-01T08:51:39+09:00", "date_modified": "2017-03-01T08:54:01+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Debian", "GooglePhotos", "mikutter", "Linux", "stretch", "testing" ] }, { "id": "http://matoken.org/blog/?p=1497", "url": "https://matoken.org/blog/2016/12/11/command-border-for-command-snippet-can-be-easily-examined/", "title": "\u30b3\u30de\u30f3\u30c9\u30b9\u30cb\u30da\u30c3\u30c8\u3092\u624b\u8efd\u306b\u8abf\u3079\u3089\u308c\u308b\u30b3\u30de\u30f3\u30c9\u306eborg", "content_html": "

\n

borg\u306fOK borg\u3068\u3044\u3046site\u306e\u30b9\u30cb\u30da\u30c3\u30c8\u3092\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u4e0a\u304b\u3089\u691c\u7d22\u3057\u305f\u308a\u7de8\u96c6\u3067\u304d\u308b\u30b3\u30de\u30f3\u30c9\u306e\u3088\u3046\u3067\u3059\uff0eborg\u306fgo\u88fd\u3067Apache License Version 2.0\u306e\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3067\u3059\uff0e

\n\n

\u5c0e\u5165

\n

\u5c0e\u5165\u65b9\u6cd5\u306f\u5982\u4f55\u304b\u3089\u5bfe\u5fdc\u30d0\u30a4\u30ca\u30ea\u3092\u5165\u624b\u3057\u3066\u9069\u5f53\u306a\u5834\u6240\u306b\u7f6e\u304d\uff0c\u5b9f\u884c\u6a29\u3092\u3064\u3051\u308b\u3060\u3051\u3067\u3059\uff0earm linux\u3068\u304b*BSD\u3068\u304b\u7d50\u69cb\u3044\u308d\u3044\u308d\u305d\u308d\u3063\u3066\u3044\u307e\u3059\uff0e

\n\n

\u4eca\u56de\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e

\n
$ wget https://github.com/ok-borg/borg/releases/download/v0.0.1/borg_linux_amd64 -O ~/usr/local/bin/borg && chmod +x ~/usr/local/bin/borg
\n

\u5229\u7528\u65b9\u6cd5

\n

\u57fa\u672c\u7684\u306b\u30b3\u30de\u30f3\u30c9\u306e\u5f8c\u308d\u306b\u8abf\u3079\u305f\u3044\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u3064\u3051\u308b\u3060\u3051\u3067\u3059\uff0e\u898f\u5b9a\u5024\u3067\u306f5\u3064\u306e\u4f8b\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e bash\u3067loop\u3069\u3046\u66f8\u304f\u3093\u3060\u3063\u3051?

\n
$ borg "bash loop"\r\n(1) Bash Shell Do While Loop Infinite loop?\r\n         [11] while [ `prog -some flags` = "Another instance of this program is running, please exit it first" ]\r\n              -\r\n              bay=$(prog -some flags)\r\n              while [ $bay = "Another instance of this program is running, please exit it first" ]\r\n              do\r\n              echo "Awaiting Access to program"\r\n              bay=$(prog -some flags)\r\n              done\r\n              .....\r\n         [12] while true\r\n              do\r\n         ...  \r\n\r\n(2) Bash foreach loop\r\n         [21] xargs cat <filenames.txt\r\n              -\r\n              for fn in `cat filenames.txt`; do\r\n                  echo "the next file is $fn"\r\n                  cat $fn\r\n              done\r\n         [22] for fn in `cat filenames.txt`; do cat "$fn"; done\r\n         [23] while read filename\r\n              do\r\n                  echo "Printing: $filename"\r\n                  cat "$filename"\r\n         ...\r\n\r\n(3) Bash loop ping successful\r\n         [31] ((count = 100))                            # Maximum number to try.\r\n              while [[ $count -ne 0 ]] ; do\r\n                  ping -c 1 8.8.8.8                      # Try once.\r\n                  rc=$?\r\n                  if [[ $rc -eq 0 ]] ; then\r\n                      ((count = 1))                      # If okay, flag to exit loop.\r\n                  fi\r\n                  ((count = count - 1))                  # So we don't go forever.\r\n              done\r\n              if [[ $rc -eq 0 ]] ; then                  # Make final determination.\r\n         ...\r\n\r\n(4) Limit for bash loop\r\n        [41] for(( i=1; i <= 1000; i++ )); do\r\n                 name=$(date --date="$i day ago" +%Y%m%d%H%M%S)\r\n                 mkdir -p "$name" &&\r\n                 touch "$name/${name}_file" ||\r\n                 break\r\n             done\r\n\r\n(5) Bash 'for' loop syntax?\r\n         [51] for (($i=0...\r\n              -\r\n              for ((i=0;i<10;i++))\r\n         [52] for i in `seq 0 9`\r\n              do\r\n                  echo "the i is $i"\r\n              done\r\n         [53] for i in {0..9}\r\n                do\r\n                  echo $i\r\n                done\r\n         ...
\n

\u753b\u50cf\u3092\u30bf\u30a4\u30eb\u306b\u7d50\u5408\u3063\u3066?

\n
$ borg "image tile"\r\n(1) ImageMagick crop huge image\r\n         [11] $ time convert -crop 512x512 +repage huge.tif x/image_out_%d.tif\r\n              real    0m5.623s\r\n              user    0m2.060s\r\n              sys     0m2.148s\r\n              $ time vips dzsave huge.tif x --depth 1 --tile-size 512 --overlap 0 --suffix .tif\r\n              real    0m1.643s\r\n              user    0m1.668s\r\n              sys     0m1.000s\r\n         [12]  convert -monitor -limit area 2mb myLargeImg.tif myLargeImg.mpc\r\n              -\r\n               #!/bin/bash\r\n         ...\r\n\r\n(2) Set clipboard to image - pbcopy\r\n        [21] cat image.png | impbcopy -\r\n        [22] # Copy image to clipboard\r\n             uuencode SomeFile.jpg - | pbcopy\r\n             -\r\n             # Paste from clipboard to image file\r\n             pbpaste | uudecode -o AnotherFile.jpg\r\n\r\n\r\n(3) Using Amazon MapReduce/Hadoop for Image Processing\r\n         [31] and should be able to be done using Bash\r\n         [32] #!/usr/bin/env bash\r\n              # NLineInputFormat gives a single line: key is offset, value is Isotropic Url\r\n              read offset isofile\r\n              # Retrieve file from Isotropic server to local disk\r\n              echo "reporter:status:Retrieving $isofile" >&2\r\n              target=`echo $isofile | awk '{split($0,a,"/");print a[5] a[6]}'`\r\n              filename=$target.tar.bz2\r\n              #$HADOOP_INSTALL/bin/hadoop fs -get $isofile ./$filename\r\n              curl  $isofile -o $filename\r\n         ...\r\n\r\n(4) Convert multipage PDF to a single image\r\n        [41] convert in.pdf -append out%d.png\r\n             -\r\n             convert *.png output.pdf\r\n             -\r\n             convert foo?.png output.pdf\r\n        [42] convert in.pdf +append out%d.png\r\n\r\n(5) bash cgi won't return image\r\n        [51] echo -ne "Content-type: image/png\\n\\n"\r\n             -\r\n             echo -e "Content-type: image/png\\n"\r\n             -\r\n               -n     do not output the trailing newline
\n

\u3068\u304b\u3068\u304b\uff0e

\n

\u30aa\u30d7\u30b7\u30e7\u30f3\u306f\u3053\u3093\u306a\u611f\u3058\u3068\u308a\u3042\u3048\u305a\u7701\u7565\u3055\u308c\u306a\u3044\u3088\u3046\u306b-f\u3092\u3064\u3051\u3066\u30da\u30fc\u30b8\u30e3\u306b\u6e21\u3059\u3068\u826f\u3055\u305d\u3046\uff0e

\n
$ borg --help\r\nUsage of borg:\r\n-f  (= false)\r\n    Print full results, ie. no more '...'\r\n-h (= "borg.crufter.com")\r\n    Server to connect to\r\n-l  (= 5)\r\n    Result list limit. Defaults to 5\r\n-p  (= false)\r\n    Private search. Your search won't leave a trace. Pinky promise. Don't use this all the time if you want to see the search result relevancy improved
\n

\u691c\u7d22\u3060\u3051\u3067\u306a\u304f\u30b9\u30cb\u30da\u30c3\u30c8\u306e\u8ffd\u52a0\u3084\u7de8\u96c6\u3082\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e

\n\n

\u30b5\u30fc\u30d0\u3082\u9078\u3079\u308b\u306e\u3067\u81ea\u5206\u7528\u306e\u30e1\u30e2\u3092\u84c4\u7a4d\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u306d\uff0e \u3061\u3087\u3063\u3068\u60dc\u3057\u3044\u306e\u306f\u30b5\u30fc\u30d0\u3068\u901a\u4fe1\u3057\u3066\u7d50\u679c\u3092\u8868\u793a\u3059\u308b\u306e\u3067\u30aa\u30d5\u30e9\u30a4\u30f3\u3067\u306f\u4f7f\u3048\u306a\u3044\u3068\u3044\u3046\u3068\u3053\u308d\uff0e \u30aa\u30d5\u30e9\u30a4\u30f3\u3067\u4f7f\u3044\u305f\u3044\u5834\u5408\u306f\u30ed\u30fc\u30ab\u30eb\u306b\u30b5\u30fc\u30d0\u3092\u7acb\u3066\u308b\u304b\u5225\u306e\u65b9\u6cd5\u3092\u4f7f\u3046\u3057\u304b\u306a\u3055\u305d\u3046\u3067\u3059\uff0e

\n", "content_text": "borg\u306fOK borg\u3068\u3044\u3046site\u306e\u30b9\u30cb\u30da\u30c3\u30c8\u3092\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u4e0a\u304b\u3089\u691c\u7d22\u3057\u305f\u308a\u7de8\u96c6\u3067\u304d\u308b\u30b3\u30de\u30f3\u30c9\u306e\u3088\u3046\u3067\u3059\uff0eborg\u306fgo\u88fd\u3067Apache License Version 2.0\u306e\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3067\u3059\uff0e\n\nborg/docs at master \u00b7 ok-borg/borg \u00b7 GitHub\nOK borg – the quickest solution to your bash woes\n\n\u5c0e\u5165\n\u5c0e\u5165\u65b9\u6cd5\u306f\u5982\u4f55\u304b\u3089\u5bfe\u5fdc\u30d0\u30a4\u30ca\u30ea\u3092\u5165\u624b\u3057\u3066\u9069\u5f53\u306a\u5834\u6240\u306b\u7f6e\u304d\uff0c\u5b9f\u884c\u6a29\u3092\u3064\u3051\u308b\u3060\u3051\u3067\u3059\uff0earm linux\u3068\u304b*BSD\u3068\u304b\u7d50\u69cb\u3044\u308d\u3044\u308d\u305d\u308d\u3063\u3066\u3044\u307e\u3059\uff0e\n\nReleases \u00b7 ok-borg/borg \u00b7 GitHub\n\n\u4eca\u56de\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e\n$ wget https://github.com/ok-borg/borg/releases/download/v0.0.1/borg_linux_amd64 -O ~/usr/local/bin/borg && chmod +x ~/usr/local/bin/borg\n\u5229\u7528\u65b9\u6cd5\n\u57fa\u672c\u7684\u306b\u30b3\u30de\u30f3\u30c9\u306e\u5f8c\u308d\u306b\u8abf\u3079\u305f\u3044\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u3064\u3051\u308b\u3060\u3051\u3067\u3059\uff0e\u898f\u5b9a\u5024\u3067\u306f5\u3064\u306e\u4f8b\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e bash\u3067loop\u3069\u3046\u66f8\u304f\u3093\u3060\u3063\u3051?\n$ borg "bash loop"\r\n(1) Bash Shell Do While Loop Infinite loop?\r\n [11] while [ `prog -some flags` = "Another instance of this program is running, please exit it first" ]\r\n -\r\n bay=$(prog -some flags)\r\n while [ $bay = "Another instance of this program is running, please exit it first" ]\r\n do\r\n echo "Awaiting Access to program"\r\n bay=$(prog -some flags)\r\n done\r\n .....\r\n [12] while true\r\n do\r\n ... \r\n\r\n(2) Bash foreach loop\r\n [21] xargs cat <filenames.txt\r\n -\r\n for fn in `cat filenames.txt`; do\r\n echo "the next file is $fn"\r\n cat $fn\r\n done\r\n [22] for fn in `cat filenames.txt`; do cat "$fn"; done\r\n [23] while read filename\r\n do\r\n echo "Printing: $filename"\r\n cat "$filename"\r\n ...\r\n\r\n(3) Bash loop ping successful\r\n [31] ((count = 100)) # Maximum number to try.\r\n while [[ $count -ne 0 ]] ; do\r\n ping -c 1 8.8.8.8 # Try once.\r\n rc=$?\r\n if [[ $rc -eq 0 ]] ; then\r\n ((count = 1)) # If okay, flag to exit loop.\r\n fi\r\n ((count = count - 1)) # So we don't go forever.\r\n done\r\n if [[ $rc -eq 0 ]] ; then # Make final determination.\r\n ...\r\n\r\n(4) Limit for bash loop\r\n [41] for(( i=1; i <= 1000; i++ )); do\r\n name=$(date --date="$i day ago" +%Y%m%d%H%M%S)\r\n mkdir -p "$name" &&\r\n touch "$name/${name}_file" ||\r\n break\r\n done\r\n\r\n(5) Bash 'for' loop syntax?\r\n [51] for (($i=0...\r\n -\r\n for ((i=0;i<10;i++))\r\n [52] for i in `seq 0 9`\r\n do\r\n echo "the i is $i"\r\n done\r\n [53] for i in {0..9}\r\n do\r\n echo $i\r\n done\r\n ...\n\u753b\u50cf\u3092\u30bf\u30a4\u30eb\u306b\u7d50\u5408\u3063\u3066?\n$ borg "image tile"\r\n(1) ImageMagick crop huge image\r\n [11] $ time convert -crop 512x512 +repage huge.tif x/image_out_%d.tif\r\n real 0m5.623s\r\n user 0m2.060s\r\n sys 0m2.148s\r\n $ time vips dzsave huge.tif x --depth 1 --tile-size 512 --overlap 0 --suffix .tif\r\n real 0m1.643s\r\n user 0m1.668s\r\n sys 0m1.000s\r\n [12] convert -monitor -limit area 2mb myLargeImg.tif myLargeImg.mpc\r\n -\r\n #!/bin/bash\r\n ...\r\n\r\n(2) Set clipboard to image - pbcopy\r\n [21] cat image.png | impbcopy -\r\n [22] # Copy image to clipboard\r\n uuencode SomeFile.jpg - | pbcopy\r\n -\r\n # Paste from clipboard to image file\r\n pbpaste | uudecode -o AnotherFile.jpg\r\n\r\n\r\n(3) Using Amazon MapReduce/Hadoop for Image Processing\r\n [31] and should be able to be done using Bash\r\n [32] #!/usr/bin/env bash\r\n # NLineInputFormat gives a single line: key is offset, value is Isotropic Url\r\n read offset isofile\r\n # Retrieve file from Isotropic server to local disk\r\n echo "reporter:status:Retrieving $isofile" >&2\r\n target=`echo $isofile | awk '{split($0,a,"/");print a[5] a[6]}'`\r\n filename=$target.tar.bz2\r\n #$HADOOP_INSTALL/bin/hadoop fs -get $isofile ./$filename\r\n curl $isofile -o $filename\r\n ...\r\n\r\n(4) Convert multipage PDF to a single image\r\n [41] convert in.pdf -append out%d.png\r\n -\r\n convert *.png output.pdf\r\n -\r\n convert foo?.png output.pdf\r\n [42] convert in.pdf +append out%d.png\r\n\r\n(5) bash cgi won't return image\r\n [51] echo -ne "Content-type: image/png\\n\\n"\r\n -\r\n echo -e "Content-type: image/png\\n"\r\n -\r\n -n do not output the trailing newline\n\u3068\u304b\u3068\u304b\uff0e\n\u30aa\u30d7\u30b7\u30e7\u30f3\u306f\u3053\u3093\u306a\u611f\u3058\u3068\u308a\u3042\u3048\u305a\u7701\u7565\u3055\u308c\u306a\u3044\u3088\u3046\u306b-f\u3092\u3064\u3051\u3066\u30da\u30fc\u30b8\u30e3\u306b\u6e21\u3059\u3068\u826f\u3055\u305d\u3046\uff0e\n$ borg --help\r\nUsage of borg:\r\n-f (= false)\r\n Print full results, ie. no more '...'\r\n-h (= "borg.crufter.com")\r\n Server to connect to\r\n-l (= 5)\r\n Result list limit. Defaults to 5\r\n-p (= false)\r\n Private search. Your search won't leave a trace. Pinky promise. Don't use this all the time if you want to see the search result relevancy improved\n\u691c\u7d22\u3060\u3051\u3067\u306a\u304f\u30b9\u30cb\u30da\u30c3\u30c8\u306e\u8ffd\u52a0\u3084\u7de8\u96c6\u3082\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e\n\nborg/docs at master \u00b7 ok-borg/borg \u00b7 GitHub\n\n\u30b5\u30fc\u30d0\u3082\u9078\u3079\u308b\u306e\u3067\u81ea\u5206\u7528\u306e\u30e1\u30e2\u3092\u84c4\u7a4d\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u306d\uff0e \u3061\u3087\u3063\u3068\u60dc\u3057\u3044\u306e\u306f\u30b5\u30fc\u30d0\u3068\u901a\u4fe1\u3057\u3066\u7d50\u679c\u3092\u8868\u793a\u3059\u308b\u306e\u3067\u30aa\u30d5\u30e9\u30a4\u30f3\u3067\u306f\u4f7f\u3048\u306a\u3044\u3068\u3044\u3046\u3068\u3053\u308d\uff0e \u30aa\u30d5\u30e9\u30a4\u30f3\u3067\u4f7f\u3044\u305f\u3044\u5834\u5408\u306f\u30ed\u30fc\u30ab\u30eb\u306b\u30b5\u30fc\u30d0\u3092\u7acb\u3066\u308b\u304b\u5225\u306e\u65b9\u6cd5\u3092\u4f7f\u3046\u3057\u304b\u306a\u3055\u305d\u3046\u3067\u3059\uff0e", "date_published": "2016-12-11T23:56:28+09:00", "date_modified": "2016-12-11T23:56:28+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Linux", "Debian", "stretch", "testing", "Ubuntu", "yakkety(16.10)" ] }, { "id": "http://matoken.org/blog/?p=1485", "url": "https://matoken.org/blog/2016/12/09/ttyd-which-can-share-the-terminal-on-the-web/", "title": "\u7aef\u672b\u3092Web\u5171\u6709\u3067\u304d\u308bttyd", "content_html": "

\n

\u7aef\u672b\u3092Web\u30d6\u30e9\u30a6\u30b6\u3067\u5171\u6709\u3067\u304d\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a8\u30a2\u3067\u3059\uff0e \u4ee5\u524d\u4f3c\u305f\u3082\u306e\u3067GoTTY\u3092\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u304c\uff0cttyd\u306fGoTTY\u30a4\u30f3\u30b9\u30d1\u30a4\u30a2\u3089\u3057\u3044\u3067\u3059\uff0e ttyd\u306fc\u88fd\u3067MIT\u30e9\u30a4\u30bb\u30f3\u30b9\u3067\u3059\uff0e

\n\n

\u5c0e\u5165

\n

\u4eca\u56de\u306fDebian stretch amd64(testing)\u306b\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e README.md\u3067\u306fUbuntu 16.04\u3067\u306e\u624b\u9806\u304c\u66f8\u304b\u308c\u3066\u3044\u307e\u3059\u304c\u305d\u306e\u307e\u307e\u4f7f\u3048\u307e\u3057\u305f\uff0e

\n
$ sudo apt install cmake g++ pkg-config git vim-common libwebsockets-dev libjson-c-dev libssl-dev\r\n$ git clone https://github.com/tsl0922/ttyd.git\r\n$ cd ttyd\r\n$ mkdir build\r\n$ cd build\r\n$ cmake ..\r\n$ make
\n

\u52d5\u304b\u3057\u3066\u307f\u308b

\n
$ ./ttyd -p 8080 bash
\n

\u3068\u3057\u3066\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067 http://localhost:8080/ \u306b\u7e4b\u3050\u3068\u5229\u7528\u3067\u304d\u307e\u3059\uff0e tmux\u306e\u30bb\u30c3\u30b7\u30e7\u30f3\u3092\u5171\u6709\u3057\u3066\u8907\u6570\u306e\u30d6\u30e9\u30a6\u30b6\u30671\u3064\u306e\u7aef\u672b\u306e\u64cd\u4f5c\u3068\u304bdocker\u5229\u7528\u3068\u304bGoTTY\u3068\u540c\u3058\u3088\u3046\u306b\u5229\u7528\u3067\u304d\u307e\u3059\uff0e

\n
$ ./ttyd -p 8080 tmux new -A -s ttyd\r\n[2016/12/09 18:54:25:5954] NOTICE: Initial logging level 7\r\n[2016/12/09 18:54:25:5954] NOTICE: Libwebsockets version: 2.0.3 unknown-build-hash\r\n[2016/12/09 18:54:25:5954] NOTICE: IPV6 not compiled in\r\n[2016/12/09 18:54:25:5954] NOTICE: libev support compiled in but disabled\r\n[2016/12/09 18:54:25:5954] NOTICE: libuv support compiled in but disabled\r\n[2016/12/09 18:54:25:5955] NOTICE:  Threads: 1 each 1024 fds\r\n[2016/12/09 18:54:25:5955] NOTICE:  mem: platform fd map:  8192 bytes\r\n[2016/12/09 18:54:25:5955] NOTICE:  Compiled with OpenSSL support\r\n[2016/12/09 18:54:25:5955] NOTICE:  SSL disabled: no LWS_SERVER_OPTION_DO_SSL_GLOBAL_INIT\r\n[2016/12/09 18:54:25:5955] NOTICE: Creating Vhost 'default' port 8080, 2 protocols\r\n[2016/12/09 18:54:25:5955] NOTICE:  Listening on port 8080\r\n[2016/12/09 18:54:25:5955] NOTICE:  mem: per-conn:          920 bytes + protocol rx buf\r\n[2016/12/09 18:54:25:5956] NOTICE:  canonical_hostname = x220\r\n[2016/12/09 18:54:25:5956] NOTICE: TTY configuration:\r\n[2016/12/09 18:54:25:5956] NOTICE:   start command: tmux new -A -s ttyd\r\n[2016/12/09 18:54:25:5956] NOTICE:   reconnect timeout: 10s\r\n[2016/12/09 18:54:25:5956] NOTICE:   close signal: SIGHUP (1)\r\n[2016/12/09 18:54:25:6057] NOTICE: lws_protocol_init\r\n[2016/12/09 18:54:25:9806] NOTICE: HTTP connect from localhost (127.0.0.1), path: /\r\n[2016/12/09 18:54:25:0015] NOTICE: HTTP connect from localhost (127.0.0.1), path: /auth_token.js\r\n[2016/12/09 18:54:26:3474] NOTICE: client connected from localhost (127.0.0.1), total: 1\r\n[2016/12/09 18:54:26:3548] NOTICE: started process, pid: 30365\r\n[2016/12/09 18:54:34:2928] NOTICE: HTTP connect from localhost (127.0.0.1), path: /\r\n[2016/12/09 18:54:34:3132] NOTICE: error on reading from skt : 104\r\n[2016/12/09 18:54:34:3132] NOTICE: sending SIGHUP to process 30365\r\n[2016/12/09 18:54:34:3138] NOTICE: process exited with code 256, pid: 30365\r\n[2016/12/09 18:54:34:3138] NOTICE: client disconnected from localhost (127.0.0.1), total: 0\r\n[2016/12/09 18:54:34:5554] NOTICE: HTTP connect from localhost (127.0.0.1), path: /auth_token.js\r\n[2016/12/09 18:54:34:5732] NOTICE: client connected from localhost (127.0.0.1), total: 1\r\n[2016/12/09 18:54:34:5811] NOTICE: started process, pid: 30505\r\n[2016/12/09 18:54:40:0073] NOTICE: wsi 0x556bcbc34500: TIMEDOUT WAITING on 3 (did hdr 0, ah 0x556bcbbc0c50, wl 0, pfd events 0)\r\n[2016/12/09 18:54:40:0074] NOTICE: lws_header_table_detach: wsi 0x556bcbc34500: ah held 6s, ah.rxpos 0, ah.rxlen 0, mode/state 0 4,wsi->more_rx_waiting 0
\n

\"20161209_18:12:56-1180\"

\n

GoTTY\u306b\u3064\u3044\u3066\u306f\u3053\u3061\u3089\u3092\uff0e

\n\n


\n \u52c9\u5f37\u4f1a\u5411\u3051\u30b5\u30fc\u30d0\u3092\u4f5c\u3063\u3066\u307f\u308b2 / Rasbian jessie\u3092\u8a66\u3059/ Google Authenticator\u306e\u30d1\u30b9\u30b3\u30fc\u30c9\u3092\u4f5c\u308b from Kenichiro MATOHARA

\n

\n", "content_text": "\u7aef\u672b\u3092Web\u30d6\u30e9\u30a6\u30b6\u3067\u5171\u6709\u3067\u304d\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a8\u30a2\u3067\u3059\uff0e \u4ee5\u524d\u4f3c\u305f\u3082\u306e\u3067GoTTY\u3092\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u304c\uff0cttyd\u306fGoTTY\u30a4\u30f3\u30b9\u30d1\u30a4\u30a2\u3089\u3057\u3044\u3067\u3059\uff0e ttyd\u306fc\u88fd\u3067MIT\u30e9\u30a4\u30bb\u30f3\u30b9\u3067\u3059\uff0e\n\nttyd – Share your terminal over the web\n\n\u5c0e\u5165\n\u4eca\u56de\u306fDebian stretch amd64(testing)\u306b\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e README.md\u3067\u306fUbuntu 16.04\u3067\u306e\u624b\u9806\u304c\u66f8\u304b\u308c\u3066\u3044\u307e\u3059\u304c\u305d\u306e\u307e\u307e\u4f7f\u3048\u307e\u3057\u305f\uff0e\n$ sudo apt install cmake g++ pkg-config git vim-common libwebsockets-dev libjson-c-dev libssl-dev\r\n$ git clone https://github.com/tsl0922/ttyd.git\r\n$ cd ttyd\r\n$ mkdir build\r\n$ cd build\r\n$ cmake ..\r\n$ make\n\u52d5\u304b\u3057\u3066\u307f\u308b\n$ ./ttyd -p 8080 bash\n\u3068\u3057\u3066\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067 http://localhost:8080/ \u306b\u7e4b\u3050\u3068\u5229\u7528\u3067\u304d\u307e\u3059\uff0e tmux\u306e\u30bb\u30c3\u30b7\u30e7\u30f3\u3092\u5171\u6709\u3057\u3066\u8907\u6570\u306e\u30d6\u30e9\u30a6\u30b6\u30671\u3064\u306e\u7aef\u672b\u306e\u64cd\u4f5c\u3068\u304bdocker\u5229\u7528\u3068\u304bGoTTY\u3068\u540c\u3058\u3088\u3046\u306b\u5229\u7528\u3067\u304d\u307e\u3059\uff0e\n$ ./ttyd -p 8080 tmux new -A -s ttyd\r\n[2016/12/09 18:54:25:5954] NOTICE: Initial logging level 7\r\n[2016/12/09 18:54:25:5954] NOTICE: Libwebsockets version: 2.0.3 unknown-build-hash\r\n[2016/12/09 18:54:25:5954] NOTICE: IPV6 not compiled in\r\n[2016/12/09 18:54:25:5954] NOTICE: libev support compiled in but disabled\r\n[2016/12/09 18:54:25:5954] NOTICE: libuv support compiled in but disabled\r\n[2016/12/09 18:54:25:5955] NOTICE: Threads: 1 each 1024 fds\r\n[2016/12/09 18:54:25:5955] NOTICE: mem: platform fd map: 8192 bytes\r\n[2016/12/09 18:54:25:5955] NOTICE: Compiled with OpenSSL support\r\n[2016/12/09 18:54:25:5955] NOTICE: SSL disabled: no LWS_SERVER_OPTION_DO_SSL_GLOBAL_INIT\r\n[2016/12/09 18:54:25:5955] NOTICE: Creating Vhost 'default' port 8080, 2 protocols\r\n[2016/12/09 18:54:25:5955] NOTICE: Listening on port 8080\r\n[2016/12/09 18:54:25:5955] NOTICE: mem: per-conn: 920 bytes + protocol rx buf\r\n[2016/12/09 18:54:25:5956] NOTICE: canonical_hostname = x220\r\n[2016/12/09 18:54:25:5956] NOTICE: TTY configuration:\r\n[2016/12/09 18:54:25:5956] NOTICE: start command: tmux new -A -s ttyd\r\n[2016/12/09 18:54:25:5956] NOTICE: reconnect timeout: 10s\r\n[2016/12/09 18:54:25:5956] NOTICE: close signal: SIGHUP (1)\r\n[2016/12/09 18:54:25:6057] NOTICE: lws_protocol_init\r\n[2016/12/09 18:54:25:9806] NOTICE: HTTP connect from localhost (127.0.0.1), path: /\r\n[2016/12/09 18:54:25:0015] NOTICE: HTTP connect from localhost (127.0.0.1), path: /auth_token.js\r\n[2016/12/09 18:54:26:3474] NOTICE: client connected from localhost (127.0.0.1), total: 1\r\n[2016/12/09 18:54:26:3548] NOTICE: started process, pid: 30365\r\n[2016/12/09 18:54:34:2928] NOTICE: HTTP connect from localhost (127.0.0.1), path: /\r\n[2016/12/09 18:54:34:3132] NOTICE: error on reading from skt : 104\r\n[2016/12/09 18:54:34:3132] NOTICE: sending SIGHUP to process 30365\r\n[2016/12/09 18:54:34:3138] NOTICE: process exited with code 256, pid: 30365\r\n[2016/12/09 18:54:34:3138] NOTICE: client disconnected from localhost (127.0.0.1), total: 0\r\n[2016/12/09 18:54:34:5554] NOTICE: HTTP connect from localhost (127.0.0.1), path: /auth_token.js\r\n[2016/12/09 18:54:34:5732] NOTICE: client connected from localhost (127.0.0.1), total: 1\r\n[2016/12/09 18:54:34:5811] NOTICE: started process, pid: 30505\r\n[2016/12/09 18:54:40:0073] NOTICE: wsi 0x556bcbc34500: TIMEDOUT WAITING on 3 (did hdr 0, ah 0x556bcbbc0c50, wl 0, pfd events 0)\r\n[2016/12/09 18:54:40:0074] NOTICE: lws_header_table_detach: wsi 0x556bcbc34500: ah held 6s, ah.rxpos 0, ah.rxlen 0, mode/state 0 4,wsi->more_rx_waiting 0\n\nGoTTY\u306b\u3064\u3044\u3066\u306f\u3053\u3061\u3089\u3092\uff0e\n\n\u7aef\u672b\u3092\u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u306b Web \u3067\u5171\u6709\u3067\u304d\u308b GoTTY | matoken’s meme\n\n\n\n \u52c9\u5f37\u4f1a\u5411\u3051\u30b5\u30fc\u30d0\u3092\u4f5c\u3063\u3066\u307f\u308b2 / Rasbian jessie\u3092\u8a66\u3059/ Google Authenticator\u306e\u30d1\u30b9\u30b3\u30fc\u30c9\u3092\u4f5c\u308b from Kenichiro MATOHARA", "date_published": "2016-12-09T19:07:01+09:00", "date_modified": "2016-12-09T19:07:01+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "gotty", "Linux", "ttyd", "Debian", "stretch", "testing" ] }, { "id": "http://matoken.org/blog/?p=1481", "url": "https://matoken.org/blog/2016/12/08/wget-like-bittorrent-client-tget/", "title": "wget\u30e9\u30a4\u30af\u306bbittorrent\u3092\u53d6\u5f97\u3059\u308btget", "content_html": "

wget\u30b3\u30de\u30f3\u30c9\u306e\u3088\u3046\u306a\u4f7f\u3044\u52dd\u624b\u306eBittorrent\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306etget\u3092\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e node\u88fdMIT\u30e9\u30a4\u30bb\u30f3\u30b9\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u3059\uff0e

\n\n

\u5c0e\u5165\u306fnpm\u3067\uff0etget\u3067\u306f\u306a\u304ft-get\u306a\u306e\u3067\u6ce8\u610f\uff0e

\n
$ npm install -g t-get
\n

torrent\u30d5\u30a1\u30a4\u30eb\uff0c\u30de\u30b0\u30cd\u30c3\u30c8\u30ea\u30f3\u30af\u306e\u4ed6torrent URL\u3067\u3082\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e \u5b9f\u884c\u3059\u308b\u3068\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u30d7\u30ed\u30b0\u30ec\u30b9\u304c\u8868\u793a\u3055\u308c\u3066\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u304c\u59cb\u307e\u308a\u307e\u3059\uff0e\u884c\u5e45\u306f\u30cf\u30fc\u30c9\u30b3\u30fc\u30c9\u3055\u308c\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e

\n
$ tget https://downloads.raspberrypi.org/raspbian_latest.torrent\r\n downloading 1 files (1.4GB) [============================= ] 97% 64.0s 588.8KB/s 99 peers
\n

\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u5b8c\u4e86\u6642\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\uff0e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u5b8c\u4e86\u5f8c\u76f4\u3061\u306b\u7d42\u4e86\u3057\u307e\u3059\uff0e

\n
$ tget https://downloads.raspberrypi.org/raspbian_latest.torrent\r\n------------------\r\n2016-11-25-raspbian-jessie.zip 1.4GB\r\n------------------\r\n downloaded 1 files (1.4GB)
\n

\u30d5\u30a1\u30a4\u30eb\u306e\u4fdd\u5b58\u5148\u306f\u30ab\u30ec\u30f3\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3067\uff0c\u30ab\u30ec\u30f3\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u66f8\u304d\u8fbc\u3081\u306a\u3044\u5834\u5408\u306f\u30a8\u30e9\u30fc\u306b\u306a\u3089\u305a\u30d5\u30a1\u30a4\u30eb\u304c\u6d88\u3048\u3066\u3057\u307e\u3046\u3088\u3046\u3067\u3059\uff0e

\n

\u4fbf\u5229\u3060\u3051\u3069\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u95a2\u4fc2\u306a\u304f\u7d42\u4e86\u3057\u3066\u3057\u307e\u3046\u306e\u3067Bittorrent\u3078\u306e\u8ca2\u732e\u5ea6\u306f\u4f4e\u305d\u3046\u3067\u3059\uff0e \u3061\u306a\u307f\u306b\u6700\u8fd1\u306f\u30ea\u30e2\u30fc\u30c8\u306eTransmission\u3092file server\u3067\u52d5\u4f5c\u3055\u305b\u3066\uff0cTransmission-remote-gtk\u3067\u64cd\u4f5c\u3057\u3066\u3044\u307e\u3059\uff0e

\n

\n", "content_text": "wget\u30b3\u30de\u30f3\u30c9\u306e\u3088\u3046\u306a\u4f7f\u3044\u52dd\u624b\u306eBittorrent\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306etget\u3092\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e node\u88fdMIT\u30e9\u30a4\u30bb\u30f3\u30b9\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u3059\uff0e\n\njeffjose/tget: tget is wget for torrents\n\n\u5c0e\u5165\u306fnpm\u3067\uff0etget\u3067\u306f\u306a\u304ft-get\u306a\u306e\u3067\u6ce8\u610f\uff0e\n$ npm install -g t-get\ntorrent\u30d5\u30a1\u30a4\u30eb\uff0c\u30de\u30b0\u30cd\u30c3\u30c8\u30ea\u30f3\u30af\u306e\u4ed6torrent URL\u3067\u3082\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e \u5b9f\u884c\u3059\u308b\u3068\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u30d7\u30ed\u30b0\u30ec\u30b9\u304c\u8868\u793a\u3055\u308c\u3066\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u304c\u59cb\u307e\u308a\u307e\u3059\uff0e\u884c\u5e45\u306f\u30cf\u30fc\u30c9\u30b3\u30fc\u30c9\u3055\u308c\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e\n$ tget https://downloads.raspberrypi.org/raspbian_latest.torrent\r\n downloading 1 files (1.4GB) [============================= ] 97% 64.0s 588.8KB/s 99 peers\n\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u5b8c\u4e86\u6642\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\uff0e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u5b8c\u4e86\u5f8c\u76f4\u3061\u306b\u7d42\u4e86\u3057\u307e\u3059\uff0e\n$ tget https://downloads.raspberrypi.org/raspbian_latest.torrent\r\n------------------\r\n2016-11-25-raspbian-jessie.zip 1.4GB\r\n------------------\r\n downloaded 1 files (1.4GB)\n\u30d5\u30a1\u30a4\u30eb\u306e\u4fdd\u5b58\u5148\u306f\u30ab\u30ec\u30f3\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3067\uff0c\u30ab\u30ec\u30f3\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u66f8\u304d\u8fbc\u3081\u306a\u3044\u5834\u5408\u306f\u30a8\u30e9\u30fc\u306b\u306a\u3089\u305a\u30d5\u30a1\u30a4\u30eb\u304c\u6d88\u3048\u3066\u3057\u307e\u3046\u3088\u3046\u3067\u3059\uff0e\n\u4fbf\u5229\u3060\u3051\u3069\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u95a2\u4fc2\u306a\u304f\u7d42\u4e86\u3057\u3066\u3057\u307e\u3046\u306e\u3067Bittorrent\u3078\u306e\u8ca2\u732e\u5ea6\u306f\u4f4e\u305d\u3046\u3067\u3059\uff0e \u3061\u306a\u307f\u306b\u6700\u8fd1\u306f\u30ea\u30e2\u30fc\u30c8\u306eTransmission\u3092file server\u3067\u52d5\u4f5c\u3055\u305b\u3066\uff0cTransmission-remote-gtk\u3067\u64cd\u4f5c\u3057\u3066\u3044\u307e\u3059\uff0e", "date_published": "2016-12-08T17:27:02+09:00", "date_modified": "2016-12-08T20:03:23+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "bittorrent", "Linux", "tget", "Debian", "stretch", "testing" ] }, { "id": "http://matoken.org/blog/?p=1476", "url": "https://matoken.org/blog/2016/12/07/screenfetch-like-information-display-command-neofetch/", "title": "Screenfetch\u7684\u306a\u60c5\u5831\u8868\u793a\u30b3\u30de\u30f3\u30c9\u306eNeofetch", "content_html": "

Screenfetch\u7684\u306a\u60c5\u5831\u8868\u793a\u30b3\u30de\u30f3\u30c9\u306eNeofetch

\n

\u3088\u304f\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u306e\u30ad\u30e3\u30d7\u30c1\u30e3\u3092\u53d6\u5f97\u3059\u308b\u3068\u304d\u306b\u8868\u793a\u3055\u308c\u3066\u3044\u308bScreenfetch\u30b3\u30de\u30f3\u30c9\u3068\u3044\u3046\u3082\u306e\u304c\u3042\u308a\u307e\u3059\uff0e\u30b7\u30b9\u30c6\u30e0\u306e\u60c5\u5831\u3068\u30a2\u30b9\u30ad\u30fc\u30a2\u30fc\u30c8\u3092\u7d20\u6575\u306b\u8868\u793a\u3057\u3066\u304f\u308c\u307e\u3059\uff0e \u3053\u308c\u306b\u306b\u305f\u3082\u306e\u3067Netfetch\u3068\u3044\u3046\u3082\u306e\u3092\u898b\u304b\u3051\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\u3053\u3061\u3089\u306f\u753b\u50cf\u3082\u6271\u3048\u308b\u3088\u3046\u3067\u3059\uff0e

\n\n

\u5c0e\u5165

\n

\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u306b\u5404\u7a2e\u74b0\u5883\u3078\u306e\u5c0e\u5165\u65b9\u6cd5\u304c\u66f8\u304b\u308c\u3066\u3044\u307e\u3059\uff0e

\n\n

Debian sid/stretch\u306b\u306f\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u3042\u308b\u3088\u3046\u306a\u3053\u3068\u304c\u66f8\u304b\u308c\u3066\u3044\u307e\u3059\u304c\uff0c

\n
Neofetch is in Debian Unstable/Stretch's official repositories.
\n

\u4eca\u306fsid\u306e\u307f\u306e\u3088\u3046\u3067\u3059\uff0e

\n\n

\u3068\u3044\u3046\u3053\u3068\u3067\u3072\u3068\u307e\u305astretch\u3067\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e

\n
$ #-- /etc/apt/sources.list.d/neofetch \u3092\u4f5c\u308b\r\n$ sudo apt edit-sources neofetch\r\n$ cat /etc/apt/sources.list.d/neofetch.list\r\ndeb http://dl.bintray.com/dawidd6/neofetch jessie main\r\n$ #-- \u9375\u306e\u30a4\u30f3\u30dd\u30fc\u30c8\r\n$ wget "https://bintray.com/user/downloadSubjectPublicKey?username=bintray" -O Release-neofetch.key\r\n$ gpg Release-neofetch.key\r\npub   rsa4096 2015-02-17 [SC]\r\n      8756C4F765C9AC3CB6B85D62379CE192D401AB61\r\nuid           Bintray (by JFrog) <bintray@bintray.com>\r\nsub   rsa4096 2015-02-17 [E]\r\n$ sudo apt-key add Release-neofetch.key\r\n$ rm Release-neofetch.key\r\n$ #-- pkg\u60c5\u5831\u66f4\u65b0&pkg\u5c0e\u5165\r\n$ sudo apt update\r\n$ sudo apt install neofetch
\n

\u65e9\u901f\u5b9f\u884c

\n
$ neofetch --help\r\n\r\n    NEOFETCH\r\n\r\n    USAGE: neofetch --option "value" --option "value"\r\n\r\n    NOTE: There's also a config option for each flag below.\r\n\r\n    Info:\r\n    --disable infoname          Allows you to disable an info line from appearing\r\n                                in the output.\r\n                                NOTE: You can supply multiple args. eg.\r\n                                'neofetch --disable cpu gpu disk shell'\r\n                                NOTE: The arguments must all be lowercase.\r\n    --os_arch on/off            Hide/Show OS architecture.\r\n    --speed_type type           Change the type of cpu speed to display.\r\n                                Possible values: current, min, max, bios,\r\n                                scaling_current, scaling_min, scaling_max\r\n                                NOTE: This only support Linux with cpufreq.\r\n    --cpu_shorthand type        Shorten the output of CPU\r\n                                Possible values: name, speed, tiny, on, off\r\n    --cpu_cores type            Whether or not to display the number of CPU cores\r\n                                Takes: logical, physical, off\r\n                                NOTE: 'physical' doesn't work on BSD.\r\n    --cpu_speed on/off          Hide/Show cpu speed.\r\n    --cpu_temp on/off           Hide/Show cpu temperature.\r\n                                NOTE: This only works on Linux and BSD.\r\n                                NOTE: For FreeBSD-based systems, you need to enable coretemp\r\n                                      kernel module.\r\n    --distro_shorthand on/off   Shorten the output of distro (tiny, on, off)\r\n                                NOTE: This option won't work in Windows (Cygwin)\r\n    --kernel_shorthand on/off   Shorten the output of kernel\r\n                                NOTE: This option won't work in BSDs (except PacBSD and PC-BSD)\r\n    --uptime_shorthand on/off   Shorten the output of uptime (tiny, on, off)\r\n    --refresh_rate on/off       Whether to display the refresh rate of each monitor\r\n                                Unsupported on Windows\r\n    --gpu_brand on/off          Enable/Disable GPU brand in output. (AMD/NVIDIA/Intel)\r\n    --gtk_shorthand on/off      Shorten output of gtk theme/icons\r\n    --gtk2 on/off               Enable/Disable gtk2 theme/icons output\r\n    --gtk3 on/off               Enable/Disable gtk3 theme/icons output\r\n    --shell_path on/off         Enable/Disable showing $SHELL path\r\n    --shell_version on/off      Enable/Disable showing $SHELL version\r\n    --ip_host url               Url to query for public IP\r\n    --song_shorthand on/off     Print the Artist/Title on seperate lines\r\n    --birthday_shorthand on/off Shorten the output of birthday\r\n    --birthday_time on/off      Enable/Disable showing the time in birthday output\r\n    --birthday_format format    Format the birthday output. (Uses 'date' cmd format)\r\n\r\n    Text Formatting:\r\n    --colors x x x x x x        Changes the text colors in this order:\r\n                                title, @, underline, subtitle, colon, info\r\n    --underline on/off          Enable/Disable the underline.\r\n    --underline_char char       Character to use when underlining title\r\n    --bold on/off               Enable/Disable bold text\r\n\r\n    Color Blocks:\r\n    --color_blocks on/off       Enable/Disable the color blocks\r\n    --block_width num           Width of color blocks in spaces\r\n    --block_height num          Height of color blocks in lines\r\n    --block_range start end     Range of colors to print as blocks\r\n\r\n    Bars:\r\n    --bar_char 'elapsed char' 'total char'\r\n                                Characters to use when drawing bars.\r\n    --bar_border on/off         Whether or not to surround the bar with '[]'\r\n    --bar_length num            Length in spaces to make the bars.\r\n    --bar_colors num num        Colors to make the bar.\r\n                                Set in this order: elapsed, total\r\n    --cpu_display mode          Bar mode.\r\n                                Takes: bar, infobar, barinfo, off\r\n    --memory_display mode       Bar mode.\r\n                                Takes: bar, infobar, barinfo, off\r\n    --battery_display mode      Bar mode.\r\n                                Takes: bar, infobar, barinfo, off\r\n    --disk_display mode         Bar mode.\r\n                                Takes: bar, infobar, barinfo, off\r\n\r\n    Image:\r\n    --image type                Image source. Where and what image we display.\r\n                                Possible values: wall, ascii,\r\n                                /path/to/img, /path/to/dir/, off\r\n    --size 00px | --size 00%    How to size the image.\r\n                                Possible values: auto, 00px, 00%, none\r\n    --crop_mode mode            Which crop mode to use\r\n                                Takes the values: normal, fit, fill\r\n    --crop_offset value         Change the crop offset for normal mode.\r\n                                Possible values: northwest, north, northeast,\r\n                                west, center, east, southwest, south, southeast\r\n\r\n    --xoffset px                How close the image will be to the left edge of the\r\n                                window. This only works with w3m.\r\n    --yoffset px                How close the image will be to the top edge of the\r\n                                window. This only works with w3m.\r\n    --bg_color color            Background color to display behind transparent image.\r\n                                This only works with w3m.\r\n    --gap num                   Gap between image and text.\r\n                                NOTE: --gap can take a negative value which will\r\n                                move the text closer to the left side.\r\n    --clean                     Delete cached files and thumbnails.\r\n\r\n    Ascii:\r\n    --ascii value               Where to get the ascii from, Possible values:\r\n                                distro, /path/to/ascii\r\n    --ascii_colors x x x x x x  Colors to print the ascii art\r\n    --ascii_distro distro       Which Distro's ascii art to print\r\n                                NOTE: Arch and Ubuntu have 'old' logo varients.\r\n                                NOTE: Use 'arch_old' or 'ubuntu_old' to use the old logos.\r\n                                NOTE: Ubuntu has flavor varients.\r\n                                NOTE: Change this to 'Lubuntu', 'Xubuntu', 'Ubuntu-GNOME'\r\n                                or 'Ubuntu-Budgie' to use the flavors.\r\n    --ascii_logo_size           Size of ascii logo.\r\n                                Supported distros: Arch, Gentoo, Crux, OpenBSD.\r\n    --ascii_bold on/off         Whether or not to bold the ascii logo.\r\n    --logo | -L                 Hide the info text and only show the ascii logo.\r\n\r\n    Screenshot:\r\n    --scrot | -s /path/to/img   Take a screenshot, if path is left empty the screen-\r\n                                shot function will use $scrot_dir and $scrot_name.\r\n    --upload | -su /pth/t/img   Same as --scrot but uploads the scrot to a website.\r\n    --image_host                Website to upload scrots to. Takes: imgur, teknik\r\n    --scrot_cmd cmd             Screenshot program to launch\r\n\r\n    Other:\r\n    --config /path/to/config    Specify a path to a custom config file\r\n    --config none               Launch the script without a config file\r\n    --help                      Print this text and exit\r\n    --version                   Show neofetch version\r\n    -v                          Display error messages.\r\n    -vv                         Display a verbose log for error reporting.
\n

\u30aa\u30d7\u30b7\u30e7\u30f3\u7d50\u69cb\u591a\u3044\u3067\u3059\uff0e \u3068\u308a\u3042\u3048\u305a\u7d20\u3067\u5b9f\u884c\uff0e

\n

\"20161207_05:12:12-5188\"
\n

\n

\u60c5\u5831\u3082Screenfetch\u3088\u308a\u5897\u3048\u3066\u3044\u307e\u3059\uff0e

\n

\"20161207_05:12:20-9093\"
\n

\n

\u6b21\u306f\u753b\u50cf\u3092\u6307\u5b9a\u3057\u3066\u307f\u307e\u3059\uff0e\u753b\u50cf\u30b5\u30a4\u30ba\u304c\u5927\u304d\u304b\u3063\u305f\u306e\u306725%\u306b\u7e2e\u5c0f\u3082\u3057\u3066\u3044\u307e\u3059\uff0e \u697d\u3057\u3044 :)

\n

\"20161207_05:12:35-3963\"
\n
\n\"20161207_06:12:30-16979\"
\n

\n

\u753b\u50cf\u306e\u8868\u793a\u306b\u3064\u3044\u3066\u306f\u74b0\u5883\u306b\u3088\u3063\u3066\u3046\u307e\u304f\u884c\u304f\u884c\u304b\u306a\u3044\u304c\u3042\u308b\u3088\u3046\u3067\u3059\uff0e\u3046\u307e\u304f\u8868\u793a\u3055\u308c\u306a\u3044\u5834\u5408\u306f\u4ee5\u4e0b\u306eWiki\u3092\u53c2\u7167\u3059\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e

\n\n

\n", "content_text": "Screenfetch\u7684\u306a\u60c5\u5831\u8868\u793a\u30b3\u30de\u30f3\u30c9\u306eNeofetch\n\u3088\u304f\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u306e\u30ad\u30e3\u30d7\u30c1\u30e3\u3092\u53d6\u5f97\u3059\u308b\u3068\u304d\u306b\u8868\u793a\u3055\u308c\u3066\u3044\u308bScreenfetch\u30b3\u30de\u30f3\u30c9\u3068\u3044\u3046\u3082\u306e\u304c\u3042\u308a\u307e\u3059\uff0e\u30b7\u30b9\u30c6\u30e0\u306e\u60c5\u5831\u3068\u30a2\u30b9\u30ad\u30fc\u30a2\u30fc\u30c8\u3092\u7d20\u6575\u306b\u8868\u793a\u3057\u3066\u304f\u308c\u307e\u3059\uff0e \u3053\u308c\u306b\u306b\u305f\u3082\u306e\u3067Netfetch\u3068\u3044\u3046\u3082\u306e\u3092\u898b\u304b\u3051\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\u3053\u3061\u3089\u306f\u753b\u50cf\u3082\u6271\u3048\u308b\u3088\u3046\u3067\u3059\uff0e\n\ndylanaraps/neofetch: A fast, highly customizable system info script that supports Linux, MacOS, iOS, BSD, Solaris, Android, Haiku, GNU Hurd and Windows (Cygwin/Windows 10 Linux subsystem)\n\n\u5c0e\u5165\n\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u306b\u5404\u7a2e\u74b0\u5883\u3078\u306e\u5c0e\u5165\u65b9\u6cd5\u304c\u66f8\u304b\u308c\u3066\u3044\u307e\u3059\uff0e\n\nInstallation \u00b7 dylanaraps/neofetch Wiki\n\nDebian sid/stretch\u306b\u306f\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u3042\u308b\u3088\u3046\u306a\u3053\u3068\u304c\u66f8\u304b\u308c\u3066\u3044\u307e\u3059\u304c\uff0c\nNeofetch is in Debian Unstable/Stretch's official repositories.\n\u4eca\u306fsid\u306e\u307f\u306e\u3088\u3046\u3067\u3059\uff0e\n\nDebian — \u30d1\u30c3\u30b1\u30fc\u30b8\u691c\u7d22\u7d50\u679c — neofetch\n\n\u3068\u3044\u3046\u3053\u3068\u3067\u3072\u3068\u307e\u305astretch\u3067\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e\n$ #-- /etc/apt/sources.list.d/neofetch \u3092\u4f5c\u308b\r\n$ sudo apt edit-sources neofetch\r\n$ cat /etc/apt/sources.list.d/neofetch.list\r\ndeb http://dl.bintray.com/dawidd6/neofetch jessie main\r\n$ #-- \u9375\u306e\u30a4\u30f3\u30dd\u30fc\u30c8\r\n$ wget "https://bintray.com/user/downloadSubjectPublicKey?username=bintray" -O Release-neofetch.key\r\n$ gpg Release-neofetch.key\r\npub rsa4096 2015-02-17 [SC]\r\n 8756C4F765C9AC3CB6B85D62379CE192D401AB61\r\nuid Bintray (by JFrog) <bintray@bintray.com>\r\nsub rsa4096 2015-02-17 [E]\r\n$ sudo apt-key add Release-neofetch.key\r\n$ rm Release-neofetch.key\r\n$ #-- pkg\u60c5\u5831\u66f4\u65b0&pkg\u5c0e\u5165\r\n$ sudo apt update\r\n$ sudo apt install neofetch\n\u65e9\u901f\u5b9f\u884c\n$ neofetch --help\r\n\r\n NEOFETCH\r\n\r\n USAGE: neofetch --option "value" --option "value"\r\n\r\n NOTE: There's also a config option for each flag below.\r\n\r\n Info:\r\n --disable infoname Allows you to disable an info line from appearing\r\n in the output.\r\n NOTE: You can supply multiple args. eg.\r\n 'neofetch --disable cpu gpu disk shell'\r\n NOTE: The arguments must all be lowercase.\r\n --os_arch on/off Hide/Show OS architecture.\r\n --speed_type type Change the type of cpu speed to display.\r\n Possible values: current, min, max, bios,\r\n scaling_current, scaling_min, scaling_max\r\n NOTE: This only support Linux with cpufreq.\r\n --cpu_shorthand type Shorten the output of CPU\r\n Possible values: name, speed, tiny, on, off\r\n --cpu_cores type Whether or not to display the number of CPU cores\r\n Takes: logical, physical, off\r\n NOTE: 'physical' doesn't work on BSD.\r\n --cpu_speed on/off Hide/Show cpu speed.\r\n --cpu_temp on/off Hide/Show cpu temperature.\r\n NOTE: This only works on Linux and BSD.\r\n NOTE: For FreeBSD-based systems, you need to enable coretemp\r\n kernel module.\r\n --distro_shorthand on/off Shorten the output of distro (tiny, on, off)\r\n NOTE: This option won't work in Windows (Cygwin)\r\n --kernel_shorthand on/off Shorten the output of kernel\r\n NOTE: This option won't work in BSDs (except PacBSD and PC-BSD)\r\n --uptime_shorthand on/off Shorten the output of uptime (tiny, on, off)\r\n --refresh_rate on/off Whether to display the refresh rate of each monitor\r\n Unsupported on Windows\r\n --gpu_brand on/off Enable/Disable GPU brand in output. (AMD/NVIDIA/Intel)\r\n --gtk_shorthand on/off Shorten output of gtk theme/icons\r\n --gtk2 on/off Enable/Disable gtk2 theme/icons output\r\n --gtk3 on/off Enable/Disable gtk3 theme/icons output\r\n --shell_path on/off Enable/Disable showing $SHELL path\r\n --shell_version on/off Enable/Disable showing $SHELL version\r\n --ip_host url Url to query for public IP\r\n --song_shorthand on/off Print the Artist/Title on seperate lines\r\n --birthday_shorthand on/off Shorten the output of birthday\r\n --birthday_time on/off Enable/Disable showing the time in birthday output\r\n --birthday_format format Format the birthday output. (Uses 'date' cmd format)\r\n\r\n Text Formatting:\r\n --colors x x x x x x Changes the text colors in this order:\r\n title, @, underline, subtitle, colon, info\r\n --underline on/off Enable/Disable the underline.\r\n --underline_char char Character to use when underlining title\r\n --bold on/off Enable/Disable bold text\r\n\r\n Color Blocks:\r\n --color_blocks on/off Enable/Disable the color blocks\r\n --block_width num Width of color blocks in spaces\r\n --block_height num Height of color blocks in lines\r\n --block_range start end Range of colors to print as blocks\r\n\r\n Bars:\r\n --bar_char 'elapsed char' 'total char'\r\n Characters to use when drawing bars.\r\n --bar_border on/off Whether or not to surround the bar with '[]'\r\n --bar_length num Length in spaces to make the bars.\r\n --bar_colors num num Colors to make the bar.\r\n Set in this order: elapsed, total\r\n --cpu_display mode Bar mode.\r\n Takes: bar, infobar, barinfo, off\r\n --memory_display mode Bar mode.\r\n Takes: bar, infobar, barinfo, off\r\n --battery_display mode Bar mode.\r\n Takes: bar, infobar, barinfo, off\r\n --disk_display mode Bar mode.\r\n Takes: bar, infobar, barinfo, off\r\n\r\n Image:\r\n --image type Image source. Where and what image we display.\r\n Possible values: wall, ascii,\r\n /path/to/img, /path/to/dir/, off\r\n --size 00px | --size 00% How to size the image.\r\n Possible values: auto, 00px, 00%, none\r\n --crop_mode mode Which crop mode to use\r\n Takes the values: normal, fit, fill\r\n --crop_offset value Change the crop offset for normal mode.\r\n Possible values: northwest, north, northeast,\r\n west, center, east, southwest, south, southeast\r\n\r\n --xoffset px How close the image will be to the left edge of the\r\n window. This only works with w3m.\r\n --yoffset px How close the image will be to the top edge of the\r\n window. This only works with w3m.\r\n --bg_color color Background color to display behind transparent image.\r\n This only works with w3m.\r\n --gap num Gap between image and text.\r\n NOTE: --gap can take a negative value which will\r\n move the text closer to the left side.\r\n --clean Delete cached files and thumbnails.\r\n\r\n Ascii:\r\n --ascii value Where to get the ascii from, Possible values:\r\n distro, /path/to/ascii\r\n --ascii_colors x x x x x x Colors to print the ascii art\r\n --ascii_distro distro Which Distro's ascii art to print\r\n NOTE: Arch and Ubuntu have 'old' logo varients.\r\n NOTE: Use 'arch_old' or 'ubuntu_old' to use the old logos.\r\n NOTE: Ubuntu has flavor varients.\r\n NOTE: Change this to 'Lubuntu', 'Xubuntu', 'Ubuntu-GNOME'\r\n or 'Ubuntu-Budgie' to use the flavors.\r\n --ascii_logo_size Size of ascii logo.\r\n Supported distros: Arch, Gentoo, Crux, OpenBSD.\r\n --ascii_bold on/off Whether or not to bold the ascii logo.\r\n --logo | -L Hide the info text and only show the ascii logo.\r\n\r\n Screenshot:\r\n --scrot | -s /path/to/img Take a screenshot, if path is left empty the screen-\r\n shot function will use $scrot_dir and $scrot_name.\r\n --upload | -su /pth/t/img Same as --scrot but uploads the scrot to a website.\r\n --image_host Website to upload scrots to. Takes: imgur, teknik\r\n --scrot_cmd cmd Screenshot program to launch\r\n\r\n Other:\r\n --config /path/to/config Specify a path to a custom config file\r\n --config none Launch the script without a config file\r\n --help Print this text and exit\r\n --version Show neofetch version\r\n -v Display error messages.\r\n -vv Display a verbose log for error reporting.\n\u30aa\u30d7\u30b7\u30e7\u30f3\u7d50\u69cb\u591a\u3044\u3067\u3059\uff0e \u3068\u308a\u3042\u3048\u305a\u7d20\u3067\u5b9f\u884c\uff0e\n\n\n\u60c5\u5831\u3082Screenfetch\u3088\u308a\u5897\u3048\u3066\u3044\u307e\u3059\uff0e\n\n\n\u6b21\u306f\u753b\u50cf\u3092\u6307\u5b9a\u3057\u3066\u307f\u307e\u3059\uff0e\u753b\u50cf\u30b5\u30a4\u30ba\u304c\u5927\u304d\u304b\u3063\u305f\u306e\u306725%\u306b\u7e2e\u5c0f\u3082\u3057\u3066\u3044\u307e\u3059\uff0e \u697d\u3057\u3044 :)\n\n\n\n\n\u753b\u50cf\u306e\u8868\u793a\u306b\u3064\u3044\u3066\u306f\u74b0\u5883\u306b\u3088\u3063\u3066\u3046\u307e\u304f\u884c\u304f\u884c\u304b\u306a\u3044\u304c\u3042\u308b\u3088\u3046\u3067\u3059\uff0e\u3046\u307e\u304f\u8868\u793a\u3055\u308c\u306a\u3044\u5834\u5408\u306f\u4ee5\u4e0b\u306eWiki\u3092\u53c2\u7167\u3059\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\n\nImages in the terminal \u00b7 dylanaraps/neofetch Wiki", "date_published": "2016-12-07T06:27:09+09:00", "date_modified": "2016-12-07T06:27:09+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Debian", "Linux", "neofetch", "screenfetch", "stretch", "testing" ] }, { "id": "http://matoken.org/blog/?p=1466", "url": "https://matoken.org/blog/2016/12/03/markdown-writer-marp-specialized-for-multi-platform-slide/", "title": "\u30de\u30eb\u30c1\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0&\u30b9\u30e9\u30a4\u30c9\u306b\u7279\u5316\u3057\u305fMarkdown Writer\u306eMarp\u3092\u8a66\u3059", "content_html": "

\n

\u6700\u8fd1\u52c9\u5f37\u4f1a\u306e\u767a\u8868\u8cc7\u6599\u306f\u30b9\u30e9\u30a4\u30c9\u306b\u305b\u305a\u306bMarkdown\u3084Asciidoc\u3067\u66f8\u3044\u3066html\u3084pdf\u306b\u66f8\u304d\u51fa\u3057\u3066\u307e\u3057\u305f\uff0e\u3053\u308c\u3092Slideshare\u3068\u304b\u306b\u7f6e\u3044\u3066\u3044\u308b\u306e\u3067\u3059\u304c\uff0c\u30b9\u30e9\u30a4\u30c9\u5f62\u5f0f\u306b\u6bd4\u3079\u3066\u30a2\u30af\u30bb\u30b9\u304c1\u6841\u5c11\u306a\u3044\u3067\u3059\uff0e Markdown\u3067\u30b9\u30e9\u30a4\u30c9\u306b\u3059\u308b\u65b9\u6cd5\u306f\u3044\u308d\u3044\u308d\u3042\u308b\u306e\u3067\u3059\u304c\uff0c1\u30da\u30fc\u30b8\u306e\u5206\u91cf\u304c\u307e\u3061\u307e\u3061\u306b\u306a\u3063\u3066\u306f\u307f\u51fa\u3057\u305f\u308a\u3068\u8a00\u3063\u305f\u3053\u3068\u3092\u3088\u304f\u3084\u3063\u3066\u3057\u307e\u3044\u3042\u307e\u308a\u3064\u304b\u3063\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f\uff0e

\n

\u305d\u3093\u306a\u3068\u3053\u308d\u306b\u30d7\u30ec\u30bc\u30f3\u30c6\u30fc\u30b7\u30e7\u30f3\u5411\u3051\u306eMarkdown Writer\u304c\u3042\u3063\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n\n

\u30de\u30eb\u30c1\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0\u3067Electron\u88fd\u3067\u3059\uff0ePDF\u30d5\u30a1\u30a4\u30eb\u3078\u306e\u66f8\u304d\u51fa\u3057\u3082\u53ef\u80fd\u3067\u3059\uff0e

\n

\u96f0\u56f2\u6c17\u306f\u4ee5\u4e0b\u306e\u753b\u50cf\u3067\u3060\u3044\u305f\u3044\u308f\u304b\u308b\u3093\u3058\u3083\u306a\u3044\u304b\u3068\u601d\u3044\u307e\u3059\uff0e

\n
\n\"https://yhatt.github.io/marp/images/marp-cast.gif\"

\n

https://yhatt.github.io/marp/images/marp-cast.gif

\n
\n

\u5de6\u30da\u30a4\u30f3\u3067Markdown\u3092\u66f8\u3044\u3066\u53f3\u30da\u30fc\u30b8\u306b\u30d7\u30ec\u30d3\u30e5\u30fc\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e \u30d7\u30ec\u30d3\u30e5\u30fc\u306f3\u7a2e\u985e\u9078\u3079\u307e\u3059\u304c\uff0c"1:1 slide/Slide List"\u306e\u3069\u3061\u3089\u304b\u3060\u3068\u30b9\u30e9\u30a4\u30c9\u5f62\u5f0f\u3067\u30d7\u30ec\u30d3\u30e5\u30fc\u304c\u8868\u793a\u3055\u308c\u308b\u306e\u3067\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u78ba\u8a8d\u3057\u306a\u304c\u3089\u66f8\u304f\u3053\u3068\u304c\u3067\u304d\u307e\u3059\uff0e

\n

\u8a66\u3057\u306b\u3061\u3087\u3063\u3068\u66f8\u3044\u3066\u307f\u307e\u3057\u305f\uff0e \u3059\u308b\u3068Marp\u306e\u30d7\u30ec\u30d3\u30e5\u30fc\uff0cEvince\u3067\u306f\u554f\u984c\u306a\u304b\u3063\u305f\u306e\u3067\u3059\u304c\uff0cSlideshare\u306bPDF\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u3068\u80cc\u666f\u753b\u50cf\u3084\u30d5\u30c3\u30bf\u30fc\u304c\u4e0a\u4e0b\u53cd\u8ee2\u3057\u3066\u3044\u307e\u3059\u2026\u2026\uff0e \u8a66\u3057\u306bSpekerdeck\u306b\u3082\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u307f\u307e\u3057\u305f\u304c\u3053\u3061\u3089\u306f\u554f\u984c\u306a\u3057\uff0e \u6050\u3089\u304fSlideshare\u306e\u554f\u984c\u3067\u306f\u306a\u3044\u304b\u3068\u601d\u3044\u307e\u3059\uff0e

\n

\n
\n \u30b9\u30e9\u30a4\u30c9\u7279\u5316\u306eMarkdown writer\u306eMarp\u3092\u8a66\u3059 from Kenichiro MATOHARA\n
\n

Electron\u88fd\u3068\u3044\u3046\u3053\u3068\u3067\u964d\u308bm\u306e\u30de\u30b7\u30f3\u3067\u306f\u91cd\u3044\u304b\u306a\u3068\u601d\u3063\u3066\u3044\u305f\u306e\u3067\u3059\u304c\uff0cCore2Duo\u306e\u30de\u30b7\u30f3\u3067\u3082\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u304c\u4e00\u6c17\u306b\u30b9\u30af\u30ed\u30fc\u30eb\u3068\u304b\u3057\u306a\u3051\u308c\u3070\u91cd\u304f\u611f\u3058\u308b\u3068\u3053\u308d\u306f\u306a\u304f\u5b9f\u7528\u7bc4\u56f2\u5185\u306b\u611f\u3058\u307e\u3057\u305f\uff0e

\n", "content_text": "\u6700\u8fd1\u52c9\u5f37\u4f1a\u306e\u767a\u8868\u8cc7\u6599\u306f\u30b9\u30e9\u30a4\u30c9\u306b\u305b\u305a\u306bMarkdown\u3084Asciidoc\u3067\u66f8\u3044\u3066html\u3084pdf\u306b\u66f8\u304d\u51fa\u3057\u3066\u307e\u3057\u305f\uff0e\u3053\u308c\u3092Slideshare\u3068\u304b\u306b\u7f6e\u3044\u3066\u3044\u308b\u306e\u3067\u3059\u304c\uff0c\u30b9\u30e9\u30a4\u30c9\u5f62\u5f0f\u306b\u6bd4\u3079\u3066\u30a2\u30af\u30bb\u30b9\u304c1\u6841\u5c11\u306a\u3044\u3067\u3059\uff0e Markdown\u3067\u30b9\u30e9\u30a4\u30c9\u306b\u3059\u308b\u65b9\u6cd5\u306f\u3044\u308d\u3044\u308d\u3042\u308b\u306e\u3067\u3059\u304c\uff0c1\u30da\u30fc\u30b8\u306e\u5206\u91cf\u304c\u307e\u3061\u307e\u3061\u306b\u306a\u3063\u3066\u306f\u307f\u51fa\u3057\u305f\u308a\u3068\u8a00\u3063\u305f\u3053\u3068\u3092\u3088\u304f\u3084\u3063\u3066\u3057\u307e\u3044\u3042\u307e\u308a\u3064\u304b\u3063\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\n\u305d\u3093\u306a\u3068\u3053\u308d\u306b\u30d7\u30ec\u30bc\u30f3\u30c6\u30fc\u30b7\u30e7\u30f3\u5411\u3051\u306eMarkdown Writer\u304c\u3042\u3063\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\nMarp – Markdown Presentation Writer\n\n\u30de\u30eb\u30c1\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0\u3067Electron\u88fd\u3067\u3059\uff0ePDF\u30d5\u30a1\u30a4\u30eb\u3078\u306e\u66f8\u304d\u51fa\u3057\u3082\u53ef\u80fd\u3067\u3059\uff0e\n\u96f0\u56f2\u6c17\u306f\u4ee5\u4e0b\u306e\u753b\u50cf\u3067\u3060\u3044\u305f\u3044\u308f\u304b\u308b\u3093\u3058\u3083\u306a\u3044\u304b\u3068\u601d\u3044\u307e\u3059\uff0e\n\n\nhttps://yhatt.github.io/marp/images/marp-cast.gif\n\n\u5de6\u30da\u30a4\u30f3\u3067Markdown\u3092\u66f8\u3044\u3066\u53f3\u30da\u30fc\u30b8\u306b\u30d7\u30ec\u30d3\u30e5\u30fc\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e \u30d7\u30ec\u30d3\u30e5\u30fc\u306f3\u7a2e\u985e\u9078\u3079\u307e\u3059\u304c\uff0c"1:1 slide/Slide List"\u306e\u3069\u3061\u3089\u304b\u3060\u3068\u30b9\u30e9\u30a4\u30c9\u5f62\u5f0f\u3067\u30d7\u30ec\u30d3\u30e5\u30fc\u304c\u8868\u793a\u3055\u308c\u308b\u306e\u3067\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u78ba\u8a8d\u3057\u306a\u304c\u3089\u66f8\u304f\u3053\u3068\u304c\u3067\u304d\u307e\u3059\uff0e\n\u8a66\u3057\u306b\u3061\u3087\u3063\u3068\u66f8\u3044\u3066\u307f\u307e\u3057\u305f\uff0e \u3059\u308b\u3068Marp\u306e\u30d7\u30ec\u30d3\u30e5\u30fc\uff0cEvince\u3067\u306f\u554f\u984c\u306a\u304b\u3063\u305f\u306e\u3067\u3059\u304c\uff0cSlideshare\u306bPDF\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u3068\u80cc\u666f\u753b\u50cf\u3084\u30d5\u30c3\u30bf\u30fc\u304c\u4e0a\u4e0b\u53cd\u8ee2\u3057\u3066\u3044\u307e\u3059\u2026\u2026\uff0e \u8a66\u3057\u306bSpekerdeck\u306b\u3082\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u307f\u307e\u3057\u305f\u304c\u3053\u3061\u3089\u306f\u554f\u984c\u306a\u3057\uff0e \u6050\u3089\u304fSlideshare\u306e\u554f\u984c\u3067\u306f\u306a\u3044\u304b\u3068\u601d\u3044\u307e\u3059\uff0e\n\n\n\n \u30b9\u30e9\u30a4\u30c9\u7279\u5316\u306eMarkdown writer\u306eMarp\u3092\u8a66\u3059 from Kenichiro MATOHARA\n\nElectron\u88fd\u3068\u3044\u3046\u3053\u3068\u3067\u964d\u308bm\u306e\u30de\u30b7\u30f3\u3067\u306f\u91cd\u3044\u304b\u306a\u3068\u601d\u3063\u3066\u3044\u305f\u306e\u3067\u3059\u304c\uff0cCore2Duo\u306e\u30de\u30b7\u30f3\u3067\u3082\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u304c\u4e00\u6c17\u306b\u30b9\u30af\u30ed\u30fc\u30eb\u3068\u304b\u3057\u306a\u3051\u308c\u3070\u91cd\u304f\u611f\u3058\u308b\u3068\u3053\u308d\u306f\u306a\u304f\u5b9f\u7528\u7bc4\u56f2\u5185\u306b\u611f\u3058\u307e\u3057\u305f\uff0e", "date_published": "2016-12-03T02:55:22+09:00", "date_modified": "2016-12-12T00:38:41+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Linux", "Markdown", "Marp", "Debian", "stretch", "testing", "\u52c9\u5f37\u4f1a" ] }, { "id": "http://matoken.org/blog/?p=1466", "url": "https://matoken.org/blog/2016/12/03/markdown-writer-marp-specialized-for-multi-platform-slide-2/", "title": "\u30de\u30eb\u30c1\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0&\u30b9\u30e9\u30a4\u30c9\u306b\u7279\u5316\u3057\u305fMarkdown Writer\u306eMarp\u3092\u8a66\u3059", "content_html": "

\n

\u6700\u8fd1\u52c9\u5f37\u4f1a\u306e\u767a\u8868\u8cc7\u6599\u306f\u30b9\u30e9\u30a4\u30c9\u306b\u305b\u305a\u306bMarkdown\u3084Asciidoc\u3067\u66f8\u3044\u3066html\u3084pdf\u306b\u66f8\u304d\u51fa\u3057\u3066\u307e\u3057\u305f\uff0e\u3053\u308c\u3092Slideshare\u3068\u304b\u306b\u7f6e\u3044\u3066\u3044\u308b\u306e\u3067\u3059\u304c\uff0c\u30b9\u30e9\u30a4\u30c9\u5f62\u5f0f\u306b\u6bd4\u3079\u3066\u30a2\u30af\u30bb\u30b9\u304c1\u6841\u5c11\u306a\u3044\u3067\u3059\uff0e Markdown\u3067\u30b9\u30e9\u30a4\u30c9\u306b\u3059\u308b\u65b9\u6cd5\u306f\u3044\u308d\u3044\u308d\u3042\u308b\u306e\u3067\u3059\u304c\uff0c1\u30da\u30fc\u30b8\u306e\u5206\u91cf\u304c\u307e\u3061\u307e\u3061\u306b\u306a\u3063\u3066\u306f\u307f\u51fa\u3057\u305f\u308a\u3068\u8a00\u3063\u305f\u3053\u3068\u3092\u3088\u304f\u3084\u3063\u3066\u3057\u307e\u3044\u3042\u307e\u308a\u3064\u304b\u3063\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f\uff0e

\n

\u305d\u3093\u306a\u3068\u3053\u308d\u306b\u30d7\u30ec\u30bc\u30f3\u30c6\u30fc\u30b7\u30e7\u30f3\u5411\u3051\u306eMarkdown Writer\u304c\u3042\u3063\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n\n

\u30de\u30eb\u30c1\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0\u3067Electron\u88fd\u3067\u3059\uff0ePDF\u30d5\u30a1\u30a4\u30eb\u3078\u306e\u66f8\u304d\u51fa\u3057\u3082\u53ef\u80fd\u3067\u3059\uff0e

\n

\u96f0\u56f2\u6c17\u306f\u4ee5\u4e0b\u306e\u753b\u50cf\u3067\u3060\u3044\u305f\u3044\u308f\u304b\u308b\u3093\u3058\u3083\u306a\u3044\u304b\u3068\u601d\u3044\u307e\u3059\uff0e

\n
\n\"https://yhatt.github.io/marp/images/marp-cast.gif\"

\n

https://yhatt.github.io/marp/images/marp-cast.gif

\n
\n

\u5de6\u30da\u30a4\u30f3\u3067Markdown\u3092\u66f8\u3044\u3066\u53f3\u30da\u30fc\u30b8\u306b\u30d7\u30ec\u30d3\u30e5\u30fc\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e \u30d7\u30ec\u30d3\u30e5\u30fc\u306f3\u7a2e\u985e\u9078\u3079\u307e\u3059\u304c\uff0c"1:1 slide/Slide List"\u306e\u3069\u3061\u3089\u304b\u3060\u3068\u30b9\u30e9\u30a4\u30c9\u5f62\u5f0f\u3067\u30d7\u30ec\u30d3\u30e5\u30fc\u304c\u8868\u793a\u3055\u308c\u308b\u306e\u3067\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u78ba\u8a8d\u3057\u306a\u304c\u3089\u66f8\u304f\u3053\u3068\u304c\u3067\u304d\u307e\u3059\uff0e

\n

\u8a66\u3057\u306b\u3061\u3087\u3063\u3068\u66f8\u3044\u3066\u307f\u307e\u3057\u305f\uff0e \u3059\u308b\u3068Marp\u306e\u30d7\u30ec\u30d3\u30e5\u30fc\uff0cEvince\u3067\u306f\u554f\u984c\u306a\u304b\u3063\u305f\u306e\u3067\u3059\u304c\uff0cSlideshare\u306bPDF\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u3068\u80cc\u666f\u753b\u50cf\u3084\u30d5\u30c3\u30bf\u30fc\u304c\u4e0a\u4e0b\u53cd\u8ee2\u3057\u3066\u3044\u307e\u3059\u2026\u2026\uff0e \u8a66\u3057\u306bSpekerdeck\u306b\u3082\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u307f\u307e\u3057\u305f\u304c\u3053\u3061\u3089\u306f\u554f\u984c\u306a\u3057\uff0e \u6050\u3089\u304fSlideshare\u306e\u554f\u984c\u3067\u306f\u306a\u3044\u304b\u3068\u601d\u3044\u307e\u3059\uff0e

\n
\n \u30b9\u30e9\u30a4\u30c9\u7279\u5316\u306eMarkdown writer\u306eMarp\u3092\u8a66\u3059 from Kenichiro MATOHARA\n
\n

Electron\u88fd\u3068\u3044\u3046\u3053\u3068\u3067\u964d\u308bm\u306e\u30de\u30b7\u30f3\u3067\u306f\u91cd\u3044\u304b\u306a\u3068\u601d\u3063\u3066\u3044\u305f\u306e\u3067\u3059\u304c\uff0cCore2Duo\u306e\u30de\u30b7\u30f3\u3067\u3082\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u304c\u4e00\u6c17\u306b\u30b9\u30af\u30ed\u30fc\u30eb\u3068\u304b\u3057\u306a\u3051\u308c\u3070\u91cd\u304f\u611f\u3058\u308b\u3068\u3053\u308d\u306f\u306a\u304f\u5b9f\u7528\u7bc4\u56f2\u5185\u306b\u611f\u3058\u307e\u3057\u305f\uff0e

\n", "content_text": "\u6700\u8fd1\u52c9\u5f37\u4f1a\u306e\u767a\u8868\u8cc7\u6599\u306f\u30b9\u30e9\u30a4\u30c9\u306b\u305b\u305a\u306bMarkdown\u3084Asciidoc\u3067\u66f8\u3044\u3066html\u3084pdf\u306b\u66f8\u304d\u51fa\u3057\u3066\u307e\u3057\u305f\uff0e\u3053\u308c\u3092Slideshare\u3068\u304b\u306b\u7f6e\u3044\u3066\u3044\u308b\u306e\u3067\u3059\u304c\uff0c\u30b9\u30e9\u30a4\u30c9\u5f62\u5f0f\u306b\u6bd4\u3079\u3066\u30a2\u30af\u30bb\u30b9\u304c1\u6841\u5c11\u306a\u3044\u3067\u3059\uff0e Markdown\u3067\u30b9\u30e9\u30a4\u30c9\u306b\u3059\u308b\u65b9\u6cd5\u306f\u3044\u308d\u3044\u308d\u3042\u308b\u306e\u3067\u3059\u304c\uff0c1\u30da\u30fc\u30b8\u306e\u5206\u91cf\u304c\u307e\u3061\u307e\u3061\u306b\u306a\u3063\u3066\u306f\u307f\u51fa\u3057\u305f\u308a\u3068\u8a00\u3063\u305f\u3053\u3068\u3092\u3088\u304f\u3084\u3063\u3066\u3057\u307e\u3044\u3042\u307e\u308a\u3064\u304b\u3063\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\n\u305d\u3093\u306a\u3068\u3053\u308d\u306b\u30d7\u30ec\u30bc\u30f3\u30c6\u30fc\u30b7\u30e7\u30f3\u5411\u3051\u306eMarkdown Writer\u304c\u3042\u3063\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\nMarp – Markdown Presentation Writer\n\n\u30de\u30eb\u30c1\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0\u3067Electron\u88fd\u3067\u3059\uff0ePDF\u30d5\u30a1\u30a4\u30eb\u3078\u306e\u66f8\u304d\u51fa\u3057\u3082\u53ef\u80fd\u3067\u3059\uff0e\n\u96f0\u56f2\u6c17\u306f\u4ee5\u4e0b\u306e\u753b\u50cf\u3067\u3060\u3044\u305f\u3044\u308f\u304b\u308b\u3093\u3058\u3083\u306a\u3044\u304b\u3068\u601d\u3044\u307e\u3059\uff0e\n\n\nhttps://yhatt.github.io/marp/images/marp-cast.gif\n\n\u5de6\u30da\u30a4\u30f3\u3067Markdown\u3092\u66f8\u3044\u3066\u53f3\u30da\u30fc\u30b8\u306b\u30d7\u30ec\u30d3\u30e5\u30fc\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e \u30d7\u30ec\u30d3\u30e5\u30fc\u306f3\u7a2e\u985e\u9078\u3079\u307e\u3059\u304c\uff0c"1:1 slide/Slide List"\u306e\u3069\u3061\u3089\u304b\u3060\u3068\u30b9\u30e9\u30a4\u30c9\u5f62\u5f0f\u3067\u30d7\u30ec\u30d3\u30e5\u30fc\u304c\u8868\u793a\u3055\u308c\u308b\u306e\u3067\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u78ba\u8a8d\u3057\u306a\u304c\u3089\u66f8\u304f\u3053\u3068\u304c\u3067\u304d\u307e\u3059\uff0e\n\u8a66\u3057\u306b\u3061\u3087\u3063\u3068\u66f8\u3044\u3066\u307f\u307e\u3057\u305f\uff0e \u3059\u308b\u3068Marp\u306e\u30d7\u30ec\u30d3\u30e5\u30fc\uff0cEvince\u3067\u306f\u554f\u984c\u306a\u304b\u3063\u305f\u306e\u3067\u3059\u304c\uff0cSlideshare\u306bPDF\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u3068\u80cc\u666f\u753b\u50cf\u3084\u30d5\u30c3\u30bf\u30fc\u304c\u4e0a\u4e0b\u53cd\u8ee2\u3057\u3066\u3044\u307e\u3059\u2026\u2026\uff0e \u8a66\u3057\u306bSpekerdeck\u306b\u3082\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u307f\u307e\u3057\u305f\u304c\u3053\u3061\u3089\u306f\u554f\u984c\u306a\u3057\uff0e \u6050\u3089\u304fSlideshare\u306e\u554f\u984c\u3067\u306f\u306a\u3044\u304b\u3068\u601d\u3044\u307e\u3059\uff0e\n\n \u30b9\u30e9\u30a4\u30c9\u7279\u5316\u306eMarkdown writer\u306eMarp\u3092\u8a66\u3059 from Kenichiro MATOHARA\n\nElectron\u88fd\u3068\u3044\u3046\u3053\u3068\u3067\u964d\u308bm\u306e\u30de\u30b7\u30f3\u3067\u306f\u91cd\u3044\u304b\u306a\u3068\u601d\u3063\u3066\u3044\u305f\u306e\u3067\u3059\u304c\uff0cCore2Duo\u306e\u30de\u30b7\u30f3\u3067\u3082\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u304c\u4e00\u6c17\u306b\u30b9\u30af\u30ed\u30fc\u30eb\u3068\u304b\u3057\u306a\u3051\u308c\u3070\u91cd\u304f\u611f\u3058\u308b\u3068\u3053\u308d\u306f\u306a\u304f\u5b9f\u7528\u7bc4\u56f2\u5185\u306b\u611f\u3058\u307e\u3057\u305f\uff0e", "date_published": "2016-12-03T02:55:22+09:00", "date_modified": "2016-12-03T02:55:22+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Linux", "Markdown", "Marp", "Debian", "stretch", "testing", "\u52c9\u5f37\u4f1a" ] }, { "id": "http://matoken.org/blog/?p=1461", "url": "https://matoken.org/blog/2016/12/03/remote-conference-with-mumble/", "title": "Mumble\u3067\u30ea\u30e2\u30fc\u30c8\u4f1a\u8b70", "content_html": "

\n

\u5148\u9031\u3067\u3059\u304c\uff0cFSIJ \u6708\u4f8b\u4f1a\u306b\u53c2\u52a0\u3057\u3066\u3044\u307e\u3057\u305f\uff0e \u3068\u3044\u3063\u3066\u3082\u6771\u4eac\u306b\u51fa\u3066\u884c\u3063\u305f\u308f\u3051\u3067\u306f\u306a\u304f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u958b\u50ac\u3060\u3063\u305f\u306e\u3067\u5bb6\u304b\u3089\u306e\u53c2\u52a0\u3067\u3059\uff0e

\n\n

\u3068\u3044\u3046\u3053\u3068\u3067Mumble\u3068\u3044\u3046\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3067\u97f3\u58f0\u30c1\u30e3\u30c3\u30c8 + Etherpad(\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u30d9\u30fc\u30b9)\u3067\u30c6\u30ad\u30b9\u30c8\u4ea4\u63db\u3068\u3044\u3046\u74b0\u5883\u3067\u3057\u305f\uff0e Mumble\u3092\u524d\u3082\u3063\u3066\u8a66\u3057\u3066\u3044\u308c\u3070\u3088\u304b\u3063\u305f\u306e\u3060\u3051\u3069\u76f4\u524d\u306b\u5165\u308c\u3066\u306a\u304b\u306a\u304b\u53c2\u52a0\u3067\u304d\u305a\u9014\u4e2d\u304b\u3089\u306e\u53c2\u52a0\u306b\u306a\u308a\u307e\u3057\u305forz~

\n

Mumble\u306fDebian stretch amd64\u74b0\u5883\u3067\u306f\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u5b58\u5728\u3059\u308b( mumble )\u306e\u3067\u3053\u308c\u3092\u5c0e\u5165\u3059\u308b\u3060\u3051\u3067\u3057\u305f\uff0e\u30de\u30eb\u30c1\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0\u3067\u5404\u7a2e\u74b0\u5883\u5411\u3051\u306b\u3082\u5b58\u5728\u3057\u3066\uff0cAndroid\u306a\u3069\u3067\u3082\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e – Mumble, the open source VoIP solutionPlumble – Mumble VOIP (Free) – Google Play \u306e Android \u30a2\u30d7\u30eaPlumble – Mumble VOIP – Google Play \u306e Android \u30a2\u30d7\u30ea

\n

\u4eca\u56de\u4f7f\u7528\u6a5f\u5668\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\uff0e\u3067\u3057\u305f\u304c\uff0c\u30b9\u30d4\u30fc\u30ab\u30fc\u306f\u8a66\u884c\u932f\u8aa4\u3057\u3066\u3044\u308b\u6642\u306b\u7e4b\u3044\u3060\u3082\u306e\u3067\u5f8c\u3067\u8a66\u3059\u3068\u672c\u4f53\u306e\u30b9\u30d4\u30fc\u30ab\u30fc\u3067\u5927\u4e08\u592b\u3067\u3057\u305f\uff0e

\n\n

\u3053\u306e\u3068\u304dMumble\u5229\u7528\u6642\u306b\u5d4c\u3063\u305f\u3068\u3053\u308d\u3092\u30e1\u30e2\u3057\u3066\u304a\u304d\u307e\u3059\uff0e – \u30d8\u30c3\u30c9\u30db\u30f3\u3068\u30de\u30a4\u30af\u304c1\u3064\u306e\u7aef\u5b50\u306e\u7aef\u672b\u3067\u30de\u30a4\u30af\u3092\u7e4b\u3050\u3068\u30d8\u30c3\u30c9\u30db\u30f3\u3082\u305d\u3061\u3089\u3092\u5411\u3044\u3066\u3057\u307e\u3063\u3066\u97f3\u304c\u51fa\u306a\u304b\u3063\u305f – Bluetoth\u30d8\u30c3\u30c9\u30bb\u30c3\u30c8\u3092\u7e4b\u3050\u3068\u305d\u3061\u3089\u304b\u3089\u97f3\u304c\u51fa\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u304c\u30de\u30a4\u30af\u304c\u3046\u307e\u304f\u50cd\u304b\u306a\u3044 – PulseAudio Volume Control (pavucontrol)\u3067\u898b\u308b\u3068\u30de\u30a4\u30af\u304c\u30df\u30e5\u30fc\u30c8\u306b\u306a\u3063\u3066\u3044\u305f\u306e\u3067\u89e3\u9664\u3057\u3066Mumble\u306b\u5272\u308a\u5f53\u3066 – \u4f1d\u9001\u65b9\u5f0f\u3092"push to talk"\u306b\u3057\u305f\u304cpush\u304c\u308f\u304b\u3089\u306a\u304b\u3063\u305f -> \u30b7\u30e7\u30fc\u30c8\u30ab\u30c3\u30c8\u3067\u9069\u5f53\u306a\u30ad\u30fc\u306b\u5272\u308a\u5f53\u3066(Mumble\u975e\u30a2\u30af\u30c6\u30a3\u30d6\u6642\u3082\u6709\u52b9)

\n\n

\u6700\u8fd1\u306fUstream.tv/Youtube Live\u306a\u3069\u306e\u52d5\u753b\u914d\u4fe1\u3084\ufeffBBB(BigBlueButton)\u306a\u3069\u306e\u52d5\u753b\u3092\u4f7f\u3063\u305f\u30aa\u30f3\u30e9\u30a4\u30f3\u4f1a\u8b70\u30b7\u30b9\u30c6\u30e0\u306a\u3069\u3067\u4e2d\u7d99\u3068\u3044\u3046\u3053\u3068\u304c\u591a\u3044\u3067\u3059\u304c\uff0c\u624b\u5f01\u5f53\u306e\u52c9\u5f37\u4f1a\u306a\u3093\u304b\u3060\u3068\u56de\u7dda\u306a\u3069\u306e\u554f\u984c\u3067\u3046\u307e\u304f\u884c\u304b\u306a\u304b\u3063\u305f\u308a\u3059\u308b\u3053\u3068\u304c\u591a\u3044\u3067\u3059\u304c\u5272\u308a\u5207\u3063\u3066\u97f3\u58f0\u306e\u307f\u306e\u4e2d\u7d99\u306b\u3057\u3066\u3057\u307e\u3046\u306e\u3082\u3042\u308a\u3060\u306a\u3068\u611f\u3058\u307e\u3057\u305f\uff0e

\n

\u6700\u8fd1\u30ea\u30e2\u30fc\u30c8\u53c2\u52a0\u3057\u305f\u52c9\u5f37\u4f1a

\n\n", "content_text": "\u5148\u9031\u3067\u3059\u304c\uff0cFSIJ \u6708\u4f8b\u4f1a\u306b\u53c2\u52a0\u3057\u3066\u3044\u307e\u3057\u305f\uff0e \u3068\u3044\u3063\u3066\u3082\u6771\u4eac\u306b\u51fa\u3066\u884c\u3063\u305f\u308f\u3051\u3067\u306f\u306a\u304f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u958b\u50ac\u3060\u3063\u305f\u306e\u3067\u5bb6\u304b\u3089\u306e\u53c2\u52a0\u3067\u3059\uff0e\n\n11\u6708\u306e\u6280\u8853\u8b1b\u5ea7\n\n"\u30c6\u30fc\u30de: Mumble \u3068 Etherpad \u3067\u4f1a\u8b70\u3092\u3057\u3088\u3046"\n\n\n\n\u3068\u3044\u3046\u3053\u3068\u3067Mumble\u3068\u3044\u3046\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3067\u97f3\u58f0\u30c1\u30e3\u30c3\u30c8 + Etherpad(\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u30d9\u30fc\u30b9)\u3067\u30c6\u30ad\u30b9\u30c8\u4ea4\u63db\u3068\u3044\u3046\u74b0\u5883\u3067\u3057\u305f\uff0e Mumble\u3092\u524d\u3082\u3063\u3066\u8a66\u3057\u3066\u3044\u308c\u3070\u3088\u304b\u3063\u305f\u306e\u3060\u3051\u3069\u76f4\u524d\u306b\u5165\u308c\u3066\u306a\u304b\u306a\u304b\u53c2\u52a0\u3067\u304d\u305a\u9014\u4e2d\u304b\u3089\u306e\u53c2\u52a0\u306b\u306a\u308a\u307e\u3057\u305forz~\nMumble\u306fDebian stretch amd64\u74b0\u5883\u3067\u306f\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u5b58\u5728\u3059\u308b( mumble )\u306e\u3067\u3053\u308c\u3092\u5c0e\u5165\u3059\u308b\u3060\u3051\u3067\u3057\u305f\uff0e\u30de\u30eb\u30c1\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0\u3067\u5404\u7a2e\u74b0\u5883\u5411\u3051\u306b\u3082\u5b58\u5728\u3057\u3066\uff0cAndroid\u306a\u3069\u3067\u3082\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e – Mumble, the open source VoIP solution – Plumble – Mumble VOIP (Free) – Google Play \u306e Android \u30a2\u30d7\u30ea – Plumble – Mumble VOIP – Google Play \u306e Android \u30a2\u30d7\u30ea\n\u4eca\u56de\u4f7f\u7528\u6a5f\u5668\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\uff0e\u3067\u3057\u305f\u304c\uff0c\u30b9\u30d4\u30fc\u30ab\u30fc\u306f\u8a66\u884c\u932f\u8aa4\u3057\u3066\u3044\u308b\u6642\u306b\u7e4b\u3044\u3060\u3082\u306e\u3067\u5f8c\u3067\u8a66\u3059\u3068\u672c\u4f53\u306e\u30b9\u30d4\u30fc\u30ab\u30fc\u3067\u5927\u4e08\u592b\u3067\u3057\u305f\uff0e\n\nPC : Thinkpad X220(Debian stretch amd64)\n\u30de\u30a4\u30af : 3.5mm\u30b8\u30e3\u30c3\u30af\u306b\u76f4\u63a5\u633f\u305b\u308b\u3082\u306e(\u578b\u756a\u4e0d\u660e)\n\u30b9\u30d4\u30fc\u30ab\u30fc : ELECOM LBT-SPTR01AV(Bluetooth)\n\n\u3053\u306e\u3068\u304dMumble\u5229\u7528\u6642\u306b\u5d4c\u3063\u305f\u3068\u3053\u308d\u3092\u30e1\u30e2\u3057\u3066\u304a\u304d\u307e\u3059\uff0e – \u30d8\u30c3\u30c9\u30db\u30f3\u3068\u30de\u30a4\u30af\u304c1\u3064\u306e\u7aef\u5b50\u306e\u7aef\u672b\u3067\u30de\u30a4\u30af\u3092\u7e4b\u3050\u3068\u30d8\u30c3\u30c9\u30db\u30f3\u3082\u305d\u3061\u3089\u3092\u5411\u3044\u3066\u3057\u307e\u3063\u3066\u97f3\u304c\u51fa\u306a\u304b\u3063\u305f – Bluetoth\u30d8\u30c3\u30c9\u30bb\u30c3\u30c8\u3092\u7e4b\u3050\u3068\u305d\u3061\u3089\u304b\u3089\u97f3\u304c\u51fa\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u304c\u30de\u30a4\u30af\u304c\u3046\u307e\u304f\u50cd\u304b\u306a\u3044 – PulseAudio Volume Control (pavucontrol)\u3067\u898b\u308b\u3068\u30de\u30a4\u30af\u304c\u30df\u30e5\u30fc\u30c8\u306b\u306a\u3063\u3066\u3044\u305f\u306e\u3067\u89e3\u9664\u3057\u3066Mumble\u306b\u5272\u308a\u5f53\u3066 – \u4f1d\u9001\u65b9\u5f0f\u3092"push to talk"\u306b\u3057\u305f\u304cpush\u304c\u308f\u304b\u3089\u306a\u304b\u3063\u305f -> \u30b7\u30e7\u30fc\u30c8\u30ab\u30c3\u30c8\u3067\u9069\u5f53\u306a\u30ad\u30fc\u306b\u5272\u308a\u5f53\u3066(Mumble\u975e\u30a2\u30af\u30c6\u30a3\u30d6\u6642\u3082\u6709\u52b9)\n\n\u305d\u306e\u4ed6\n\nAwesome WM\u74b0\u5883\u3067\u306fMumble\u304c\u6700\u5c0f\u5316\u3057\u3066\u3057\u307e\u3046\u3068\u7a93\u3092\u5fa9\u5e30\u3055\u305b\u308b\u65b9\u6cd5\u304c\u4eca\u306e\u3068\u3053\u308d\u308f\u304b\u3089\u306a\u3044\uff0e\u30bf\u30b9\u30af\u30c8\u30ec\u30a4\u306e\u30a2\u30a4\u30b3\u30f3\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u3082\u51fa\u3066\u3053\u306a\u3044\uff0e(Xfce4\u306f\u30a2\u30a4\u30b3\u30f3\u30af\u30ea\u30c3\u30af\u3067\u51fa\u3066\u304f\u308b\u3088\u3046)\n\u4e00\u56de\u8a2d\u5b9a\u3067\u304d\u308c\u3070\u30d5\u30a9\u30fc\u30ab\u30b9\u304c\u306a\u304f\u3066\u3082\u30b7\u30e7\u30fc\u30c8\u30ab\u30c3\u30c8\u304c\u52b9\u3044\u3066\u8a71\u305b\u308b\u306e\u3067\u3068\u308a\u3042\u3048\u305a\u4f7f\u3048\u308b\u3051\u3069\u30c1\u30e3\u30c3\u30c8\u3068\u8ab0\u304c\u8a71\u3057\u3066\u3044\u308b\u304b\u306e\u30a2\u30a4\u30b3\u30f3\u306e\u78ba\u8a8d(\u5507\u30a2\u30a4\u30b3\u30f3\u304c\u8d64\u304f\u306a\u308b)\u304c\u51fa\u6765\u306a\u3044(\u30aa\u30fc\u30d0\u30fc\u30ec\u30a4\u306e\u8a2d\u5b9a\u3067\u3069\u3046\u306b\u304b\u306a\u308a\u305d\u3046?)\n\u30a2\u30a4\u30b3\u30f3\u3092\u53f3\u30af\u30ea\u30c3\u30af\u3057\u3066\u305d\u306e\u307e\u307e\u96e2\u3059\u3068\u4e01\u5ea6\u7d42\u4e86\u306b\u306a\u3063\u3066\u3057\u307e\u3046\u2026\u2026\uff0e\nMumble\u306e\u97f3\u58f0\u54c1\u8cea\u306f16kbps/40kbps/72kbps\u304b\u3089\u9078\u629e\u53ef\u80fd(\u898f\u5b9a\u5024\u306f40k)\npush to talk\u3092\u4f7f\u3046\u3068\u305d\u306e\u6642\u3057\u304b\u97f3\u58f0\u304c\u98db\u3070\u306a\u3044\u306e\u3067\u5468\u308a\u306e\u74b0\u5883\u306b\u5de6\u53f3\u3055\u308c\u306b\u304f\u304f\u3066\u826f\u3044(\u30ad\u30fc\u5165\u529b\u306e\u97f3\u3084\u74b0\u5883\u97f3\u304c\u5165\u308a\u306b\u304f\u3044)\n\n\n\n\u6700\u8fd1\u306fUstream.tv/Youtube Live\u306a\u3069\u306e\u52d5\u753b\u914d\u4fe1\u3084\ufeffBBB(BigBlueButton)\u306a\u3069\u306e\u52d5\u753b\u3092\u4f7f\u3063\u305f\u30aa\u30f3\u30e9\u30a4\u30f3\u4f1a\u8b70\u30b7\u30b9\u30c6\u30e0\u306a\u3069\u3067\u4e2d\u7d99\u3068\u3044\u3046\u3053\u3068\u304c\u591a\u3044\u3067\u3059\u304c\uff0c\u624b\u5f01\u5f53\u306e\u52c9\u5f37\u4f1a\u306a\u3093\u304b\u3060\u3068\u56de\u7dda\u306a\u3069\u306e\u554f\u984c\u3067\u3046\u307e\u304f\u884c\u304b\u306a\u304b\u3063\u305f\u308a\u3059\u308b\u3053\u3068\u304c\u591a\u3044\u3067\u3059\u304c\u5272\u308a\u5207\u3063\u3066\u97f3\u58f0\u306e\u307f\u306e\u4e2d\u7d99\u306b\u3057\u3066\u3057\u307e\u3046\u306e\u3082\u3042\u308a\u3060\u306a\u3068\u611f\u3058\u307e\u3057\u305f\uff0e\n\u6700\u8fd1\u30ea\u30e2\u30fc\u30c8\u53c2\u52a0\u3057\u305f\u52c9\u5f37\u4f1a\n\nFreeBSD\u30ef\u30fc\u30af\u30b7\u30e7\u30c3\u30d7 – connpass\n\n\u30e9\u30a4\u30d6\u52d5\u753b\u3067\u53c2\u52a0\u53ef\u80fd\uff0c\u30b3\u30e1\u30f3\u30c8\u306fTwitter\u7d4c\u7531\n\n\n\u65e5\u672cAndroid\u306e\u4f1a\u79cb\u8449\u539f\u652f\u90e8\u30ed\u30dc\u30c3\u30c8\u90e8\n\n\ufeffBBB(BigBlueButton)\u3067\u9060\u9694\u53c2\u52a0\u3067\u304d\u308b\u3053\u3068\u304c\u3042\u308b(site\u306f\u30e1\u30f3\u30c6\u3055\u308c\u3066\u3044\u306a\u3044\u3051\u3069ML\u3067\u30a2\u30ca\u30a6\u30f3\u30b9\u3055\u308c\u3066\u3044\u308b)", "date_published": "2016-12-03T01:53:14+09:00", "date_modified": "2016-12-03T03:25:34+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Debian", "Linux", "Mumble", "stretch", "testing" ] }, { "id": "http://matoken.org/blog/?p=1457", "url": "https://matoken.org/blog/2016/10/21/hey-tried-note-of-the-morphological-analysis-system-juman/", "title": "\u5f62\u614b\u7d20\u89e3\u6790\u30b7\u30b9\u30c6\u30e0JUMAN++\u3092\u3061\u3087\u3063\u3068\u8a66\u3057\u305f\u30e1\u30e2", "content_html": "

\u4eac\u90fd\u5927\u5b66 \u9ed2\u6a4b\u30fb\u6cb3\u539f\u7814\u7a76\u5ba4\u3088\u308a2016-09-23\u306b\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u305f\u65b0\u3057\u3044\u5f62\u614b\u7d20\u89e3\u6790\u30b7\u30b9\u30c6\u30e0\u3060\u305d\u3046\u3067\u3059\uff0e\u3068\u308a\u3042\u3048\u305a\u624b\u5143\u306e\u74b0\u5883\u3067\u52d5\u304b\u3057\u3066\u307f\u305f\u306e\u3067\u305d\u306e\u30e1\u30e2\u3067\u3059\uff0e

\n\n

\u74b0\u5883

\n

Debian stretch amd64 / Ubuntu 16.10 amd64 \u3067\u78ba\u8a8d\u3057\u307e\u3057\u305f\uff0e\u3069\u3061\u3089\u3082\u4ee5\u4e0b\u306e\u624b\u9806\u3067OK\u3067\u3057\u305f\uff0e\u958b\u767a\u5143\u3067\u306fCent OS 6.7\u3067\u52d5\u4f5c\u78ba\u8a8d\u3092\u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e

\n

build

\n

\u5fc5\u8981\u306a\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u5c0e\u5165\u3057\u3066make\uff0e

\n
$ sudo apt install libboost-dev build-essential\r\n$ wget http://lotus.kuee.kyoto-u.ac.jp/nl-resource/jumanpp/jumanpp-1.01.tar.xz\r\n$ sha256sum jumanpp-1.01.tar.xz 0d587416a3eb7123638f9c1e30a649b72dfb483448839168dcb48be572c5919a  jumanpp-1.01.tar.xz\r\n$ tar tvf ./jumanpp-1.01.tar.xz\r\n$ tar xf ./jumanpp-1.01.tar.xz\r\n$ ./configure --prefix=${HOME}/usr/local\r\n$ make\r\n$ make install
\n

\u52d5\u4f5c\u78ba\u8a8d

\n

\u9069\u5f53\u306b\u6587\u7ae0\u3092\u5165\u308c\u3066\u307f\u305f\u308a\uff0e

\n
$ ~/usr/local/bin/jumanpp\r\n\u3053\u3093\u306b\u3061\u306fJUMANPP++\r\n\u3053\u3093\u306b\u3061 \u3053\u3093\u306b\u3061 \u3053\u3093\u306b\u3061 \u540d\u8a5e 6 \u6642\u76f8\u540d\u8a5e 10 * 0 * 0 "\u4ee3\u8868\u8868\u8a18:\u4eca\u65e5/\u3053\u3093\u306b\u3061 \u30ab\u30c6\u30b4\u30ea:\u6642\u9593"\r\n\u306f \u306f \u306f \u52a9\u8a5e 9 \u526f\u52a9\u8a5e 2 * 0 * 0 NIL\r\nJUMANPP JUMANPP JUMANPP \u672a\u5b9a\u7fa9\u8a9e 15 \u305d\u306e\u4ed6 1 * 0 * 0 "\u54c1\u8a5e\u63a8\u5b9a:\u540d\u8a5e"\r\n+ + + \u672a\u5b9a\u7fa9\u8a9e 15 \u305d\u306e\u4ed6 1 * 0 * 0 "\u54c1\u8a5e\u63a8\u5b9a:\u540d\u8a5e"\r\n+ + + \u672a\u5b9a\u7fa9\u8a9e 15 \u305d\u306e\u4ed6 1 * 0 * 0 "\u54c1\u8a5e\u63a8\u5b9a:\u540d\u8a5e"\r\nEOS
\n

\u9752\u7a7a\u6587\u5eab\u306e\u53e4\u5178\u3092\u6d41\u3057\u8fbc\u3093\u3067\u307f\u305f\u308a\uff0e

\n
$ wget -O - http://www.aozora.gr.jp/cards/000160/files/2617_ruby_23916.zip | zcat | iconv -f SJIS -t UTF-8 - | ~/usr/local/bin/jumanpp\r\n\u4e09\u5341 \u4e09\u5341 \u4e09\u5341 \u540d\u8a5e 6 \u6570\u8a5e 7 * 0 * 0 "\u30ab\u30c6\u30b4\u30ea:\u6570\u91cf"\r\n\u5e74 \u306d\u3093 \u5e74 \u63a5\u5c3e\u8f9e 14 \u540d\u8a5e\u6027\u540d\u8a5e\u52a9\u6570\u8f9e 3 * 0 * 0 "\u4ee3\u8868\u8868\u8a18:\u5e74/\u306d\u3093 \u6e96\u5185\u5bb9\u8a9e \u30ab\u30c6\u30b4\u30ea:\u6642\u9593"\r\n\u5f8c \u3054 \u5f8c \u63a5\u5c3e\u8f9e 14 \u540d\u8a5e\u6027\u540d\u8a5e\u63a5\u5c3e\u8f9e 2 * 0 * 0 "\u4ee3\u8868\u8868\u8a18:\u5f8c/\u3054 \u5185\u5bb9\u8a9e"\r\n\u306e \u306e \u306e \u52a9\u8a5e 9 \u63a5\u7d9a\u52a9\u8a5e 3 * 0 * 0 NIL\r\n\u4e16\u754c \u305b\u304b\u3044 \u4e16\u754c \u540d\u8a5e 6 \u666e\u901a\u540d\u8a5e 1 * 0 * 0 "\u4ee3\u8868\u8868\u8a18:\u4e16\u754c/\u305b\u304b\u3044 \u30ab\u30c6\u30b4\u30ea:\u5834\u6240-\u305d\u306e\u4ed6"\r\n      :
\n

\u53e4\u5178\u3068\u304b\u3088\u308aTwitter\u3068\u304b\u306e\u307b\u3046\u304c\u3044\u3044\u304b\u3082\u3057\u308c\u306a\u3044\uff0e

\n
$ curl 'https://twitter.com/search?f=tweets&vertical=default&q=lang%3Aja%20near%3A%22%E6%97%A5%E6%9C%AC%22%20within%3A15mi&src=typd&lang=ja' | grep 'class="TweetTextSize  js-tweet-text tweet-text"' | lynx -stdin -dump -nolist | ~/usr/local/bin/jumanpp
\n

\u3061\u306a\u307f\u306b\u3061\u3087\u3063\u3068\u8a66\u3057\u305f\u3044\u3060\u3051\u3067\u3042\u308c\u3070\u5c0e\u5165\u3057\u306a\u304f\u3066\u3082\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3067\u8a66\u305b\u307e\u3059\uff0e\u30e9\u30c6\u30a3\u30b9\u8868\u793a\u3082\u697d\u3057\u3044\uff0e

\n\n
\n\n
\n", "content_text": "\u4eac\u90fd\u5927\u5b66 \u9ed2\u6a4b\u30fb\u6cb3\u539f\u7814\u7a76\u5ba4\u3088\u308a2016-09-23\u306b\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u305f\u65b0\u3057\u3044\u5f62\u614b\u7d20\u89e3\u6790\u30b7\u30b9\u30c6\u30e0\u3060\u305d\u3046\u3067\u3059\uff0e\u3068\u308a\u3042\u3048\u305a\u624b\u5143\u306e\u74b0\u5883\u3067\u52d5\u304b\u3057\u3066\u307f\u305f\u306e\u3067\u305d\u306e\u30e1\u30e2\u3067\u3059\uff0e\n\nJUMAN++ – KUROHASHI-KAWAHARA LAB\n\n\u74b0\u5883\nDebian stretch amd64 / Ubuntu 16.10 amd64 \u3067\u78ba\u8a8d\u3057\u307e\u3057\u305f\uff0e\u3069\u3061\u3089\u3082\u4ee5\u4e0b\u306e\u624b\u9806\u3067OK\u3067\u3057\u305f\uff0e\u958b\u767a\u5143\u3067\u306fCent OS 6.7\u3067\u52d5\u4f5c\u78ba\u8a8d\u3092\u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e\nbuild\n\u5fc5\u8981\u306a\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u5c0e\u5165\u3057\u3066make\uff0e\n$ sudo apt install libboost-dev build-essential\r\n$ wget http://lotus.kuee.kyoto-u.ac.jp/nl-resource/jumanpp/jumanpp-1.01.tar.xz\r\n$ sha256sum jumanpp-1.01.tar.xz 0d587416a3eb7123638f9c1e30a649b72dfb483448839168dcb48be572c5919a jumanpp-1.01.tar.xz\r\n$ tar tvf ./jumanpp-1.01.tar.xz\r\n$ tar xf ./jumanpp-1.01.tar.xz\r\n$ ./configure --prefix=${HOME}/usr/local\r\n$ make\r\n$ make install\n\u52d5\u4f5c\u78ba\u8a8d\n\u9069\u5f53\u306b\u6587\u7ae0\u3092\u5165\u308c\u3066\u307f\u305f\u308a\uff0e\n$ ~/usr/local/bin/jumanpp\r\n\u3053\u3093\u306b\u3061\u306fJUMANPP++\r\n\u3053\u3093\u306b\u3061 \u3053\u3093\u306b\u3061 \u3053\u3093\u306b\u3061 \u540d\u8a5e 6 \u6642\u76f8\u540d\u8a5e 10 * 0 * 0 "\u4ee3\u8868\u8868\u8a18:\u4eca\u65e5/\u3053\u3093\u306b\u3061 \u30ab\u30c6\u30b4\u30ea:\u6642\u9593"\r\n\u306f \u306f \u306f \u52a9\u8a5e 9 \u526f\u52a9\u8a5e 2 * 0 * 0 NIL\r\nJUMANPP JUMANPP JUMANPP \u672a\u5b9a\u7fa9\u8a9e 15 \u305d\u306e\u4ed6 1 * 0 * 0 "\u54c1\u8a5e\u63a8\u5b9a:\u540d\u8a5e"\r\n+ + + \u672a\u5b9a\u7fa9\u8a9e 15 \u305d\u306e\u4ed6 1 * 0 * 0 "\u54c1\u8a5e\u63a8\u5b9a:\u540d\u8a5e"\r\n+ + + \u672a\u5b9a\u7fa9\u8a9e 15 \u305d\u306e\u4ed6 1 * 0 * 0 "\u54c1\u8a5e\u63a8\u5b9a:\u540d\u8a5e"\r\nEOS\n\u9752\u7a7a\u6587\u5eab\u306e\u53e4\u5178\u3092\u6d41\u3057\u8fbc\u3093\u3067\u307f\u305f\u308a\uff0e\n$ wget -O - http://www.aozora.gr.jp/cards/000160/files/2617_ruby_23916.zip | zcat | iconv -f SJIS -t UTF-8 - | ~/usr/local/bin/jumanpp\r\n\u4e09\u5341 \u4e09\u5341 \u4e09\u5341 \u540d\u8a5e 6 \u6570\u8a5e 7 * 0 * 0 "\u30ab\u30c6\u30b4\u30ea:\u6570\u91cf"\r\n\u5e74 \u306d\u3093 \u5e74 \u63a5\u5c3e\u8f9e 14 \u540d\u8a5e\u6027\u540d\u8a5e\u52a9\u6570\u8f9e 3 * 0 * 0 "\u4ee3\u8868\u8868\u8a18:\u5e74/\u306d\u3093 \u6e96\u5185\u5bb9\u8a9e \u30ab\u30c6\u30b4\u30ea:\u6642\u9593"\r\n\u5f8c \u3054 \u5f8c \u63a5\u5c3e\u8f9e 14 \u540d\u8a5e\u6027\u540d\u8a5e\u63a5\u5c3e\u8f9e 2 * 0 * 0 "\u4ee3\u8868\u8868\u8a18:\u5f8c/\u3054 \u5185\u5bb9\u8a9e"\r\n\u306e \u306e \u306e \u52a9\u8a5e 9 \u63a5\u7d9a\u52a9\u8a5e 3 * 0 * 0 NIL\r\n\u4e16\u754c \u305b\u304b\u3044 \u4e16\u754c \u540d\u8a5e 6 \u666e\u901a\u540d\u8a5e 1 * 0 * 0 "\u4ee3\u8868\u8868\u8a18:\u4e16\u754c/\u305b\u304b\u3044 \u30ab\u30c6\u30b4\u30ea:\u5834\u6240-\u305d\u306e\u4ed6"\r\n :\n\u53e4\u5178\u3068\u304b\u3088\u308aTwitter\u3068\u304b\u306e\u307b\u3046\u304c\u3044\u3044\u304b\u3082\u3057\u308c\u306a\u3044\uff0e\n$ curl 'https://twitter.com/search?f=tweets&vertical=default&q=lang%3Aja%20near%3A%22%E6%97%A5%E6%9C%AC%22%20within%3A15mi&src=typd&lang=ja' | grep 'class="TweetTextSize js-tweet-text tweet-text"' | lynx -stdin -dump -nolist | ~/usr/local/bin/jumanpp\n\u3061\u306a\u307f\u306b\u3061\u3087\u3063\u3068\u8a66\u3057\u305f\u3044\u3060\u3051\u3067\u3042\u308c\u3070\u5c0e\u5165\u3057\u306a\u304f\u3066\u3082\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3067\u8a66\u305b\u307e\u3059\uff0e\u30e9\u30c6\u30a3\u30b9\u8868\u793a\u3082\u697d\u3057\u3044\uff0e\n\nJuman++", "date_published": "2016-10-21T02:45:29+09:00", "date_modified": "2016-10-21T02:51:44+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "JUMAN++", "Linux", "\u5f62\u614b\u7d20\u89e3\u6790", "Debian", "stretch", "Ubuntu", "yakkety(16.10)" ] }, { "id": "http://matoken.org/blog/?p=1437", "url": "https://matoken.org/blog/2016/10/05/mind-mapping%e3%82%a2%e3%83%97%e3%83%aa%e3%81%aefreeplane%e3%82%92%e8%a9%a6%e3%81%99/", "title": "mind mapping\u30a2\u30d7\u30ea\u306eFreeplane\u3092\u8a66\u3059", "content_html": "

FreeMind\u3092Debian jessie\u306b\u5c0e\u5165\u3057\u3088\u3046\u3068\u3057\u305f\u3089\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u898b\u5f53\u305f\u308a\u307e\u305b\u3093\uff0e \u63a2\u3057\u3066\u307f\u308b\u3068\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u3055\u308c\u3066\u306a\u3044\u304b\u3089jessie/sid\u304b\u3089\u6d88\u3055\u308c\u305f\u3088\u3046\u3067\u3059\uff0e

\n\n
\n

We have Freeplane which is actively maintained and roughly equivalent in features.

\n
\n

\u3067\u3082Freeplane\u3068\u3044\u3046\u30e1\u30f3\u30c6\u3055\u308c\u3066\u3044\u308b\u4f3c\u305f\u3082\u306e\u304c\u3042\u308b\u3088\u3068\u3044\u3046\u3053\u3068\u3067\u3053\u308c\u3092\u8a66\u3057\u3066\u307f\u308b\u3053\u3068\u306b\u3057\u307e\u3057\u305f\uff0e

\n

\uff03\u3061\u306a\u307f\u306bFreeMind\u306esite\u3092\u898b\u308b\u3068stable\u306e\u30ea\u30ea\u30fc\u30b9\u304c2013\u5e74\u30671.0.1\uff0e\u305d\u306e\u5f8c1.1.0-Beta1\u304c2015\u5e741.1.0-Beta2\u304c2016\u5e74\u306b\u51fa\u3066\u3044\u3066\uff0cDebian\u3067\u306f0.9.0\u3060\u3063\u305f\u3088\u3046\u3067\u3059\uff0e

\n\n

Freeplane\u306f\u3069\u3046\u3082FreeMind\u306e\u30d5\u30a9\u30fc\u30af\u306e\u3088\u3046\u3067\u3059\uff0e\u898b\u305f\u76ee\u3082\u4f7f\u3044\u52dd\u624b\u3082\u4f3c\u3066\u3044\u307e\u3059\uff0eJAVA\u88fd\u3067\u30de\u30eb\u30c1\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0\u306a\u306e\u3082\u540c\u3058\u3067\u3059\uff0e

\n\n

\u5c0e\u5165\u306f\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u3042\u308b\u306e\u3067\u305d\u308c\u3092\u5229\u7528\u3057\u307e\u3057\u305f\uff0e

\n
$ sudo apt install freeplane
\n

\u8d77\u52d5\u30ed\u30b4\u2026\u2026\u4f55\u3060\u308d\u3046\u3053\u306e\u866b?\u306f\uff0e

\n

\"20161005_01:10:30-30616\"
\n

\n

\u521d\u56de\u8d77\u52d5\u6642\u306b\u306fWhats New\u304c\u8868\u793a\u3055\u308c\u307e\u3057\u305f\uff0e

\n

\"20161005_01:10:09-30241\"
\n

\n

\u5c11\u3057\u65e5\u672c\u8a9e\u304c\u8c46\u8150\u306b\u306a\u3063\u3066\u3057\u307e\u3063\u3066\u3044\u308b\u5834\u6240\u304c\u3042\u308a\u307e\u3057\u305f\u304c\u30d5\u30a9\u30f3\u30c8\u3092\u65e5\u672c\u8a9e\u30d5\u30a9\u30f3\u30c8\u306b\u5909\u66f4\u3059\u308b\u3053\u3068\u3067\u89e3\u6c7a\u3057\u307e\u3057\u305f\uff0e \u5f8c\u306f\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u3068\u304b\u306b\u76ee\u3092\u901a\u3057\u3066\u304a\u304f\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e

\n

\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u306a\u3069\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u306f/usr/share/freeplane/doc/\u8fba\u308a\u306b\u3042\u308a\u307e\u3057\u305f\uff0e

\n
$ ls -1 /usr/share/freeplane/doc/*_ja.mm\r\n/usr/share/freeplane/doc/freeplaneFunctions_ja.mm\r\n/usr/share/freeplane/doc/freeplaneTutorial_ja.mm\r\n/usr/share/freeplane/doc/freeplane_ja.mm
\n

\"20161005_01:10:53-29876\"
\n
\n\"20161005_01:10:09-28858\"
\n
\n\"20161005_01:10:32-27112\"
\n

\n

\u672a\u3060\u305d\u3093\u306a\u306b\u4f7f\u3063\u3066\u3044\u307e\u305b\u3093\u304c\uff0cFreeMind\u3068\u540c\u3058\u3088\u3046\u306a\u64cd\u4f5c\u6027\u3060\u3057\u4ee5\u524d\u66f8\u3044\u305f.mm\u3082\u8aad\u3081\u308b\u3088\u3046\u306a\u306e\u3067\u305d\u306e\u307e\u307e\u79fb\u884c\u3067\u304d\u305d\u3046\u3067\u3059\uff0e

\n

<\u8ffd\u8a18>

\n

Ubuntu 16.10 amd64(\u4eca\u306f\u672a\u3060\u30ea\u30ea\u30fc\u30b9\u524d)\u306b\u3082\u5165\u308c\u3066\u307f\u307e\u3057\u305f\u304c\u8d77\u52d5\u3057\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\u3068\u308a\u3042\u3048\u305a\u672c\u5bb6\u304b\u3089.zip\u3092\u8cb0\u3063\u3066\u304d\u3066\u52d5\u304b\u3057\u3066\u3044\u307e\u3059\uff0e\u4e00\u5fdc\u5831\u544a\u306f\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n\n

</\u8ffd\u8a18>

\n

\n", "content_text": "FreeMind\u3092Debian jessie\u306b\u5c0e\u5165\u3057\u3088\u3046\u3068\u3057\u305f\u3089\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u898b\u5f53\u305f\u308a\u307e\u305b\u3093\uff0e \u63a2\u3057\u3066\u307f\u308b\u3068\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u3055\u308c\u3066\u306a\u3044\u304b\u3089jessie/sid\u304b\u3089\u6d88\u3055\u308c\u305f\u3088\u3046\u3067\u3059\uff0e\n\n#807682 – RM: freemind — ROM; replaced by freeplane; buggy; unmaintained – Debian Bug report logs\n\n\nWe have Freeplane which is actively maintained and roughly equivalent in features.\n\n\u3067\u3082Freeplane\u3068\u3044\u3046\u30e1\u30f3\u30c6\u3055\u308c\u3066\u3044\u308b\u4f3c\u305f\u3082\u306e\u304c\u3042\u308b\u3088\u3068\u3044\u3046\u3053\u3068\u3067\u3053\u308c\u3092\u8a66\u3057\u3066\u307f\u308b\u3053\u3068\u306b\u3057\u307e\u3057\u305f\uff0e\n\uff03\u3061\u306a\u307f\u306bFreeMind\u306esite\u3092\u898b\u308b\u3068stable\u306e\u30ea\u30ea\u30fc\u30b9\u304c2013\u5e74\u30671.0.1\uff0e\u305d\u306e\u5f8c1.1.0-Beta1\u304c2015\u5e741.1.0-Beta2\u304c2016\u5e74\u306b\u51fa\u3066\u3044\u3066\uff0cDebian\u3067\u306f0.9.0\u3060\u3063\u305f\u3088\u3046\u3067\u3059\uff0e\n\nMain Page – FreeMind\n\nFreeplane\u306f\u3069\u3046\u3082FreeMind\u306e\u30d5\u30a9\u30fc\u30af\u306e\u3088\u3046\u3067\u3059\uff0e\u898b\u305f\u76ee\u3082\u4f7f\u3044\u52dd\u624b\u3082\u4f3c\u3066\u3044\u307e\u3059\uff0eJAVA\u88fd\u3067\u30de\u30eb\u30c1\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0\u306a\u306e\u3082\u540c\u3058\u3067\u3059\uff0e\n\nHome – Freeplane – free mind mapping and knowledge management software\n\n\u5c0e\u5165\u306f\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u3042\u308b\u306e\u3067\u305d\u308c\u3092\u5229\u7528\u3057\u307e\u3057\u305f\uff0e\n$ sudo apt install freeplane\n\u8d77\u52d5\u30ed\u30b4\u2026\u2026\u4f55\u3060\u308d\u3046\u3053\u306e\u866b?\u306f\uff0e\n\n\n\u521d\u56de\u8d77\u52d5\u6642\u306b\u306fWhats New\u304c\u8868\u793a\u3055\u308c\u307e\u3057\u305f\uff0e\n\n\n\u5c11\u3057\u65e5\u672c\u8a9e\u304c\u8c46\u8150\u306b\u306a\u3063\u3066\u3057\u307e\u3063\u3066\u3044\u308b\u5834\u6240\u304c\u3042\u308a\u307e\u3057\u305f\u304c\u30d5\u30a9\u30f3\u30c8\u3092\u65e5\u672c\u8a9e\u30d5\u30a9\u30f3\u30c8\u306b\u5909\u66f4\u3059\u308b\u3053\u3068\u3067\u89e3\u6c7a\u3057\u307e\u3057\u305f\uff0e \u5f8c\u306f\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u3068\u304b\u306b\u76ee\u3092\u901a\u3057\u3066\u304a\u304f\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\n\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u306a\u3069\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u306f/usr/share/freeplane/doc/\u8fba\u308a\u306b\u3042\u308a\u307e\u3057\u305f\uff0e\n$ ls -1 /usr/share/freeplane/doc/*_ja.mm\r\n/usr/share/freeplane/doc/freeplaneFunctions_ja.mm\r\n/usr/share/freeplane/doc/freeplaneTutorial_ja.mm\r\n/usr/share/freeplane/doc/freeplane_ja.mm\n\n\n\n\n\n\n\u672a\u3060\u305d\u3093\u306a\u306b\u4f7f\u3063\u3066\u3044\u307e\u305b\u3093\u304c\uff0cFreeMind\u3068\u540c\u3058\u3088\u3046\u306a\u64cd\u4f5c\u6027\u3060\u3057\u4ee5\u524d\u66f8\u3044\u305f.mm\u3082\u8aad\u3081\u308b\u3088\u3046\u306a\u306e\u3067\u305d\u306e\u307e\u307e\u79fb\u884c\u3067\u304d\u305d\u3046\u3067\u3059\uff0e\n<\u8ffd\u8a18>\nUbuntu 16.10 amd64(\u4eca\u306f\u672a\u3060\u30ea\u30ea\u30fc\u30b9\u524d)\u306b\u3082\u5165\u308c\u3066\u307f\u307e\u3057\u305f\u304c\u8d77\u52d5\u3057\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\u3068\u308a\u3042\u3048\u305a\u672c\u5bb6\u304b\u3089.zip\u3092\u8cb0\u3063\u3066\u304d\u3066\u52d5\u304b\u3057\u3066\u3044\u307e\u3059\uff0e\u4e00\u5fdc\u5831\u544a\u306f\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\nBug #1631361 \u201cfails to start in ubuntu 16.10 amd64.\u201d : Bugs : freeplane package : Ubuntu\n\n</\u8ffd\u8a18>", "date_published": "2016-10-05T04:14:18+09:00", "date_modified": "2016-10-08T05:11:06+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Debian", "FreeMind", "Freeplane", "Jessie", "Linux", "MindMap", "stretch", "testing" ] }, { "id": "http://matoken.org/blog/?p=1402", "url": "https://matoken.org/blog/2016/09/16/to-disable-the-functionkey-in-byobu-screen/", "title": "byobu+screen\u3067functionkey\u3092\u7121\u52b9\u306b\u3059\u308b", "content_html": "

\u6a5f\u80fd\u899a\u3048\u3066\u306a\u3044\u3057\u9060\u3044\u3057\u305f\u307e\u306b\u9593\u9055\u3063\u3066\u62bc\u3057\u3066\u6df7\u4e71\u3057\u305f\u308a\u3059\u308b\u306e\u3067\u7121\u52b9\u306b\u3057\u307e\u3057\u305f\uff0e
\nDebian stretch amd64, Ubuntu 16.04 LTS amd64\u3067\u78ba\u8a8d\uff0e

\n

$ vi ~/.byobu/keybindings

\n

\u3057\u3066

\n
source $BYOBU_PREFIX/share/byobu/keybindings/common
\n

\u306e\u6b21\u306e\u884c\u982d\u3067 i \u3057\u3066\u7de8\u96c6\u30e2\u30fc\u30c9\u306b\u3057\u305f\u5f8c
\nCtrl+a !(a\u306f\u8a2d\u5b9a\u3057\u3066\u3042\u308bescape key)\u3059\u308b\uff0e
\n\u3059\u308b\u3068\u3053\u3093\u306a\u306e\u304c\u51fa\u3066\u304f\u308b\u306e\u3067\uff0c

\n
:source /usr/share/byobu/keybindings/f-keys.screen
\n

\u982d\u306e : \u3092\u6d88\u3057\u3066

\n
source /usr/share/byobu/keybindings/f-keys.screen.disable
\n

\u3092\u66f8\u3044\u3066\u304a\u304f

\n

\u4fdd\u5b58\u3057\u3066\u8d77\u52d5\u3057\u306a\u304a\u3057\u3066\u53cd\u6620\ufeff\uff0e

\n

\uff03vi\u3067\u3042\u308b\u5fc5\u7136\u6027\u306f\u306a\u3044\u306e\u3067\u304a\u597d\u304d\u306a\u30c6\u30ad\u30b9\u30c8\u30a8\u30c7\u30a3\u30bf\u3067\u3069\u3046\u305e\uff0e
\uff03tmux\u306e\u5834\u5408\u306f\u3053\u3063\u3061~/.byobu/keybindings.tmux\u306b\u306a\u308b\u306e\u304b\u306a?(\u305d\u308c\u3068\u3082 byobu-select-backend \u3067\u5207\u308a\u66ff\u3048\u308b\u3068\u30d5\u30a1\u30a4\u30eb\u540d\u5165\u308c\u66ff\u308f\u308b?)

\n

\n", "content_text": "\u6a5f\u80fd\u899a\u3048\u3066\u306a\u3044\u3057\u9060\u3044\u3057\u305f\u307e\u306b\u9593\u9055\u3063\u3066\u62bc\u3057\u3066\u6df7\u4e71\u3057\u305f\u308a\u3059\u308b\u306e\u3067\u7121\u52b9\u306b\u3057\u307e\u3057\u305f\uff0e\nDebian stretch amd64, Ubuntu 16.04 LTS amd64\u3067\u78ba\u8a8d\uff0e\n$ vi ~/.byobu/keybindings\n\u3057\u3066\nsource $BYOBU_PREFIX/share/byobu/keybindings/common\n\u306e\u6b21\u306e\u884c\u982d\u3067 i \u3057\u3066\u7de8\u96c6\u30e2\u30fc\u30c9\u306b\u3057\u305f\u5f8c\nCtrl+a !(a\u306f\u8a2d\u5b9a\u3057\u3066\u3042\u308bescape key)\u3059\u308b\uff0e\n\u3059\u308b\u3068\u3053\u3093\u306a\u306e\u304c\u51fa\u3066\u304f\u308b\u306e\u3067\uff0c\n:source /usr/share/byobu/keybindings/f-keys.screen\n\u982d\u306e : \u3092\u6d88\u3057\u3066\nsource /usr/share/byobu/keybindings/f-keys.screen.disable\n\u3092\u66f8\u3044\u3066\u304a\u304f\n\u4fdd\u5b58\u3057\u3066\u8d77\u52d5\u3057\u306a\u304a\u3057\u3066\u53cd\u6620\ufeff\uff0e\n\uff03vi\u3067\u3042\u308b\u5fc5\u7136\u6027\u306f\u306a\u3044\u306e\u3067\u304a\u597d\u304d\u306a\u30c6\u30ad\u30b9\u30c8\u30a8\u30c7\u30a3\u30bf\u3067\u3069\u3046\u305e\uff0e\uff03tmux\u306e\u5834\u5408\u306f\u3053\u3063\u3061~/.byobu/keybindings.tmux\u306b\u306a\u308b\u306e\u304b\u306a?(\u305d\u308c\u3068\u3082 byobu-select-backend \u3067\u5207\u308a\u66ff\u3048\u308b\u3068\u30d5\u30a1\u30a4\u30eb\u540d\u5165\u308c\u66ff\u308f\u308b?)", "date_published": "2016-09-16T17:42:19+09:00", "date_modified": "2016-09-16T17:42:19+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "byobu", "GNU Screen", "Debian", "Linux", "stretch", "testing", "Ubuntu", "xenial(16.04)" ] }, { "id": "http://matoken.org/blog/?p=1399", "url": "https://matoken.org/blog/2016/09/16/try-the-cast-can-castnow-from-the-command-line-to-googlecast/", "title": "\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u304b\u3089Googlecast\u306bcast\u51fa\u6765\u308bcastnow\u3092\u8a66\u3059", "content_html": "

\u898b\u3064\u3051\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f

\n\n

Debian stretch amd64, Ubuntu 16.04 LTS amd64\u3067\u78ba\u8a8d\u3057\u3066\u3044\u307e\u3059\uff0e

\n

$HOME\u4ee5\u4e0b\u306bPATH\u901a\u3057\u3066npm\u3067\u5c0e\u5165\u3057\u3066\u3044\u307e\u3059\uff0e/usr/local\u4ee5\u4e0b\u3067\u826f\u3051\u308c\u3070npm install castnow -g\u3060\u3051\u3067\u3044\u3044\u304b\u3082\uff0e

\n
$ sudo apt install npm nodejs-legacy
$ echo 'PATH="$PATH":$HOME/node_modules/.bin' >> ~/.bashrc
$ source ~/.bashrc
$ npm install castnow
\n

\u5165\u308a\u307e\u3057\u305f\u304cChromecast\u304c\u307f\u3042\u305f\u3089\u306a\u3044?

\n
$ castnow --help
 
Usage: castnow [<media>, <media>, ...] [OPTIONS]
 
Option                  Meaning
--tomp4                 Convert file to mp4 during playback
--device <name>         The name of the Chromecast device that should be used
--address <ip>          The IP address or hostname of your Chromecast device
--subtitles <path/url>  Path or URL to an SRT or VTT file
--subtitle-scale <scale> Subtitle font scale
--subtitle-color <color> Subtitle font RGBA color
--myip <ip>             Your local IP address
--quiet                 No output
--peerflix-* <value>    Pass options to peerflix
--ffmpeg-* <value>      Pass options to ffmpeg
--type <type>           Explicitly set the mime-type (e.g. "video/mp4")
--bypass-srt-encoding   Disable automatic UTF-8 encoding of SRT subtitles
--seek <hh:mm:ss>       Seek to the specified time on start using the format hh:mm:ss or mm:ss
--loop                  Loop over playlist, or file, forever
--help                  This help screen
 
Player controls
 
Key                     Action
space                   Toggle between play and pause
m                       Toggle mute
up                      Volume Up
down                    Volume Down
left                    Seek backward
right                   Seek forward
n                       Next in playlist
s                       Stop playback
quit                    Quit
 
$ castnow
Error: device not found
\n

\u540d\u524d\u89e3\u6c7a\u304c\u51fa\u6765\u306a\u304b\u3063\u305f\u3088\u3046\u3067ip\u3092\u6307\u5b9a\u3059\u308b\u3068cast\u51fa\u6765\u307e\u3057\u305f\uff0e\u5225\u306e\u30de\u30b7\u30f3\u3067\u306f\u901a\u3063\u305f\u306e\u3067\u3053\u306e\u30de\u30b7\u30f3\u304c\u304a\u304b\u3057\u3044\u3088\u3046\u3067\u3059\uff0e

\n
$ avahi-browse -a -t -l -r
+ wlp3s0 IPv6 x201s                                         Remote Disk Management local
+ wlp3s0 IPv4 Chromecast-KagoLUG                            _googlecast._tcp     local
= wlp3s0 IPv6 x201s                                         Remote Disk Management local
   hostname = [x201s.local]
   address = [fe80::222:faff:fe33:456a]
   port = [22]
   txt = []
= wlp3s0 IPv4 Chromecast-KagoLUG                            _googlecast._tcp     local
   hostname = [Chromecast-KagoLUG.local]
   address = [192.168.2.206]
   port = [8009]
   txt = ["rs=" "bs=FA8FCA59198D" "st=1" "ca=4101" "fn=Chromecast-KagoLUG" "ic=/setup/icon.png" "md=Chromecast" "ve=05" "rm=A652B47431F36207" "id=7c14aaaa62a6002dd95ba94814e5c5e0"]
$ castnow --address 192.168.2.206 http://commondatastorage.googleapis.com/gtv-videos-bucket/ED_1280.mp4
 
  State     : Playing....
\n

\u30d1\u30a4\u30d7\u3082\u4f7f\u3048\u308b\u306e\u3067\u8272\u3005\u5fdc\u7528\u3067\u304d\u305d\u3046\u306a\u6c17\u304c\u3057\u307e\u3059\uff0e
\n\uff08\u6700\u8fd1Chromium\u304camd64/i386\u3057\u304b\u306a\u304f\u306a\u3063\u305f\u3088\u3046\u3067\u3059\u304c\uff0c\u3053\u308c\u3092\u4f7f\u3048\u3070\u4ed6\u306e\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u3067\u3082\u30b9\u30af\u30ea\u30fc\u30f3\u30ad\u30e3\u30b9\u30c8\u3082\u3067\u304d\u305d\u3046?\uff09

\n\n

\n", "content_text": "\u898b\u3064\u3051\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\n\nGitHub – xat/castnow: commandline chromecast player\n\nDebian stretch amd64, Ubuntu 16.04 LTS amd64\u3067\u78ba\u8a8d\u3057\u3066\u3044\u307e\u3059\uff0e\n$HOME\u4ee5\u4e0b\u306bPATH\u901a\u3057\u3066npm\u3067\u5c0e\u5165\u3057\u3066\u3044\u307e\u3059\uff0e/usr/local\u4ee5\u4e0b\u3067\u826f\u3051\u308c\u3070npm install castnow -g\u3060\u3051\u3067\u3044\u3044\u304b\u3082\uff0e\n$ sudo apt install npm nodejs-legacy$ echo 'PATH="$PATH":$HOME/node_modules/.bin' >> ~/.bashrc$ source ~/.bashrc$ npm install castnow\n\u5165\u308a\u307e\u3057\u305f\u304cChromecast\u304c\u307f\u3042\u305f\u3089\u306a\u3044?\n$ castnow --help Usage: castnow [<media>, <media>, ...] [OPTIONS] Option                  Meaning--tomp4                 Convert file to mp4 during playback--device <name>         The name of the Chromecast device that should be used--address <ip>          The IP address or hostname of your Chromecast device--subtitles <path/url>  Path or URL to an SRT or VTT file--subtitle-scale <scale> Subtitle font scale--subtitle-color <color> Subtitle font RGBA color--myip <ip>             Your local IP address--quiet                 No output--peerflix-* <value>    Pass options to peerflix--ffmpeg-* <value>      Pass options to ffmpeg--type <type>           Explicitly set the mime-type (e.g. "video/mp4")--bypass-srt-encoding   Disable automatic UTF-8 encoding of SRT subtitles--seek <hh:mm:ss>       Seek to the specified time on start using the format hh:mm:ss or mm:ss--loop                  Loop over playlist, or file, forever--help                  This help screen Player controls Key                     Actionspace                   Toggle between play and pausem                       Toggle muteup                      Volume Updown                    Volume Downleft                    Seek backwardright                   Seek forwardn                       Next in playlists                       Stop playbackquit                    Quit $ castnowError: device not found\n\u540d\u524d\u89e3\u6c7a\u304c\u51fa\u6765\u306a\u304b\u3063\u305f\u3088\u3046\u3067ip\u3092\u6307\u5b9a\u3059\u308b\u3068cast\u51fa\u6765\u307e\u3057\u305f\uff0e\u5225\u306e\u30de\u30b7\u30f3\u3067\u306f\u901a\u3063\u305f\u306e\u3067\u3053\u306e\u30de\u30b7\u30f3\u304c\u304a\u304b\u3057\u3044\u3088\u3046\u3067\u3059\uff0e\n$ avahi-browse -a -t -l -r+ wlp3s0 IPv6 x201s                                         Remote Disk Management local+ wlp3s0 IPv4 Chromecast-KagoLUG                            _googlecast._tcp     local= wlp3s0 IPv6 x201s                                         Remote Disk Management local   hostname = [x201s.local]   address = [fe80::222:faff:fe33:456a]   port = [22]   txt = []= wlp3s0 IPv4 Chromecast-KagoLUG                            _googlecast._tcp     local   hostname = [Chromecast-KagoLUG.local]   address = [192.168.2.206]   port = [8009]   txt = ["rs=" "bs=FA8FCA59198D" "st=1" "ca=4101" "fn=Chromecast-KagoLUG" "ic=/setup/icon.png" "md=Chromecast" "ve=05" "rm=A652B47431F36207" "id=7c14aaaa62a6002dd95ba94814e5c5e0"]$ castnow --address 192.168.2.206 http://commondatastorage.googleapis.com/gtv-videos-bucket/ED_1280.mp4   State     : Playing....\n\u30d1\u30a4\u30d7\u3082\u4f7f\u3048\u308b\u306e\u3067\u8272\u3005\u5fdc\u7528\u3067\u304d\u305d\u3046\u306a\u6c17\u304c\u3057\u307e\u3059\uff0e\n\uff08\u6700\u8fd1Chromium\u304camd64/i386\u3057\u304b\u306a\u304f\u306a\u3063\u305f\u3088\u3046\u3067\u3059\u304c\uff0c\u3053\u308c\u3092\u4f7f\u3048\u3070\u4ed6\u306e\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u3067\u3082\u30b9\u30af\u30ea\u30fc\u30f3\u30ad\u30e3\u30b9\u30c8\u3082\u3067\u304d\u305d\u3046?\uff09\n\nDebian — jessie \u306e chromium \u30d1\u30c3\u30b1\u30fc\u30b8\u306b\u95a2\u3059\u308b\u8a73\u7d30", "date_published": "2016-09-16T17:30:02+09:00", "date_modified": "2016-09-16T17:30:02+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "castnow", "Chromecast", "Debian", "Linux", "stretch", "testing", "Ubuntu", "xenial(16.04)" ], "attachments": [ { "url": "http://commondatastorage.googleapis.com/gtv-videos-bucket/ED_1280.mp4", "mime_type": "video/mp4", "size_in_bytes": 214965454 }, { "url": "http://commondatastorage.googleapis.com/gtv-videos-bucket/ED_1280.mp4", "mime_type": "video/mp4", "size_in_bytes": 214965454 } ] }, { "id": "http://matoken.org/blog/?p=1394", "url": "https://matoken.org/blog/2016/06/17/want-the-android-terminal-to-the-touch-pad-instead-of-linux-blink-of-bluetooth-use/", "title": "Android\u7aef\u672b\u3092Linux\u306e\u30bf\u30c3\u30c1\u30d1\u30c3\u30c9\u66ff\u308f\u308a\u306b\u3057\u305f\u3044(Bluetooth\u5229\u7528\u306eBlink)", "content_html": "
\n
\n
\n
\n

\u6700\u8fd1\u307e\u305f\u30dd\u30a4\u30f3\u30c6\u30a3\u30f3\u30b0\u30c7\u30d0\u30a4\u30b9\u306bApple Wireless Trackpad\u3092\u5229\u7528\u3059\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\u304c\u6301\u3061\u904b\u3073\u306b\u306f\u5c11\u3057\u5d69\u5f35\u308a\u307e\u3059\uff0e\u30de\u30a6\u30b9\u3092\u6301\u3061\u904b\u3076\u306e\u3082\u304b\u3055\u3070\u308a\u307e\u3059\uff0e
\nUbuntu Touch\u3067HDMI\u63a5\u7d9a\u6642\u306b\u30bf\u30c3\u30c1\u30c7\u30d0\u30a4\u30b9\u306b\u306a\u308b\u3068\u3044\u3046\u306e\u3092\u898b\u3066Android\u7aef\u672b\u3092\u30bf\u30c3\u30c1\u30c7\u30d0\u30a4\u30b9\u306b\u3059\u308b\u3053\u3068\u304c\u51fa\u6765\u308b\u306e\u3067\u306f?\u305d\u308c\u306a\u3089\u8377\u7269\u5897\u3048\u7121\u3044\u3057\u3044\u3044\u304b\u3082\u3068\u601d\u3063\u3066\u5c11\u3057\u8abf\u3079\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
\n

Bluetooth\u5229\u7528\u306eBlink

\n
\n\n
\n

Blink\u306fBluetooth\u63a5\u7d9a\u304b\u3064PC\u5074\u3067\u30c7\u30fc\u30e2\u30f3\u3092\u52d5\u304b\u3059\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\uff0e
\n\u5148\u305aBluetooth\u30da\u30a2\u30ea\u30f3\u30b0\u3092\u3057\u3066\u304a\u304d\uff0cPC\u5074\u3067\u30c7\u30fc\u30e2\u30f3\u3092\u5c0e\u5165\u3057\u307e\u3059\uff0e

\n
\n
\n
    \n
  • \n

    \u5fc5\u8981\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u5c0e\u5165

    \n
  • \n
\n
\n
\n
\n
$ sudo apt install bluez python-bluez xdotoolsudo apt-get install bluez python-bluez xdotool
\n
\n
\n
\n
    \n
  • \n

    \u30c7\u30fc\u30e2\u30f3\u306e\u5c0e\u5165

    \n
  • \n
\n
\n
\n
\n
$ git clone https://github.com/drpain/blink-server.git ~/.blink
\n
\n
\n
\n

\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u3057\u3066\u30c7\u30fc\u30e2\u30f3\u3092\u8d77\u52d5\u3059\u308b\u306e\u3067\u3059\u304c\uff0c\u3053\u306e\u8a18\u4e8b\u3092\u66f8\u3044\u3066\u3044\u308b\u6642\u70b9\u3067\u306eDebian stretch testing amd64\u3067\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u30a8\u30e9\u30fc\u3068\u306a\u308a\u307e\u3059\uff0e

\n
\n
\n
\n
$ sudo ~/.blink/bluetooth_server.py\r\nTraceback (most recent call last):\r\n  File \"/home/mk/.blink/bluetooth_server.py\", line 25, in <module>\r\n    profiles         = [ SERIAL_PORT_PROFILE ]\r\n  File \"/usr/lib/python2.7/dist-packages/bluetooth/bluez.py\", line 176, in advertise_service\r\n    raise BluetoothError (str (e))\r\nbluetooth.btcommon.BluetoothError: (2, 'No such file or directory')
\n
\n
\n
\n

Guihub\u306eHELP\u3092\u53c2\u8003\u306b*/etc/bluetooth/main.conf*\u3092\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u4fee\u6b63\u3057\u307e\u3059\uff0e

\n
\n
\n
\n
diff --git a/bluetooth/main.conf b/bluetooth/main.conf\r\nindex 372fd8c..2f7cc4a 100644\r\n--- a/bluetooth/main.conf\r\n+++ b/bluetooth/main.conf\r\n@@ -64,6 +64,9 @@\r\n # 'false'.\r\n #FastConnectable = false\r\n\r\n+# \"drpain/blink-server: This is the server you would need to be able to run the Blink Android Application.\" https://github.com/drpain/blink-server\r\n+DisablePlugins = pnat\r\n+\r\n #[Policy]\r\n #\r\n # The ReconnectUUIDs defines the set of remote services that should try
\n
\n
\n
\n

\u8a2d\u5b9a\u3092\u53cd\u6620\u3059\u308b\u305f\u3081\u306bbluetoothd\u3092\u518d\u8d77\u52d5\u3057\u3066\u30b5\u30fc\u30d0\u3092\u518d\u8d77\u52d5\u3057\u307e\u3059\uff0e

\n
\n
\n
\n
$ sudo service bluetooth restart
\n
\n
\n
\n

\u30b5\u30fc\u30d0\u306f\u8981root\u306e\u3088\u3046\u3067\u3059\uff0e
\n\u3053\u306e\u72b6\u614b\u3067Android\u5074\u304b\u3089\u30af\u30e9\u30a4\u30a2\u30f3\u30c8PC\u3092\u9078\u629e\u3057\u3066\u63a5\u7d9a\u3059\u308c\u3070ok\uff0e

\n
\n
\n
\n
$ sudo ~/.blink/bluetooth_server.py\r\nREADY FOR CONNECTIONS, RFCOMM channel 1\r\n('INBOUND CONNECTION ', ('68:76:4F:3B:D1:E0', 1))\r\nCOMMAND RECEIVED [{\"action\":\"mouse-move\",\"x\":null,\"y\":null}]\r\n['xdotool', 'mousemove_relative', '--', 'None', 'None']\r\nCOMMAND RECEIVED [{\"action\":\"mouse-move\",\"x\":-1,\"y\":0}]\r\n['xdotool', 'mousemove_relative', '--', '-1', '0']\r\nCOMMAND RECEIVED [{\"action\":\"mouse-move\",\"x\":0,\"y\":0}]\r\n['xdotool', 'mousemove_relative', '0', '0']\r\nCOMMAND RECEIVED [{\"action\":\"mouse-move\",\"x\":-1,\"y\":0}]\r\n['xdotool', 'mousemove_relative', '--', '-1', '0']
\n
\n
\n
\n

\u4e0a\u306e\u65b9\u306e\u30e2\u30fc\u30c9\u5207\u66ff\u30b9\u30a4\u30c3\u30c1\u3092\u30bf\u30c3\u30d7\u3057\u3066\u898f\u5b9a\u306e\u300cSwipe Area\u300d\u304b\u3089\u300cMouse\u300d\u306b\u3057\u307e\u3059\uff0e\u300cMouse Area\u300d\u3067\u64cd\u4f5c\u3059\u308b\u3068xdotool\u306e\u30ed\u30b0\u304c\u5927\u91cf\u306b\u51fa\u3064\u3064\u64cd\u4f5c\u3067\u304d\u307e\u3059\uff0e

\n
\n
\n

\"27629912281
\n\"27094267013

\n
\n
\n

\u64cd\u4f5c\u306f\u5c11\u3057\u89e3\u308a\u3065\u3089\u304f\u3066\u3053\u3093\u306a\u611f\u3058\u3067\u3059\uff0e

\n
\n
\n
    \n
  • \n

    \u30bf\u30c3\u30d7→\u5de6\u30af\u30ea\u30c3\u30af

    \n
  • \n
  • \n

    \u30bf\u30c3\u30d7, \u30db\u30fc\u30eb\u30c9, \u30ea\u30ea\u30fc\u30b9 → \u53f3\u30af\u30ea\u30c3\u30af

    \n
  • \n
\n
\n
\n

\u4e2d\u30af\u30ea\u30c3\u30af\u3084\u30c9\u30e9\u30c3\u30b0\u306f\u591a\u5206\u672a\u5b9f\u88c5\u3067\u4f7f\u3048\u307e\u305b\u3093\uff0e
\n\u30ab\u30fc\u30bd\u30eb\u79fb\u52d5\u306f\u3061\u3089\u3064\u304d\u307e\u3059\u304c\u3068\u308a\u3042\u3048\u305a\u4f7f\u3048\u308b\u611f\u3058\u3067\u3059\uff0e

\n
\n
\n

\u3067\u3082\u5c0e\u5165\u306b\u8981\u8a2d\u5b9a\u5909\u66f4&\u8981root\u306a\u306e\u304c\u9762\u5012\u3067\u3059\u306d\uff0e

\n
\n
\n
\n
\n

\n", "content_text": "\u6700\u8fd1\u307e\u305f\u30dd\u30a4\u30f3\u30c6\u30a3\u30f3\u30b0\u30c7\u30d0\u30a4\u30b9\u306bApple Wireless Trackpad\u3092\u5229\u7528\u3059\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\u304c\u6301\u3061\u904b\u3073\u306b\u306f\u5c11\u3057\u5d69\u5f35\u308a\u307e\u3059\uff0e\u30de\u30a6\u30b9\u3092\u6301\u3061\u904b\u3076\u306e\u3082\u304b\u3055\u3070\u308a\u307e\u3059\uff0e\nUbuntu Touch\u3067HDMI\u63a5\u7d9a\u6642\u306b\u30bf\u30c3\u30c1\u30c7\u30d0\u30a4\u30b9\u306b\u306a\u308b\u3068\u3044\u3046\u306e\u3092\u898b\u3066Android\u7aef\u672b\u3092\u30bf\u30c3\u30c1\u30c7\u30d0\u30a4\u30b9\u306b\u3059\u308b\u3053\u3068\u304c\u51fa\u6765\u308b\u306e\u3067\u306f?\u305d\u308c\u306a\u3089\u8377\u7269\u5897\u3048\u7121\u3044\u3057\u3044\u3044\u304b\u3082\u3068\u601d\u3063\u3066\u5c11\u3057\u8abf\u3079\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\n\nBluetooth\u5229\u7528\u306eBlink\n\n\n\n\nBlink Linux Remote Control – Google Play \u306e Android \u30a2\u30d7\u30ea\n\n\ndrpain/blink-server: This is the server you would need to be able to run the Blink Android Application.\n\n\n\n\nBlink\u306fBluetooth\u63a5\u7d9a\u304b\u3064PC\u5074\u3067\u30c7\u30fc\u30e2\u30f3\u3092\u52d5\u304b\u3059\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\uff0e\n\u5148\u305aBluetooth\u30da\u30a2\u30ea\u30f3\u30b0\u3092\u3057\u3066\u304a\u304d\uff0cPC\u5074\u3067\u30c7\u30fc\u30e2\u30f3\u3092\u5c0e\u5165\u3057\u307e\u3059\uff0e\n\n\n\n\n\u5fc5\u8981\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u5c0e\u5165\n\n\n\n\n\n$ sudo apt install bluez python-bluez xdotoolsudo apt-get install bluez python-bluez xdotool\n\n\n\n\n\n\u30c7\u30fc\u30e2\u30f3\u306e\u5c0e\u5165\n\n\n\n\n\n$ git clone https://github.com/drpain/blink-server.git ~/.blink\n\n\n\n\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u3057\u3066\u30c7\u30fc\u30e2\u30f3\u3092\u8d77\u52d5\u3059\u308b\u306e\u3067\u3059\u304c\uff0c\u3053\u306e\u8a18\u4e8b\u3092\u66f8\u3044\u3066\u3044\u308b\u6642\u70b9\u3067\u306eDebian stretch testing amd64\u3067\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u30a8\u30e9\u30fc\u3068\u306a\u308a\u307e\u3059\uff0e\n\n\n\n$ sudo ~/.blink/bluetooth_server.py\r\nTraceback (most recent call last):\r\n File \"/home/mk/.blink/bluetooth_server.py\", line 25, in <module>\r\n profiles = [ SERIAL_PORT_PROFILE ]\r\n File \"/usr/lib/python2.7/dist-packages/bluetooth/bluez.py\", line 176, in advertise_service\r\n raise BluetoothError (str (e))\r\nbluetooth.btcommon.BluetoothError: (2, 'No such file or directory')\n\n\n\nGuihub\u306eHELP\u3092\u53c2\u8003\u306b*/etc/bluetooth/main.conf*\u3092\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u4fee\u6b63\u3057\u307e\u3059\uff0e\n\n\n\ndiff --git a/bluetooth/main.conf b/bluetooth/main.conf\r\nindex 372fd8c..2f7cc4a 100644\r\n--- a/bluetooth/main.conf\r\n+++ b/bluetooth/main.conf\r\n@@ -64,6 +64,9 @@\r\n # 'false'.\r\n #FastConnectable = false\r\n\r\n+# \"drpain/blink-server: This is the server you would need to be able to run the Blink Android Application.\" https://github.com/drpain/blink-server\r\n+DisablePlugins = pnat\r\n+\r\n #[Policy]\r\n #\r\n # The ReconnectUUIDs defines the set of remote services that should try\n\n\n\n\u8a2d\u5b9a\u3092\u53cd\u6620\u3059\u308b\u305f\u3081\u306bbluetoothd\u3092\u518d\u8d77\u52d5\u3057\u3066\u30b5\u30fc\u30d0\u3092\u518d\u8d77\u52d5\u3057\u307e\u3059\uff0e\n\n\n\n$ sudo service bluetooth restart\n\n\n\n\u30b5\u30fc\u30d0\u306f\u8981root\u306e\u3088\u3046\u3067\u3059\uff0e\n\u3053\u306e\u72b6\u614b\u3067Android\u5074\u304b\u3089\u30af\u30e9\u30a4\u30a2\u30f3\u30c8PC\u3092\u9078\u629e\u3057\u3066\u63a5\u7d9a\u3059\u308c\u3070ok\uff0e\n\n\n\n$ sudo ~/.blink/bluetooth_server.py\r\nREADY FOR CONNECTIONS, RFCOMM channel 1\r\n('INBOUND CONNECTION ', ('68:76:4F:3B:D1:E0', 1))\r\nCOMMAND RECEIVED [{\"action\":\"mouse-move\",\"x\":null,\"y\":null}]\r\n['xdotool', 'mousemove_relative', '--', 'None', 'None']\r\nCOMMAND RECEIVED [{\"action\":\"mouse-move\",\"x\":-1,\"y\":0}]\r\n['xdotool', 'mousemove_relative', '--', '-1', '0']\r\nCOMMAND RECEIVED [{\"action\":\"mouse-move\",\"x\":0,\"y\":0}]\r\n['xdotool', 'mousemove_relative', '0', '0']\r\nCOMMAND RECEIVED [{\"action\":\"mouse-move\",\"x\":-1,\"y\":0}]\r\n['xdotool', 'mousemove_relative', '--', '-1', '0']\n\n\n\n\u4e0a\u306e\u65b9\u306e\u30e2\u30fc\u30c9\u5207\u66ff\u30b9\u30a4\u30c3\u30c1\u3092\u30bf\u30c3\u30d7\u3057\u3066\u898f\u5b9a\u306e\u300cSwipe Area\u300d\u304b\u3089\u300cMouse\u300d\u306b\u3057\u307e\u3059\uff0e\u300cMouse Area\u300d\u3067\u64cd\u4f5c\u3059\u308b\u3068xdotool\u306e\u30ed\u30b0\u304c\u5927\u91cf\u306b\u51fa\u3064\u3064\u64cd\u4f5c\u3067\u304d\u307e\u3059\uff0e\n\n\n\n\n\n\n\u64cd\u4f5c\u306f\u5c11\u3057\u89e3\u308a\u3065\u3089\u304f\u3066\u3053\u3093\u306a\u611f\u3058\u3067\u3059\uff0e\n\n\n\n\n\u30bf\u30c3\u30d7→\u5de6\u30af\u30ea\u30c3\u30af\n\n\n\u30bf\u30c3\u30d7, \u30db\u30fc\u30eb\u30c9, \u30ea\u30ea\u30fc\u30b9 → \u53f3\u30af\u30ea\u30c3\u30af\n\n\n\n\n\u4e2d\u30af\u30ea\u30c3\u30af\u3084\u30c9\u30e9\u30c3\u30b0\u306f\u591a\u5206\u672a\u5b9f\u88c5\u3067\u4f7f\u3048\u307e\u305b\u3093\uff0e\n\u30ab\u30fc\u30bd\u30eb\u79fb\u52d5\u306f\u3061\u3089\u3064\u304d\u307e\u3059\u304c\u3068\u308a\u3042\u3048\u305a\u4f7f\u3048\u308b\u611f\u3058\u3067\u3059\uff0e\n\n\n\u3067\u3082\u5c0e\u5165\u306b\u8981\u8a2d\u5b9a\u5909\u66f4&\u8981root\u306a\u306e\u304c\u9762\u5012\u3067\u3059\u306d\uff0e", "date_published": "2016-06-17T22:36:25+09:00", "date_modified": "2016-06-17T22:36:25+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Android", "Debian", "Linux", "stretch", "testing" ] } ] }