{ "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/buster/feed/json -- and add it your reader.", "next_url": "https://matoken.org/blog/category/linux/debian-linux/buster/feed/json?paged=2", "home_page_url": "https://matoken.org/blog/category/linux/debian-linux/buster", "feed_url": "https://matoken.org/blog/category/linux/debian-linux/buster/feed/json", "language": "ja", "title": "buster – 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=3763", "url": "https://matoken.org/blog/2022/08/10/enable-wordpress-for-two-factor-authentication-with-two-factor/", "title": "WordPress\u3092Two-Factor\u3067\uff12\u8981\u7d20\u8a8d\u8a3c\u3092\u6709\u52b9\u306b\u3059\u308b", "content_html": "
\u3053\u306e\u30b5\u30a4\u30c8\u306f\u73fe\u5728WordPress\u3067\u7ba1\u7406\u3055\u308c\u3066\u3044\u307e\u3059\uff0e\u30e1\u30b8\u30e3\u30fc\u306a\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306a\u306e\u3067\u653b\u6483\u3082\u591a\u3044\u3067\u3059\uff0e\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u5c11\u3057\u9577\u304f\u4e8c\u5341\u6570\u6587\u5b57\u306b\u3057\u3066\u3044\u307e\u3059\u304c\u5c11\u3057\u4e0d\u5b89\uff0e\u3068\u3044\u3046\u3053\u3068\u3067\u591a\u8981\u7d20\u8a8d\u8a3c\u3092\u4f7f\u3046\u3053\u3068\u306b\u3057\u307e\u3057\u305f\uff0e
\n\n
\u4e00\u822c\u7684\u306aTOTP\u3068\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u30b3\u30fc\u30c9\u306b\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u3082\u306e\u3092\u63a2\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\nTOTP\u3067\u691c\u7d22\u3059\u308b\u3068\u6ca2\u5c71\u51fa\u3066\u304d\u307e\u3059\uff0e\u3088\u304f\u4f7f\u308f\u308c\u3066\u3044\u305d\u3046\u306aTwo-Factor \u3092\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e
\nWordPress\u306b\u30ed\u30b0\u30a4\u30f3\u3057\u305f\u72b6\u614b\u3067\uff0c\u300c\u30b5\u30a4\u30c8\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u7ba1\u7406\u8005\u300d\u2192\u300c\u30d7\u30e9\u30b0\u30a4\u30f3\u300d\u3067\u30d7\u30e9\u30b0\u30a4\u30f3\u30da\u30fc\u30b8\u306b\u79fb\u52d5\uff0e
\n\u300c\u65b0\u898f\u8ffd\u52a0\u300d\u3092\u62bc\u3057\u3066\u30d7\u30e9\u30b0\u30a4\u30f3\u691c\u7d22\u753b\u9762\u306b\u9077\u79fb\u3059\u308b\u306e\u3067\u30ad\u30fc\u30ef\u30fc\u30c9\u306b\u300cTOTP\u300d\u3068\u5165\u308c\u3066\u691c\u7d22\u3057\u3066\u300cTwo-Factor\u300d\u3092\u300c\u4eca\u3059\u3050\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u300d\u30dc\u30bf\u30f3\u3067\u5c0e\u5165\uff0e\u5c0e\u5165\u304c\u7d42\u308f\u308b\u3068\u30dc\u30bf\u30f3\u304c\u300c\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3067\u6709\u52b9\u5316\u300d\u306b\u306a\u308b\u306e\u3067\u3053\u308c\u3082\u62bc\u3057\u3066\u6709\u52b9\u306b\u3057\u307e\u3059\uff0e
\u81ea\u30b5\u30a4\u30c8\u306ePlugin\u30da\u30fc\u30b8\u3067\u300cTwo Factor\u300d\u304c\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u308b\u306e\u3092\u78ba\u8a8d\uff0c\u300c\u30e6\u30fc\u30b6\u30fc\u300d\u2192\u300c\u3042\u306a\u305f\u306e\u30d7\u30ed\u30d5\u30a3\u30fc\u30eb\u300d\u306e\u300cTwo-Factor \u8a2d\u5b9a\u300d\u3067TOTP\u306e\u30b3\u30fc\u30c9\u3092\u81ea\u5206\u306e\u5229\u7528\u3057\u3066\u3044\u308b\u30a2\u30d7\u30ea\u306b\u767b\u9332\u3057\u3066\u30b3\u30fc\u30c9\u3092\u767b\u9332\u3057\u3066\u6709\u52b9\u306b\u3057\u307e\u3059\uff0eTOTP\u306e\u4ed6\u306b\u30e1\u30fc\u30eb\u3068\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u30b3\u30fc\u30c9(\u4fdd\u5b58\u3057\u3066\u304a\u304d\u307e\u3059)\u3082\u6709\u52b9\u306b\u3057\u307e\u3057\u305f\uff0e
\n
\n
\n
\u5225\u306e\u30d6\u30e9\u30a6\u30b6\u3067TOTP\u3068\u30e1\u30fc\u30eb\uff0c\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u30b3\u30fc\u30c9\u3067\u30ed\u30b0\u30a4\u30f3\u3067\u304d\u308b\u306e\u3092\u78ba\u8a8d\uff0e\u3068\u308a\u3042\u3048\u305aOK\u305d\u3046\u3067\u3059\uff0e
\nTOTP\u306e\u8a08\u7b97\u306b\u306foathtool\u3092\u4f7f\u3063\u305f\u81ea\u4f5cscript\u3092\u5229\u7528\u3057\u3066\u3044\u307e\u3059\uff0eKEY\u306f\u6697\u53f7\u5316\u3057\u3066\u5b9f\u884c\u6642\u306b\u4e00\u6642\u7684\u306b\u5fa9\u53f7\u3057\u3066\u3044\u307e\u3059\uff0e
\n$ oathtool --totp -b FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\n346419\n$ 2auth-cli.sh blog\nPassword:\nmatoken@matoken.org/blog : 590604\n
\u30d1\u30b9\u30ef\u30fc\u30c9\u306e\u307f\u3088\u308a\u306f\u5b89\u5fc3\u306b\u306a\u3063\u305f\u304b\u306a?
\n| \n Note \n | \n\n\u7ba1\u7406\u753b\u9762\u3092localhost\u306e\u307f\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\u306b\u3057\u3066\u30dd\u30fc\u30c8\u8ee2\u9001\u306b\u3057\u3066\u3057\u307e\u3063\u3066\u3082\u3044\u3044\u304b\u306a? | \n
$ dpkg-query -W wordpress\nwordpress 5.0.15+dfsg1-0+deb10u1\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ arch\nx86_64\n
Nextcloud\u304c\u52d5\u304b\u306a\u304f\u306a\u308a\u307e\u3057\u305f\uff0e
\n\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u8868\u793a\u3055\u308c\u3066\u52d5\u304d\u307e\u305b\u3093\uff0e
Composer detected issues in your platform: Your Composer dependencies require a PHP version \">= 7.4.0\".\n\nNextcloud\n\u5185\u90e8\u30b5\u30fc\u30d0\u30fc\u30a8\u30e9\u30fc\n\u30b5\u30fc\u30d0\u30fc\u306f\u8981\u6c42\u3092\u5b8c\u4e86\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\n\n\u518d\u3073\u3053\u306e\u3088\u3046\u306a\u3053\u3068\u304c\u8d77\u3053\u3063\u305f\u5834\u5408\u306f\u3001\u4ee5\u4e0b\u306e\u6280\u8853\u60c5\u5831\u3092\u30b5\u30fc\u30d0\u30fc\u7ba1\u7406\u8005\u306b\u9001\u3063\u3066\u304f\u3060\u3055\u3044\u3002\n\n\u8a73\u7d30\u306f\u3001\u30b5\u30fc\u30d0\u30fc\u306e\u30ed\u30b0\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n\n\u6280\u8853\u8a73\u7d30\n\u30ea\u30e2\u30fc\u30c8\u30a2\u30c9\u30ec\u30b9: 180.131.110.140\n\u30ea\u30af\u30a8\u30b9\u30c8 ID: QkMNcL7xRrQwxESLUU9Y\n
\n
Nextcloud\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u30a2\u30c3\u30d7\u306f\u3057\u3066\u3044\u307e\u305b\u3093\uff0esource\u3092\u5c11\u3057\u898b\u308b\u30687.3\u4ee5\u4e0a\u3067\u5927\u4e08\u592b\u305d\u3046\u3067\u3059\uff0e
\nif (PHP_VERSION_ID < 70300) {\n http_response_code(500);\n echo 'This version of Nextcloud requires at least PHP 7.3<br/>';\n echo 'You are currently running ' . PHP_VERSION . '. Please update your PHP version.';\n exit(1);\n}\nNextcloud\u306eISSUE\u3092\u63a2\u3059\u3068\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u3082\u306e\u3092\u898b\u3064\u3051\u307e\u3057\u305f\uff0e
\n\u3053\u3053\u3067\u306f\uff0cPolls\u30923.5\u306b\u4e0a\u3052\u308b\u3068PHP 7.4\u4ee5\u4e0a\u3092\u6c42\u3081\u308b\u3088\u3046\u306b\u306a\u3063\u3066\u3057\u307e\u3046\uff0cPHP\u30927.4\u4ee5\u4e0a\u306b\u3059\u308b\u304bPolls\u3092\u30c0\u30a6\u30f3\u30b0\u30ec\u30fc\u30c9\u3059\u308b\u3068\u76f4\u308b\u3068\u3044\u3046\u611f\u3058\u306e\u3088\u3046\u3067\u3059\uff0e
\n\u305d\u3046\u3044\u3048\u3070Nextcloud\u306e\u30e1\u30f3\u30c6\u3068\u3057\u3066\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u66f4\u65b0\u306f\u3057\u3066\u3044\u305f\u306e\u3067\u3053\u306e\u30ec\u304c\u5f53\u3066\u306f\u307e\u3063\u3066\u3044\u305d\u3046\u3067\u3059\uff0e\u3053\u306e\u74b0\u5883\u306fDebian buster\u3067php\u306f7.3\u3067\u3059\uff0eBullseye\u306b\u4e0a\u3052\u308b\u3068php 7.4\u306b\u306a\u308a\u307e\u3059\u304c\u672a\u3060\u6e96\u5099\u304c\u51fa\u6765\u3066\u3044\u307e\u305b\u3093\uff0e
$ rmadison php\nphp | 1:7.0+49 | oldoldstable | all\nphp | 2:7.3+69 | oldstable | all\nphp | 2:7.4+76 | stable | all\nphp | 2:8.1+92 | testing | all\nphp | 2:8.1+92 | unstable | all\nphp | 2:8.2+93~exp1 | experimental | all\n
\u3068\u3044\u3046\u3053\u3068\u3067\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30c0\u30a6\u30f3\u30b0\u30ec\u30fc\u30c9\u3092\u884c\u3044\u307e\u3057\u305f\uff0e
\n$ sudo -u www-data php ./occ app:disable polls (1)\n$ sudo -u www-data php ./occ app:remove polls (2)\n$ wget https://github.com/nextcloud/polls/releases/download/v3.4.2/polls.tar.gz -O /tmp/polls.tar.gz (3)\n$ sudo -u www-data tar xvf /tmp/polls.tar.gz -C ./apps/ (4)\n$ sudo -u www-data php ./occ app:enable polls (5)\n$ rm /tmp/polls.tar.gz\n
\u81ea\u5206\u306e\u74b0\u5883\u3067\u306f\u3053\u308c\u3060\u3051\u3067\u306f\u6cbb\u3089\u306a\u304b\u3063\u305f\u3067\u3059\uff0e
\n\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u4e2d\u304b\u30897.4\u3092\u6c42\u3081\u308b\u3082\u306e\u3092\u63a2\u3057\u3066\u540c\u69d8\u306b\u7121\u52b9\u5316\uff0c\u524a\u9664\uff0c\u65e7\u30d0\u30fc\u30b7\u30e7\u30f3\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3068\u5c55\u958b\uff0c\u6709\u52b9\u5316\u3092\u884c\u3044\u6cbb\u308a\u307e\u3057\u305f\uff0e
$ sudo -u www-data find ./apps -type f -iname \"*.php\" -print0 | xargs -0 grep \"70400\"\n
Nextcloud\u306e\u8981\u4ef6\u4ee5\u4e0a\u3092\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u6c42\u3081\uff0c\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3067\u304d\u3066\u3057\u307e\u3046\u3068\u3044\u3046\u306e\u306f\u521d\u3081\u3066\u906d\u9047\u3057\u307e\u3057\u305f\uff0e\u5c11\u3057\u6c17\u3092\u3064\u3051\u306a\u3044\u3068\u3044\u3051\u307e\u305b\u3093\u306d\uff0e
\n\u305d\u3057\u3066\u65e9\u3081\u306bDebian Bullesye\u306b\u4e0a\u3052\u3066PHP\u30927.4\u306b\u3057\u305f\u3044\u3068\u3053\u308d\u3067\u3059\uff0e
| \n Note \n | \n\n \n \nPHP\u306esite\u304b\u30897.4\u3092\u5165\u624b\u3057\u3066\u8a2d\u5b9a\u3082\u6709\u308a\u304b\u3082\u3067\u3059\u304c\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u30b3\u30b9\u30c8\u304c\u4e0a\u304c\u3063\u3066\u3057\u307e\u3044\u307e\u3059\u306d\u2026\u2026\uff0e \n\n \n
| \n
$ sudo -u www-data php ./occ --version\nNextcloud 23.0.7\n$ php -v\nPHP 7.3.31-1~deb10u1 (cli) (built: Oct 24 2021 15:18:08) ( NTS )\nCopyright (c) 1997-2018 The PHP Group\nZend Engine v3.3.31, Copyright (c) 1998-2018 Zend Technologies\n with Zend OPcache v7.3.31-1~deb10u1, Copyright (c) 1999-2018, by Zend Technologies\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ arch\nx86_64\n
\u30ea\u30e2\u30fc\u30c8\u306emosh\u306b\u7e4b\u304c\u3089\u306a\u304f\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3057\u305f\uff0essh\u306e\u8a8d\u8a3c\u5f8c\u306b\u5931\u6557\u3057\u3066\u3044\u307e\u3059\uff0e
\nssh\u3067\u306f\u7e4b\u304c\u308a\u307e\u3059\uff0e
\n
\u4ee5\u4e0b\u306fmosh\u3067ssh\u8a8d\u8a3c\u4ee5\u964d\u306e\u30e1\u30c3\u30bb\u30fc\u30b8\u3067\u3059\uff0e\u63a5\u7d9a\u5143\u3067 ja_JP.UTF-8 \u3092\u4f7f\u3063\u3066\u3044\u308b\u306e\u3067mosh\u30b5\u30fc\u30d0\u3067\u3082\u305d\u308c\u3092\u4f7f\u304a\u3046\u3068\u3057\u3066\u898b\u3064\u304b\u3089\u305a\u306b\u5931\u6557\u3057\u3066\u3044\u305d\u3046\u3067\u3059\uff0e
Authenticated to 192.0.2.5 (via proxy) using \"publickey\".\nbash: warning: setlocale: LC_ALL: cannot change locale (ja_JP.UTF-8)\nThe locale requested by LC_ALL=ja_JP.UTF-8 isn't available here.\nRunning `locale-gen ja_JP.UTF-8' may be necessary.\n\nThe locale requested by LC_ALL=ja_JP.UTF-8 isn't available here.\nRunning `locale-gen ja_JP.UTF-8' may be necessary.\n\nmosh-server needs a UTF-8 native locale to run.\n\nUnfortunately, the local environment (LC_ALL=ja_JP.UTF-8) specifies\nthe character set \"US-ASCII\",\n\nThe client-supplied environment (LC_ALL=ja_JP.UTF-8) specifies\nthe character set \"US-ASCII\".\n\nlocale: Cannot set LC_CTYPE to default locale: No such file or directory\nlocale: Cannot set LC_MESSAGES to default locale: No such file or directory\nlocale: Cannot set LC_ALL to default locale: No such file or directory\nLANG=ja_JP.UTF-8\nLANGUAGE=\nLC_CTYPE=\"ja_JP.UTF-8\"\nLC_NUMERIC=\"ja_JP.UTF-8\"\nLC_TIME=\"ja_JP.UTF-8\"\nLC_COLLATE=\"ja_JP.UTF-8\"\nLC_MONETARY=\"ja_JP.UTF-8\"\nLC_MESSAGES=\"ja_JP.UTF-8\"\nLC_PAPER=\"ja_JP.UTF-8\"\nLC_NAME=\"ja_JP.UTF-8\"\nLC_ADDRESS=\"ja_JP.UTF-8\"\nLC_TELEPHONE=\"ja_JP.UTF-8\"\nLC_MEASUREMENT=\"ja_JP.UTF-8\"\nLC_IDENTIFICATION=\"ja_JP.UTF-8\"\nLC_ALL=ja_JP.UTF-8\nConnection to 192.0.2.5 closed.\nTransferred: sent 3232, received 4688 bytes, in 3.3 seconds\nBytes per second: sent 975.2, received 1414.6\n/usr/bin/mosh: Did not find mosh server startup message. (Have you installed mosh on your server?)\n
\u8a66\u3057\u306b LC_ALL=en_US.UTF-8 \u3092\u6e21\u3059\u3068\u63a5\u7d9a\u3067\u304d\u307e\u3057\u305f\uff0e
$ LC_ALL=en_US.UTF-8 mosh $SERVER\n
ssh\u3067\u63a5\u7d9a\u3057\u3066\u78ba\u8a8d\u3059\u308b\u3068 en_US.UTF-8 \u3057\u304b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\uff0e
$ grep -v ^# /etc/locale.gen\n\n\nen_US.UTF-8 UTF-8\n
ja_JP.UTF-8 \u3068\u3064\u3044\u3067\u306b ja_JP.EUC-JP \u3092\u8ffd\u52a0\u3057\u3066\uff0c locale-gen \u30b3\u30de\u30f3\u30c9\u3067locale\u3092\u751f\u6210\u3057\u307e\u3057\u305f\uff0e
$ sudo vi /etc/locale.gen\n$ sudo git diff /etc/locale.gen\ndiff --git a/locale.gen b/locale.gen\nindex afb6141..0f91c36 100644\n--- a/locale.gen\n+++ b/locale.gen\n@@ -286,7 +286,7 @@ en_US.UTF-8 UTF-8\n # it_IT.UTF-8 UTF-8\n # it_IT@euro ISO-8859-15\n # iu_CA UTF-8\n-# ja_JP.EUC-JP EUC-JP\n-# ja_JP.UTF-8 UTF-8\n+ja_JP.EUC-JP EUC-JP\n+ja_JP.UTF-8 UTF-8\n # ka_GE GEORGIAN-PS\n # ka_GE.UTF-8 UTF-8\n # kab_DZ UTF-8\n$ sudo locale-gen\nGenerating locales (this might take a while)...\n en_US.UTF-8... done\n ja_JP.EUC-JP... done\n ja_JP.UTF-8... done\nGeneration complete.\n
\u3053\u306e\u72b6\u614b\u3067\u518d\u5ea6 LC_ALL=ja_JP.UTF-8 \u306e\u72b6\u614b\u3067mosh\u3067\u63a5\u7d9a\u3057\u3066\u307f\u308b\u3068\u3046\u307e\u304f\u63a5\u7d9a\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f :)
\n\u4ee5\u524d\u306f\u7e4b\u3052\u3066\u3044\u305f\u306e\u3067\u3044\u3064\u306e\u9593\u306b\u304b /etc/locale.gen \u3092\u66f8\u304d\u63db\u3048\u3066\u3057\u307e\u3063\u3066\u3044\u305f?
/etc \u306fetckeeper\u3067git\u7ba1\u7406\u3057\u3066\u3044\u308b\u306e\u3067\u63a2\u3057\u3066\u307f\u308b\u3068\uff0clocales 2.28-10 \u2192 locales 2.28-10+deb10u1 \u306e\u66f4\u65b0\u6642\u306b ja_JP.UTF-8 UTF-8 \u304c\u30b3\u30e1\u30f3\u30c8\u30a2\u30a6\u30c8\u3055\u308c\u3066\u3044\u307e\u3057\u305f\uff0e\u78ba\u8a8d\u4e0d\u8db3\u3067\u3059\u306d><
$ dpkg-query -W mosh locales\nlocales 2.28-10+deb10u1\nmosh 1.3.2-2.1+b1\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ arch\nx86_64\n
\u81ea\u5b85\u30b5\u30fc\u30d0\u304c\u8d77\u52d5\u3057\u306a\u304f\u306a\u3063\u305f\u306e\u3067Lighttpd\u3067\u5168\u30da\u30fc\u30b8503\u3092\u8fd4\u3059\u3088\u3046\u306b\u3057\u307e\u3057\u305f\uff0e
\n\u601d\u3063\u305f\u3088\u308a\u30a2\u30af\u30bb\u30b9\u304c\u591a\u3044\u306e\u3067\u30a2\u30af\u30bb\u30b9\u306e\u591a\u3044\u30c9\u30e1\u30a4\u30f3\u306eDNS\u3092\u5909\u66f4\u3057\u3066\u5916\u306e\u30b5\u30fc\u30d0\u306b\u5411\u3051\u308b\u3053\u3068\u306b\u3057\u307e\u3057\u305f\uff0e
\n\u3053\u306e\u30b5\u30fc\u30d0\u306fApache httpd\u304c\u52d5\u3044\u3066\u3044\u308b\u306e\u3067Lighttpd\u3068\u540c\u3058\u8a2d\u5b9a\u306f\u4f7f\u3048\u306a\u3044\u306e\u3067\u5c11\u3057\u8abf\u3079\u3066\u8a2d\u5b9a\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\n
\u5bfe\u8c61\u30c9\u30e1\u30a4\u30f3\u306e\u8a2d\u5b9a\u3092\u4f5c\u6210\uff0e\u3053\u3053\u3067\u306f\u300c sub1.example.org \u300d\u3068\u3057\u3066\u3044\u307e\u3059\uff0e
<VirtualHost *:80>\n ServerName sub1.example.org\n Redirect permanent / https://sub1.example.org/\n</VirtualHost>\n<IfModule mod_ssl.c>\n<VirtualHost *:443>\n ServerName sub1.example.org\n ServerAdmin webmaster@example.org\n DocumentRoot /var/www/sub1.example.org/\n RedirectMatch 503 ^/(?!503\\.html) (1)\n ErrorDocument 503 /503.html\n ErrorLog ${APACHE_LOG_DIR}/error_sub1.example.org.log\n CustomLog ${APACHE_LOG_DIR}/access_sub1.example.org.log combined\n SSLCertificateFile /etc/letsencrypt/live/sub1.example.org/fullchain.pem\n SSLCertificateKeyFile /etc/letsencrypt/live/sub1.example.org/privkey.pem\n</VirtualHost>\n</IfModule>\n/503.html \u306b\u8ee2\u9001\u3057\u307e\u3059\uff0e\u5bfe\u8c61\u30c9\u30e1\u30a4\u30f3\u306e\u8a3c\u660e\u66f8\u3092\u65e7\u30b5\u30fc\u30d0\u304b\u3089\u30b3\u30d4\u30fc\u3057\u3066\u304a\u304d\u307e\u3059\uff0e
\n$ sudo mkdir -p /etc/letsencrypt/tmp/sub1.example.org/\n
\u30ea\u30e2\u30fc\u30c8\u30b5\u30fc\u30d0\u306e /etc/letsencrypt/live/sub1.example.org/fullchain.pem \u3068 /etc/letsencrypt/live/sub1.example.org/privkey.pem \u3092 /etc/letsencrypt/tmp/sub1.example.org/ \u4ee5\u4e0b\u306b\u7f6e\u304f\uff0e
$ sudo chown -R root.ssl-cert /etc/letsencrypt\n$ sudo ln -s /etc/letsencrypt/tmp/sub1.example.org/fullchain.pem /etc/letsencrypt/live/sub1.example.org/fullchain.pem\n$ sudo ln -s /etc/letsencrypt/tmp/sub1.example.org/privkey.pem /etc/letsencrypt/live/sub1.example.org/privkey.pem\n
503\u7528\u306ehtml\u3092\u7528\u610f\u3057\u3066\u304a\u304d\u307e\u3059\uff0e
\n$ sudo -u www-data mkdir /var/www/sub1.example.org\n$ sudo -u www-data vi /var/www/sub1.example.org/503.html\n
apache httpd\u518d\u8d77\u52d5
\n$ sudo service apache2 restart\n
DNS\u66f8\u304d\u63db\u3048\u524d\u306b\u691c\u8a3c\u306e\u884c\u3048\u308b\u30ed\u30fc\u30ab\u30eb\u306ePC\u306ehosts\u66f8\u304d\u63db\u3048\u3066\u52d5\u4f5c\u30c6\u30b9\u30c8\uff0e
\n$ echo \"192.0.2.5 sub1.example.org\" | sudo tee -a /etc/hosts (1)\n$ w3m -dump_head head http://sub1.example.org/piyo | grep ^HTTP/ (2)\nHTTP/1.1 503 Service Unavailable\n$ w3m -dump_extra head http://sub1.example.org/piyo | lv (3)\n
\u52d5\u4f5c\u78ba\u8a8d\u304c\u51fa\u6765\u305f\u3089 /etc/hosts \u3092\u623b\u3057\u3066\u304a\u304f\uff0e
\u3053\u306e\u5f8c\uff0cDNS\u66f8\u304d\u63db\u3048\u3092\u884c\u3044DNS\u304c\u4f1d\u64ad\u3057\u3066\u304b\u3089\u518d\u5ea6\u52d5\u4f5c\u78ba\u8a8d\u3092\u884c\u3046\uff0e
\n\u5bfe\u8c61\u30c9\u30e1\u30a4\u30f3\u306eSSL\u8a3c\u660e\u66f8\u66f4\u65b0\u3082\u3057\u3066\u304a\u304f\uff0e
\n$ sudo certbot certonly -d sub1.example.org\n
\u3068\u3044\u3046\u611f\u3058\u3067\u30b5\u30fc\u30d0\u79fb\u884c\u3057\u307e\u3057\u305f\uff0e
\n\u305d\u308c\u307e\u3067\u81ea\u5b85\u306b9000\u30a2\u30af\u30bb\u30b9\u307b\u3069\u6709\u308a\u307e\u3057\u305f\u304c8500\u7a0b\u306f\u5916\u306e\u30b5\u30fc\u30d0\u306b\u884c\u304f\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\uff0e
$ dpkg-query -W apache2 certbot\napache2 2.4.38-3+deb10u7\ncertbot 0.31.0-1+deb10u1\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ arch\nx86_64\n
\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u30ab\u30f3\u30d5\u30a1\u30ec\u30f3\u30b92022 Online Spring\u306b\u53c2\u52a0\u3057\u307e\u3057\u305f\uff0e
\n\u30d3\u30c7\u30aa\u30df\u30fc\u30c6\u30a3\u30f3\u30b0\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u306eZoom\u3068YouTube Live\u3092\u4f7f\u3063\u3066\u3044\u307e\u3059\uff0e\u30bb\u30c3\u30b7\u30e7\u30f3\u306f\u8907\u6570\u30c8\u30e9\u30c3\u30af\u3042\u3063\u3066\u540c\u6642\u306b\u53c2\u52a0\u3059\u308b\u306e\u306f\u96e3\u3057\u3044\u3067\u3059\uff0e\u307b\u3068\u3093\u3069\u306e\u30bb\u30c3\u30b7\u30e7\u30f3\u306f\u5f8c\u65e5YouTube\u3067\u516c\u958b\u3055\u308c\u307e\u3059\u304c\uff0cYouTube Live\u306e\u52d5\u753b\u3092\u30ea\u30e2\u30fc\u30c8\u306e\u30b5\u30fc\u30d0\u3067\u9332\u753b\u3057\u3066\u304a\u3044\u305f\u306e\u3067\u3053\u308c\u3092\u30b9\u30de\u30fc\u30c8\u30d5\u30a9\u30f3\u3067\u79fb\u52d5\u4e2d\u306a\u3069\u306b\u805e\u3051\u308b\u3088\u3046\u306b\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\n\n
YouTube\u306e\u52d5\u753b\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u306b\u306fyoutube-dl\u3084yt-dlp\u304c\u4fbf\u5229\u3067\u3059\uff0e\u30bb\u30c3\u30b7\u30e7\u30f3\u6bce\u306b\u8d77\u52d5\u3057\u3066\u304a\u304d\u307e\u3057\u305f\uff0e
\n$ youtube-dl ${URL}\n$ yt-dlp ${URL}\n\u4eca\u56de\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u305f\u52d5\u753b\u306fvp9+aac\u306e\u3088\u3046\u3067\u3059\uff0e
\n$ ffprobe -i ./YOUTUBEFILE.mkv 2>&1 | grep ^Input -A99\nInput #0, matroska,webm, from './YOUTUBEFILE.mkv':\n Metadata:\n HTTP://YOUTUBE.COM/STREAMING/OTF/DURATIONS/112015: Segment-Count: 6109\n : Segment-Durations-Ms: 5067,5066,5067(r=1),5066,5067(r=1),5066,5067(r=1),5066,5067(r=1),5066,5067(r=1),5066,5067(r=1),5066,5067(r=1),5066,5067(r=1),5066,5067(r=1),5066,5067(r=1),5066,5067(r=1),5066,5067(r=1),5066,5067(r=1),5066,5067(r=1),5066,5067(r=1),506\n :\n :\n ENCODER : Lavf58.20.100\n Duration: 08:35:50.04, start: 0.000000, bitrate: 551 kb/s\n Stream #0:0(eng): Video: vp9 (Profile 0), yuv420p(tv, bt709/unknown/unknown), 1280x720, SAR 1:1 DAR 16:9, 30 fps, 30 tbr, 1k tbn, 1k tbc (default)\n Metadata:\n DURATION : 08:35:49.996000000\n Stream #0:1(eng): Audio: aac (LC), 44100 Hz, stereo, fltp (default)\n Metadata:\n HANDLER_NAME : ISO Media file produced by Google Inc.\n DURATION : 08:35:50.040000000\n
ffmpeg\u3067\u97f3\u58f0\u3060\u3051\u3092\u629c\u304d\u51fa\u3057\u3066\u307f\u307e\u3059\uff0e
\n$ ffmpeg -i ./YOUTUBEFILE.mkv -vn -acodec copy ./YOUTUBEFILE.aac\n
\u5143\u30d5\u30a1\u30a4\u30eb\u304c2GB\u307b\u3069\u306b\u5bfe\u3057\u3066500MB\u307b\u3069\u306e\u30d5\u30a1\u30a4\u30eb\u306b\u306a\u308a\u307e\u3057\u305f\uff0e
\n\u3061\u3087\u3063\u3068\u5927\u304d\u3044\u306e\u3067\u30b3\u30fc\u30c7\u30c3\u30af\u3092opus\u306b\u5909\u66f4\u3057\u3066\u307f\u307e\u3059\uff0e
$ ffmpeg -i ./YOUTUBEFILE.mkv -vn -acodec libopus -b:a 64k ./YOUTUBEFILE.opus\n
213MB\u7a0b\u306b\u306a\u308a\u307e\u3057\u305f\uff0e
\n\u3053\u308c\u3092\u30ed\u30fc\u30ab\u30eb\u306b\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u518d\u751f\u3057\u3066\u307f\u308b\u3068\u30bb\u30c3\u30b7\u30e7\u30f3\u9593\u306e\u7121\u97f3\u90e8\u5206\u304c\u6c17\u306b\u306a\u308a\u307e\u3059\uff0e\u7121\u97f3\u90e8\u5206\u3092\u30ab\u30c3\u30c8\u3067\u304d\u306a\u3044\u304b\u306a\u3068\u63a2\u3059\u3068\uff0cffmpeg\u306e\u30d5\u30a3\u30eb\u30bf\u306b\u305d\u308c\u3089\u3057\u3044 silenceremove \u3068\u3044\u3046\u30d5\u30a3\u30eb\u30bf\u304c\u3042\u3063\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\u3068\u308a\u3042\u3048\u305aexample\u3092\u771f\u4f3c\u3057\u3066\uff0c\u5148\u982d\u304b\u3089\u6700\u5f8c\u307e\u3067\u306e\u9593\u306e1\u79d2\u4ee5\u4e0a\u306e\u7121\u97f3\u90e8\u5206\u3092\u30ab\u30c3\u30c8\u3057\u307e\u3059\uff0e\u3064\u3044\u3067\u306b\u30d3\u30c3\u30c8\u30ec\u30fc\u30c8\u308232k\u306b\u4e0b\u3052\u307e\u3057\u305f\uff0e
\n$ ffmpeg -i ./YOUTUBEFILE.mkv -vn -af silenceremove=stop_periods=-1:stop_duration=1:stop_threshold=-90dB -acodec libopus -b:a 32k ./YOUTUBEFILE.opus\n
\u52d5\u753b\u30d5\u30a1\u30a4\u30eb\u306e\u9577\u3055\u304c 08:35:50.040000000 \u304b\u3089 07:55:03.66 \u306b\u306a\u308a\u307e\u3057\u305f\uff0e\u30d5\u30a1\u30a4\u30eb\u30b5\u30a4\u30ba\u306f107MB\u7a0b\u3067\u3059\uff0e
\u3064\u3044\u3067\u306b\u3082\u3046\u5c11\u3057\u4f4e\u3044\u30d3\u30c3\u30c8\u30ec\u30fc\u30c8\u3082\u8a66\u3057\u307e\u3057\u305f\uff0e
\n| \u30d3\u30c3\u30c8\u30ec\u30fc\u30c8 | \n\u5bb9\u91cf | \n
|---|---|
| \n 32k \n | \n\n 107324kB \n | \n
| \n 24k \n | \n\n 82484kB \n | \n
| \n 16k \n | \n\n 56380kB \n | \n
\u5c11\u3057\u805e\u3044\u305f\u611f\u3058\u3067\u306f16k\u3067\u3082\u554f\u984c\u7121\u3055\u305d\u3046\u306a\u611f\u3058\u3067\u3059\uff0e\u5927\u672c\u306eZoom\u304c\u78ba\u304b24k\u306a\u306e\u306724k\u4ee5\u4e0a\u306f\u3042\u307e\u308a\u610f\u5473\u304c\u306a\u3044\u6c17\u304c\u3057\u307e\u3059\uff0e
\n\n\nHigh Fidelity Audio mode – Windows, macOS
\nThis option in Advanced Audio enhances \u201cOriginal Audio\u201d mode, allowing for disabling echo cancellation & post-processing, while raising audio codec quality to 48Khz, 96Kbps mono/192kbps stereo for professional audio transmis
\nsion in music education and performance applications. Professional audio interface, microphone, and headphones required.
\u3068\u3044\u3046\u3053\u3068\u3067\u4ed6\u306e\u30bb\u30c3\u30b7\u30e7\u30f3\u3082\u540c\u69d8\u306b\u5909\u63db\u3057\u3066Android\u30b9\u30de\u30fc\u30c8\u30d5\u30a9\u30f3\u306b\u8ee2\u9001\u3057\u3066VLC\u30671.5\u500d\u518d\u751f\u3057\u3066\u307f\u3066\u753b\u9762\u30b9\u30ea\u30fc\u30d7\u3067\u518d\u751f\u3067\u304d\u308b\u306e\u3092\u78ba\u8a8d\u3057\u307e\u3057\u305f\uff0e\u3053\u308c\u3067\u7a7a\u304d\u6642\u9593\u306b\u805e\u3051\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f :)
\n\u5fdc\u7528\u3068\u3057\u3066YouTube\u306eRSS\u304b\u3089\u52d5\u753b\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u97f3\u58f0\u306e\u307f\u306b\u3057\u3066\u305d\u306e\u97f3\u58f0\u3092RSS\u306b\u57cb\u3081\u8fbc\u3093\u3067\u516c\u958b\u3059\u308b\u3068Podcast\u30a2\u30b0\u30ea\u30b2\u30fc\u30bf\u30fc\u3067\u8cfc\u8aad\u3067\u304d\u308b\u306e\u3067\u4fbf\u5229\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e\u4eba\u306e\u52d5\u753b\u3092\u52dd\u624b\u306b\u4e00\u822c\u516c\u958b\u3059\u308b\u3068\u307e\u305a\u3044\u3067\u3057\u3087\u3046\u304c\uff0e
\n$ youtube-dl --version\n2021.12.17\n$ yt-dlp --version\n2022.03.08.1\n$ dpkg-query -W ffmpeg\nffmpeg 7:4.1.8-0+deb10u1\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ arch\nx86_64\n
Nitter\u3092\u30bb\u30eb\u30d5\u30db\u30b9\u30c8\u3057\u3066\u3044\u307e\u3059\uff0e
\n\u6700\u65b0\u306b\u8ffd\u5f93\u3057\u3066\u3044\u308b\u306e\u3067\u3059\u304c\uff0c\u4ee5\u524d\u3068\u5c11\u3057\u624b\u9806\u304c\u5909\u308f\u3063\u3066\u3044\u308b\u306e\u3067\u4e0a\u306e\u8a18\u4e8b\u306b\u88dc\u8db3\u3059\u308b\u5f62\u3067\u30e1\u30e2\u3057\u3066\u304a\u304d\u307e\u3059\uff0e
\n\n
$ sudo su - nitter\t(1)\n$ cd ~/nitter\t(2)\n$ git pull\t(3)\n$ pandoc ./README.md -o - | w3m -T text/htm\n$ export PATH=~/nim-1.6.4/bin:${PATH}\t(4)\n$ echo $PATH\n/home/nitter/nim-1.6.4/bin:/home/nitter/bin:/usr/local/bin:/usr/bin:/bin\n$ nim -v\t(5)\nNim Compiler Version 1.6.4 [Linux: amd64]\nCompiled at 2022-02-09\nCopyright (c) 2006-2021 by Andreas Rumpf\n\ngit hash: 7994556f3804c217035c44b453a3feec64405758\nactive boot switches: -d:release\nnitter \u30a2\u30ab\u30a6\u30f3\u30c8\u306b\u5909\u66f4nitter \u306esource\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3078\u79fb\u52d5nitter \u306esource\u3092pullnim \u306e PATH \u3092\u901a\u3059nim \u304c\u4f7f\u3044\u305f\u3044\u30d0\u30fc\u30b8\u30e7\u30f3\u306b\u5411\u3044\u3066\u3044\u308b\u306e\u3092\u78ba\u8a8d$ nimble build -d:release\n$ nimble scss\n$ vi public/md/about.md\t(1)\n$ nimble md\t(2)\n$ diff -u ./nitter.example.conf ./nitter.conf\t(3)\n--- ./nitter.example.conf 2022-02-15 00:03:01.628730418 +0900\n+++ ./nitter.conf 2022-03-11 22:53:41.944448701 +0900\n@@ -1,11 +1,11 @@\n [Server]\n-address = \"0.0.0.0\"\n-port = 8080\n-https = false # disable to enable cookies when not using https\n+address = \"localhost\"\n+port = 8081\n+https = true # disable to enable cookies when not using https\n httpMaxConnections = 100\n staticDir = \"./public\"\n title = \"nitter\"\n-hostname = \"nitter.net\"\n+hostname = \"nitter.matoken.org\"\n\n [Cache]\n listMinutes = 240 # how long to cache list info (not the tweets, so keep it high)\n@@ -25,6 +25,7 @@\n enableRSS = true # set this to false to disable RSS feeds\n enableDebug = false # enable request logs and debug endpoints\n proxy = \"\" # http/https url, SOCKS proxies are not supported\n+#proxy = \"http://153.121.44.87:8888\" # http/https url, SOCKS proxies are not supported\n proxyAuth = \"\"\n tokenCount = 10\n # minimum amount of usable tokens. tokens are used to authorize API requests,\n@@ -42,4 +43,4 @@\n replaceInstagram = \"\"\n proxyVideos = true\n hlsPlayback = false\n-infiniteScroll = false\n+infiniteScroll = true\n$ vi ./nitter.conf\n$ exit\n$ sudo service nitter restart\n
${NITTER_URL}/about \u306e\u5143\u306b\u306a\u308b about.md \u3092\u7de8\u96c6nitter.conf \u3092\u78ba\u8a8d\u3057\u3066\u8a2d\u5b9a\u306e\u5897\u6e1b\u304c\u3042\u3063\u305f\u3089\u8ffd\u5f93\u3059\u308b\u4ee5\u524d\u306f\u306a\u304b\u3063\u305fabout.md\u306f\u3053\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306f\u8ab0\u304c\u7ba1\u7406\u3057\u3066\u3044\u307e\u3059\u3068\u66f8\u3044\u3066\u304a\u304f\u306e\u3082\u3044\u3044\u304b\u306a\u3068\u601d\u3044\u307e\u3059\uff0e
\n\u8a2d\u5b9a\u306eproxy\u3092\u4f7f\u3046\u3068\uff0cTwitter\u306b\u30a2\u30af\u30bb\u30b9\u5236\u9650\u3055\u308c\u305f\u3068\u304d\u306b\u7c21\u5358\u306b\u5207\u308a\u66ff\u3048\u308b\u3053\u3068\u304c\u3067\u304d\u305d\u3046\u3067\u3059\uff0e
$ git -C ~nitter/nitter log -1\ncommit 2dc91f8453ce904d1b07a933e8a1dc970d788c41 (HEAD -> master, origin/master, origin/HEAD)\nMerge: ecb6fe4 9b97ddc\nAuthor: Zed <zedeus@pm.me>\nDate: Thu Mar 10 16:46:14 2022 +0100\n\n Merge pull request #571 from jackyzy823/fix-listmember\n\n Fix list members not displaying\n$ w3m -dump http://localhost:8081/about | grep ^Version\\\nVersion 2022.03.10-2dc91f8\n$ nim -v\nNim Compiler Version 1.6.4 [Linux: amd64]\nCompiled at 2022-02-09\nCopyright (c) 2006-2021 by Andreas Rumpf\n\ngit hash: 7994556f3804c217035c44b453a3feec64405758\nactive boot switches: -d:release\n$ dpkg-query -W apache2 redis* libsass-dev certbot\napache2 2.4.38-3+deb10u7\ncertbot 0.31.0-1+deb10u1\nlibsass-dev:amd64 3.5.5-4\nredis-server 5:5.0.14-1+deb10u2\nredis-tools 5:5.0.14-1+deb10u2\n lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ arch\nx86_64\n
Nextcloud 21\u3067\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3&\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u8b66\u544a\u3092\u78ba\u8a8d\u3057\u3066\u4fee\u6b63\u3057\u307e\u3057\u305f\uff0e
\n\n
\u7ba1\u7406\u8005\u30a2\u30ab\u30a6\u30f3\u30c8\u3067\u300c\u8a2d\u5b9a\u300d\u2192\u300c\u7ba1\u7406\u300d\u306e\u300c\u6982\u8981\u300d\u304b\u3089\u300c\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\uff06\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u8b66\u544a\u300d\u3092\u78ba\u8a8d\u3057\u307e\u3059\uff0e
\n\u4eca\u56de\u306f1\u4ef6\u306e\u8b66\u544a\u304c\u3042\u308a\u307e\u3057\u305f\uff0e
\n\n\n\n\n\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u306b\u95a2\u3057\u3066\u8b66\u544a\u304c\u3044\u304f\u3064\u304b\u3042\u308a\u307e\u3059\u3002
\n
\n\u3054\u4f7f\u7528\u306e\u30b7\u30b9\u30c6\u30e0\u306b\u306f\u3001\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u96fb\u8a71\u5730\u57df\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002\u3053\u308c\u306f\u3001\u56fd\u30b3\u30fc\u30c9\u306a\u3057\u3067\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u8a2d\u5b9a\u306e\u96fb\u8a71\u756a\u53f7\u3092\u691c\u8a3c\u3059\u308b\u305f\u3081\u306b\u5fc5\u8981\u3067\u3059\u3002\u56fd\u30b3\u30fc\u30c9\u306a\u3057\u3067\u756a\u53f7\u3092\u8a31\u53ef\u3059\u308b\u306b\u306f\u3001\u5730\u57df\u306e\u305d\u308c\u305e\u308c\u306e ISO3166-1\u30b3\u30fc\u30c9\u3068\u3068\u3082\u306b “default_phone_region” \u3092\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306b\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002
\u65b0\u3057\u3044\u8a2d\u5b9a\u9805\u76ee\u304c\u5897\u3048\u305f\u3088\u3046\u3067\u3059\uff0e config.php \u306b\u96fb\u8a71\u5730\u57df\u306e\u8a2d\u5b9a( default_phone_region )\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u3088\u3046\u3067\u3059\uff0e
\u307e\u305a\u306f\uff0c\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3092\u53c2\u8003\u306b\u81ea\u5206\u306e\u8a2d\u5b9a\u3057\u305f\u3044\u5730\u57df\u306e\u5730\u57df\u30b3\u30fc\u30c9\u3092\u78ba\u8a8d\u3057\u307e\u3059\uff0e\u81ea\u5206\u306f\u30b8\u30db\u30f3\u306b\u8a2d\u5b9a\u3057\u305f\u3044\u306e\u3067\uff0cJapan\u306e\u3068\u3053\u308d\u3092\u898b\u307e\u3057\u305f\uff0e JP \u306e\u3088\u3046\u3067\u3059\uff0e
\n\n\n\nJP\tJapan\t1974\t.jp\tISO 3166-2:JP
\n
\u6b21\u306b\u4ee5\u4e0b\u306e\u6587\u7ae0\u3092\u53c2\u8003\u306b\uff0c${NEXTCLOUDPATH}/config/config.php \u306e $CONFIG = array \u306e\u4e2d\u306e\u9069\u5f53\u306a\u90e8\u5206\u306b 'default_phone_region' \u21d2 'JP', \u3092\u8ffd\u8a18\u3057\u307e\u3059\uff0e
\u518d\u5ea6\u300c\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\uff06\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u8b66\u544a\u300d\u3092\u518d\u8aad\u8fbc\u3057\u3066\u8b66\u544a\u304c\u6d88\u3048\u3066\u3044\u305f\u3089OK\u3067\u3059\uff0e
\n$ sudo -u www-data php ${NEXTCLOUDPATH}/occ --version\nNextcloud 21.0.3\n$ dpkg-query -W php apache2 mariadb-server\napache2 2.4.38-3+deb10u4\nmariadb-server 1:10.3.29-0+deb10u1\nphp 2:7.3+69\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ arch\nx86_64\nNextcloud 21.02\u304b\u308921.0.3\u306b\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3057\u307e\u3057\u305f\uff0e
\n\u3057\u304b\u3057\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u7d42\u4e86\u5f8c\u306b\u52d5\u4f5c\u3057\u306a\u304f\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3057\u305f\uff0e\u975e\u5bfe\u5fdc\u30a2\u30d7\u30ea\u304c\u3042\u3063\u305f\u305b\u3044\u3060\u3063\u305f\u306e\u3067\u305d\u308c\u3092\u7121\u52b9\u5316\u3057\u3066\u5fa9\u6d3b\u3057\u307e\u3057\u305f\uff0e
\n
\u3044\u3064\u3082\u306e\u3088\u3046\u306b occ \u30b3\u30de\u30f3\u30c9\u3067\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3092\u884c\u3044\u307e\u3057\u305f\uff0e
$ sudo -u www-data php ${NEXTCLOUDPATH}/updater/updater.phar\nNextcloud Updater - version: v20.0.0beta4-11-g68fa0d4\n\nCurrent version is 21.0.2.\n\nUpdate to Nextcloud 21.0.3 available. (channel: \"stable\")\nFollowing file will be downloaded automatically: https://download.nextcloud.com/server/releases/nextcloud-21.0.3.zip\nOpen changelog
\n\nSteps that will be executed:\n[ ] Check for expected files\n[ ] Check for write permissions\n[ ] Create backup\n[ ] Downloading\n[ ] Verify integrity\n[ ] Extracting\n[ ] Enable maintenance mode\n[ ] Replace entry points\n[ ] Delete old files\n[ ] Move new files in place\n[ ] Done\n\nStart update? [y/N] y\n\nInfo: Pressing Ctrl-C will finish the currently running step and then stops the updater.\n\n[
] Check for expected files\n[
] Check for write permissions\n[
] Create backup\n[
] Downloading\n[
] Verify integrity\n[
] Extracting\n[
] Enable maintenance mode\n[
] Replace entry points\n[
] Delete old files\n[
] Move new files in place\n[
] Done\n\nUpdate of code successful.\n\nShould the \"occ upgrade\" command be executed? [Y/n]\nNextcloud or one of the apps require upgrade - only a limited number of commands are available\nYou may use your browser or the occ upgrade command to do the upgrade\n\n : (1)\n\n2021-07-07T13:51:49+00:00 Starting code integrity check...\n2021-07-07T13:52:09+00:00 Finished code integrity check\n2021-07-07T13:52:09+00:00 Update successful\n2021-07-07T13:52:09+00:00 Maintenance mode is kept active\n2021-07-07T13:52:09+00:00 Resetting log level\n\nKeep maintenance mode active? [y/N]\nMaintenance mode disabled\n\nMaintenance mode is disabled\n\u3059\u308b\u3068Nextcloud\u304c\u52d5\u4f5c\u3057\u306a\u304f\u306a\u308a\u307e\u3057\u305f\uff0eocc\u30b3\u30de\u30f3\u30c9\u3082\u4f7f\u3048\u306a\u304f\u306a\u3063\u3066\u3044\u307e\u3059\uff0efiles_external_dropbox \u30a2\u30d7\u30ea\u304c\u602a\u3057\u305d\u3046\u306a\u306e\u3067\u3053\u308c\u3092\u7121\u52b9\u5316\u3057\u305f\u3044\u306e\u3067\u3059\u304c\uff0cocc\u30b3\u30de\u30f3\u30c9\u81ea\u4f53\u304c\u52d5\u304b\u306a\u304f\u306a\u3063\u3066\u3044\u308b\u3057Web\u3082\u52d5\u4f5c\u3057\u306a\u3044\u306e\u3067\u7121\u52b9\u5316\u3067\u304d\u307e\u305b\u3093\uff0e
$ sudo -u www-data php /var/www/files.matoken.org/occ app:disable files_external_dropbox\nAn unhandled exception has been thrown:\nError: Undefined class constant 'MAJOR_VERSION' in /var/www/files.matoken.org/3rdparty/guzzlehttp/guzzle/src/Utils.php:118\nStack trace:\n#0 /var/www/files.matoken.org/3rdparty/guzzlehttp/guzzle/src/functions.php(71): GuzzleHttp\\Utils::defaultUserAgent()\n#1 /var/www/files.matoken.org/apps/files_external_dropbox/vendor/guzzlehttp/guzzle/src/Client.php(194): GuzzleHttp\\default_user_agent()\n#2 /var/www/files.matoken.org/apps/files_external_dropbox/vendor/guzzlehttp/guzzle/src/Client.php(75): GuzzleHttp\\Client->configureDefaults(Array)\n#3 /var/www/files.matoken.org/lib/private/Http/Client/ClientService.php(62): GuzzleHttp\\Client->__construct()\n#4 /var/www/files.matoken.org/lib/private/OCS/DiscoveryService.php(55): OC\\Http\\Client\\ClientService->newClient()\n#5 /var/www/files.matoken.org/lib/private/Server.php(1264): OC\\OCS\\DiscoveryService->__construct(Object(OC\\Memcache\\Factory), Object(OC\\Http\\Client\\ClientService))\n#6 /var/www/files.matoken.org/lib/private/AppFramework/Utility/SimpleContainer.php(155): OC\\Server->OC\\{closure}(Object(OC\\Server))\n#7 /var/www/files.matoken.org/3rdparty/pimple/pimple/src/Pimple/Container.php(118): OC\\AppFramework\\Utility\\SimpleContainer->OC\\AppFramework\\Utility\\{closure}(Object(Pimple\\Container))\n#8 /var/www/files.matoken.org/lib/private/AppFramework/Utility/SimpleContainer.php(122): Pimple\\Container->offsetGet('OCP\\\\OCS\\\\IDiscov...')\n#9 /var/www/files.matoken.org/lib/private/ServerContainer.php(137): OC\\AppFramework\\Utility\\SimpleContainer->query('OCP\\\\OCS\\\\IDiscov...', false)\n#10 /var/www/files.matoken.org/lib/private/AppFramework/DependencyInjection/DIContainer.php(434): OC\\ServerContainer->query('OCP\\\\OCS\\\\IDiscov...', true)\n#11 /var/www/files.matoken.org/lib/private/AppFramework/Utility/SimpleContainer.php(87): OC\\AppFramework\\DependencyInjection\\DIContainer->query('OCP\\\\OCS\\\\IDiscov...', true)\n#12 [internal function]: OC\\AppFramework\\Utility\\SimpleContainer->OC\\AppFramework\\Utility\\{closure}(Object(ReflectionParameter))\n#13 /var/www/files.matoken.org/lib/private/AppFramework/Utility/SimpleContainer.php(101): array_map(Object(Closure), Array)\n#14 /var/www/files.matoken.org/lib/private/AppFramework/Utility/SimpleContainer.php(109): OC\\AppFramework\\Utility\\SimpleContainer->buildClass(Object(ReflectionClass))\n#15 /var/www/files.matoken.org/lib/private/AppFramework/Utility/SimpleContainer.php(126): OC\\AppFramework\\Utility\\SimpleContainer->resolve('OCA\\\\Federation\\\\...')\n#16 /var/www/files.matoken.org/lib/private/AppFramework/DependencyInjection/DIContainer.php(459): OC\\AppFramework\\Utility\\SimpleContainer->query('OCA\\\\Federation\\\\...')\n#17 /var/www/files.matoken.org/lib/private/AppFramework/DependencyInjection/DIContainer.php(431): OC\\AppFramework\\DependencyInjection\\DIContainer->queryNoFallback('OCA\\\\Federation\\\\...')\n#18 /var/www/files.matoken.org/lib/private/AppFramework/Utility/SimpleContainer.php(87): OC\\AppFramework\\DependencyInjection\\DIContainer->query('OCA\\\\Federation\\\\...', true)\n#19 [internal function]: OC\\AppFramework\\Utility\\SimpleContainer->OC\\AppFramework\\Utility\\{closure}(Object(ReflectionParameter))\n#20 /var/www/files.matoken.org/lib/private/AppFramework/Utility/SimpleContainer.php(101): array_map(Object(Closure), Array)\n#21 /var/www/files.matoken.org/lib/private/AppFramework/Utility/SimpleContainer.php(109): OC\\AppFramework\\Utility\\SimpleContainer->buildClass(Object(ReflectionClass))\n#22 /var/www/files.matoken.org/lib/private/AppFramework/Utility/SimpleContainer.php(126): OC\\AppFramework\\Utility\\SimpleContainer->resolve('OCA\\\\Federation\\\\...')\n#23 /var/www/files.matoken.org/lib/private/AppFramework/DependencyInjection/DIContainer.php(459): OC\\AppFramework\\Utility\\SimpleContainer->query('OCA\\\\Federation\\\\...')\n#24 /var/www/files.matoken.org/lib/private/ServerContainer.php(146): OC\\AppFramework\\DependencyInjection\\DIContainer->queryNoFallback('OCA\\\\Federation\\\\...')\n#25 /var/www/files.matoken.org/lib/private/Console/Application.php(221): OC\\ServerContainer->query('OCA\\\\Federation\\\\...')\n#26 /var/www/files.matoken.org/lib/private/Console/Application.php(136): OC\\Console\\Application->loadCommandsFromInfoXml(Array)\n#27 /var/www/files.matoken.org/console.php(99): OC\\Console\\Application->loadCommands(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))\n#28 /var/www/files.matoken.org/occ(11): require_once('/var/www/files....')\n\u3068\u3044\u3046\u3053\u3068\u3067\uff0c\u4e71\u66b4\u3067\u3059\u304c files_external_dropbox \u3092\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3054\u3068\u9000\u907f\u3057\u307e\u3057\u305f\uff0e
$ sudo mv ${NEXTCLOUDPATH}apps/files_external_dropbox ~/tmp/\nocc\u30b3\u30de\u30f3\u30c9\u3082Web\u3082\u52d5\u4f5c\u3059\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\uff0e
\n\u4eca\u56de\u81ea\u52d5\u7684\u306b\u7121\u52b9\u306b\u306a\u3089\u306a\u304b\u3063\u305f\u539f\u56e0\u306f\u8abf\u3079\u3066\u3044\u307e\u305b\u3093\u304c\uff0cconfig.php \u306b\u4eca\u56de\u306e\u30a2\u30d7\u30ea\u306e\u8a18\u8ff0\u304c\u3042\u3063\u305f\u306e\u3067\u305d\u306e\u305b\u3044\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e
\n$ sudo -u www-data php ${NEXTCLOUDPATH}/occ --version\nNextcloud 21.0.3\n$ sudo -u www-data php ${NEXTCLOUDPATH}/occ --version\nNextcloud 21.0.3\n$ dpkg-query -W php apache2 mariadb-server\napache2 2.4.38-3+deb10u4\nmariadb-server 1:10.3.29-0+deb10u1\nphp 2:7.3+69\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ arch\nx86_64\n\u4ee5\u524d\u8efd\u91cfTwitter\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3\u30c9\u306eNitter \u3092\u30bb\u30eb\u30d5\u30db\u30b9\u30c8\u3057\u307e\u3057\u305f\uff0e
\n\u6700\u8fd1\u30a2\u30af\u30bb\u30b9\u304c\u5897\u3048\u3066\u3044\u3066\u5c11\u3057\u30b5\u30fc\u30d0\u304c\u91cd\u304f\u306a\u3063\u305f\u308a\u81ea\u5206\u304c\u4f7f\u3046\u3068\u304d\u306b\u8abf\u5b50\u304c\u60aa\u304b\u3063\u305f\u308a\u3057\u3066\u3044\u307e\u3059\uff0e\u30af\u30ed\u30fc\u30e9\u306a\u3093\u304b\u304c\u591a\u3044\u3088\u3046\u306a\u306e\u3067\u3053\u308c\u3092 robots.txt \u3067\u62d2\u5426\u3059\u308b\u3068\u5927\u5206\u30a2\u30af\u30bb\u30b9\u304c\u6e1b\u308b\u306e\u3067\u306f\u3068\u601d\u3044\u8a2d\u5b9a\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\n
\u307e\u305a\u306f\u9069\u5f53\u306a robots.txt \u3092 Nitter \u306e Root \u306b\u7f6e\u3044\u3066\u307f\u307e\u3057\u305f\u304c\uff0c\u5bfe\u5fdc\u3057\u3066\u3044\u306a\u3044\u3088\u3046\u3067\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u305b\u3093\uff0e
\nNitter \u306e\u524d\u6bb5\u306b\u7f6e\u3044\u3066\u3042\u308b Apache2 httpd \u3067Alias \u3092\u8a2d\u5b9a\u3059\u308c\u3070\u3068\u601d\u3063\u3066Apache httpd \u306eNitter \u306e\u8a2d\u5b9a\u306e VirtualHost \u306e\u4e2d\u306b\u4ee5\u4e0b\u306e\u8a2d\u5b9a\u3092\u8ffd\u52a0\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
Alias /robots.txt /home/nitter/robots.txt\n <Location \"/robots.txt\">\n Require all granted\n </Location>\n\u8ffd\u52a0\u3057\u305f\u3042\u3068\u8a2d\u5b9a\u3092\u78ba\u8a8d\u3057\u3066\u8a2d\u5b9a\u3092\u518d\u8aad\u8fbc\u3057\u307e\u3059\uff0e
\n$ sudo a2ensite nitter.matoken.org.conf\n$ sudo apache2ctl configtest\n$ sudo systemctl reload apache2\n\u3057\u304b\u3057\u3053\u306e\u72b6\u614b\u3067 /robots.txt \u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068http \u30b9\u30c6\u30fc\u30bf\u30b9\u30b3\u30fc\u30c9 404 \u304c\u5e30\u3063\u3066\u304d\u3066\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u305b\u3093\uff0eProxy \u306e\u65b9\u304c\u512a\u5148\u306e\u3088\u3046\u3067\u3059\uff0e
\u691c\u7d22\u3057\u3066\u307f\u308b\u3068\u4ee5\u4e0b\u306epage\u3092\u898b\u3064\u3051\u307e\u3057\u305f\uff0e ProxyPass \u3067 ! \u3092\u6307\u5b9a\u3057\u3066\u6307\u5b9a\u3057\u305fURL\u3092Proxy \u3067\u7121\u8996\u3059\u308b\u3088\u3046\u306b\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e
\u3068\u3044\u3046\u3053\u3068\u3067\u3053\u306e\u3088\u3046\u306b\u8a2d\u5b9a\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\n Alias /robots.txt /home/nitter/robots.txt\n <Location \"/robots.txt\">\n ProxyPass !\n Require all granted\n </Location>\n\u518d\u5ea6\u8a2d\u5b9a\u30c1\u30a7\u30c3\u30af\u3057\u3066\u518d\u8aad\u8fbc\u3059\u308b\u3068\u52d5\u4f5c\u3057\u307e\u3057\u305f :)
\n$ w3m -dump_head https://nitter.matoken.org/robots.txt\nHTTP/1.1 200 OK\nDate: Sun, 30 May 2021 15:26:17 GMT\nServer: Apache/2.4.38 (Debian) OpenSSL/1.1.1d\nLast-Modified: Mon, 12 Apr 2021 23:19:53 GMT\nETag: \"32c8-5bfcec03dd840-gzip\"\nAccept-Ranges: bytes\nVary: Accept-Encoding\nContent-Encoding: gzip\nContent-Length: 2938\nConnection: close\nContent-Type: text/plain\n1\u65e5\u307b\u3069\u5f85\u3063\u3066\u304b\u3089\u30a2\u30af\u30bb\u30b9\u306e\u5909\u5316\u3092\u898b\u3066\u307f\u3088\u3046\u3068\u601d\u3044\u307e\u3059\uff0e
\n$ dpkg-query -W apache2\napache2 2.4.38-3+deb10u4\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ arch\nx86_64\n
\u30da\u30fc\u30b8\u304c\u9577\u304f\u306a\u3063\u305f\u308a\uff0c\u753b\u50cf\u3092\u591a\u7528\u3059\u308b\u3068WordPress\u306e\u30c8\u30c3\u30d7\u30da\u30fc\u30b8\u304c\u91cd\u304f\u306a\u308a\u307e\u3059\uff0e
\n\u78ba\u304b\u4ee5\u524d\u306f\u7de8\u96c6\u753b\u9762\u306b\u5206\u5272\u3059\u308b\u6a5f\u80fd\u304c\u5408\u3063\u305f\u306f\u305a\u3068\u601d\u3063\u305f\u306e\u3067\u3059\u304c\u898b\u5f53\u305f\u308a\u307e\u305b\u3093\uff0e\u6050\u3089\u304f\u7de8\u96c6\u753b\u9762\u3092\u5909\u66f4\u3059\u308c\u3070\u3067\u3066\u304f\u308b\u3068\u601d\u3044\u307e\u3059\u304c\u3088\u304f\u308f\u304b\u308a\u307e\u305b\u3093\uff0e\u5c11\u3057\u8abf\u3079\u3066\u307f\u307e\u3057\u305f\uff0e
\n
\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3092\u898b\u308b\u3068\uff0c <!--more-\u2192 \u3092\u66f8\u304f\u3068\u305d\u3053\u304b\u3089\u4e0b\u306f\u300c\u7d9a\u304d\u3092\u8aad\u3080\u300d\u3092\u62bc\u3059\u304b\uff0c\u500b\u5225\u30da\u30fc\u30b8\u306b\u884c\u304b\u306a\u3044\u3068\u8868\u793a\u3055\u308c\u306a\u304f\u306a\u308b\u3088\u3046\u3067\u3059\uff0e\u2191\u306e \u300c\u7d9a\u304d\u3092\u8aad\u3080\u300d\u3067\u30c8\u30c3\u30d7\u30da\u30fc\u30b8\u304b\u3089\u96a0\u3059 \u306e\u4e0a\u3067\u5206\u5272\u3057\u3066\u3044\u307e\u3059\uff0e
\u30ea\u30f3\u30af\u306e\u6587\u5b57\u5217\u306f\u65e2\u5b9a\u5024\u3067\u306f\u300c\u7d9a\u304d\u3092\u8aad\u3080\u300d\u3067\u3059\u304c\uff0c <!--more \u4efb\u610f\u306e\u30c6\u30ad\u30b9\u30c8-\u2192 \u306e\u3088\u3046\u306b\u3057\u3066\u4efb\u610f\u306e\u6587\u5b57\u5217\u306b\u5909\u66f4\u3059\u308b\u3053\u3068\u3082\u51fa\u6765\u308b\u3088\u3046\u3067\u3059\uff0e
\u3053\u308c\u306f\u81ea\u5206\u3067\u306f\u3042\u307e\u308a\u4f7f\u3046\u6a5f\u4f1a\u304c\u306a\u3044\u304b\u306a\u3068\u601d\u3063\u3066\u3044\u307e\u3059\u304c\uff0c\u30da\u30fc\u30b8\u5206\u5272\u3082\u51fa\u6765\u308b\u3088\u3046\u3067\u3059\uff0e
\n\u30da\u30fc\u30b8\u5185\u306b <!\u2010\u2010nextpage\u2010\u2010> \u3092\u631f\u3080\u3068\u305d\u3053\u3067\u30da\u30fc\u30b8\u304c\u5206\u5272\u3067\u3055\u308c\u308b\u3088\u3046\u3067\u3059\uff0e
\n\u8907\u6570\u631f\u3080\u3068\u305d\u306e\u90fd\u5ea6\u30da\u30fc\u30b8\u5206\u5272\u3055\u308c\u307e\u3059\uff0e
AutoPagerize\u306e\u51fa\u756a\u3067\u3059??
\n\u3061\u306a\u307f\u306b\u30da\u30fc\u30b8\u5206\u3051\u3057\u305f\u30a8\u30f3\u30c8\u30ea\u30fc\u30921\u30da\u30fc\u30b8\u3067\u8aad\u3080\u3053\u3068\u304c\u51fa\u6765\u308b\u30ea\u30f3\u30af\u3068\u30da\u30fc\u30b8\u3092\u4f5c\u3063\u3066\u304f\u308c\u308b\u30d7\u30e9\u30b0\u30a4\u30f3\u3082\u3042\u308b\u3088\u3046\u3067\u3059\uff0e(\u52d5\u4f5c\u672a\u78ba\u8a8d)
\n$ dpkg-query -W wordpress*\nwordpress 5.0.11+dfsg1-0+deb10u1\nwordpress-l10n 5.0.11+dfsg1-0+deb10u1\nwordpress-shibboleth 1.8-1\nwordpress-theme-twentynineteen 5.0.11+dfsg1-0+deb10u1\nwordpress-xrds-simple 1.2-1\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ arch\nx86_64\n\u4ee5\u4e0b\u306e\u8a18\u4e8b\u3067DavCal\u3084Google\u30ab\u30ec\u30f3\u30c0\u30fc\u3092\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u3067\u95b2\u89a7\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\uff0e
\n\u305b\u3063\u304b\u304f\u306a\u306e\u3067Discord\u306b\u3082\u6bce\u671d\u305d\u306e\u65e5\u306e\u30a4\u30d9\u30f3\u30c8\u3092\u6295\u7a3f\u3059\u308b\u3088\u3046\u306b\u3057\u3066\u307f\u307e\u3059\uff0e
\nDiscord\u306fWebhooks\u3092\u4f7f\u3063\u3066\u304b\u3093\u305f\u3093\u306b\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u6295\u7a3f\u3059\u308b\u3053\u3068\u304c\u51fa\u6765\u307e\u3059\uff0e
\n\u6295\u7a3f\u3057\u305f\u3044\u30c1\u30e3\u30f3\u30cd\u30eb\u306e
\u30a2\u30a4\u30b3\u30f3\u300c\u30c1\u30e3\u30f3\u30cd\u30eb\u306e\u7de8\u96c6\u300d\u304b\u3089\u300c\u9023\u643a\u30b5\u30fc\u30d3\u30b9\u300d\u2192\u300c\u30a6\u30a7\u30d6\u30d5\u30c3\u30af\u300d\u304b\u3089\u64cd\u4f5c\u3067\u304d\u307e\u3059\uff0e
\n\u65b0\u3057\u3044\u30a6\u30a7\u30d6\u30d5\u30c3\u30af\u3092\u4f5c\u6210\u3057\uff0c\u6295\u7a3f\u30c1\u30e3\u30f3\u30cd\u30eb\u3092\u78ba\u8a8d\u3057\u3066\u300c\u30a6\u30a7\u30d6\u30d5\u30c3\u30afURL\u3092\u30b3\u30d4\u30fc\u300d\u3067Webhooks URL\u3092\u5165\u624b\u3057\u307e\u3059\uff0e
Webhooks URL\u306f\u3053\u3093\u306a\u611f\u3058\u306e\u3082\u306e\u3067\u3059\uff0e
\nhttps://ptb.discord.com/api/webhooks/826777625053495306/QZoG2LLZOFlsKO_Auf1IQcXHVFozlgU37EGO9bhQKAifzZ0VAkyIYuQjRSzuOvC7U1gR
curl\u3067\u6295\u7a3f\u30c6\u30b9\u30c8\u3092\u3057\u3066\u307f\u307e\u3059\uff0e
\n$ curl -X POST -H \"Content-Type: application/json\" \\\n -d '{\"username\": \"\u30dc\u30c3\u30c8\", \"content\": \"\u3053\u3093\u306b\u3061\u306f
\"}' \\\n 'https://ptb.discord.com/api/webhooks/826777625053495306/QZoG2LLZOFlsKO_Auf1IQcXHVFozlgU37EGO9bhQKAifzZ0VAkyIYuQjRSzuOvC7U1gR'\n\u3053\u308c\u3067\u6295\u7a3f\u3067\u304d\u307e\u3057\u305f :)
\nDiscord\u306b\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u6295\u7a3f\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u306e\u3067\uff0c\u4ee5\u4e0b\u306e\u30a8\u30f3\u30c8\u30ea\u3067\u66f8\u3044\u305f khal \u30b3\u30de\u30f3\u30c9\u3067\u4eca\u65e51\u65e5\u5206\u306e\u4e88\u5b9a\u30bf\u30a4\u30c8\u30eb\u3092\u5165\u624b\u3057\u3066Discord\u306b\u6295\u7a3f\u3059\u308b\u3088\u3046\u306b\u3057\u3066\u307f\u307e\u3059\uff0e
\n\u4ee5\u4e0b\u306e\u9069\u5f53\u306aScript\u3092\u7528\u610f\u3057\u307e\u3057\u305f\uff0e
\n\n\n2021-04-01 \u7de8\u96c6)
\n\u30a4\u30d9\u30f3\u30c8\u304c\u306a\u3044\u65e5\u306b\u3082\u6295\u7a3f\u3057\u3066\u3057\u307e\u3063\u3066\u3044\u305f\u306e\u3092\u4fee\u6b63&Bashism\u3060\u3063\u305f\u306e\u3092sh\u3067\u52d5\u304f\u3088\u3046\u4fee\u6b63
#!/bin/sh\n# khal\u30b3\u30de\u30f3\u30c9\u3067\u4eca\u65e5\u306e\u4e88\u5b9a\u3092\u5165\u624b\u3057\u3066Discord\u306bpost\u3059\u308b\n# https://matoken.org/blog/2021/03/31/post-your-calendar-to-discord-with-webhooks/\n\n# Discord\u306eWebhook URL\n# \u4ee5\u4e0b\u306eURL\u3092\u53c2\u8003\u306b\u5165\u624b\u3057\u3066\u8a2d\u5b9a\u3059\u308b\n# https://support.discord.com/hc/ja/articles/228383668-%E3%82%BF%E3%82%A4%E3%83%88%E3%83%AB-Webhooks%E3%81%B8%E3%81%AE%E5%BA%8F%E7%AB%A0\nDISCORD_WEBHOOK='https://ptb.discord.com/api/webhooks/\u2026\u2026\u2026\u2026'\n\n# khal\n# list -> \u4e00\u89a7\u8868\u793a\n# --format \"{title}\" -> \u30bf\u30a4\u30c8\u30eb\u3060\u3051\u8868\u793a\n# today -> \u4eca\u65e5\u304b\u3089\n# today -> \u4eca\u65e5\u307e\u3067\n# sed -> json\u306e\u6539\u884c\u5f62\u5f0f\u306b\u5909\u63db\nCAL=$(khal list --format \"{title}\" today today | sed -z -e \"s/\\n/\\\\\\\\\\\\\\\\n/g\")\n\n# \u30a4\u30d9\u30f3\u30c8\u306e\u306a\u3044\u65e5\u306f\u6295\u7a3f\u305b\u305a\u7d42\u4e86\nif [ \"${CAL}\" = 'No events\\\\n' ]\nthen\n echo \"${CAL}\"\n exit\nfi\n\nMSG=$(printf '{\"username\": \"\u4eca\u65e5\u306e\u30a4\u30d9\u30f3\u30c8
\", \"content\": \"%s\"}\\n' \"${CAL}\")\necho \"$MSG\"\n\n# Discord WebHock \u3067Kagolug \u306e#random \u3078post\ncurl -X POST -H \"Content-Type: application/json\" \\\n\t-d \"${MSG}\" \\\n\t\"${DISCORD_WEBHOOK}\"\n\u8a66\u3057\u306b\u5b9f\u884c\u3059\u308b\u3068\u6295\u7a3f\u3055\u308c\u307e\u3057\u305f\uff0e
\n\u624b\u52d5\u3067\u53e9\u304f\u306e\u306f\u9762\u5012\u3059\u304e\u308b\u306e\u3067\u81ea\u52d5\u5b9f\u884c\u3059\u308b\u3088\u3046\u306bcrontab\u306b\u767b\u9332\u3057\u3066\u304a\u304d\u307e\u3059\uff0e
\n$ crontab -l | grep calpost\n58 4 * * * /home/matoken/bin/calpost.sh 2>&1 > /home/matoken/tmp/cron/calpost.sh.log\n\u6bce\u65e504:58\u306b\u5b9f\u884c\u3059\u308b\u3088\u3046\u306b\u3057\u307e\u3057\u305f\uff0e
\n$ dpkg-query -W vdirsyncer khal curl bash\nbash 5.0-4\ncurl 7.64.0-4+deb10u1\nkhal 1:0.9.10-1.1\nvdirsyncer 0.16.7-2\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\n
\u4f55\u3089\u304b\u306e\u65e5\u7a0b\u3092\u6c7a\u3081\u308b\u3068\u304d\u306b\u672a\u6765\u306e\u65e5\u7a0b\u3092\u898b\u306a\u304c\u3089\u6c7a\u3081\u305f\u3044\u3053\u3068\u304c\u3042\u308a\u307e\u3059\uff0e
\nWeb\u30d9\u30fc\u30b9\u3067\u3044\u3044\u304b\u3068\u601d\u3063\u305f\u306e\u3067\u3059\u304c\uff0c\u7279\u306b\u4f4e\u89e3\u50cf\u5ea6\u3060\u3068\u30bf\u30a4\u30c8\u30eb\u306e\u4e00\u90e8\u3057\u304b\u8868\u793a\u3055\u308c\u305a\u3088\u304f\u308f\u304b\u308a\u307e\u305b\u3093\uff0e\u30b3\u30d4\u30fc\u30da\u30fc\u30b9\u30c8\u3057\u3066EtherPad\u306a\u3069\u306b\u8cbc\u308b\u3068\u3044\u3044\u3067\u3059\u304c\u6642\u9593\u304c\u304b\u304b\u308b\u3057\u9762\u5012\u3067\u3059\uff0e
\nDavCal\u306a\u3069\u306e\u60c5\u5831\u3092\u7bc4\u56f2\u6307\u5b9a\u3057\u3066\u8868\u793a\u51fa\u6765\u308b\u3068\u4fbf\u5229\u305d\u3046\u3060\u306a\u3068\u601d\u3044\u307e\u3057\u305f\uff0e
\u306f\u3058\u3081\u306f\u30b3\u30de\u30f3\u30c9\u3092\u53e9\u3044\u3066\u7bc4\u56f2\u6307\u5b9a\u3057\u3066\u8868\u793a\u3059\u308b\u3088\u3046\u306a\u3082\u306e\u304c\u306a\u3044\u304b\u3068\u601d\u3063\u305f\u306e\u3067\u3059\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\u5c11\u3057\u9762\u5012\u3067\u3059\u304c\uff0c vdirsyncer \u3067\u30ea\u30e2\u30fc\u30c8\u306e\u30ab\u30ec\u30f3\u30c0\u30fc\u3092\u30ed\u30fc\u30ab\u30eb\u306b\u30b3\u30d4\u30fc\u3057\u3066 khal \u30b3\u30de\u30f3\u30c9\u3067\u8868\u793a\u3059\u308b\u3088\u3046\u306b\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
Vdirsyncer \u306f\u30ab\u30ec\u30f3\u30c0\u30fc\u3068\u30b3\u30f3\u30bf\u30af\u30c8\u3092\u30ed\u30fc\u30ab\u30eb\u3068\u540c\u671f\u3067\u304d\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3067\u3059\uff0e\u3053\u308c\u3067\u30ea\u30e2\u30fc\u30c8\u306eDavCal \u306e\u60c5\u5831\u3092\u30ed\u30fc\u30ab\u30eb\u306b\u540c\u671f\u3057\u307e\u3059\uff0e
\n$ sudo apt install vdirsyncer (1)\n$ mkdir ~/.config/vdirsyncer\n$ vi ~/.config/vdirsyncer/config (2)\n$ cat ~/.config/vdirsyncer/config\n[general]\nstatus_path = \"~/.vdirsyncer/status/\"\n\n[pair my_calendars]\na = \"my_calendars_local\"\nb = \"my_calendars_remote\"\ncollections = null\nmetadata = [\"color\"]\n\n[storage my_calendars_local]\ntype = \"filesystem\"\npath = \"~/.calendars/\"\nfileext = \".ics\"\n\n[storage my_calendars_remote]\ntype = \"caldav\"\nurl = \"https://files.matoken.org/remote.php/dav/public-calendars/YW5gc6gMG8tC63AH?export\"\n\u3053\u308c\u3067\u3068\u308a\u3042\u3048\u305a Vdirsyncer \u3092\u5c0e\u5165\u3057\u3066\uff0c\u30ea\u30e2\u30fc\u30c8\u306e CalDav \u5f62\u5f0f\u306e\u30ab\u30ec\u30f3\u30c0\u30fc\u3092\u30ed\u30fc\u30ab\u30eb\u306e\u30b9\u30c8\u30ec\u30fc\u30b8\u306b\u540c\u671f\u3067\u304d\u307e\u3059\uff0e
\n\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306f\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3092\u53c2\u8003\u306b\u3057\u307e\u3057\u305f\uff0e\u76f8\u4e92\u540c\u671f\u306f\u305b\u305a\uff0c\u30ea\u30e2\u30fc\u30c8\u306e\u30c7\u30fc\u30bf\u3092\u30ed\u30fc\u30ab\u30eb\u306b\u540c\u671f\u3059\u308b\u3060\u3051\u306e\u52d5\u4f5c\u306e\u3064\u3082\u308a\u3067\u3059\uff0e
$ vdirsyncer discover my_calendars (1)\nDiscovering collections for pair my_calendars\nmy_calendars_local:\nmy_calendars_remote:\n - \"YW5gc6gMG8tC63AH\" (\"onlin_event (matoken)\")\nwarning: No collection \"YW5gc6gMG8tC63AH\" found for storage my_calendars_local.\nShould vdirsyncer attempt to create it? [y/N]: y\nSaved for my_calendars: collections = [\"YW5gc6gMG8tC63AH\"]\n$ vdirsyncer sync (2)\nSyncing my_calendars/YW5gc6gMG8tC63AH\nCopying (uploading) item 05f764a4-8c30-46ed-a0fe-62c67d3975a8 to my_calendars_local/YW5gc6gMG8tC63AH\nCopying (uploading) item 1acc3691-a12b-4534-a4e2-6ee6213ecff1 to my_calendars_local/YW5gc6gMG8tC63AH\nCopying (uploading) item 202e727b-0431-40b5-8008-9ada1269c7c8 to my_calendars_local/YW5gc6gMG8tC63AH\nCopying (uploading) item 2312a403-b2e6-4716-9c6f-45aa94519654 to my_calendars_local/YW5gc6gMG8tC63AH\n :\n$ ls ~/.calendars/YW5gc6gMG8tC63AH/ | head (3)\n05f764a4-8c30-46ed-a0fe-62c67d3975a8.ics\n1acc3691-a12b-4534-a4e2-6ee6213ecff1.ics\n202e727b-0431-40b5-8008-9ada1269c7c8.ics\n2312a403-b2e6-4716-9c6f-45aa94519654.ics\n263c2df9-ad9b-40d5-a946-614af7bc10ae.ics\n29cbecc8-0b88-41da-b7d0-0c71062eb6b4.ics\n2c66d40f-f5bd-4a67-bfb9-9bbb0258a966.ics\n2e81f5bd-1aad-435a-bfa4-4a3ebe75e489.ics\n30d41952-4dc3-4f10-bb6d-3311593f1d25.ics\n3335be8d-9dd6-4b5e-81e9-a292d56fa17e.ics\n\u30ab\u30ec\u30f3\u30c0\u30fc\u304c\u30ed\u30fc\u30ab\u30eb\u306b\u540c\u671f\u3055\u308c\u307e\u3057\u305f :)
\nvdirsyncer sync \u306f\u5b9a\u671f\u7684\u306b\u5b9f\u884c\u3057\u3066\u540c\u671f\u3059\u308b\u3088\u3046\u306b\u3057\u307e\u3059\uff0e
$ crontab -l | grep 'vdirsyncer sync'\n4 4 * * * chronic vdirsyncer sync\ncrontab \u306b\u8a2d\u5b9a\u3057\u3066\uff11\u65e5\uff11\u56de\u540c\u671f\u3059\u308b\u3088\u3046\u306b\u3057\u307e\u3057\u305f\uff0e
\nchronic \u3092\u631f\u3093\u3067\u3044\u307e\u3059\u304c\uff0c\u3053\u308c\u306fmoreutils \u306e\u30b3\u30de\u30f3\u30c9\u306e\uff11\u3064\u3067\uff0c\u6b63\u5e38\u7d42\u4e86\u6642\u306b\u306f\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u51fa\u529b\u3057\u306a\u3044\u3068\u3044\u3046\u3082\u306e\u3067\u3059\uff0e\u30a8\u30e9\u30fc\u6642\u3060\u3051\u30e1\u30fc\u30eb\u304c\u98db\u3076\u306f\u305a\uff0e
\u30ab\u30ec\u30f3\u30c0\u30fc\u306e\u540c\u671f\u306f\u51fa\u6765\u307e\u3057\u305f\u304c\uff0cics\u30d5\u30a1\u30a4\u30eb\u304c\u3042\u308b\u3060\u3051\u306a\u306e\u3067\u95b2\u89a7\u304c\u4e0d\u4fbf\u3067\u3059\uff0e\u95b2\u89a7\u3059\u308b\u305f\u3081\u306b khal \u30b3\u30de\u30f3\u30c9\u3092\u5229\u7528\u3057\u307e\u3059\uff0e
$ sudo sudo apt install khal\n$ mkdir ~/.config/khal\n$ vi ~/.config/khal/config\n$ cat ~/.config/khal/config\n[calendars]\n [[event]]\n\n path = ~/.calendars/YW5gc6gMG8tC63AH/\n readonly = True\n\n[locale]\ntimeformat = %H:%M\ndateformat = %Y-%m-%d\nlongdateformat = %Y-%m-%d\ndatetimeformat = %Y-%m-%d %H:%M\nlongdatetimeformat = %Y-%m-%d %H:%M\nkhal\u3092\u5c0e\u5165\u3057\u3066\u8a2d\u5b9a\u3092\u66f8\u3044\u3066\u307f\u307e\u3057\u305f\uff0epath\u306f Vdirsyncer \u3067\u540c\u671f\u3055\u308c\u305f\u5834\u6240\u3092\u6307\u5b9a\u3057\u307e\u3059\uff0e
\n\u3053\u306e\u72b6\u614b\u3067khal\u3092\u53e9\u304f\u3068\u3053\u3093\u306a\u611f\u3058\u3067\u8868\u793a\u3055\u308c\u307e\u3057\u305f\uff0e
$ khal\n Mo Tu We Th Fr Sa Su Tomorrow, 2021-03-31\nMar 1 2 3 4 5 6 7 20:00-21:30 TechLION vol.37 \u301cTechLION\u51fa\u6f14\u8005\u306b\u805e\u304f\u3001\u3053\u306e1\u5e74\u3068\u3053\u306e10\u5e74\u3002\u305d\u3057\u3066\u672a\u6765\u301c :: # \u8996\u8074\u65b9\u6cd5 \u672c\u30a4\u30d9\u30f3\u30c8\u306fYouTube\u306b\u3066\u914d\u4fe1\u3057\u307e\u3059 \u8996\u8074URL\u306f\u6c7a\u307e\u308a\u6b21\u7b2c\u63b2\u8f09\u3057\u307e\u3059 #\n 8 9 10 11 12 13 14 \u30d7\u30ed\u30b0\u30e9\u30e0 2011\u5e743\u6708\u306b\u65d7\u63da\u3052\u3057\u305fTechLION\u304c10\u5468\u5e74\u3092\u8fce\u3048\u308b\u306b\u3042\u305f\u308a\u3001\u8a18\u5ff5\u8a66\u5408\u3092\u30aa\u30f3\u30e9\u30a4\u30f3\u30a4\u30d9\u30f3\u30c8\u3068\u3057\u3066\u884c\u3044\u307e\u3059\u3002 \u30c8\n\u30fc\u30af\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u3001\u3053\u308c\u307e\u3067TechLION\u306b\u51fa\u6f14\u3057\u3066\u304f\u3060\u3055\u3063\u305f\u7686\u3055\u3093\u306b\u3001IT\u696d\u754c\u306e\u6700\u8fd1\u306e\u72b6\u6cc1\u3001\n 15 16 17 18 19 20 21 10\u5e74\u9593\u306e\u5909\u5316\u3001\u4eca\u5f8c\u306e\u4e88\u60f3\u306a\u3069\u3092\u304a\u805e\u304d\u3057\u307e\u3059\u3002\u4e8b\u524d\u306b\u5b9f\u65bd\u3057\u305f\u30a2\u30f3\u30b1\u30fc\u30c8\u7d50\u679c\u3092\u898b\u306a\u304c\u3089MC\u306e2\u540d\u304c\u9032\u884c\u3057\u307e\u3059\u304c\u3001\u56de\u7b54\u306b\u3088\u3063\n\u3066\u306f\u51fa\u6f14\u8005\u306e\u65b9\u3082\u30c8\u30fc\u30af\u306b\u3054\u53c2\u52a0\u3044\u305f\u3060\u304d\u307e\u3059\u3002\n 22 23 24 25 26 27 28 TechLION\u65d7\u63da\u3052\u8a18\u5ff5\u65e5\u3067\u3082\u3042\u308b3\u670831\u65e5\u306e\u591c\u3001\u304a\u9152\u3092\u7247\u624b\u306b\u304a\u697d\u3057\u307f\u304f\u3060\u3055\u3044\uff01 * \u51fa\u6f14\uff1a\u3053\u308c\u307e\u3067\u306eTechLION\u306b\u3054\u51fa\u6f14\u306e\u7686\u3055\n\u3093 * MC\uff1a\u6cd5\u6797\u6d69\u4e4b\u3001\u99ae\u5bcc\u4e45 # \u958b\u50ac\u6982\u8981 * \u540d\u79f0\uff1aTechLION\nApr 29 30 31 1 2 3 4 vol.37 \u301cTechLION\u51fa\u6f14\u8005\u306b\u805e\u304f\u3001\u3053\u306e1\u5e74\u3068\u3053\u306e10\u5e74\u3002\u305d\u3057\u3066\u672a\u6765\u301c * \u4e3b\u50ac\uff1a\u30c1\u30fc\u30e0TechLION * \u5354\u8cdb\uff1aUSP\u7814\u7a76\u6240\u3001\u6280\u8853\u8a55\n\u8ad6\u793e * \u5f8c\u63f4\uff1a\u65e5\u672cUNIX\u30e6\u30fc\u30b6\u4f1a *\n 5 6 7 8 9 10 11 \u65e5\u6642\uff1a2021\u5e743\u670831\u65e5(\u6c34) 20:00\u958b\u6f14\u300121:30\u7d42\u4e86\u4e88\u5b9a * \u5834\u6240\uff1a\u30aa\u30f3\u30e9\u30a4\u30f3 (YouTube\u306b\u3066\u914d\u4fe1) * \u6599\u91d1\uff1a\u7121\u6599 * \u516c\u5f0f\u30bf\u30b0\n\uff1atechlion * \u554f\u3044\u5408\u308f\u305b\u5148\uff1a\u30c1\u30fc\u30e0TechLION\n 12 13 14 15 16 17 18 (E-mail\uff1astaff[at]techlion.jp) # \u30a4\u30d9\u30f3\u30c8\u8a73\u7d30 https://techlion.jp/vol37\n 19 20 21 22 23 24 25 https://techlion.connpass.com/event/205623/\nMay 26 27 28 29 30 1 2\n 3 4 5 6 7 8 9\n 10 11 12 13 14 15 16\n 17 18 19 20 21 22 23\n 24 25 26 27 28 29 30\nJun 31 1 2 3 4 5 6\n
ikhal\u30b3\u30de\u30f3\u30c9\u3092\u4f7f\u3046\u3068\u30c0\u30f3\u30d7\u3067\u306f\u306a\u304f\uff0ctui\u306ehal\u304c\u8d77\u52d5\u3057\u3066\u30a4\u30f3\u30bf\u30e9\u30af\u30c6\u30a3\u30d6\u306b\u64cd\u4f5c\u3067\u304d\u307e\u3059\uff0e
\n\u3061\u3087\u3063\u3068\u5197\u9577\u306a\u306e\u3067 --format \"title}\" \u3067\u30bf\u30a4\u30c8\u30eb\u3060\u3051\u8868\u793a\u3059\u308b\u3088\u3046\u306b\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
$ khal list --format \"{title}\"\nTomorrow, 2021-03-31\nTechLION vol.37 \u301cTechLION\u51fa\u6f14\u8005\u306b\u805e\u304f\u3001\u3053\u306e1\u5e74\u3068\u3053\u306e10\u5e74\u3002\u305d\u3057\u3066\u672a\u6765\u301c\n\u4eca\u65e5\u3060\u3051\u3084\uff0c\u4eca\u65e5\u304b\u3089\uff17\u65e5\u9593\u306a\u3069\u7bc4\u56f2\u6307\u5b9a\u3082\u51fa\u6765\u307e\u3059\uff0e
\n$ khal list --format \"{title}\" today today (1)\n$ khal list --format \"{title}\" today 7days (2)\n$ khal list --format \"{title}\" 2021-03-01 2021-03-31 (3)\n$ faketime 2021-03-03 khal list --format \"{title}\" today (4)\nURL\u3082\u8868\u793a\u3057\u305f\u3044\u3051\u3069\uff0c\u3042\u3063\u3066\u3082.ics\u306eDiscription\u306e\u4e2d\u306a\u3069\u306a\u306e\u3067\u3061\u3087\u3063\u3068\u9762\u5012\u305d\u3046\u306a\u306e\u3067\u4eca\u56de\u306f\u8ae6\u3081\u307e\u3057\u305f\uff0e\u5fc5\u8981\u306a\u3068\u304d\u306f\u30ab\u30ec\u30f3\u30c0\u30fc\u3092\u53c2\u7167\u3059\u308b\u3053\u3068\u306b\u3057\u307e\u3059\uff0e
\n2\u3064\u76ee\u306e\u30ab\u30ec\u30f3\u30c0\u30fc\u3092\u767b\u9332\u3057\u3066\u307f\u307e\u3059\uff0e\u6b21\u306f\u65e5\u672c\u306e\u4f11\u65e5\u30ab\u30ec\u30f3\u30c0\u30fc\u3092\u767b\u9332\u3057\u3066\u307f\u307e\u3059\uff0e
\nGoogle\u306e\u65e5\u672c\u8a9e\u7248( https://www.google.com/calendar/ical/ja.japanese%23holiday%40group.v.calendar.google.com/public/basic.ics )\u3092\u5229\u7528\u3059\u308b\u3053\u3068\u306b\u3057\u307e\u3059\uff0e
\n~/.config/vdirsyncer/config \u306b\u4ee5\u4e0b\u306e\u8a2d\u5b9a\u3092\u8ffd\u8a18\u3057\u307e\u3059\uff0e
[pair holiday_calendars]\na = \"holiday_calendars_local\"\nb = \"holiday_calendars_remote\"\ncollections = null\nmetadata = [\"color\"]\n\n[storage holiday_calendars_local]\ntype = \"filesystem\"\npath = \"~/.calendars/holiday_calendars/\"\nfileext = \".ics\"\n\n[storage holiday_calendars_remote]\ntype = \"http\"\nurl = \"https://www.google.com/calendar/ical/ja.japanese%23holiday%40group.v.calendar.google.com/public/basic.ics\"\n\u8a2d\u5b9a\u53cd\u6620\u3057\u3066\u30ab\u30ec\u30f3\u30c0\u30fc\u3092\u540c\u671f\u3057\u307e\u3059\uff0e
\n$ vdirsyncer discover holiday_calendars\n$ vdirsyncer sync holiday_calendars\n\u6b21\u306bkhal\u306e\u8a2d\u5b9a\u3067\u3059\uff0e
\n~/.config/khal/config \u306e [calendars] \u30bb\u30af\u30b7\u30e7\u30f3\u306b\u4ee5\u4e0b\u306e\u8a2d\u5b9a\u3092\u8ffd\u8a18\u3057\u307e\u3059\uff0e
[[holiday]]\n path = ~/.calendars/holiday_calendars/\n readonly = True\n\u3053\u306e\u72b6\u614b\u3067khal\u3092\u5b9f\u884c\u3057\u3066\u307f\u308b\u3068\u795d\u65e5\u3082\u8868\u793a\u3055\u308c\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f :)
\n$ khal list --format \"{title}\" 2021-03-20 1days\nSaturday, 2021-03-20\n\u6625\u5206\u306e\u65e5\nNBUG 2021\u5e743\u6708\u4f8b\u4f1a[\u7b2c250\u56de\u4f8b\u4f1a]\nKernel/VM\u63a2\u691c\u968aonline part2\n\u3068\u3044\u3046\u3053\u3068\u3067\u5f53\u521d\u601d\u3063\u3066\u3044\u305f\u3088\u308a\u5c11\u3057\u9762\u5012\u3067\u3057\u305f\u304c\uff0c\u3068\u308a\u3042\u3048\u305a\u3084\u308a\u305f\u3044\u3053\u3068\u304c\u51fa\u6765\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f :)
\n$ dpkg-query -W vdirsyncer khal faketime\nfaketime 0.9.7-3\nkhal 1:0.9.10-1.1\nvdirsyncer 0.16.7-2\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\n\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u5171\u6709\u30b5\u30a4\u30c8\u306e\u7121\u6599\u67a0\u3092\u4f7f\u3046\u306e\u304c\u8f9b\u304f\u306a\u3063\u305f\u306e\u3067Nextcloud\u306eURL\u5171\u6709\u3067\u3069\u3046\u306b\u304b\u306a\u3089\u306a\u3044\u304b\u306a\u3068\u601d\u3063\u3066\u3044\u307e\u3059\uff0e
\n\u307e\u305a\u306fpdf\u30d5\u30a1\u30a4\u30eb\u3092object\u30bf\u30b0\u3067\u57cb\u3081\u8fbc\u3080\u65b9\u6cd5\u3092\u8a66\u3057\u307e\u3057\u305f\uff0e
\u3053\u306e\u65b9\u6cd5\u306e\u30c7\u30e1\u30ea\u30c3\u30c8\u306fcgi\u3092\u7528\u610f\u3057\u306a\u3044\u3068\u3044\u3051\u306a\u3044\uff0cpdf\u3092\u8aad\u3080\u6c17\u304c\u306a\u304f\u3066\u3082\u30da\u30fc\u30b8\u3092\u8aad\u307f\u8fbc\u3080\u3068pdf\u30d5\u30a1\u30a4\u30eb\u304c\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3055\u308c\u3066\u3057\u307e\u3044\u30da\u30fc\u30b8\u5bb9\u91cf\u304c\u5927\u304d\u304f\u306a\u3063\u3066\u3057\u307e\u3046\uff0e\u305d\u3057\u3066Nextcloud\u306b\u300c<pdf\u30d5\u30a1\u30a4\u30eb\u540d> \u304c\u516c\u958b\u30ea\u30f3\u30af\u304b\u3089\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3055\u308c\u307e\u3057\u305f\u300d\u3068\u3044\u3046\u901a\u77e5\u304c\u305f\u304f\u3055\u3093\u5c4a\u3044\u3066\u3057\u307e\u3044\u3061\u3087\u3063\u3068\u3046\u308b\u3055\u3044\u3068\u3044\u3063\u305f\u611f\u3058\u3067\u3059\uff0e
\n\u9014\u4e2d\u306ecgi\u3067\u30ad\u30e3\u30c3\u30b7\u30e5\u3057\u3066\u30d7\u30ec\u30d3\u30e5\u30fc\u7528\u306e\u753b\u50cf\u3092\u7528\u610f\u3057\u3066web\u306b\u306f\u305d\u306e\u30d7\u30ec\u30d3\u30e5\u30fc\u753b\u50cf\u3092\u8868\u793a\u3057\u3066\u304a\u3051\u3070\u3044\u3044\u306e\u3067\u306f\u3068cgi\u3092\u66f8\u304d\u63db\u3048\u3066\u3044\u307e\u3057\u305f\uff0ehead\u3067\u5f15\u3063\u5f35\u3063\u3066\u3082\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3055\u308c\u305f\u6271\u3044\u306b\u306a\u308b\u3057db\u304b\u3089\u5b9f\u30d5\u30a1\u30a4\u30eb\u306e\u5834\u6240\u3092\u63a2\u3057\u3066\u305d\u3053\u304b\u3089\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3059\u308b\u3088\u3046\u306b\uff0c\u30b5\u30e0\u30cd\u30a4\u30eb\u3082db\u304b\u3089\u5f15\u3063\u5f35\u3063\u3066\u3053\u308c\u308b\u304b\u306a?\u3068\u304b\u3084\u3063\u3066\u307e\u3057\u305f\u304c\u3075\u3068\u305d\u308c\u3060\u3068\u6a19\u6e96\u306e\u6a5f\u80fd\u3067\u51fa\u6765\u308b\u306e\u3067\u306f\u3068\u6c17\u3065\u3044\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\npdf\u5171\u6709URL\u306e\u672b\u5c3e\u306b /preview \u3092\u4ed8\u3051\u308b\u3068\u30d7\u30ec\u30d3\u30e5\u30fc\u753b\u50cf\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e(\u6a19\u6e96\u3067\u306f50MB\u4ee5\u4e0b\u306e\u30d5\u30a1\u30a4\u30eb\u306e\u5834\u5408)
| \n Note \n | \n\n\u5171\u6709URL\u304c https://files.matoken.org/index.php/s/r7jEJdjiSRzb4nZ \u306e\u3068\u304d\u306e\u30d7\u30ec\u30d3\u30e5\u30fc\u753b\u50cfURL https://files.matoken.org/index.php/s/r7jEJdjiSRzb4nZ/preview | \n
\u3053\u308c\u3092\u5229\u7528\u3057\u3066\u3053\u3093\u306a\u611f\u3058\u306b\u66f8\u304f\u3068\uff0c
\n[quote,'link:https://files.matoken.org/index.php/s/r7jEJdjiSRzb4nZ[https://files.matoken.org/index.php/s/r7jEJdjiSRzb4nZ]']\nlink:https://files.matoken.org/index.php/s/r7jEJdjiSRzb4nZ[image:https://files.matoken.org/index.php/s/r7jEJdjiSRzb4nZ/preview[width=100%]]\n<div class=\"quoteblock\">\n<blockquote>\n<a href=\"https://files.matoken.org/index.php/s/r7jEJdjiSRzb4nZ\"><span class=\"image\"><img src=\"https://files.matoken.org/index.php/s/r7jEJdjiSRzb4\nnZ/preview\" alt=\"preview\" width=\"100%\"></span></a>\n<div class=\"attribution\">\n— <a href=\"https://files.matoken.org/index.php/s/r7jEJdjiSRzb4nZ\">https://files.matoken.org/index.php/s/r7jEJdjiSRzb4nZ</a>\n</div>\n</blockquote>\n</div>\n\u3053\u3046\u3044\u3046\u3075\u3046\u306b\u306a\u308a\u307e\u3057\u305f\uff0e\u30af\u30ea\u30c3\u30af\u3059\u308b\u3068Nextcloud\u306epdf\u30d5\u30a1\u30a4\u30eb\u30d7\u30ec\u30d3\u30e5\u30fc\u753b\u9762\u304c\u958b\u304b\u308c\uff0c\u6700\u8fd1\u306e\u30e2\u30c0\u30f3\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067\u306f\u305d\u306e\u307e\u307e\u95b2\u89a7\u3067\u304d\u307e\u3059\uff0e
\n\n\n\n
SpeakerDeck\u306a\u3093\u304b\u3067\u306f\u57cb\u3081\u8fbc\u3093\u3060\u30da\u30fc\u30b8\u3067\u305d\u306e\u307e\u307e\u8aad\u3080\u3053\u3068\u3082\u51fa\u6765\u307e\u3059\u304c\u3068\u308a\u3042\u3048\u305a\u3053\u308c\u306a\u3089cgi\u3082\u5fc5\u8981\u306a\u304fNextcloud\u306e\u6a19\u6e96\u6a5f\u80fd\u3060\u3051(\u6050\u3089\u304fNC13\u4ee5\u964d\u3067\u53ef\u80fd)\u3067\u3044\u3051\u308b\u306e\u3067\u305d\u3053\u305d\u3053\u3044\u3044\u611f\u3058\u3067\u306f\u306a\u3044\u304b\u306a\u3068\u601d\u3044\u307e\u3059\uff0e
\n$ sudo -u www-data php occ --version\nNextcloud 20.0.8\n$ dpkg-query -W php mariadb-server apache2\napache2 2.4.38-3+deb10u4\nmariadb-server 1:10.3.27-0+deb10u1\nphp 2:7.3+69\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\nImagemMgick\u306econvert\u30b3\u30de\u30f3\u30c9\u3067pdf\u3092jpeg\u306b\u3057\u3088\u3046\u3068\u3059\u308b\u3068\u30a8\u30e9\u30fc\u306b\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3057\u305f\uff0e\u3067\u3082\u3053\u308c\u306f\u898b\u899a\u3048\u306e\u3042\u308b\u30a8\u30e9\u30fc\u2026\u2026\u3069\u3053\u304b\u306b\u30e1\u30e2\u3057\u305f\u6c17\u304c\u3059\u308b\u306e\u3067\u3059\u304c\u898b\u5f53\u305f\u3089\u306a\u3044\u306e\u3067blog\u306b\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\n$ convert -geometry 640 /var/tmp/Nextcloud2pdf_cache/HQeSTL5TgcgAPtS.pdf[0] /tmp/HQeSTL5TgcgAPtS.jpg\nconvert-im6.q16: attempt to perform an operation not allowed by the security policy `PDF' @ error/constitute.c/IsCoderAuthorized/408.\nconvert-im6.q16: no images defined `/tmp/HQeSTL5TgcgAPtS.jpg' @ error/convert.c/ConvertImageCommand/3258.\n\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u306e\u554f\u984c\u3067ImageMagick\u306e\u8a2d\u5b9a\u3067\u7121\u52b9\u306b\u3057\u3066\u3042\u308b\u306e\u3067\u3053\u308c\u3092\u6709\u52b9\u306b\u3057\u307e\u3059\uff0e
\n$ sudo git -C /etc diff /etc/ImageMagick-6/policy.xml\ndiff --git a/ImageMagick-6/policy.xml b/ImageMagick-6/policy.xml\nindex 82a3d0b..0953557 100644\n--- a/ImageMagick-6/policy.xml\n+++ b/ImageMagick-6/policy.xml\n@@ -91,6 +91,6 @@\n <policy domain=\"coder\" rights=\"none\" pattern=\"PS2\" />\n <policy domain=\"coder\" rights=\"none\" pattern=\"PS3\" />\n <policy domain=\"coder\" rights=\"none\" pattern=\"EPS\" />\n- <policy domain=\"coder\" rights=\"none\" pattern=\"PDF\" />\n+ <policy domain=\"coder\" rights=\"read|write\" pattern=\"PDF\" />\n <policy domain=\"coder\" rights=\"none\" pattern=\"XPS\" />\n </policymap>\n\u8a2d\u5b9a\u3092\u7de8\u96c6\u5f8c\u5b9f\u884c\u3059\u308b\u3068\u3046\u307e\u304f\u52d5\u304d\u307e\u3057\u305f :)
\n$ convert -geometry 640 /var/tmp/Nextcloud2pdf_cache/HQeSTL5TgcgAPtS.pdf[0] /tmp/HQeSTL5TgcgAPtS.jpg\n\u30bd\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u666e\u901a\u306b\u6307\u5b9a\u3059\u308b\u3068\uff0c \u30d5\u30a1\u30a4\u30eb\u540d-%d.jpg \u306e\u3088\u3046\u306a\u30d5\u30a1\u30a4\u30eb\u304c\u9023\u756a\u3067\u4f5c\u6210\u3055\u308c\u307e\u3059\uff0e
\n\u4eca\u56de\u306f1\u30da\u30fc\u30b8\u3081\u3060\u3051\u304c\u6b32\u3057\u3044\u306e\u3067\u4e0d\u5fc5\u8981\u306a\u30d5\u30a1\u30a4\u30eb\u304c\u305f\u304f\u3055\u3093\u51fa\u6765\u3066\u3057\u307e\u3044\u307e\u3059\uff0e
1\u30da\u30fc\u30b8\u3060\u3051\u304c\u6b32\u3057\u3044\u5834\u5408\uff0c \u30bd\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u540d.pdf[0] \u3068\u3044\u3046\u3088\u3046\u306b\u30da\u30fc\u30b8\u6307\u5b9a\u3057\u3066\u5b9f\u73fe\u3067\u304d\u307e\u3059\uff0e\u3053\u306e\u6dfb\u5b57\u306f1\u30da\u30fc\u30b8\u76ee\u304c0\uff0c2\u30da\u30fc\u30b8\u3081\u304c1\u306e\u3088\u3046\u306b\u6307\u5b9a\u3057\u307e\u3059\uff0e
\u5b58\u5728\u3057\u306a\u3044\u30da\u30fc\u30b8\u756a\u53f7\u3092\u6307\u5b9a\u3059\u308b\u3068\u30a8\u30e9\u30fc\u306b\u306a\u308a\u307e\u3059\uff0e
\n$ convert -geometry 640 /var/tmp/Nextcloud2pdf_cache/HQeSTL5TgcgAPtS.pdf[99] /tmp/HQeSTL5TgcgAPtS-99.jpg\n\nRequested FirstPage is greater than the number of pages in the file: 33\n No pages will be processed (FirstPage > LastPage).\nconvert-im6.q16: no images defined `./HQeSTL5TgcgAPtS-1.jpg' @ error/convert.c/ConvertImageCommand/3258.\n$ dpkg-query -W imagemagick\nimagemagick 8:6.9.10.23+dfsg-2.1+deb10u1\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\nNextcloud\u30e6\u30fc\u30b6\u304c2\u8981\u7d20\u8a8d\u8a3c\u3092\u51fa\u6765\u306a\u3044\u3068\u304d\u306bNextcloud\u7ba1\u7406\u8005\u304c48\u6642\u9593\u6709\u52b9\u306a1\u5ea6\u9650\u308a\u306e\u30ef\u30f3\u30bf\u30a4\u30e0\u30b3\u30fc\u30c9\u3092\u4f5c\u6210\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u300cTwo-Factor Admin Support\u300d\u3092\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\n$ sudo -u www-data php occ app:install twofactor_admin\nocc\u30b3\u30de\u30f3\u30c9\u3067\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0eWeb\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u304b\u3089\u3067\u3082OK\u3067\u3059\uff0e
\n\u5c0e\u5165\u5f8c\uff0c\u7ba1\u7406\u8005\u30a2\u30ab\u30a6\u30f3\u30c8\u3067\u300c\u8a2d\u5b9a\u300d\u2192\u300c\u7ba1\u7406\u300d\u2192\u300c\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u300d\u306e\u300cTwo-Factor Admin\u300d\u304c\u51fa\u6765\u3066\u3044\u307e\u3059\uff0e\u3053\u306e\u300cUser ID\u300d\u306e\u30c6\u30ad\u30b9\u30c8\u30dc\u30c3\u30af\u30b9\u306b\u30ef\u30f3\u30bf\u30a4\u30e0\u30b3\u30fc\u30c9\u3092\u767a\u884c\u3057\u305f\u3044\u30e6\u30fc\u30b6ID\u3092\u5165\u529b\u3057\u3066\u300cGenerate\u300d\u3092\u62bc\u3059\u306848\u6642\u9593\u6709\u52b9\u306a\u30ef\u30f3\u30bf\u30a4\u30e0\u30b3\u30fc\u30c9\u304c\u767a\u884c\u3055\u308c\u307e\u3059\uff0e\u3053\u306e\u30b3\u30fc\u30c9\u3092\u30e6\u30fc\u30b6\u306b\u4f1d\u3048\u3066\u30ed\u30b0\u30a4\u30f3\u3057\u3066\u3082\u3089\u3044\u307e\u3059\uff0e
\n$ sudo -u www-data php occ twofactorauth:admin:generate-code $USERID\nThere is an existing code that will be overwritten.\n\nGenerated new one-time code for test01: 163929\nThis code is valid for 48 hours.\nocc\u30b3\u30de\u30f3\u30c9\u3067\u3082\u767a\u884c\u3067\u304d\u307e\u3059\uff0e
\n\u8a72\u5f53\u30e6\u30fc\u30b6\u306f\u30e6\u30fc\u30b6ID/\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u5165\u529b\u3057\u305f\u5f8c\u306e2\u8981\u7d20\u8a8d\u8a3c\u3067\u300cAdmin code\u300d\u3068\u3044\u3046\u9078\u629e\u80a2\u304c\u5897\u3048\u308b\u306e\u3067\u305d\u308c\u3092\u9078\u3073\u307e\u3059\uff0e
\n\u7ba1\u7406\u8005\u306b\u6559\u3048\u3066\u3082\u3089\u3063\u305f\u30ef\u30f3\u30bf\u30a4\u30e0\u30b3\u30fc\u30c9\u3092\u5165\u529b\u3057\u3066\u30ed\u30b0\u30a4\u30f3\u3057\u307e\u3059\uff0e
\nTOTP\u306e\u30c7\u30d0\u30a4\u30b9\u3092\u58ca\u3057\u3066\u3057\u307e\u3063\u305f\u308a\u5bb6\u306b\u5fd8\u308c\u3066\u304d\u305f\u3068\u304b\u3044\u3063\u305f\u3068\u304d\u306b\u4fbf\u5229\u305d\u3046\u3067\u3059\uff0e(\u6570\u304c\u5c11\u306a\u3051\u308c\u3070)
\n$ sudo -u www-data php /var/www/files.matoken.org/occ app:list | grep twofactor_admin:\n - twofactor_admin: 3.0.0\n$ sudo -u www-data php occ --version\nNextcloud 20.0.8\n$ dpkg-query -W php mariadb-server apache2\napache2 2.4.38-3+deb10u4\nmariadb-server 1:10.3.27-0+deb10u1\nphp 2:7.3+69\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\nNextcloud\u30a2\u30d7\u30ea\u306e\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3092\u884c\u3063\u305f\u3068\u3053\u308dmail\u306e\u51e6\u7406\u4e2d\u306b\u30b3\u30b1\u3066\u3057\u307e\u3063\u305f\u3088\u3046\u3067\u3059\uff0e
\n$ sudo -u www-data php occ app:update --all\nrichdocuments new version available: 3.7.17\nrichdocuments updated\nforms new version available: 2.2.1\nforms updated\nmail new version available: 1.9.2\nAn unhandled exception has been thrown:\nError: Call to undefined method OCA\\Mail\\Db\\MessageMapper::findWithEmptyMessageId() in /var/www/files.matoken.org/apps/mail/lib/Migration/AddMissingMessageIds.\nphp:55\nStack trace:\n#0 /var/www/files.matoken.org/lib/private/Repair.php(112): OCA\\Mail\\Migration\\AddMissingMessageIds->run(Object(OC\\Repair))\n#1 /var/www/files.matoken.org/lib/private/legacy/OC_App.php(1042): OC\\Repair->run()\n#2 /var/www/files.matoken.org/lib/private/legacy/OC_App.php(979): OC_App::executeRepairSteps('mail', Array)\n#3 /var/www/files.matoken.org/lib/private/Installer.php(206): OC_App::updateApp('mail')\n#4 /var/www/files.matoken.org/core/Command/App/Update.php(116): OC\\Installer->updateAppstoreApp('mail', false)\n#5 /var/www/files.matoken.org/3rdparty/symfony/console/Command/Command.php(255): OC\\Core\\Command\\App\\Update->execute(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))\n#6 /var/www/files.matoken.org/3rdparty/symfony/console/Application.php(1000): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))\n#7 /var/www/files.matoken.org/3rdparty/symfony/console/Application.php(271): Symfony\\Component\\Console\\Application->doRunCommand(Object(OC\\Core\\Command\\App\\Update), Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))\n#8 /var/www/files.matoken.org/3rdparty/symfony/console/Application.php(147): Symfony\\Component\\Console\\Application->doRun(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))\n#9 /var/www/files.matoken.org/lib/private/Console/Application.php(215): Symfony\\Component\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))\n#10 /var/www/files.matoken.org/console.php(100): OC\\Console\\Application->run()\n#11 /var/www/files.matoken.org/occ(11): require_once('/var/www/files....')\n#12 {main}mk@www6073uo:/var/www/files.matoken.org\n\u518d\u5ea6\u5b9f\u884c\u3059\u308b\u3068\u51e6\u7406\u306f\u9032\u3093\u3060\u3088\u3046\u3067\u3059\u304c\uff0c\u7e2e\u9000\u30e2\u30fc\u30c9\u306e\u3088\u3046\u306a\u611f\u3058\u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff0e\u3053\u306e\u72b6\u614b\u3067Nextcloud\u306eWeb\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3092\u6c42\u3081\u3089\u308c\u3066\u5229\u7528\u3067\u304d\u307e\u305b\u3093\uff0e
\n$ sudo -u www-data php occ app:update --all\nNextcloud or one of the apps require upgrade - only a limited number of commands are available\nYou may use your browser or the occ upgrade command to do the upgrade\nfiles_linkeditor new version available: 1.1.4\nfiles_linkeditor updated\n\u3069\u3046\u3057\u305f\u3082\u3093\u304b\u3068\u3068\u308a\u3042\u3048\u305a\u539f\u56e0\u3067\u3042\u308d\u3046mail\u3092\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3057\u3088\u3046\u3068\u3059\u308b\u3068\u3059\u3067\u306b\u6700\u65b0\u306e\u3088\u3046\u3067\u3059\uff0e
\n\u6b21\u306bmail\u3092\u7121\u52b9\u5316\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\u3059\u308b\u3068Nextcloud Web\u304c\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\uff0e
\n\u4e00\u65e6\u524a\u9664\u3057\u3066\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u76f4\u3057\u305f\u307b\u3046\u304c\u78ba\u5b9f\u3060\u308d\u3046\u306a\u3068\u601d\u3044\u3064\u3064mail\u3092\u6709\u52b9\u5316\u3059\u308b\u3068Nextcloud\u3082mail\u3082\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\uff0e
$ sudo -u www-data php occ app:update mail (1)\nNextcloud or one of the apps require upgrade - only a limited number of commands are available\nYou may use your browser or the occ upgrade command to do the upgrade\n$ sudo -u www-data php occ app:disable mail (2)\nNextcloud or one of the apps require upgrade - only a limited number of commands are available\nYou may use your browser or the occ upgrade command to do the upgrade\nmail 1.9.2 disabled\n$ sudo -u www-data php occ app:enable mail (3)\nmail 1.9.2 enabled\nocc app:disable mail \u306e\u5f8c occ app:remove mail && occ app:install mail \u3057\u305f\u307b\u3046\u304c\u78ba\u5b9f\u3060\u3068\u601d\u3044\u307e\u3059\uff0e
\u3061\u306a\u307f\u306bNextcloud Hub\u4ee5\u5916\u306e\u3042\u307e\u308a\u30e1\u30b8\u30e3\u30fc\u3067\u306a\u3044\u30a2\u30d7\u30ea\u306a\u3069\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u3046\u307e\u304f\u52d5\u304b\u306a\u3044\u3068\u304d\u306b\u3082Nextcloud\u304c\u52d5\u304b\u306a\u304f\u306a\u308b\u3053\u3068\u304c\u3042\u308a\u307e\u3059\uff0e\u305d\u3046\u3044\u3046\u3068\u304d\u3082 occ app:disable \u3067\u5fa9\u65e7\u3067\u304d\u308b\u306e\u3067\u899a\u3048\u3066\u304a\u304f\u3068\u52a9\u304b\u308a\u307e\u3059\uff0e
$ sudo -u www-data php occ app:list | grep \\ mail:\n - mail: 1.9.2\n$ sudo -u www-data php occ --version\nNextcloud 20.0.8\n$ dpkg-query -W php mariadb-server apache2\napache2 2.4.38-3+deb10u4\nmariadb-server 1:10.3.27-0+deb10u1\nphp 2:7.3+69\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\nNextcloud\u30a2\u30d7\u30ea\u306e\u300cA Two-Factor-Auth Provider for e-mail\u300d\u3092\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\u3053\u308c\u306fNextcloud\u8a8d\u8a3c\u6642\u306b\u30e6\u30fc\u30b6ID/\u30d1\u30b9\u30ef\u30fc\u30c9\u3067\u8a8d\u8a3c\u3057\u305f\u5f8c\u8a2d\u5b9a\u3055\u308c\u305f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u306b\u30ef\u30f3\u30bf\u30a4\u30e0\u30c8\u30fc\u30af\u30f3\u304c\u5c4a\u3044\u3066\uff0c\u305d\u308c\u3092\u4f7f\u3063\u30662\u8981\u7d20\u76ee\u306e\u8a8d\u8a3c\u304c\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308b\u3082\u306e\u3067\u3059\uff0e
\n$ sudo -u www-data php occ app:install twofactor_admin\ntwofactor_admin 3.0.0 installed\ntwofactor_admin enabled\n\u307e\u305a\u306f\u5c0e\u5165\uff0eocc \u30b3\u30de\u30f3\u30c9\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3057\u305f\uff0eWebIF\u304b\u3089\u3067\u3082OK\u3067\u3059\uff0e
2\u8981\u7d20\u8a8d\u8a3c\u3092\u6709\u52b9\u306b\u3057\u305f\u3044\u30e6\u30fc\u30b6\u3067Nextcloud Web\u306b\u30ed\u30b0\u30a4\u30f3\u3057\u3066\uff0c\u300c\u53f3\u4e0a\u306e\u30a2\u30a4\u30b3\u30f3\u300d\u2192\u300c\u8a2d\u5b9a\u300d\u2192\u300c\u500b\u4eba\u60c5\u5831\u300d\u306e\u300c\u30e1\u30fc\u30eb\u300d\u306b\u6b63\u3057\u3044\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u306e\u3092\u78ba\u8a8d\u3057\u3066\uff0c\u300c\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u300d\u2192\u300c\u4e8c\u8981\u7d20\u8a8d\u8a3c\u300d\u2192\u300cEmail verification\u300d\u306e\u300cEnable\u300d\u3092\u62bc\u3057\u3066\u6709\u52b9\u306b\u3057\u307e\u3059\uff0e
\n| \n Note \n | \n\n\u96fb\u5b50\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u672a\u767b\u9332\u3060\u3068\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u30e1\u30c3\u30bb\u30fc\u30b8\u3068\u306a\u308a\u307e\u3057\u305f\uff0e \nCould not generate a code: user hoge does not exist | \n
\u3059\u308b\u3068\u30c8\u30fc\u30af\u30f3\u304cNextcloud\u306b\u8a2d\u5b9a\u3057\u305f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u306b\u9001\u4fe1\u3055\u308c\u308b\u306e\u3067\u30e1\u30fc\u30eb\u3092\u78ba\u8a8d\u3057\u3066\u30c8\u30fc\u30af\u30f3\u3092\u30c6\u30ad\u30b9\u30c8\u30dc\u30c3\u30af\u30b9\u306b\u5165\u529b\u3057\u3066\uff0c\u300cVeryfi\u300d\u3092\u62bc\u3057\u3066\u78ba\u8a8d\u3057\u307e\u3059\uff0e
\n\u3046\u307e\u304f\u884c\u304d\u307e\u3057\u305f\uff0e
\n\u4e00\u65e6\u30ed\u30b0\u30a2\u30a6\u30c8\u3057\u3066\u30ed\u30b0\u30a4\u30f3\u3057\u3066\u307f\u307e\u3059\uff0e
\u30e6\u30fc\u30b6ID/\u30d1\u30b9\u30ef\u30fc\u30c9\u3067\u8a8d\u8a3c\u3057\u305f\u5f8c\uff0c\u300cEmail verification\u300d\u306e\u753b\u9762\u306b\u306a\u308a\u307e\u3059\uff0e\u30e1\u30fc\u30eb\u304c\u9001\u4fe1\u3055\u308c\u3066\u3044\u308b\u306f\u305a\u304b\u306e\u3067\u78ba\u8a8d\u3057\u3066\u305d\u3053\u306b\u66f8\u304b\u308c\u3066\u3044\u308b\u30c8\u30fc\u30af\u30f3\u3092\u5165\u529b\u3057\u3066\u30ed\u30b0\u30a4\u30f3\u3057\u307e\u3059\uff0e
\n2\u8981\u7d20\u8a8d\u8a3c\u3067\u306fTOTP\u4ee5\u5916\u306b\u3082SMS, Telegram, Signal\u306a\u3069\u3082\u3042\u308a\u307e\u3059\u304c\u305d\u308c\u305e\u308c\u8a2d\u5b9a\u304c\u9762\u5012\u3067\u3059\uff0e\u96fb\u5b50\u30e1\u30fc\u30eb\u3067\u3042\u308c\u3070\u30e6\u30fc\u30b6\u306e\u8a2d\u5b9a\u306f\u5c11\u306a\u3044\u306e\u3067\u826f\u3055\u305d\u3046\u3067\u3059\uff0e
\n$ sudo -u www-data php occ app:list | grep previewgenerator:\n - previewgenerator: 3.1.1\n$ sudo -u www-data php occ --version\nNextcloud 20.0.8\n$ dpkg-query -W php mariadb-server apache2\napache2 2.4.38-3+deb10u4\nmariadb-server 1:10.3.27-0+deb10u1\nphp 2:7.3+69\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\nNextcloud\u3067\u306f\u753b\u50cf\u30d5\u30a1\u30a4\u30eb\uff0cMP3\u30d5\u30a1\u30a4\u30eb\u306e\u30ab\u30d0\u30fc\uff0c\u30c6\u30ad\u30b9\u30c8\u30d5\u30a1\u30a4\u30eb\u306e\u30d7\u30ec\u30d3\u30e5\u30fc\u3092\u751f\u6210\u3067\u304d\u307e\u3059\uff0e\u65e2\u5b9a\u5024\u3067\u306f\u3053\u306e\u6a5f\u80fd\u306f\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u3066\uff0c\u30a2\u30af\u30bb\u30b9\u6642\u306b\u30d7\u30ec\u30d3\u30e5\u30fc\u304c\u751f\u6210\u3055\u308c\u307e\u3059\uff0e
\nNextcloud\u3092\u8efd\u304f\u51fa\u6765\u306a\u3044\u304b\u3068 config/config.php \u30d5\u30a1\u30a4\u30eb\u306b 'enable_previews' \u21d2 false, \u3092\u8a2d\u5b9a\u3057\u3066\u7121\u52b9\u306b\u3057\u3066\u307f\u307e\u3057\u305f\u304c\u4e0d\u4fbf\u3067\u3059\uff0e
\u3068\u3044\u3046\u3053\u3068\u3067\u518d\u5ea6\u30d7\u30ec\u30d3\u30e5\u30fc\u3092\u6709\u52b9\u306b\u3057\u307e\u3057\u305f\uff0e\u3064\u3044\u3067\u306b\u30d7\u30ec\u30d3\u30e5\u30fc\u30b5\u30a4\u30ba\u30924096\u304b\u30891024\u306b\u5c0f\u3055\u304f\u3057\u3066\u30d7\u30ed\u30d0\u30a4\u30c0\u30fc\u3092\u5c11\u3057\u5897\u3084\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\n 'enable_previews' => true, (1)\n 'preview_max_x' => 1024, (2)\n 'preview_max_y' => 1024, (3)\n 'preview_max_filesize_image' => 50, (4)\n 'enabledPreviewProviders' => [ (5)\n 'OC\\Preview\\PNG',\n 'OC\\Preview\\JPEG',\n 'OC\\Preview\\GIF',\n 'OC\\Preview\\HEIC',\n 'OC\\Preview\\BMP',\n 'OC\\Preview\\XBitmap',\n 'OC\\Preview\\MP3',\n 'OC\\Preview\\TXT',\n 'OC\\Preview\\MarkDown',\n 'OC\\Preview\\OpenDocument',\n 'OC\\Preview\\Krita',\n 'OC\\Preview\\PDF',\n 'OC\\Preview\\Postscript',\n 'OC\\Preview\\SVG',\n 'OC\\Preview\\TIFF',\n 'OC\\Preview\\Font',\n ],\ntrue4096409650'' \u3067\u5185\u5bb9\u306f\uff0cedit 2021-03-17)
\n\u30b9\u30de\u30db\u5199\u771f\u3084pdf\u306f\u3042\u3089\u304b\u305f1MB\u3092\u8d85\u3048\u308b\u306e\u3067 preview_max_filesize_image \u306f1MB\u304b\u3089\u898f\u5b9a\u5024\u306e50MB\u306b\u623b\u3057\u307e\u3057\u305f\uff0e
OC\\Preview\\BMP\nOC\\Preview\\GIF\nOC\\Preview\\HEIC\nOC\\Preview\\JPEG\nOC\\Preview\\MarkDown\nOC\\Preview\\MP3\nOC\\Preview\\PNG\nOC\\Preview\\TXT\nOC\\Preview\\XBitmap\nOC\\Preview\\OpenDocument\nOC\\Preview\\Krita\n
\u305d\u306e\u4ed6\u306e\u65e2\u5b9a\u5024\u4ee5\u5916\u306e\u30d7\u30ed\u30d0\u30a4\u30c0\u30fc
\nOC\\Preview\\Illustrator\nOC\\Preview\\Movie\nOC\\Preview\\MSOffice2003\nOC\\Preview\\MSOffice2007\nOC\\Preview\\MSOfficeDoc\nOC\\Preview\\PDF\nOC\\Preview\\Photoshop\nOC\\Preview\\Postscript\nOC\\Preview\\StarOffice\nOC\\Preview\\SVG\nOC\\Preview\\TIFF\nOC\\Preview\\Font\n
\u305d\u3057\u3066 Preview Generator \u3068\u3044\u3046\u30d7\u30ec\u30d3\u30e5\u30fc\u3092\u4e8b\u524d\u751f\u6210\u3057\u3066\u304f\u308c\u308b\u30a2\u30d7\u30ea\u3092\u8a66\u3057\u3066\u307f\u3088\u3046\u3068\u3057\u307e\u3057\u305f\u304c\uff0c\u6697\u53f7\u5316\u3092\u6709\u52b9\u306b\u3057\u3066\u3044\u308b\u3068\u5229\u7528\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\u30d1\u30b9\u30ef\u30fc\u30c9\u5165\u529b\u3057\u3066\u30d7\u30ec\u30d3\u30e5\u30fc\u751f\u6210\u304c\u3067\u304d\u308b\u3068\u4fbf\u5229\u304b\u3082\u3067\u3059\u304c\u306a\u3093\u306b\u305b\u3088\u81ea\u5206\u4ee5\u5916\u306e\u30c7\u30fc\u30bf\u306f\u89e6\u308c\u306a\u3044\u306e\u3067\u5fae\u5999\u3067\u3059\u306d\uff0e
\n\n\n\n\nKnown issues
\n
\nThe app does not work with encryption enabled
$ sudo -u www-data php occ app:install previewgenerator (1)\npreviewgenerator 3.1.1 installed\npreviewgenerator enabled\n$ sudo -u www-data php /var/www/files.matoken.org/occ | grep preview$ -A4 (2)\n preview\n preview:delete_old Delete old preview folder (pre NC11)\n preview:generate-all Generate previews\n preview:pre-generate Pre generate previews\n preview:repair distributes the existing previews into subfolders\n$ sudo -u www-data php occ preview:generate-all (3)\nEncryption is enabled. Aborted.\n$ sudo -u www-data php occ app:remove previewgenerator (4)\npreviewgenerator disabled\npreviewgenerator 3.1.1 removed\n
$ sudo -u www-data php occ app:list | grep previewgenerator:\n - previewgenerator: 3.1.1\n$ sudo -u www-data php occ --version\nNextcloud 20.0.8\n$ dpkg-query -W php mariadb-server apache2\napache2 2.4.38-3+deb10u4\nmariadb-server 1:10.3.27-0+deb10u1\nphp 2:7.3+69\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\nNextcloud\u3067URL\u5171\u6709\u3057\u305f\u753b\u50cf\u3092blog\u306a\u3069\u306b\u57cb\u3081\u8fbc\u3080\u65b9\u6cd5\u306e\u30e1\u30e2\u3067\u3059\uff0e\u4eca\u56de\u306fNextcloud 20.0.8\u3067\u3059\u304c\uff0cNextcloud 13.0.0\u304b\u3089\u53ef\u80fd\u306b\u306a\u3063\u305f\u6a5f\u80fd\u306e\u3088\u3046\u3067\u3059\uff0e
\n\u5171\u6709\u5358\u4f4d\u306f\u753b\u50cf\u30d5\u30a1\u30a4\u30eb\u5358\u4f53\u306fOK\u3067\u3059\u304c\uff0c\u753b\u50cf\u30d5\u30a1\u30a4\u30eb\u3092\u542b\u3080\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u5171\u6709\u3067\u306f\u3046\u307e\u304f\u52d5\u304b\u306a\u3044\u3088\u3046\u3067\u3059\uff0e
\u5171\u6709\u3057\u305f\u3044\u753b\u50cf\u3092\u5171\u6709
\n\u300cURL\u3067\u5171\u6709\u300d\u306e\u53f3\u306e\u300c+\u300d\u3067\u5171\u6709
\nURL\u5171\u6709\u3055\u308c\u3066URL\u304c\u30b3\u30d4\u30fc\u3055\u308c\u308b
\n\u65e2\u5b9a\u5024\u3067\u306f\u5171\u6709\u6709\u52b9\u671f\u9650\u304c1\u9031\u9593\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u306e\u3067\u305a\u3063\u3068\u516c\u958b\u3057\u305f\u3044\u5834\u5408\u306f\u300c\u6709\u52b9\u671f\u9650\u3092\u8a2d\u5b9a\u300d\u306e\u30c1\u30a7\u30c3\u30af\u3092\u5916\u3059
\n\u5171\u6709\u3055\u308c\u305fURL\u3092\u958b\u304f\u3068\u30d7\u30ec\u30d3\u30e5\u30fc\u306b\u306a\u308b
\n\u753b\u50cf\u3092\u30af\u30ea\u30c3\u30af\u3059\u308b\u3068\uff0c\u753b\u50cf\u304c\u958b\u3051\u308b\uff0e
\n\u82e5\u3057\u304f\u306f\u5171\u6709URL\u306b /preview \u3092\u8ffd\u52a0\u3059\u308b\uff0e
\n\u62e1\u5f35\u5b50\u304c\u306a\u3044\u3068\u3046\u307e\u304f\u52d5\u4f5c\u3057\u306a\u3044site\u306a\u3069\u306e\u5834\u5408\u306f\uff0c/preview?dummy.jpg \u306a\u3069\u306e\u3088\u3046\u306b /preview \u306e\u5f8c\u308d\u306b\u3055\u3089\u306b\u305d\u308c\u3089\u3057\u3044\u6587\u5b57\u5217\u3092\u8ffd\u52a0\u3059\u308b\u3068\u958b\u3051\u305f\u308a\u3059\u308b\uff0e
https://files.matoken.org/index.php/s/bsaAdtxp8WgXLXE (1)\nhttps://files.matoken.org/index.php/s/bsaAdtxp8WgXLXE/preview (2)\nhttps://files.matoken.org/index.php/s/bsaAdtxp8WgXLXE/preview?/dummy.jpg (3)\n
/preview \u3092\u3064\u3051\u308b\u3068\u753b\u50cf\u304c\u8868\u793a\u3055\u308c\u308b/preview \u306e\u5f8c\u308d\u306b\u30c0\u30df\u30fc\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u3064\u3051\u308b\u5f8c\u306f\u666e\u901a\u306b\u9759\u7684\u753b\u50cfURL\u306e\u3088\u3046\u306b\u3057\u3066\u4f7f\u3048\u307e\u3059\uff0e
\n$ wget -o /dev/null -O - https://files.matoken.org/index.php/s/bsaAdtxp8WgXLXE/preview | pee \"file -\" display\n/dev/stdin: JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, comment: \"CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), quality = 90\", baseline, precision 8, 512x342, components 3\nblog\u306b\u8cbc\u308a\u4ed8\u3051\u3082\u3067\u304d\u308b :)
\n$ sudo -u www-data php occ --version\nNextcloud 20.0.8\n$ dpkg-query -W php mariadb-server apache2\napache2 2.4.38-3+deb10u4\nmariadb-server 1:10.3.27-0+deb10u1\nphp 2:7.3+69\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\nTTYtter\u3068\u3044\u3046Perl\u88fd\u3067cli\u3067\u52d5\u4f5c\u3059\u308bTwitter client\u304c\u3042\u308a\u307e\u3059\uff0e\u81ea\u4f5cTwitter\u6295\u7a3fscript\u304c\u30a2\u30ab\u30a6\u30f3\u30c8\u3092BAN\u3055\u308c\u3066API key\u304c\u4f7f\u3048\u306a\u304f\u306a\u3063\u305f\u5f8c\u3053\u308c\u3092\u4f7f\u3063\u3066\u81ea\u52d5\u6295\u7a3f\u306a\u3069\u3092\u3057\u3066\u3044\u305f\u306e\u3067\u3059\u304c\uff0cDebian buster\u304b\u3089\u7121\u304f\u306a\u3063\u3066\u3044\u307e\u3059\uff0e
\n\u958b\u767a\u5143\u3092\u898b\u308b\u3068Oysttyer\u3068\u3044\u3046\u3082\u306e\u304c\u5909\u308f\u308a\u306b\u5b58\u5728\u3059\u308b\u3088\u3046\u306a\u306e\u3067\u305d\u3061\u3089\u306b\u4e57\u308a\u63db\u3048\u307e\u3057\u305f\uff0e
TTYtter\u304b\u3089Oysttyer\u306b\u4e57\u308a\u63db\u3048\u308b\u306b\u306f\u8a8d\u8a3c\u9375\u306a\u3069\u3092\u4f5c\u308a\u76f4\u3059\u5fc5\u8981\u304c\u3042\u308b\u3088\u3046\u3067\u3059\uff0e
\n-oauthwizard \u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u8a8d\u8a3c\u304c\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e
\n\u65e2\u5b9a\u5024\u3067\u306f\u8a8d\u8a3c\u60c5\u5831\u306f ~/.oysttyerkey \u306b\u4fdd\u5b58\u3055\u308c\u307e\u3059\u304c\uff0c\u8907\u6570\u306eTwitter\u30a2\u30ab\u30a6\u30f3\u30c8\u3067\u5229\u7528\u3057\u305f\u3044\u306e\u3067 -key=\u8a8d\u8a3c\u60c5\u5831\u683c\u7d0d\u30d5\u30a1\u30a4\u30eb \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4ed8\u3051\u3066\u533a\u5225\u3057\u307e\u3059\uff0e
| \n Note \n | \n\n-keyf \u306e\u30d1\u30b9\u306b ~ \u3092\u4f7f\u3046\u3068\u30a8\u30e9\u30fc\u306b\u306a\u308b\u3088\u3046\u3067\u3059\uff0e\u4eca\u56de\u306f\u4ee3\u308f\u308a\u306b $HOME \u3092\u4f7f\u3044\u307e\u3057\u305f\uff0e | \n
$ oysttyer -keyf=$HOME/.oysttyerkey_kagolug_ml -oauthwizard (1)\n-- using SSL for default URLs.\ntrying to find cURL ... /usr/bin/curl\n-- Streaming API disabled (no -dostream) (oysttyer will use REST API only)\n-- no version check performed (use /vcheck, or -vcheck to check on startup)\n\n+------------------------------------------------------------------------------+\n|| WELCOME TO oysttyer: Authorize oysttyer by signing into Twitter with OAuth ||\n+------------------------------------------------------------------------------+\nLooks like you're starting oysttyer for the first time, and/or creating a\nkeyfile. Welcome to the most user-hostile, highly obfuscated, spaghetti code\ninfested and obscenely obscure Twitter client that's out there. You'll love it.\n\noysttyer generates a keyfile that contains credentials for you, including your\naccess tokens. This needs to be done JUST ONCE. You can take this keyfile with\nyou to other systems. If you revoke oysttyer's access, you must remove the\nkeyfile and start again with a new token. You need to do this once per account\nyou use with oysttyer; only one account token can be stored per keyfile. If you\nhave multiple accounts, use -keyf=... to specify different keyfiles. KEEP THESE\nFILES SECRET.\n\n** This wizard will overwrite ~/.oysttyerkey_kagolug_ml\nPress RETURN/ENTER to continue or CTRL-C NOW! to abort.\n(2)\nRequest from https://api.twitter.com/oauth/request_token ... SUCCEEDED!\n\n1. Visit, in your browser, ALL ON ONE LINE,\n\nhttps://api.twitter.com/oauth/authorize?oauth_token=lfqqTgAAAAAAixnPABABd7YG56I (3)\n\n2. If you are not already signed in, fill in your username and password.\n\n3. Verify that oysttyer is the requesting application, and that its permissions\nare as you expect (read your timeline, see who you follow and follow new\npeople, update your profile, post tweets on your behalf and access your\ndirect messages). IF THIS IS NOT CORRECT, PRESS CTRL-C NOW!\n\n4. Click Authorize app.\n\n5. A PIN will appear. Enter it below.\n\nEnter PIN> 0901765 (4)\n\nRequest from https://api.twitter.com/oauth/access_token ... SUCCEEDED!\nWritten keyfile /home/mk/.oysttyerkey_kagolug_ml\n\nNow, restart oysttyer to use this keyfile.\n(To choose between multiple keyfiles other than the default .oysttyerkey,\ntell oysttyer where the key is using -keyf=... .)\n\u3053\u308c\u3067\u8a8d\u8a3c\u60c5\u5831\u304c\u6307\u5b9a\u30d5\u30a1\u30a4\u30eb\u306b\u683c\u7d0d\u3055\u308c\u307e\u3059\uff0e
\nTTYtter\u3067\u306fScript\u4e2d\u304b\u3089\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u3057\u3066\u6295\u7a3f\u3092\u884c\u3063\u3066\u3044\u307e\u3057\u305f\uff0e
\nttytter -keyf=/home/mk/.ttytterkey-kagolug_ml -location -lat=31.5775639 -long=130.6667937 -status=\"$MESSAGE\"\nOysttyer\u306e\u30e6\u30fc\u30b6\u30ac\u30a4\u30c9\u306e\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u78ba\u8a8d\u3059\u308b\u3068\u305d\u306e\u307e\u307e\u4f7f\u3048\u305d\u3046\u3067\u3059\uff0e
\n\u30b3\u30de\u30f3\u30c9\u3068\u8a8d\u8a3c\u9375\u30d5\u30a1\u30a4\u30eb\u3092\u5909\u66f4\u3059\u308b\u3060\u3051\u3067\u52d5\u4f5c\u3057\u307e\u3057\u305f\uff0e
\n$ oysttyer -keyf=/home/mk/.oysttyerkey_kagolug_ml -location -lat=31.5775639 -long=130.6667937 -status=\"\u6295\u7a3f\u30c6\u30b9\u30c8📮\"\n-- using SSL for default URLs.\ntrying to find cURL ... /usr/bin/curl\ntest-login SUCCEEDED!\npost attempt -- using lat/long: (31.5775639, 130.6667937)\nSUCCEEDED!\n
Script\u3082\u540c\u69d8\u306b\u30b3\u30de\u30f3\u30c9\u3068\u9375\u30d5\u30a1\u30a4\u30eb\u3092\u66f8\u304d\u63db\u3048\u307e\u3057\u305f\uff0e\u3053\u308c\u3067buster\u4ee5\u964d\u3067\u3082\u5927\u4e08\u592b\u306a\u306f\u305a\u3067\u3059 :)
\n$ dpkg-query -W oysttyer chromium\nchromium 88.0.4324.146-1~deb10u1\noysttyer 2.10.0-1\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\nNitter\u3068\u3044\u3046Twitter\u306e\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3\u30c9\u304c\u3042\u308a\u307e\u3059\uff0e\u6700\u8fd1\u306fTwitter\u304c\u91cd\u304f\u3066\u306a\u306b\u304b\u691c\u7d22\u3057\u3088\u3046\u3068\u601d\u3063\u3066\u3082\u5f85\u3061\u9577\u304b\u3063\u305f\u308a\u753b\u50cf\u8aad\u307f\u8fbc\u307f\u5931\u6557\u3057\u305f\u308a\u3068\u3044\u3063\u305f\u3053\u3068\u3082\u3088\u304f\u3042\u308a\u307e\u3059(PC\u306e\u30b9\u30da\u30c3\u30af\u3068\u56de\u7dda\u304c\u7d30\u3044\u305b\u3044\u3082\u5927\u304d\u3044\u3067\u3059\u304c)\uff0e\u8efd\u91cf\u30d6\u30e9\u30a6\u30b6\u3092\u4f7f\u3063\u305f\u308a\u3082\u3057\u3066\u307f\u307e\u3057\u305f\u304c\u305d\u3046\u3059\u308b\u3068\u898b\u305f\u76ee\u3084\u4f7f\u3044\u52dd\u624b\u304c\u3044\u307e\u3044\u3061\uff0e
\n\u305d\u3057\u3066\u73fe\u5728\u305d\u3046\u3044\u3063\u305f\u8efd\u91cf\u30d6\u30e9\u30a6\u30b6\u306f\u5229\u7528\u3082\u3067\u304d\u306a\u304f\u306a\u308a\u307e\u3057\u305f\uff0e
\n\n\n\n\nThis browser is no longer supported.
\n
\nPlease switch to a supported browser to continue using twitter.com. You can see a list of supported browsers in our Help Center.
\u305d\u3053\u3067 Nitter \u3092\u8a66\u3057\u3066\u307f\u305f\u3068\u3053\u308d\u8efd\u304f\u3066\u3044\u3044\u611f\u3058\u3067\u3059\uff0e
\n\u73fe\u5728\u30ed\u30b0\u30a4\u30f3\u6a5f\u80fd\u306f\u306a\u3044\u306e\u3067\uff0c\u6295\u7a3f\u3084\u975e\u516c\u958bTweet\u3084\u975e\u516c\u958b\u30ea\u30b9\u30c8\u306a\u3069\u306f\u4f7f\u3048\u307e\u305b\u3093\u304c\uff0c\u30a4\u30d9\u30f3\u30c8\u306e\u30cf\u30c3\u30b7\u30e5\u30bf\u30b0\u3092\u8ffd\u3063\u305f\u308a\uff0c\u904e\u53bb\u306etweet\u3092\u691c\u7d22\u3068\u3044\u3063\u305f\u3053\u3068\u3092\u3059\u308b\u306e\u306b\u4fbf\u5229\u3067\u3059\uff0e
\nRSS\u5f62\u5f0f\u3067\u306e\u51fa\u529b\u306b\u3082\u5bfe\u5fdc\u3057\u3066\u3044\u307e\u3059\uff0e
\n\u8efd\u91cf\u3067\u4fbf\u5229\u306a\u306e\u3067\u30ed\u30ab\u30fc\u30eb\u30de\u30b7\u30f3\u3067Nitter\u3092\u52d5\u304b\u3057\u3066\u5916\u306bURL\u3092\u5171\u6709\u3059\u308b\u3068\u304d\u306f https://nitter.net/ \u3092\u5229\u7528\u3057\u3066\u3044\u307e\u3057\u305f\uff0e
\n\u3068\u3044\u3046\u8a71\u3092\u4ee5\u524d\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u30ab\u30f3\u30d5\u30a1\u30ec\u30f3\u30b92020\u798f\u5ca1\u5185\u306e\u9e7f\u5150\u5cf6\u3089\u3050\u306e\u30b3\u30de\u3067\u767a\u8868\u3057\u307e\u3057\u305f\uff0e
\n\u3057\u304b\u3057\uff0c\u6700\u8fd1\u306f https://nitter.net/ \u304cTwitter\u306e\u5236\u9650\u306b\u639b\u304b\u3063\u3066\u5229\u7528\u3067\u304d\u306a\u3044\u3053\u3068\u304c\u591a\u304f\u306a\u3063\u3066\u304d\u307e\u3057\u305f\uff0e\u306a\u306e\u3067\u81ea\u5206\u306eVPS\u4e0a\u306b\u30db\u30b9\u30c8\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\n| \n Note \n | \n\n\u540c\u3058\u624b\u9806\u3067 Raspberry Pi OS buster armhf \u3084 Debian sid(nim\u306fDebina\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u3082\u306e\u5229\u7528)\u3067\u3082\u52d5\u4f5c\u3057\u307e\u3057\u305f\uff0e | \n
Nitter\u304c\u4f9d\u5b58\u3057\u3066\u3044\u308b Redis \u3068 libsass \u3092\u5c0e\u5165\u3057\u3066\u304a\u304d\u307e\u3059\uff0e
$ sudo apt install redis-server libsass-dev\nNitter\u3092\u5c02\u7528\u30a2\u30ab\u30a6\u30f3\u30c8\u3067\u52d5\u304b\u3057\u305f\u3044\u306e\u3067 nitter \u30e6\u30fc\u30b6\uff0c\u30b0\u30eb\u30fc\u30d7\u3092\u4f5c\u3063\u3066\u305d\u306e\u30e6\u30fc\u30b6\u3067\u64cd\u4f5c\u3057\u307e\u3059\uff0e
$ sudo groupadd nitter (1)\n$ sudo useradd -m -g nitter nitter (2)\n$ sudo -iu nitter (3)\nnitter \u30b0\u30eb\u30fc\u30d7\u3092\u4f5c\u6210nitter \u30e6\u30fc\u30b6\u3092\u4f5c\u6210nitter \u30e6\u30fc\u30b6\u306e\u30b7\u30a7\u30eb\u3092\u958b\u304fNitter\u306fnim-lang\u3067\u51fa\u6765\u3066\u3044\u307e\u3059\uff0eNitter\u306e\u30b3\u30f3\u30d1\u30a4\u30eb\u306b\u306fnim 1.2.0\u4ee5\u4e0a\u304c\u5fc5\u8981\u3067\u3059\u304c\uff0cDebian buster\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u7248\u306enim\u306f 0.19.4 \u3067\u30b3\u30f3\u30d1\u30a4\u30eb\u51fa\u6765\u307e\u305b\u3093\uff0ebuster-backports \u3082 1.0.4-1~bpo10+1 \u3068\u5bfe\u5fdc\u3057\u3066\u3044\u307e\u305b\u3093\uff0e(bullseye\u306f1.4.2)
$ nimble build -d:release\n Verifying dependencies for nitter@0.1.0\n Tip: 2 messages have been suppressed, use --verbose to show them.\n Error: Unsatisfied dependency: nim (>= 1.2.0)\n$ dpkg-query -W nim\nnim 0.19.4-1\n\u3068\u308a\u3042\u3048\u305anim\u306e\u516c\u5f0f\u30b5\u30a4\u30c8\u306e\u30d0\u30a4\u30ca\u30ea\u3092\u5229\u7528\u3057\u3066\u30b3\u30f3\u30d1\u30a4\u30eb\u3059\u308b\u3053\u3068\u306b\u3057\u307e\u3059\uff0e
\n$ wget https://nim-lang.org/download/nim-1.4.2-linux_x64.tar.xz \\\nhttps://nim-lang.org/download/nim-1.4.2-linux_x64.tar.xz.sha256 (1)\n$ sha256sum -c ./nim-1.4.2-linux_x64.tar.xz.sha256 (2)\nnim-1.4.2-linux_x64.tar.xz: OK\n$ tar tvf nim-1.4.2-linux_x64.tar.xz | lv (3)\n$ tar xvf nim-1.4.2-linux_x64.tar.xz (4)\nNitter\u306esource\u3092clone\u3057\u3066\u3055\u3063\u304d\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u5c55\u958b\u3057\u305fnim\u3067\u30b3\u30f3\u30d1\u30a4\u30eb\u3057\u307e\u3059\uff0e
\n$ git clone https://github.com/zedeus/nitter\n$ cd nitter\n$ PATH=~/nim-1.4.2/bin:$PATH nimble build -d:release\n$ PATH=~/nim-1.4.2/bin:$PATH nimble scss\n$ mkdir ./tmp\nRedis \u304c\u8d77\u52d5\u3057\u3066\u3044\u308b\u306e\u3092\u78ba\u8a8d\u3057\u3066 nitter \u3092\u8d77\u52d5\u3057\u3066\u307f\u307e\u3059\uff0e\u3053\u306e\u72b6\u614b\u3067 8080 \u30dd\u30fc\u30c8\u306b\u30a2\u30af\u30bb\u30b9\u3057\u3066 Nitter \u304c\u5229\u7528\u3067\u304d\u308b\u306e\u3092\u78ba\u8a8d\u3057\u307e\u3059\uff0e\u30dd\u30fc\u30c8\u756a\u53f7\u306a\u3069\u306f nitter.conf \u3067\u5909\u66f4\u3067\u304d\u307e\u3059\uff0e
$ ps -ef|grep -i redis (1)\nredis 11786 1 0 Feb11 ? 00:15:28 /usr/bin/redis-server 127.0.0.1:6379\n$ ./nitter & (2)\n$ w3m http://localhost:8080/ (3)\n$ kill %1 (4)\n$ exit (5)\nnitter \u30a2\u30ab\u30a6\u30f3\u30c8\u304b\u3089\u629c\u3051\u308b\u6b21\u306bNitter\u306b\u8d77\u52d5\u8a2d\u5b9a\u3092\u884c\u3044\u307e\u3059\uff0eSystemd\u74b0\u5883\u306a\u306e\u3067\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u30b5\u30fc\u30d3\u30b9\u30d5\u30a1\u30a4\u30eb\u3092\u7528\u610f\u3057\u307e\u3057\u305f\uff0e
\n[Unit]\nDescription=Nitter (An alternative Twitter front-end)\nAfter=syslog.target\nAfter=network.target\n\n[Service]\nType=simple\n\n# set user and group\nUser=nitter\nGroup=nitter\n\n# configure location\nWorkingDirectory=/home/nitter/nitter\nExecStart=/home/nitter/nitter/nitter\n\nRestart=always\nRestartSec=15\n\n[Install]\nWantedBy=multi-user.target\n
\u30b5\u30fc\u30d3\u30b9\u3092\u6709\u52b9\u306b\u3057\u3066Nitter\u3092\u8d77\u52d5\u3057\u307e\u3059\uff0e
\n$ sudo systemctl enable --now nitter.service\n$ systemctl status nitter\n\u25cf nitter.service - Nitter (An alternative Twitter front-end)\n Loaded: loaded (/etc/systemd/system/nitter.service; enabled; vendor preset: enabled)\n Active: active (running) since Wed 2021-02-17 01:13:07 JST; 34s ago\n Main PID: 19702 (nitter)\n Tasks: 1 (limit: 4696)\n Memory: 3.6M\n CGroup: /system.slice/nitter.service\n \u2514\u250019702 /home/nitter/nitter/nitter\n$ w3m http://localhost:8080/\n\u5916\u306b\u516c\u958b\u305b\u305a\uff0c\u30ed\u30fc\u30ab\u30eb\u3067\u52d5\u4f5c\u3055\u305b\u308b\u5834\u5408\u306f\u3053\u3053\u307e\u3067\u306e\u624b\u9806\u3067OK\u3067\u3059\uff0e
\n\u203b\u3053\u306e\u624b\u9806\u306f\u30ed\u30fc\u30ab\u30eb\u3067\u52d5\u304b\u3059\u5834\u5408\u306f\u5fc5\u8981\u3042\u308a\u307e\u305b\u3093\uff0e
\n\u4eca\u56de\u306f\u30b5\u30d6\u30c9\u30e1\u30a4\u30f3\u3092\u7528\u610f\u3057\u307e\u3057\u305f\uff0eDNS\u3092\u8a2d\u5b9a\u3057\u3066 nitter.matoken.org \u3092\u7528\u610f\u3057\u307e\u3057\u305f\uff0e\u8a2d\u5b9a\u30df\u30b9\u3057\u305f\u3068\u304d\u306b\u30ea\u30ab\u30d0\u30ea\u3057\u3084\u3059\u3044\u3088\u3046\u306bTTl\u3092\u77ed\u304f\u8a2d\u5b9a\u3057\u3066\u3046\u307e\u304f\u884c\u3063\u305f\u3089\u3044\u3064\u3082\u306e\u9577\u3055\u306b\u3057\u307e\u3059\uff0e
\n\u8a3c\u660e\u66f8\u306fcertbot\u3092\u4f7f\u3044Let\u2019s encrypt\u3067\u4f5c\u6210\u3057\u307e\u3057\u305f\uff0e
\n$ sudo certbot certonly -d nitter.matoken.org\n\u203b\u3053\u306e\u624b\u9806\u306f\u30ed\u30fc\u30ab\u30eb\u3067\u52d5\u304b\u3059\u5834\u5408\u306f\u5fc5\u8981\u3042\u308a\u307e\u305b\u3093\uff0e
\nNitter\u3092\u305d\u306e\u307e\u307e\u5916\u306b\u516c\u958b\u3059\u308b\u306e\u306f\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u7684\u306b\u826f\u304f\u306a\u3044\u3068\u3044\u3046\u3053\u3068\u3067\uff0capache httpd\u3067httpd\u306e\u51e6\u7406\u3092\u3057\u3066Nitter\u306e8080\u306b\u8ee2\u9001\u3059\u308b\u3088\u3046\u306b\u3057\u307e\u3057\u305f\uff0e
\nNitter\u7528\u306eapache httpd\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u3092\u7528\u610f\u3057\u307e\u3059\uff0e
\n<VirtualHost *:80>\n ServerName nitter.matoken.org\n Redirect permanent / https://nitter.matoken.org/\n</VirtualHost>\n<IfModule mod_ssl.c>\n<VirtualHost *:443>\n ServerName nitter.matoken.org\n ServerAdmin webmaster@matoken.org\n\n <Proxy *>\n Order deny,allow\n Allow from all\n </Proxy>\n\n ProxyPreserveHost On\n ProxyPass / http://127.0.0.1:8080/ nocanon\n ProxyPassReverse / http://127.0.0.1:8080/\n AllowEncodedSlashes On\n\n ErrorLog ${APACHE_LOG_DIR}/error.nitter.matoken.org.log\n CustomLog ${APACHE_LOG_DIR}/access.nitter.matoken.org.log combined\n\n SSLCertificateFile /etc/letsencrypt/live/nitter.matoken.org/fullchain.pem\n SSLCertificateKeyFile /etc/letsencrypt/live/nitter.matoken.org/privkey.pem\n\n</VirtualHost>\n</IfModule>\n\u8a2d\u5b9a\u3092\u6709\u52b9\u306b\u3057\u3066\u30c6\u30b9\u30c8\u5f8c\u53cd\u6620\u3057\u307e\u3059\uff0e
\n$ sudo a2ensite nitter.matoken.org.conf (1)\n$ sudo apache2ctl configtest (2)\n$ sudo systemctl reload apache2 (3)\n\u3053\u306e\u72b6\u614b\u3067 http://nitter.matoken.org/ \u53ca\u3073 https://nitter.matoken.org/ \u306b\u30a2\u30af\u30bb\u30b9\u3057\u3066\u307f\u3066 Nitter \u304c\u5229\u7528\u3067\u304d\u305f\u3089OK\u3067\u3059\uff0e
\n\u3068\u308a\u3042\u3048\u305a\u4e00\u822c\u516c\u958b\u3057\u3066\u304a\u304d\u307e\u3059\u304c\uff0c\u4eca\u306e https://nitter.net \u307f\u305f\u3044\u306b\u30a2\u30af\u30bb\u30b9\u5236\u9650\u304c\u3057\u3087\u3063\u3061\u3085\u3046\u304b\u304b\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u3089\u5236\u9650\u3059\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e
\n$ git -C ~nitter/nitter log -1\ncommit f392b6ca37e66c7c759aa98db23e0bdc62b39c3d (HEAD -> master, origin/master, origin/HEAD)\nAuthor: Lukas Winkler <github@lw1.at>\nDate: Sun Feb 14 12:49:09 2021 +0100\n\n run optipng -o 9 on all images (#337)\n$ dpkg-query -W apache2 redis* libsass-dev certbot\napache2 2.4.38-3+deb10u4\ncertbot 0.31.0-1+deb10u1\nlibsass-dev:amd64 3.5.5-4\nredis-server 5:5.0.3-4+deb10u2\nredis-tools 5:5.0.3-4+deb10u2\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\nNextcloud\u306eWeb\u7248\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068 Internal Server Error \u304c\u5e30\u3063\u3066\u304f\u308b\u3088\u3046\u306b\u306a\u3063\u3066\u3044\u307e\u3057\u305f\uff0e
Internal Server Error
\nThe server encountered an internal error and was unable to complete your request.
\nPlease contact the server administrator if this error reappears multiple times, please include the technical details below in your report.
\nMore details can be found in the server log.
\u5225\u306e\u30e6\u30fc\u30b6\u3067\u8a66\u3059\u3068\u30ed\u30b0\u30a4\u30f3\u753b\u9762\u306f\u8868\u793a\u3055\u308c\u3066\u8a8d\u8a3c\u6a5f\u80fd\u306f\u52d5\u4f5c\u3057\u307e\u3059\uff0e\u3057\u304b\u3057\u30ed\u30b0\u30a4\u30f3\u5f8c\u540c\u3058\u3088\u3046\u306b Internal Server Error \u3053\u306e\u3068\u304dAndroid\u7248\u30a2\u30d7\u30ea\u3067\u306f\u666e\u901a\u306b\u5229\u7528\u3067\u304d\u3066\u3044\u305d\u3046\u3067\u3059\uff0e
\u3088\u304f\u3042\u308b\u306e\u304c\u30b5\u30dd\u30fc\u30c8\u5bfe\u8c61\u5916\u306b\u306a\u3063\u305f\u30ec\u30ac\u30b7\u30fc\u306a\u30a2\u30d7\u30ea\u3092\u5c0e\u5165\u3059\u308b\u3068\u540c\u3058\u3088\u3046\u306a\u72b6\u614b\u306b\u306a\u308b\u3053\u3068\u304c\u3042\u308a\u307e\u3059\uff0e
\n\u3057\u304b\u3057\uff0c\u524d\u56de\u5229\u7528\u3067\u304d\u3066\u3044\u305f\u3068\u304d\u3068\u73fe\u5728\u306e\u9593\u306b\u7279\u306b\u30c7\u30a3\u30b9\u30c8\u30ea\u30d3\u30e5\u30fc\u30b7\u30e7\u30f3, Nextcloud, Nextcloud\u30a2\u30d7\u30ea\u5171\u306b\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u306f\u3057\u3066\u3044\u306a\u3044\u306f\u305a\u3067\u3059\uff0e
\u30ed\u30b0\u3092\u78ba\u8a8d\u3059\u308b\u3068httpd\u306eaccess/error\u306elog\u306f\u7279\u306b\u554f\u984c\u306a\u3055\u305d\u3046\uff0e
\nnextcloud.log\u3067\u305d\u308c\u3089\u3057\u3044\u306e\u306f file_put_contents failed \u3067\u3057\u3087\u3046\u304b?
config.php \u3067\u78ba\u8a8d\u3067\u304d\u308b\uff0e$ grep log config/config.php\n 'log_type' => 'file',\n 'logfile' => '/var/log/nextcloud.log',\n 'loglevel' => 0,\n$ tail -f /var/log/nextcloud.log | jq .\n
{\n \"reqId\": \"DVQsgBekfOCY3dvjYO6w\",\n \"level\": 3,\n \"time\": \"2021-01-18T14:59:53+00:00\",\n \"remoteAddr\": \"180.131.110.140\",\n \"user\": \"matoken\",\n \"app\": \"core\",\n \"method\": \"GET\",\n \"url\": \"/index.php/apps/files/\",\n \"message\": {\n \"Exception\": \"OCP\\\\Files\\\\GenericFileException\",\n \"Message\": \"file_put_contents failed\",\n \"Code\": 0,\n \"Trace\": [\n {\n\u307e\u305a\u306f\u624b\u52d5\u3067\u30d5\u30a1\u30a4\u30eb\u3068\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u3092\u53d6\u3063\u3066\u304a\u304d\u307e\u3059\uff0e
\n$ sudo -u www-data php /var/www/files.matoken.org/occ maintenance:mode --on (1)\n$ sudo -u www-data tar cvf - ${NEXTCLOUD_PATH} | xz > ${BACKUP_PATH}/nextcloud-`date +%F_%T`.tar.xz (2)\n$ sudo -u www-data tar cvf - ${NEXTCLOUD_DATA_PATH} | xz > ${BACKUP_PATH}/nextcloud-data-`date +%F_%T`.tar.xz (3)\n$ mysqldump --opt --all-databases --events | xz > ${BACKUP_PATH}/nextcloud-`date +%F_%T`.sql.xz (4)\n$ sudo -u www-data php /var/www/files.matoken.org/occ maintenance:mode --off (5)\n| 1 | \n\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u30e2\u30fc\u30c9\u306b\u3059\u308b | \n
| 2 | \nNextcloud\u81ea\u4f53\u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7 | \n
| 3 | \nNextcloud\u30c7\u30fc\u30bf\u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7 | \n
| 4 | \n\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7 | \n
| 5 | \n\u30e1\u30f3\u30c6\u30f3\u30b9\u30e2\u30fc\u30c9\u3092\u7d42\u4e86 | \n
occ \u306e maintenance:repair \u30b3\u30de\u30f3\u30c9\u3092\u8a66\u3057\u307e\u3059\uff0e
$ sudo -u www-data php ${NEXTCLOUD_PATH}/occ maintenance:repair\n - Repair MySQL collation\n - All tables already have the correct collation -> nothing to do\n - Repair mime types\n : \u4ee5\u4e0b\u7565\n\u30b3\u30de\u30f3\u30c9\u7d42\u4e86\u5f8cweb\u3092\u518d\u8aad\u8fbc\u3059\u308b\u3068\u30a8\u30e9\u30fc\u306f\u89e3\u6d88\u3055\u308c\u307e\u3057\u305f\uff0e :)
\n\u3057\u304b\u3057\u30d5\u30a1\u30a4\u30eb\u306e\u4e00\u89a7\u304c\u8868\u793a\u3055\u308c\u307e\u305b\u3093\uff0e\u6700\u65b0\u30d5\u30a1\u30a4\u30eb\u306f\u8868\u793a\u3055\u308c\u308b\u306e\u3067\u305d\u306e\u30d5\u30a1\u30a4\u30eb\u3092\u78ba\u8a8d\u3059\u308b\u3068\u8868\u793a\u3055\u308c\u307e\u3059\uff0e
\n\u6b21\u306b occ files:scan \u3092\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
$ sudo -u www-data php ${NEXTCLOUD_PATH}/occ files:scan --all\nStarting scan for user 1 out of 7 (user1)\n : \u203b\u7701\u7565\n+---------+-------+--------------+\n| Folders | Files | Elapsed time |\n+---------+-------+--------------+\n| 20752 | 34164 | 00:04:33 |\n+---------+-------+--------------+\n\u3053\u308c\u3067\u306f\u5909\u308f\u3089\u306a\u304b\u3063\u305f\u3088\u3046\u3067\u3059\uff0e\u591a\u5206\u5fc5\u8981\u306a\u304b\u3063\u305f\uff0e
\n\u6b21\u306b occ files:scan-app-data \u3092\u8a66\u3057\u307e\u3059\uff0e
$ sudo -u www-data php ${NEXTCLOUD_PATH}/occ files:scan-app-data\nScanning AppData for files\n\n+---------+-------+--------------+\n| Folders | Files | Elapsed time |\n+---------+-------+--------------+\n| 84 | 97 | 00:00:01 |\n+---------+-------+--------------+\n\u3053\u308c\u304c\u5f53\u305f\u308a\u3060\u3063\u305f\u3088\u3046\u3067\u5fa9\u6d3b\u3057\u307e\u3057\u305f!
\n\u30ed\u30b0\u3092\u898b\u308b\u3068\u3053\u306e\u554f\u984c\u304c\u767a\u751f\u3057\u3066\u3044\u308b\u9593\u3082\u4ed6\u306eNextcloud\u30a2\u30d7\u30ea\u306f\u52d5\u4f5c\u3057\u3066\u3044\u305f\u3088\u3046\u3060\u3057\uff0cAndroid\u30a2\u30d7\u30ea\u7248\u3067\u306f\u30d5\u30a1\u30a4\u30eb\u306e\u81ea\u52d5\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3082\u52d5\u3044\u3066\u3044\u305f\u3088\u3046\u306a\u306e\u3067\u6050\u3089\u304fNextcloud Web\u7248\u306e\u90e8\u5206\u304c\u58ca\u308c\u3066\u3044\u305f\u306e\u3067\u306f\u306a\u3044\u304b\u3068\u601d\u3044\u307e\u3059\uff0e
\n\u3057\u304b\u3057\u6cbb\u3063\u305f\u306e\u306f\u3044\u3044\u3051\u3069\u306a\u305c\u3053\u308c\u304c\u8d77\u3053\u3063\u305f\u304b\u304c\u8b0e\u306a\u306e\u304c\u6c17\u6301\u3061\u60aa\u3044\u3067\u3059\u2026\u2026\uff0e
\n$ sudo -u www-data php /var/www/files.matoken.org/occ -V\nNextcloud 20.0.5\n$ dpkg-query -W php mariadb-server\nmariadb-server 1:10.3.27-0+deb10u1\nphp 2:7.3+69\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\n\u5148\u65e5 Nextcloud 19.0.6 \u304b\u3089 20.0.4 \u306b\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3057\u307e\u3057\u305f\uff0e
\n\u3059\u308b\u3068\u300c\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\uff06\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u8b66\u544a\u300d\u753b\u9762\u306b\u3044\u304f\u3064\u304b\u8b66\u544a\u304c\u51fa\u3066\u304d\u305f\u306e\u3067\u305d\u306e\u5bfe\u5fdc\u30e1\u30e2\u3067\u3059\uff0e
\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\uff06\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u8b66\u544a\n\u30b5\u30fc\u30d0\u30fc\u306e\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u3068\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306b\u3068\u3063\u3066\u91cd\u8981\u306a\u3053\u3068\u306f\u3001\u3059\u3079\u3066\u304c\u6b63\u78ba\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u3053\u3068\u3067\u3059\u3002\u3042\u306a\u305f\u306e\u52a9\u3051\u3068\u306a\u308b\u3088\u3046\u3001Nextcloud\u3067\u306f\u4e00\u90e8\u306e\u81ea\u52d5\u30c1\u30a7\u30c3\u30af\u3092\u884c\u3063\u3066\u3044\u307e\u3059\u3002\u8a73\u7d30\u306a\u60c5\u5831\u306f\u3001\u30ea\u30f3\u30af\u5148\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n\n\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u306b\u95a2\u3057\u3066\u8b66\u544a\u304c\u3044\u304f\u3064\u304b\u3042\u308a\u307e\u3059\u3002\nThe old server-side-encryption format is enabled. We recommend disabling this. For more details see the documentation.\n\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u3044\u304f\u3064\u304b\u306e\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u304c\u3042\u308a\u307e\u305b\u3093\u3002 \u5927\u304d\u306a\u30c6\u30fc\u30d6\u30eb\u306b\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u3092\u8ffd\u52a0\u3059\u308b\u3068\u3001\u81ea\u52d5\u7684\u306b\u8ffd\u52a0\u3055\u308c\u306a\u3044\u307e\u3067\u306b\u6642\u9593\u304c\u304b\u304b\u308b\u53ef\u80fd\u6027\u304c\u3042\u308b\u305f\u3081\u3067\u3059\u3002 \"occ db\uff1aadd-missing-indices\"\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u306b\u3088\u3063\u3066\u3001\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u304c\u5b9f\u884c\u3057\u7d9a\u3051\u3066\u3044\u308b\u9593\u306b\u305d\u308c\u3089\u306e\u6b20\u3051\u3066\u3044\u308b\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u3092\u624b\u52d5\u3067\u8ffd\u52a0\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u304c\u8ffd\u52a0\u3055\u308c\u308b\u3068\u3001\u305d\u308c\u3089\u306e\u30c6\u30fc\u30d6\u30eb\u3078\u306e\u30af\u30a8\u30ea\u306f\u901a\u5e38\u306f\u308b\u304b\u306b\u901f\u304f\u306a\u308a\u307e\u3059\u3002\n\u30c6\u30fc\u30d6\u30eb \"oc_cards\"\u306e\u30a4\u30f3\u30c7\u30c3\u30af\u30b9 \"cards_abiduri\"\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002\nThe database is missing some primary keys. Due to the fact that adding primary keys on big tables could take some time they were not added automatically. By running \"occ db:add-missing-primary-keys\" those missing primary keys could be added manually while the instance keeps running.\nMissing primary key on table \"oc_federated_reshares\".\nMissing primary key on table \"oc_systemtag_object_mapping\".\nMissing primary key on table \"oc_comments_read_markers\".\nMissing primary key on table \"oc_collres_resources\".\nMissing primary key on table \"oc_collres_accesscache\".\nMissing primary key on table \"oc_filecache_extended\".\n\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306e\u3044\u304f\u3064\u304b\u306e\u5217\u3067\u3001big int\u3078\u306e\u5909\u63db\u304c\u884c\u308f\u308c\u3066\u3044\u307e\u305b\u3093\u3002 \u5927\u304d\u306a\u30c6\u30fc\u30d6\u30eb\u3067\u30ab\u30e9\u30e0\u30bf\u30a4\u30d7\u3092\u5909\u66f4\u3059\u308b\u3068\u6642\u9593\u304c\u304b\u304b\u308b\u3053\u3068\u304c\u3042\u308b\u305f\u3081\u3001\u81ea\u52d5\u7684\u306b\u306f\u5909\u66f4\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002 'occ db\uff1aconvert-filecache-bigint'\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u306b\u3088\u3063\u3066\u3001\u305d\u308c\u3089\u306e\u4fdd\u7559\u4e2d\u306e\u5909\u66f4\u306f\u624b\u52d5\u3067\u9069\u7528\u3067\u304d\u307e\u3059\u3002 \u3053\u306e\u64cd\u4f5c\u306f\u3001\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u304c\u30aa\u30d5\u30e9\u30a4\u30f3\u306e\u9593\u306b\u884c\u3046\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u8a73\u7d30\u306b\u3064\u3044\u3066\u306f\u3053\u308c\u306b\u95a2\u3059\u308b\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u30da\u30fc\u30b8\u3092\u8aad\u3093\u3067\u304f\u3060\u3055\u3044\u3002\nfederated_reshares.share_id\nfilecache_extended.fileid\nshare_external.id\nshare_external.parent\n\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u30ac\u30a4\u30c9 ↗\u3092\u518d\u78ba\u8a8d\u3057\u3066\u3001 \u30ed\u30b0 \u306b\u3042\u308b\u3059\u3079\u3066\u306e\u30a8\u30e9\u30fc\u3084\u8b66\u544a\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n
\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u304b\u3089\u4fee\u6b63\u3057\u3066\u3044\u304d\u307e\u3059\uff0e\u307e\u3042\u66f8\u3044\u3066\u3042\u308b\u30b3\u30de\u30f3\u30c9\u3092\u53e9\u304f\u3060\u3051\u3067\u3059\u304c\uff0e
\n$ sudo -u www-data php ${NEXTCLOUDPATH}/occ db:add-missing-indices\nCheck indices of the share table.\nCheck indices of the filecache table.\nCheck indices of the twofactor_providers table.\nCheck indices of the login_flow_v2 table.\nCheck indices of the whats_new table.\nCheck indices of the cards table.\nAdding cards_abiduri index to the cards table, this can take some time...\ncards table updated successfully.\nCheck indices of the cards_properties table.\nCheck indices of the calendarobjects_props table.\nCheck indices of the schedulingobjects table.\nCheck indices of the oc_properties table.\n\n\n\n\nThe database is missing some primary keys. Due to the fact that adding primary keys on big tables could take some time they were not added automatically. By running “occ db:add-missing-primary-keys” those missing primary keys could be added manually while the instance keeps running.
\n
\nMissing primary key on table “oc_federated_reshares”.
\nMissing primary key on table “oc_systemtag_object_mapping”.
\nMissing primary key on table “oc_comments_read_markers”.
\nMissing primary key on table “oc_collres_resources”.
\nMissing primary key on table “oc_collres_accesscache”.
\nMissing primary key on table “oc_filecache_extended”.
$ sudo -u www-data php ${NEXTCLOUDPATH}/occ db:add-missing-primary-keys\nCheck primary keys.\nAdding primary key to the federated_reshares table, this can take some time...\nfederated_reshares table updated successfully.\nAdding primary key to the systemtag_object_mapping table, this can take some time...\nsystemtag_object_mapping table updated successfully.\nAdding primary key to the comments_read_markers table, this can take some time...\ncomments_read_markers table updated successfully.\nAdding primary key to the collres_resources table, this can take some time...\ncollres_resources table updated successfully.\nAdding primary key to the collres_accesscache table, this can take some time...\ncollres_accesscache table updated successfully.\nAdding primary key to the filecache_extended table, this can take some time...\nfilecache_extended table updated successfully.\n\n\n\n\n\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306e\u3044\u304f\u3064\u304b\u306e\u5217\u3067\u3001big int\u3078\u306e\u5909\u63db\u304c\u884c\u308f\u308c\u3066\u3044\u307e\u305b\u3093\u3002 \u5927\u304d\u306a\u30c6\u30fc\u30d6\u30eb\u3067\u30ab\u30e9\u30e0\u30bf\u30a4\u30d7\u3092\u5909\u66f4\u3059\u308b\u3068\u6642\u9593\u304c\u304b\u304b\u308b\u3053\u3068\u304c\u3042\u308b\u305f\u3081\u3001\u81ea\u52d5\u7684\u306b\u306f\u5909\u66f4\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002 ‘occ db\uff1aconvert-filecache-bigint\u2019\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u306b\u3088\u3063\u3066\u3001\u305d\u308c\u3089\u306e\u4fdd\u7559\u4e2d\u306e\u5909\u66f4\u306f\u624b\u52d5\u3067\u9069\u7528\u3067\u304d\u307e\u3059\u3002 \u3053\u306e\u64cd\u4f5c\u306f\u3001\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u304c\u30aa\u30d5\u30e9\u30a4\u30f3\u306e\u9593\u306b\u884c\u3046\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002
\n
$ sudo -u www-data php ${NEXTCLOUDPATH}/occ db:convert-filecache-bigint\nFollowing columns will be updated:\n\n* federated_reshares.share_id\n* filecache_extended.fileid\n* share_external.id\n* share_external.parent\n\nThis can take up to hours, depending on the number of files in your instance!\nContinue with the conversion (y/n)? [n] y\n\u3053\u3053\u306fE2EE\u3067\u4f7f\u3046\u30b5\u30fc\u30d0\u30b5\u30a4\u30c9\u306e\u6697\u53f7\u5316\u5f62\u5f0f\u3067\u53e4\u3044\u5f62\u5f0f\u304c\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u308b\u306e\u3092\u7121\u52b9\u306b\u3057\u305f\u307b\u3046\u304c\u3044\u3044\u3088\u3063\u3066\u8b66\u544a\u306e\u3088\u3046\u3067\u3059\uff0e
\n\n\n\n\nThe old server-side-encryption format is enabled. We recommend disabling this. For more details see the documentation.
\n
\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u53c2\u8003\u306b\uff0c
\nhttps://docs.nextcloud.com/server/20/admin_manual/configuration_files/encryption_migration.html
\u53e4\u3044\u5f62\u5f0f\u304c\u4f7f\u308f\u308c\u3066\u3044\u308b\u304b\u3092\u78ba\u8a8d\u3057\u307e\u3059\uff0e
\n$ sudo -u www-data php ${NEXTCLOUDPATH}/occ encryption:scan:legacy-format\nScanning all files for legacy encryption\nScanning all files for matoken\nScanning all files for hoge\n :\n\nencryption:scan:legacy-format\n\u53e4\u3044\u5f62\u5f0f\u306f\u4f7f\u308f\u308c\u3066\u3044\u306a\u304b\u3063\u305f\u306e\u3067\u8a2d\u5b9a( ${NEXTCLOUDPATH/config/config.php )\u3067\u660e\u793a\u7684\u306b\u7121\u52b9\u306b\u3057\u3066\u3057\u307e\u3044\u307e\u3059\uff0e
\n- 'encryption.legacy_format_support' => false,\n+ 'encryption.legacy_format_support' => true,\n\n
\u3082\u3057\u53e4\u3044\u5f62\u5f0f\u304c\u6b8b\u3063\u3066\u3044\u3066\u79fb\u884c\u3057\u305f\u3044\u3067\u3082\u30de\u30b9\u30bf\u30fc\u30ad\u30fc\u3092\u8a2d\u5b9a\u3057\u3066\u3044\u306a\u3044\u3068\u3044\u3046\u5834\u5408\u306f\u8a72\u5f53\u30d5\u30a1\u30a4\u30eb\u306e\u6240\u6301\u30e6\u30fc\u30b6\u30fc\u306b\u30c7\u30fc\u30bf\u3092\u30b3\u30d4\u30fc\u3057\u76f4\u3057\u3066\u3082\u3089\u3046\u5fc5\u8981\u304c\u3042\u308a\u305d\u3046\u3067\u3059\uff0e\u3042\u307e\u308a\u3084\u308a\u305f\u304f\u306a\u3044\u4f5c\u696d\u3067\u3059\u306d\uff0e(\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3092\u898b\u308b\u3068\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u76f4\u3057\u3092\u3057\u3066\u304f\u308c\u308b\u306e\u304b\u3082\u3057\u308c\u306a\u3044)
\n\u3053\u308c\u3067\u518d\u8aad\u8fbc\u3059\u308b\u3068\u3059\u3079\u3066\u306e\u30c1\u30a7\u30c3\u30af\u306b\u5408\u683c\u3057\u307e\u3057\u305f :)
\n$ sudo -u www-data php /var/www/files.matoken.org/occ -V\nNextcloud 20.0.4\n$ dpkg-query -W php mariadb-server\nmariadb-server 1:10.3.27-0+deb10u1\nphp 2:7.3+69\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -vm\n#1 SMP Debian 4.19.160-2 (2020-11-28) x86_64\n
Nextcloud 19\u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u307e\u3057\u305f\uff0e
\n\u4eca\u56de\u306e\u65b0\u6a5f\u80fd\u306bCollabora Online \u304cNextcloud Hub \u306b\u542b\u307e\u308c\u308b\u3088\u3046\u306b\u306a\u308a\uff0c\u7c21\u5358\u306b\u3059\u3079\u3066\u306e\u30e6\u30fc\u30b6\u304c\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u305d\u3046\u3067\u3059\uff0e
\n\n\n\n\nEasy to install for every user
\n
\nCollabora Online will be shipped out of the box with the new Nextcloud 19 Hub. A special community server has been developed, that can easily be installed with a single click by every user, and so avoiding web server and docker containers installation and configuration.
\u5c11\u3057\u524d\u306b\u3082\u30c7\u30e2\u30b5\u30fc\u30d0\u30fc\u3092\u7528\u610f\u3057\u3066\u304f\u308c\u3066\u304a\u624b\u8efd\u306b\u8a66\u305b\u308b\u3088\u3046\u306b\u3057\u3066\u304f\u308c\u3066\u3044\u307e\u3057\u305f\u304c\u4eca\u56de\u306f\u81ea\u5206\u306e\u74b0\u5883\u3067\u3068\u3066\u3082\u7c21\u5358\u306b\u52d5\u304f\u3088\u3046\u306b\u306a\u3063\u305f\u3088\u3046\u3067\u3059\uff0e
\n\u3068\u3044\u3046\u3053\u3068\u3067Nextcloud 19 \u306b\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3057\u3066\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\nNextcloud 19\u74b0\u5883\u7ba1\u7406\u8005\u6a29\u9650\u3067 https://$NEXTCLOUDURL/index.php/settings/admin/richdocuments \u306b\u30a2\u30af\u30bb\u30b9\u3057\u3066\u8a2d\u5b9a\u3092\u898b\u3066\u307f\u307e\u3059\uff0e
Use the built-in CODE \u3068\u3044\u3046\u8a2d\u5b9a\u304c\u5897\u3048\u3066\u3044\u307e\u3059\uff0e\u304c\u30b0\u30ec\u30fc\u30a2\u30a6\u30c8\u3057\u3066\u3044\u307e\u3059\uff0e
\n\n\n\nUse the built-in CODE – Collabora Online Development Edition
\n
\nEasy to install, for personal use or for small teams. A bit slower than a standalone server and without the advanced scalability features.
\u3066\u3053\u3068\u3067\uff0c\u4ee5\u4e0b\u306eNextcloud \u30a2\u30d7\u30ea\u3092\u5c0e\u5165\u3057\u307e\u3059\uff0e
\n\u5c0e\u5165\u306f\u672c\u5f53\u306b\u7c21\u5358\u3067\u300c\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u6709\u52b9\u306b\u3059\u308b\u300d\u3092\u62bc\u3059\u3060\u3051\u3067\u3059\uff0e
\n\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u3067\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u5c0e\u5165\u3067\u304d\u307e\u3059\uff0e
\n$ sudo -u www-data php ./occ app:install richdocumentscode\nrichdocumentscode installed\nrichdocumentscode enabled\n\u5c0e\u5165\u3055\u308c\u308b\u3068 Built-in CODE \u304c\u9078\u3079\u308b\u3088\u3046\u306b\u306a\u3063\u3066\u3044\u308b\u306e\u3067\u9078\u629e\u3057\u307e\u3059\uff0e\u5f8c\u306f\u30d5\u30a1\u30a4\u30eb\u3067\u30aa\u30d5\u30a3\u30b9\u6587\u7ae0\u3092\u958b\u3044\u305f\u308a\u65b0\u898f\u4f5c\u6210\u3059\u308c\u3070\u81ea\u52d5\u7684\u306b\u8d77\u52d5\u3057\u3066\u5229\u7528\u3067\u304d\u307e\u3059\uff0e
\u521d\u56de\u306f\u3061\u3087\u3063\u3068\u6642\u9593\u304c\u304b\u304b\u308a\u307e\u3059\uff0e\u3053\u308c\u306fCODE\u304c\u88cf\u3067\u8d77\u52d5\u3059\u308b\u6642\u9593\u304c\u304b\u304b\u308b\u304b\u3089\u307f\u305f\u3044\u3067\u3059\uff0e
\n\u5f8c\u306f\u666e\u901a\u306b\u5229\u7528\u3067\u304d\u307e\u3059 :)
\nDemo\u30b5\u30fc\u30d0\u3068\u9055\u3063\u3066\u5236\u9650\u3082\u306a\u3044\u306e\u3067\u666e\u901a\u306b\u4f7f\u3048\u307e\u3059\uff0eNextcloud\u3067URL\u5171\u6709\u3092\u3059\u308b\u3068GoogleDoc \u306e\u3088\u3046\u306b\u307f\u3093\u306a\u3067\u540c\u6642\u306b\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u7de8\u96c6\u3057\u305f\u308a\u3082\u51fa\u6765\u307e\u3059\uff0e(Nextcloud\u306e\u6307\u5b9a\u30e6\u30fc\u30b6\u3060\u3051\u7de8\u96c6\u53ef\u80fd\u3068\u304bURL\u3092\u77e5\u3063\u3066\u308b\u4eba\u306f\u8ab0\u3067\u3082\u7de8\u96c6\u3067\u304d\u308b\u3068\u304b\u3082\u51fa\u6765\u307e\u3059\uff0e)
\u5c11\u3057\u4f7f\u3063\u3066\u3044\u3066\u6c17\u306b\u306a\u3063\u305f\u306e\u306f\u4ee5\u4e0b\u306e\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u305f\u307e\u306b\u51fa\u307e\u3059\uff0e\u30c7\u30a3\u30b9\u30af\u7a7a\u304d\u5bb9\u91cf\u304c 4GB\u3067\u51fa\u308b\u3068\u304d\u3068\u51fa\u306a\u3044\u3068\u304d\u304c\u3042\u308a\u304e\u308a\u304e\u308a\u52d5\u3044\u3066\u3044\u308b\u306e\u304b\u306a\u3068\u601d\u3044\u307e\u3057\u305f\u304c\uff0c\u7a7a\u304d\u5bb9\u91cf\u30926GB\u306b\u7a7a\u3051\u3066\u3082\u51fa\u305f\u308a\u51fa\u306a\u304b\u3063\u305f\u308a\u3057\u307e\u3059\uff0e\u3082\u3057\u304b\u3057\u305f\u3089\u30d0\u30b0\u304b\u3082?
\n\u305d\u3057\u3066\u3053\u3061\u3089\u306e\u753b\u9762\u306f\u30bb\u30c3\u30b7\u30e7\u30f3\u304c\u6570\u500b(2\u500b\u306e\u3064\u3082\u308a)\u3067\u3082\u51fa\u307e\u3059\uff0e\u30bb\u30c3\u30b7\u30e7\u30f3\u306e\u30ab\u30a6\u30f3\u30c8\u304c\u304a\u304b\u3057\u3044\u306e\u304b\u4ed6\u306e\u30d0\u30b0\u306a\u306e\u304b?
\n\u4eca\u56de\u306eCollabora Online \u306f\u3069\u3093\u306a\u4ed5\u7d44\u307f\u306a\u306e\u304b\u306a\u3068\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u8997\u304f\u3068\uff0cCollabora Online \u304cAppImage \u5316\u3055\u308c\u3066\u3054\u308d\u3063\u3068\u7f6e\u304b\u308c\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e
\n$ ls -l apps/richdocumentscode/collabora/\ntotal 339320\n-rwxr--r-- 1 www-data www-data 347455528 Jun 5 01:27 Collabora_Online.AppImage\n\u3053\u308c\u304c\u6587\u7ae0\u3092\u9589\u3058\u3066\u3082\u305a\u3063\u3068\u8d77\u52d5\u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0eRAM\u304c\u5c11\u306a\u3044\u306e\u3067\u3061\u3087\u3063\u3068\u8f9b\u3044\uff0e
\n$ ps aux | pee \"head -1\" \"grep Collabora_OnlineAppImage\"\nUSER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND\nmk 29361 0.0 0.0 2272 752 pts/2 S+ 23:04 0:00 pee head -1 grep Collabora_OnlineAppImage\n\u3053\u306e\u30de\u30b7\u30f3\u306f\u30ea\u30e2\u30fc\u30c8\u306e\u30b5\u30fc\u30d0\u3067\u65e5\u672c\u8a9e\u30d5\u30a9\u30f3\u30c8\u304c\u307b\u3068\u3093\u3069\u5165\u3063\u3066\u3044\u306a\u3044\u306e\u3067Collabora Online \u3067\u3082\u30d5\u30a9\u30f3\u30c8\u304c\u3042\u307e\u308a\u9078\u3079\u307e\u305b\u3093\uff0e\u30b7\u30b9\u30c6\u30e0\u306b\u30d5\u30a9\u30f3\u30c8\u3092\u5c0e\u5165\u3057\u307e\u3059\uff0e\u4eca\u56de\u306fNoto CJK \u3092\u5c0e\u5165\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\n$ sudo apt install fonts-noto-cjk\n\u5c0e\u5165\u3057\u3066\u3082\u305d\u306e\u307e\u307e\u3067\u306fCollabora Online \u306b\u306f\u53cd\u6620\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\u6587\u7ae0\u3092\u9589\u3058\u3066\uff0cAppImage \u306e\u30d7\u30ed\u30bb\u30b9\u3092kill \u3057\u3066\u518d\u5ea6\u6587\u7ae0\u3092\u958b\u304f\u3068\u307e\u305f AppImage \u304c\u8d77\u52d5\u3057\u3066\u53cd\u6620\u3055\u308c\u307e\u3057\u305f\uff0e
\u3068\u3044\u3046\u3053\u3068\u3067\u3068\u3066\u3082\u7c21\u5358\u306bWeb\u3060\u3051\u3067Nextcloud \u304b\u3089Collabora Online \u304c\u5c0e\u5165\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\uff0e
\n\u3068\u3066\u3082\u4fbf\u5229\u306a\u306e\u3067\u304a\u3059\u3059\u3081\u3067\u3059\uff0e
$ sudo -u www-data php ./occ app:list | grep richdocuments\n - richdocuments: 3.7.0\n - richdocumentscode: 4.2.403\n$ sudo -u www-data php ./occ status\n - installed: true\n - version: 19.0.0.12\n - versionstring: 19.0.0\n - edition:\n$ dpkg-query -W php apache2\napache2 2.4.38-3+deb10u3\nphp 2:7.3+69\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\n
Nextcloud 19\u304c06/03\u306b\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u307e\u3057\u305f\uff0e
\n\u672a\u306018\u304b\u3089\u306e\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u306f\u6765\u3066\u3044\u307e\u305b\u3093\u304c\u4e00\u6642\u7684\u306b beta channel \u306b\u3057\u3066 19 \u306b\u30a2\u30c3\u30d7\u30b0\u30ec\u30fc\u30c9\u3057\u3066\u307f\u307e\u3057\u305f\uff0e
\n$ sudo -u www-data php ./updater/updater.phar\nNextcloud Updater - version: v16.0.3-3-ga0c2b25 dirty\n\nCurrent version is 18.0.5.\n\nNo update available.\n\nNothing to do.\n\u5148\u305a\u306f\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u3092\u3068\u3063\u3066\u304a\u304d\u307e\u3059\uff0eNextcloud\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u4ee5\u4e0b\u3068\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3092\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u3057\u3066\u304a\u3051\u3070\u6700\u60aa\u30c7\u30fc\u30bf\u304c\u58ca\u308c\u305f\u308a\u6d88\u3048\u3066\u3057\u307e\u3063\u3066\u5fa9\u5143\u3067\u304d\u307e\u3059\uff0e\u30c7\u30fc\u30bf\u304c\u591a\u3044\u3068\u6642\u9593\u304c\u304b\u304b\u308b\u306e\u3067\u65e5\u9803\u53d6\u5f97\u3057\u3066\u5dee\u5206\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u3059\u308b\u3088\u3046\u306b\u3057\u3066\u304a\u304f\u3068\u3044\u3044\u3067\u3059\uff0e
\n\u6b21\u306bscript \u30b3\u30de\u30f3\u30c9\u7b49\u3067\u30ed\u30b0\u3092\u53d6\u3063\u3066\u304a\u304d\u307e\u3059\uff0e\u30ea\u30e2\u30fc\u30c8\u3067ssh\u7d4c\u7531\u306e\u5834\u5408\u306a\u3069\u306fGNU screen \u3084tmux \u306a\u3069\u3067\u5207\u65ad\u3055\u308c\u3066\u3082\u5fa9\u5e30\u51fa\u6765\u308b\u3088\u3046\u306b\u3057\u3066\u304a\u304d\u307e\u3059\uff0e
\n\u6e96\u5099\u304c\u51fa\u6765\u305f\u3089\u5148\u305a\u306f Nextcloud \u309218 \u306e\u6700\u65b0\u306b\u3057\u3066\u304a\u304d\u307e\u3059\uff0e
\n$ cd $(NEXTCLOUDPATH}\n$ sudo -u www-data php ./occ app:update --all\n$ sudo -u www-data php ./updater/updater.phar\n$ sudo -u www-data php ./occ app:update --all\nNextcloud \u306e update channel \u3092 stable \u304b\u3089 beta \u306b\u3057\u307e\u3059\uff0e
\n$ sudo -u www-data php ./occ config:system:set updater.release.channel --value 'beta'\nSystem config value updater.release.channel set to string beta\nchannel \u306f\u3059\u3050\u306b\u306f\u53cd\u6620\u3055\u308c\u307e\u305b\u3093\uff0e\u4eca\u56de\u306f20\u5206\u307b\u3069\u3067\u53cd\u6620\u3055\u308c\u307e\u3057\u305f\u6570\u6642\u9593\u639b\u304b\u308b\u3053\u3068\u3082\u3042\u308b\u3088\u3046\uff0e
\n19 \u304c\u964d\u308a\u3066\u304d\u305f\u3089\u5f8c\u306f\u666e\u901a\u306b\u30a2\u30c3\u30d7\u30b0\u30ec\u30fc\u30c9\u3057\u307e\u3059\uff0e
$ sudo -u www-data php ./updater/updater.phar\nNextcloud Updater - version: v16.0.3-3-ga0c2b25 dirty\n\nCurrent version is 18.0.5.\n\nUpdate to Nextcloud 19.0.0 available. (channel: \"beta\")\nFollowing file will be downloaded automatically: https://download.nextcloud.com/server/releases/nextcloud-19.0.0.zip\nOpen changelog ↗\n\nSteps that will be executed:\n[ ] Check for expected files\n[ ] Check for write permissions\n[ ] Create backup\n[ ] Downloading\n[ ] Verify integrity\n[ ] Extracting\n[ ] Enable maintenance mode\n[ ] Replace entry points\n[ ] Delete old files\n[ ] Move new files in place\n[ ] Done\n\nStart update? [y/N] y\nInfo: Pressing Ctrl-C will finish the currently running step and then stops the updater.\n\n[✔] Check for expected files\n[✔] Check for write permissions\n[✔] Create backup\n[✔] Downloading\n[✔] Verify integrity\n[✔] Extracting\n[✔] Enable maintenance mode\n[✔] Replace entry points\n[✔] Delete old files\n[✔] Move new files in place\n[✔] Done\n\nUpdate of code successful.\n\nShould the \"occ upgrade\" command be executed? [Y/n]\n :\n :\nKeep maintenance mode active? [y/N]\nMaintenance mode disabled\n\nMaintenance mode is disabled\nNextcloud 19 \u306b\u306a\u308a\u307e\u3057\u305f :)
\n$ sudo -u www-data php /var/www/files.matoken.org/updater/updater.phar\nNextcloud Updater - version: v16.0.3-3-ga0c2b25 dirty\n\nCurrent version is 19.0.0.\n\nNo update available.\n\nNothing to do.\nchannel \u3092 stable \u306b\u623b\u3057\u3066\u304a\u304d\u307e\u3059\uff0e\u4e00\u65e619\u306b\u4e0a\u3052\u3066\u3044\u308c\u307018\u306b\u623b\u308a\u307e\u305b\u3093\uff0e
\n$ sudo -u www-data php /var/www/files.matoken.org/occ config:system:set updater.release.channel --value 'stable'\nSystem config value updater.release.channel set to string stable\n$ sudo -u www-data php /var/www/files.matoken.org/updater/updater.phar\nNextcloud Updater - version: v16.0.3-3-ga0c2b25 dirty\n\nCurrent version is 19.0.0.\n\nNo update available.\n\nNothing to do.\nhttps://$NEXTCLOUDURL/index.php/settings/admin/overview \u306e\u300c\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\uff06\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u8b66\u544a\u300d\u3092\u78ba\u8a8d\u3059\u308b\u3068\u3044\u304f\u3064\u304b\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u51fa\u3066\u3044\u308b\u306e\u3067\u4fee\u6b63\u3057\u307e\u3059\uff0e
\n\n\n\n\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\uff06\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u8b66\u544a
\n
\n\u30b5\u30fc\u30d0\u30fc\u306e\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u3068\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306b\u3068\u3063\u3066\u91cd\u8981\u306a\u3053\u3068\u306f\u3001\u3059\u3079\u3066\u304c\u6b63\u78ba\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u3053\u3068\u3067\u3059\u3002\u3042\u306a\u305f\u306e\u52a9\u3051\u3068\u306a\u308b\u3088\u3046\u3001Nextcloud\u3067\u306f\u4e00\u90e8\u306e\u81ea\u52d5\u30c1\u30a7\u30c3\u30af\u3092\u884c\u3063\u3066\u3044\u307e\u3059\u3002\u8a73\u7d30\u306a\u60c5\u5831\u306f\u3001\u30ea\u30f3\u30af\u5148\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n\n\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u306b\u95a2\u3057\u3066\u8b66\u544a\u304c\u3044\u304f\u3064\u304b\u3042\u308a\u307e\u3059\u3002
\n
\n\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u3044\u304f\u3064\u304b\u306e\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u304c\u3042\u308a\u307e\u305b\u3093\u3002 \u5927\u304d\u306a\u30c6\u30fc\u30d6\u30eb\u306b\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u3092\u8ffd\u52a0\u3059\u308b\u3068\u3001\u81ea\u52d5\u7684\u306b\u8ffd\u52a0\u3055\u308c\u306a\u3044\u307e\u3067\u306b\u6642\u9593\u304c\u304b\u304b\u308b\u53ef\u80fd\u6027\u304c\u3042\u308b\u305f\u3081\u3067\u3059\u3002 “occ db\uff1aadd-missing-indices”\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u306b\u3088\u3063\u3066\u3001\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u304c\u5b9f\u884c\u3057\u7d9a\u3051\u3066\u3044\u308b\u9593\u306b\u305d\u308c\u3089\u306e\u6b20\u3051\u3066\u3044\u308b\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u3092\u624b\u52d5\u3067\u8ffd\u52a0\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 \u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u304c\u8ffd\u52a0\u3055\u308c\u308b\u3068\u3001\u305d\u308c\u3089\u306e\u30c6\u30fc\u30d6\u30eb\u3078\u306e\u30af\u30a8\u30ea\u306f\u901a\u5e38\u306f\u308b\u304b\u306b\u901f\u304f\u306a\u308a\u307e\u3059\u3002
\n\u30c6\u30fc\u30d6\u30eb “oc_properties”\u306e\u30a4\u30f3\u30c7\u30c3\u30af\u30b9 “properties_path_index”\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002
\n\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u306f\u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u30ab\u30e9\u30e0\u304c\u3044\u304f\u3064\u304b\u3042\u308a\u307e\u305b\u3093\u3002\u5927\u304d\u306a\u30c6\u30fc\u30d6\u30eb\u306b\u30ab\u30e9\u30e0\u3092\u8ffd\u52a0\u3059\u308b\u306b\u306f\u6642\u9593\u304c\u304b\u304b\u308b\u305f\u3081\u3001\u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u30ab\u30e9\u30e0\u306f\u81ea\u52d5\u7684\u306b\u8ffd\u52a0\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002”occ db:add-missing-columns”\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u3067\u3001\u4e0d\u8db3\u3057\u3066\u3044\u308b\u30ab\u30e9\u30e0\u306f\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u5b9f\u884c\u4e2d\u306b\u624b\u52d5\u3067\u8ffd\u52a0\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u30ab\u30e9\u30e0\u304c\u8ffd\u52a0\u3055\u308c\u308b\u3068\u3001\u5fdc\u7b54\u6027\u3084\u4f7f\u3044\u52dd\u624b\u304c\u6539\u5584\u3055\u308c\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002
\n\u30c6\u30fc\u30d6\u30eb “oc_comments” \u306b\u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u30ab\u30e9\u30e0 “reference_id” \u304c\u5b58\u5728\u3057\u307e\u305b\u3093\u3002
\n\u3053\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306b\u306f\u63a8\u5968\u3055\u308c\u308bPHP\u30e2\u30b8\u30e5\u30fc\u30eb\u304c\u3044\u304f\u3064\u304b\u3042\u308a\u307e\u305b\u3093\u3002 \u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u5411\u4e0a\u3068\u4e92\u63db\u6027\u306e\u5411\u4e0a\u306e\u305f\u3081\u306b\u3001\u305d\u308c\u3089\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u3053\u3068\u3092\u5f37\u304f\u304a\u52e7\u3081\u3057\u307e\u3059\u3002
\nbcmath
\ngmp
\n\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u30ac\u30a4\u30c9\u3092\u518d\u78ba\u8a8d\u3057\u3066\u3001 \u30ed\u30b0 \u306b\u3042\u308b\u3059\u3079\u3066\u306e\u30a8\u30e9\u30fc\u3084\u8b66\u544a\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002
\n\nNextcloud\u306e\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u306f\u3001\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30b9\u30ad\u30e3\u30f3
\n\u3067\u30c1\u30a7\u30c3\u30af\u3057\u3066\u304f\u3060\u3055\u3044\u3002
\u3068\u8a00\u3063\u3066\u3082\u57fa\u672c\u7684\u306b\u30e1\u30c3\u30bb\u30fc\u30b8\u306b\u5f93\u3046\u3060\u3051\u3067\u3059\uff0e
\n$ sudo -u www-data php ./occ db:add-missing-indices\nCheck indices of the share table.\nCheck indices of the filecache table.\nCheck indices of the twofactor_providers table.\nCheck indices of the login_flow_v2 table.\nCheck indices of the whats_new table.\nCheck indices of the cards table.\nCheck indices of the cards_properties table.\nCheck indices of the calendarobjects_props table.\nCheck indices of the schedulingobjects table.\nCheck indices of the oc_properties table.\nAdding properties_path_index index to the oc_properties table, this can take some time...\noc_properties table updated successfully.\n$ sudo -u www-data php ./occ db:add-missing-columns\nCheck columns of the comments table.\nAdding additional reference_id column to the comments table, this can take some time...\nComments table updated successfully.\n\u3053\u308c\u306f\u74b0\u5883\u306b\u3088\u3063\u3066\u5c11\u3057\u4ee3\u308f\u308a\u307e\u3059\uff0e\u5bfe\u5fdc\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u5c0e\u5165\u3057\u3066httpd\u3092\u518d\u8d77\u52d5\u3057\u3066\u53cd\u6620\u3057\u307e\u3059\uff0e\u4ee5\u4e0b\u306fDebian Buster amd64 \u3067\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u540d\uff0e\u305d\u3057\u3066Apache httpd \u3067\u30db\u30b9\u30c8\u3057\u3066\u3044\u308b\u5834\u5408\u306e\u4f8b\u3067\u3059\uff0e
\n$ sudo apt install php7.3-bcmath php7.3-gmp\n$ sudo service apache2 reload\n\u3053\u308c\u3067\u300c\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\uff06\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u8b66\u544a\u300d\u30da\u30fc\u30b8\u3092\u518d\u8aad\u8fbc\u3059\u308b\u3068\uff0c\u300c\u3059\u3079\u3066\u306e\u30c1\u30a7\u30c3\u30af\u306b\u5408\u683c\u3057\u307e\u3057\u305f\u3002\u300d\u3068\u306a\u308a\u307e\u3057\u305f :)
\n\u3053\u308c\u306f\u5fc5\u9808\u3067\u306f\u306a\u3044\u306e\u3067\u3059\u304c\uff0c\u3053\u306e\u74b0\u5883\u306f\u30c7\u30a3\u30b9\u30af\u306e\u7a7a\u304d\u9818\u57df\u304c\u5c11\u306a\u3044\u306e\u3067\u30ea\u30e2\u30fc\u30c8\u306b\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u3057\u305f\u4e0a\u3067\u6700\u65b0\u4ee5\u5916\u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u306f\u524a\u9664\u3057\u3066\u3044\u307e\u3059\uff0e\u4ee5\u4e0b\u306e updater-ocws62au2wl3 \u90e8\u5206\u306f\u74b0\u5883\u306b\u3088\u3063\u3066\u5909\u308f\u308b\u3068\u601d\u3044\u307e\u3059\uff0e
$ rm -rf ./data/updater-ocws62au2wl3/backups/nextcloud-18.0.4.2\n$ dpkg-query -W php7.3 php7.3-bcmath php7.3-gmp apache2\napache2 2.4.38-3+deb10u3\nphp7.3 7.3.14-1~deb10u1\nphp7.3-bcmath 7.3.14-1~deb10u1\nphp7.3-gmp 7.3.14-1~deb10u1\n$ lsb_release -dr\nDescription: Debian GNU/Linux 10 (buster)\nRelease: 10\n$ uname -m\nx86_64\n