約 2,162,092 件
https://w.atwiki.jp/ooblkeland/pages/36.html
※ 注意!此方法只在 Win XP 驗證過有效。而且要建立新增的檔案有一個大前提:該種類副檔名必須已經建立好關聯性。 操作方法 使用 RegEdit,修改 Windows Registry (機碼)。 是根據副檔名來新增的,所以要自行確認想新增的副檔名。 效果(以 REAPER 混音軟體為例的效果,右如圖) 詳細內容 設定 請將以下的原檔純成純文字,最後改檔名為「*.reg」,之後雙擊此檔案進行安裝。 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\.指定的副檔名\ShellNew] FileName = 預設的範例檔案名稱.指定的副檔名 手動製作相關範例檔,並命名為「預設的範例檔案名稱.指定的副檔名」,最後放到以下的路徑。 %UserProFile%\Templates 解除方法 請將以下的原檔純成純文字,最後改檔名為「*.reg」,之後雙擊此檔案進行安裝。 Windows Registry Editor Version 5.00 [-HKEY_CLASSES_ROOT\.指定的副檔名\ShellNew] 舉例 以 REAPER 混音軟體為例 設定 請將以下的原檔純成純文字,最後改檔名為「*.reg」,之後雙擊此檔案進行安裝。 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\.rpp\ShellNew] FileName = 新增混音.rpp 手動開啟 REAPER 混音軟體,另存新檔製作成範例檔,並命名為「新增混音.rpp」,最後儲存到以下的路徑。 %UserProFile%\Templates 解除方法 請將以下的原檔純成純文字,最後改檔名為「*.reg」,之後雙擊此檔案進行安裝。 Windows Registry Editor Version 5.00 [-HKEY_CLASSES_ROOT\.rpp\ShellNew] その他 如果該副檔名的主程式是非安裝版本(例如:免安裝攜帶版) 建立檔案關聯:Reaper.Project 如果是非安裝版本,則必須要透過以下內容並執行來建立檔案關聯性。否則在右鍵新增選單內不會出現該類檔案。 注意!以下用 Reaper 的情況來舉例。但其他類型的程式有其他類型的用法!請先在相關「已正常安裝」該類軟體的電腦中,查看「HKEY_CLASSES_ROOT」之下的相關資料,或直接匯出觀察相關軟體的內容敘述。請自行斟酌、判斷後再測試使用。 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Reaper.Project] @= REAPER Project File [HKEY_CLASSES_ROOT\Reaper.Project\DefaultIcon] @= C \\Program Files\\REAPER\\reaper.exe,1 [HKEY_CLASSES_ROOT\Reaper.Project\shell] @= open [HKEY_CLASSES_ROOT\Reaper.Project\shell\open] @= Open Project in REAPER [HKEY_CLASSES_ROOT\Reaper.Project\shell\open\command] @= \ C \\Program Files\\REAPER\\reaper.exe\ -project \ %1\ [HKEY_CLASSES_ROOT\Reaper.Project\shell\opentemplate] @= Open Project as template in REAPER [HKEY_CLASSES_ROOT\Reaper.Project\shell\opentemplate\command] @= \ C \\Program Files\\REAPER\\reaper.exe\ -template \ %1\ 相關條目 自訂右鍵選單の「以某程式開啟此檔」快捷功能 自訂右鍵選單の「新增」快捷功能/その他 リンク Windows Registry .REG files(From Wikipedia, the free encyclopedia) 其他參考方案 史萊姆論壇
https://w.atwiki.jp/msse/pages/52.html
コンテキストメニューからMicrosoft Security Essentialsが消えるのですが 原因 「Windows Vista および Windows 7 用の Windows Live OneCare PC セーフティ」 http //onecare.live.com/site/ja-jp/center/whatsnew.htm 上記サイトで フルスキャン をするとMSEのコンテキストメニュー項目が削除対象になることが確認できました。 ( Vista Ultimate64(sp2) で確認しました。XP Pro(sp3) では削除対象にはならずこの問題も起こりません。 ) 削除対象のチェックを外す事で回避できます。 コンテキストメニューに追加する方法 「Microsoft Security Essentialsでスキャンします...」がエクスプローラー上で対象(ドライブ、フォルダー、ファイル)を右クリックすると表示あれるコンテキストメニューに表示されます。 この設定はレジストリで指定されています。 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\*\ShellEx\ContextMenuHandlers\MSSE] @="{0365FE2C-F183-4091-AC82-BFC39FB75C49}" [HKEY_CLASSES_ROOT\Directory\ShellEx\ContextMenuHandlers\MSSE] @="{0365FE2C-F183-4091-AC82-BFC39FB75C49}" [HKEY_CLASSES_ROOT\Drive\ShellEx\ContextMenuHandlers\MSSE] @="{0365FE2C-F183-4091-AC82-BFC39FB75C49}" 情報源 「Microsoft Security Essentialsでスキャンします」の項目がありません
https://w.atwiki.jp/sanosoft/pages/202.html
MySQL8.0のインストール【AlmaLinux 8】 MySQL8.0をインストールします。 1. インストール dnfのリポジトリの追加登録方法【CentOS 8】で「MySQL」のリポジトリを追加して、MySQLの8.0をインストールします。 # dnf --disablerepo=appstream --enablerepo=mysql80-community install mysql-community-server 2. MySQLの設定 (1) DBの初期化 DBの初期化を行います。 # mysqld --initialize --user=mysql --datadir=/var/lib/mysql ※5.6までは「mysql_install_db」コマンドで行いましたが、5.7からは変更になりました。 このコマンドで初期化を行うと、初期ユーザとして「root@localhost」が作成されます。 また、初期パスワードが「/var/log/mysqld.log」に書き込まれます。 ちなみに「mysqld --initialize-insecure」とすると、パスワードは空となります。 (2) /etc/my.cnfの設定 MySQLの設定ファイルは、「/etc/my.cnf」ですが、カスタム設定は「/etc/my.cnf.d」フォルダに「*.cnf」ファイルを作成することで設定を追加できます。 # vi /etc/my.cnf.d/server.cnf [mysqld] innodb_data_home_dir = /var/lib/mysql/ innodb_log_group_home_dir = /var/lib/mysql/ character_set_server=utf8mb4 collation-server=utf8mb4_0900_ai_ci expire_logs_days = 30 # Error log log_error="mysqld.log" log_warnings=1 # Query log general_log = 0 general_log_file="sql.log" # Slow Query log slow_query_log = 0 slow_query_log_file="slow_query.log" log_queries_not_using_indexes log_slow_admin_statements long_query_time=5 [client] default-character-set=utf8mb4 general_log:「0」:ログを出力しない、「1」:ログを出力する slow_query_log:「0」:ログを出力しない、「1」:ログを出力する ※「Query log」や「Slow Query log」を有効にすると、ファイルサイズがかなり大きくなる可能性がありますので、必要時のみ有効にして下さい。 ■collation-server utf8mb4_0900_ai_ci (MySQL 8.0のデフォルト)。アクセントの違い(「は」と「ぱ」など)および大文字・小文字を区別しない。 utf8mb4_bin 大文字・小文字を含めて、すべて区別。 utf8mb4_general_ci 大文字・小文字は区別しない。他は全て区別。 utf8mb4_unicode_ci 大文字・小文字および全角・半角を区別しない。 (3) MySQLの起動 設定が完了したら、MySQLのサービスを起動します。 # systemctl start mysqld.service (4) 自動起動設定 サーバを再起動した場合に自動的にサービスが起動するようにします。 # systemctl enable mysqld.service (5) mysql_secure_installationの実行 MySQLのセキュリティを向上させるために「mysql_secure_installation」を実行します。 # /usr/bin/mysql_secure_installation MySQLのセキュリティを向上させるために「mysql_secure_installation」を実行します。 # /usr/bin/mysql_secure_installation ■現在のrootパスワードの入力 現在のrootのパスワードを入力します。 Enter current password for root (enter for none) インストール時に「/var/log/mysqld.log」に記載されている初期パスワードを入力します。 ■新しいパスワードの登録 初期パスワードから新しいパスワードに変更します。 The existing password for the user account root has expired. Please set a new password. New password Re-enter new password 「New password 」と「Re-enter new password 」に任意のパスワードを入力します。 ■VALIDATE PASSWORD プラグインのインストール パスワードがポリシーに従っているかのチェックを行うプラグインです。 VALIDATE PASSWORD COMPONENT can be used to test passwords and improve security. It checks the strength of password and allows the users to set only those passwords which are secure enough. Would you like to setup VALIDATE PASSWORD component? Press y|Y for Yes, any other key for No プラグインをインストールしないので「No」を入力します。 ■rootパスワードの変更 rootパスワードを変更するかどうかの質問です。 Using existing password for root. Change the password for root ? ((Press y|Y for Yes, any other key for No) ここでは変更しないので「N」を入力します。 ■匿名アカウントの削除 パスワードのない匿名アカウントを削除するかどうかの質問です。 Remove anonymous users? (Press y|Y for Yes, any other key for No) 削除するので「Y」を入力します。 ■rootアカウントのリモートログインの不許可 Disallow root login remotely? (Press y|Y for Yes, any other key for No) rootアカウントのリモートログインは許可しないので、「Y」と入力します。 ■testデータベースの削除 どのユーザからでもアクセスできるtestデータベースを削除するかどうかの質問です。 Remove test database and access to it? (Press y|Y for Yes, any other key for No) 削除するので「Y」を入力します。 ■特権テーブルのリロード すぐに特権テーブルをリロードして反映させるかどうかの質問です。 Reload privilege tables now? (Press y|Y for Yes, any other key for No) すぐにリロードするので「Y」を入力します。 3. rootパスワードの変更 インストール直後は、「root」ユーザにテンポラリーパスワードが設定されているので、パスワードを変更します。 ※前述の「mysql_secure_installation」を実行した場合には不要です。 MySQLにログインします。 # mysql -u root -p Enter password パスワードを変更します。 mysql SET PASSWORD FOR root@localhost= xxxxxx ; mysql exit; ※従来の「SET PASSWORD FOR root@localhost=PASSWORD( xxxxxx );」だとSyntaxエラーが発生します。 変更したパスワードでログインできることを確認します。 # mysql -u root -p Enter password ログインできればOKです。 4. その他のコマンド (1) ユーザ作成 CREATE USER (ユーザID) @ localhost IDENTIFIED WITH mysql_native_password BY (パスワード) ; GRANT ALL PRIVILEGES ON (テーブル名).* TO (ユーザID) @ localhost ; ※※【注意事項】※※ 「my.cnf」で「skip-name-resolve」を指定している場合には、ホストの名前解決ができないため「localhost」ではエラーとなる。その場合には「127.0.0.1」と記述すること。 5. cronでの実行の場合 定期バックアップなどでコマンドラインからMySQLを実行する場合に、パスワードをコマンドラインに含めると警告が発生しますし、またセキュリティ上問題があります。 そこで、設定ファイルを作成して、コマンドラインから読込みます。 (1) 設定ファイルの作成 「/etc/.mysql_config」という設定ファイルを作成します。 # vi /root/.mysql_config 内容は以下の通りです。 [client] user = root password = (パスワード) host = localhost 「root」以外読めないようにします。 # chmod 400 /root/.mysql_config (2) コマンドラインでの実行 「--defaults-extra-file」オプションで設定ファイルを読み込みます。 【例】 for DBNAME in `ls -p /var/lib/mysql | grep / | tr -d /` do # mysqldump if [ "$DBNAME" = #innodb_temp ] then continue; fi if [ "$DBNAME" = performance_schema ] then /usr/bin/mysqldump --defaults-extra-file=/root/.mysql_config --skip-lock-tables --skip-extended-insert $DBNAME $DBNAME.dump else /usr/bin/mysqldump --defaults-extra-file=/root/.mysql_config --events --skip-lock-tables --skip-extended-insert $DBNAME $DBNAME.dump fi done 6. MySQLのコマンド (1) mysqldump ■データベースを出力 mysqldump --defaults-extra-file=/root/.mysql_config -c -skip-extended-insert (DB名) (出力ファイル名) ■テーブルを指定して出力 mysqldump --defaults-extra-file=/root/.mysql_config -c -skip-extended-insert (DB名) (テーブル名) (出力ファイル名) (2) mysql ■ダンプファイルをインポート mysql --defaults-extra-file=/root/.mysql_config (DB名) (ダンプファイル名)
https://w.atwiki.jp/ohden/pages/362.html
Linuxのデバイス管理方法 環境 Ubuntu 10.10 desktop 64bit Ubuntu10.10でのdevice管理方法を調べる。 Linuxではdeviceは『/dev』以下で管理されている。 $ cd /dev $ \ls -l 『/dev』以下でfile一覧を取得するとこんな感じ。 ※『ls』の前に『\』付けとるのはhighlightされとると見難いから... brw-rw---- 1 root disk 8, 0 2011-03-23 08 44 sdabrw-rw---- 1 root disk 8, 1 2011-03-23 08 44 sda1brw-rw---- 1 root disk 8, 2 2011-03-23 08 44 sda2 crw-rw---- 1 root tty 7, 0 2011-03-23 08 44 vcscrw-rw---- 1 root tty 7, 1 2011-03-23 08 44 vcs1crw-rw---- 1 root tty 7, 2 2011-03-23 08 44 vcs2 $ cat /proc/devices $ MAKEDEV $ mknod 更新日: 2011年03月23日 (水) 13時47分31秒 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/oxon/pages/69.html
UNIXとして使う はじめに 研究用途でMacを使用する場合には、従来のアプリケーションに加えてUNIXソフトウェアを併用することでMacで出来ることの範囲が大きく広がる。また、多くの優れたUNIXソフトウェアが無償で公開されており、必要とする環境構築が安価に行えることも魅力である。 OS 9?までのMacでUNIXソフトウェアを利用するのは難しかったが、OS Xでは簡単に利用できるので、これまでにUNIXに触れたことがなかった研究者も、ぜひ利用してみる価値がある。 rootユーザを有効にする まず最初に行う必要があるのが、rootユーザを有効にする作業である。詳細は、Appleのhttp //docs.info.apple.com/jarticle.html?artnum=106290に詳しいので、これを参照されたい。 rootユーザはUNIXでの管理者ユーザのことであり、OS Xの「管理者」とは異なるものなので注意が必要である。OS XはあくまでMacとしての使い方を想定しているため、rootユーザが無効化されている。UNIXの仕組みに不慣れなユーザが、偶発的にシステムを破壊するのを防ぐためだと思われる。ただし、OS XのUNIX的な部分を利用したい場合には、rootユーザの使用は避けて通れない。 rootとならなくても、OS Xではsudoを使うという流儀もある。sudoを使うのが好きであれば、別にrootユーザを有効にしなくてもよい。 UNIXソフトウェアの導入 FinkやMacPorts?を使用すると、OS Xで簡単にUNIXソフトウェアを導入することができる。 Last Updated 2008-04-11
https://w.atwiki.jp/fns1556/pages/42.html
Grub version1系 設定ファイル /boot/grub/menu.lst grub手動インストール CentOSのDVD boot時にオプションコマンドを指定する boot linux rescue linuxが起動したら以下のコマンドを実行 grub-install --root-directory=/mnt/sysimage --grub-shell=/usr/sbin/grub /dev/sda2 ←パーティション2にインストール、sysimageは既存のLinuxを自動マウントした場合 grub起動コマンドの流れ 1. root (hd0,1) ←パーティション2の場合 2. kernel /boot/vmlinuz-2.6.18-194.32.1.el5 root=/dev/sda2 ro 3. initrd /boot/initrd-2.6.18-194.32.1.el5.img 4. boot CentOS起動後にgrubコンフィグファイル作成 vi /boot/grub/menu.lst timeout 10 root (hd0,1) kernel /boot/vmlinuz-2.6.18-194.32.1.el5 root=/dev/sda2 ro initrd /boot/initrd-2.6.18-194.32.1.el5.img boot [ESC] wq(viを保存して閉じる) grub-install /dev/sda2 以降起動時に自動でメニューが表示される。
https://w.atwiki.jp/javadsge/pages/9491.html
import sys import tkinter root = tkinter.Tk() root.title("Software Title") root.geometry("500x500") ss = tkinter.Label(text= test ) ss.pack() root.mainloop()
https://w.atwiki.jp/china_pad/pages/499.html
仕様 解説 コメント 仕様 OS Android 4.4 CPU MediaTek MT6592 Cortex-A7 OctaCore 1.7GHz GPU Mali-450MP4 MHz RAM DDR3 2GB 液晶 7.9インチIPS液晶 2048×1536 wifi IEEE 802.11 a/b/g/n 内蔵ストレージ 16GB 内蔵カメラ 前面 200万画素 背面 500万画素 サイズ 258×166×8.3mm / 290g バッテリー 4050mAh 付属品 不明 インターフェース・搭載ハード Bluetooth、MicroUSB、SIMカードスロット、イヤホンミニジャック、Micro SDカードスロット、内蔵スピーカー、マイク 解説 imageプラグインエラー ご指定のURLはサポートしていません。png, jpg, gif などの画像URLを指定してください。 MediaTek MT6592を採用したタブレット Antutuスコアは28108 コメント 公式からファームウェアがDLできない・・・CM13導入できん! - 2016-10-21 12 48 15 ttp //4pda.ru/forum/index.php?showtopic=597467 st=1140#entry51918634 - 2016-08-08 23 23 24 CM12.1の導入する時みたいに一度SASVLAD ROMを焼いてからの方がいいと思います。 - 2016-08-08 23 24 16 手順 ttp //forum.xda-developers.com/android/development/rom-cyanogenmod-12-1-fnf-ifive-mini-3gs-t3313689 - 2016-08-08 23 24 55 まだ使ってる人いるかな?今更ですが CM13(Android 6.0.1) - 2016-08-08 23 22 45 すみません。書き込みミスってしまいました。上の書き込みを参照してください。 - 2016-08-08 23 29 54 teut - 2016-08-08 23 21 51 sasvlad romのDL場所教えて下さい。 - 2015-11-23 16 26 14 しばらく使ってなかったんだけど、sasvlad焼いてみたら安定してる。情報感謝。 - 2015-10-04 09 15 32 Rileyrom1.7試しましたが、画面エラーが多くいまいち安定しませんでした。sasvlad romが今のところ一番信頼性が高いです。 - 2015-06-12 22 54 11 またはRileyROM1.7 http //www.freak-tab.de/rrileypm/mtk/iFive_Mini_3GS_RileyROM_1.7.zip - 2015-05-09 13 05 10 RileyROM1.6試した方いますか? http //www.freak-tab.de/rrileypm/mtk/iFive_Mini_3GS_RileyROM_1.6.zip - 2015-05-09 13 01 44 スクリーンショットの撮り方わかる方居ましたらご教授願いす。 - 2015-05-06 18 15 48 電源+Voマイナスを同時長押し - 2015-05-09 12 59 30 ファームウェアの焼き方知っている方いたら教えて下さい。公式HPの通りやっても出来ません。。。 - 2015-02-25 21 56 16 USB接続した状態でタブレット再起動したら? - 2015-02-26 18 27 01 あと、更新ツールはデスクトップに展開しているとダメだったような。Cドライブ直下において試してみて - 2015-02-26 18 28 55 コメントありがとうございます - 2015-03-06 23 27 52 メデューに頂いたFWを試してみたのですがダメでしたhttp //www.medue.jp/html/notice.html?date=20141212134838 db=medue - 2015-03-06 23 28 42 軽いケースに入れてたら画面にヒビ入ってしまいました…おすすめのケースとかありませんか? - 2014-11-22 00 29 31 再起動するたびに、WIFIのMACアドレスが勝手に変わりませんか?RileyROM1.5だからなのかなぁ…。 - 2014-10-27 13 33 36 FMRadio.dbの編集で日本のラジオ局が聴けました。 - 2014-09-28 21 40 48 すごいですね。具体的にどのように編集すればよいのでしょうか?ご教授いただければ嬉しいのですが… - 2014-10-10 05 39 56 試してないですがこれでいいんじゃない? http //x02-haduki.blogspot.jp/2013/05/ioxy-s4fm_19.html - 2014-10-19 14 42 21 ありがとうございます!丁寧に書いて有りますね。試していませんが出来そうな気がします。 - 2014-10-21 21 33 47 バッテリー残量の表示がおかしい。1日1時間使用くらいで数日60%表示のまま、から唐突に15%警告後数分で電源落ち。ROMはv1.1.0 - 2014-09-21 21 27 02 公式HPに最新ROMが来てます。ifive mini 3GS_V2.0.1。但し、私が無知なのかToolを使ってもadb使って手動で取ろうにもrootが取れず困っています。 - 2014-09-13 00 00 03 root取れました。VROOTを使ってPCからroot取りを実行。ifive mini 3GS側にroot大師1.2.0がインストールされる。 - 2014-09-16 02 49 53 この状態では実際はroot取れません。VRootから変な中国マーケットに行ってroot大師1.0.2の古いバージョンをインストール - 2014-09-16 02 51 18 ここでroot取りをroot大師1.0.2で実行。rootが取れるのでSuperSUをインストールすればOKでした。 - 2014-09-16 02 52 51 ちなみにroot大師1.2.0を入れるとKingrootが入ります。入っていない場合は入るまでVRootを何度も実行しないと上手くいきませんでした。 - 2014-09-16 02 54 15 現バージョンのvrootならPC版から実行するだけでroot取れますよ。権限管理がSuperSUじゃないんで気持ち悪いですが。 - 2014-10-06 11 56 45 SuperSUを導入したい場合は適当なファイルマネージャでsystemフォルダの パーミッションに書き込み許可すれば、SuperSUを導入できます。その後中華アプリ削除で。 - 2014-10-07 12 41 56 systemフォルダのパーミッションを元に戻しておいてください。 - 2014-10-07 12 42 52 最新版ならvrootで行けるのですね。ご教授ありがとうございます。 - 2014-10-15 21 54 03 OTA失敗して腹切りドロイド君でた。ダウンロードモードどうやるでしょうか? - 2014-09-02 14 43 13 同じく出ました。どうにもならないんですかね。 - 2014-10-03 01 35 58 ヨドバシカメラのワイヤレスゲートSIM(SMS付き)使えてますよ。 - 2014-09-02 00 46 22 ↓私のはPlantronics Discovery 925です。ヘッドセットの相性でしょうか? - 2014-08-31 01 20 25 ↓度々済みません。電話は問題ありませんでした。SkypeをBluetoothヘッドセット使うとOSが落ちるようです。 - 2014-08-31 01 26 20 U-mobile 通話プラス使えてます。↓ウチのはBluetooth(NW-M505)で通話しても大丈夫ですね。 - 2014-08-30 16 12 54
https://w.atwiki.jp/hiroyuki12/pages/76.html
Name aMule Version 2.1.3 Release 1 Summary aMule Summary(ja) aMule License GPL Group System Applications/Internet URL http //www.amule.org/ Source0 %{name}-%{version}.tar.bz2 BuildRoot %{_tmppath}/%{name}-%{version}-root BuildRequires zlib-devel, wx-gtk2-devel #Vendor Project Vine #Distribution Vine Linux Packager hiroyuki hiroyuki12@gmail.com %description aMule %description -l ja aMule %prep %setup -q %build %configure --prefix=%{_prefix} make %install rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT %clean rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %defattr(-,root,root,-) %{_bindir}/* %{_libdir}/xchat/plugins/* %{_datadir}/applications/* %{_datadir}/doc/aMule-2.1.3/* %{_datadir}/locale/*/LC_MESSAGES/* %{_datadir}/man/*/man1/* %{_datadir}/man/man1/* %{_datadir}/pixmaps/* %changelog * Sat Oct 06 2007 hiroyuki hiroyuki12@gmail.com 2.1.3-1 - 1st Release. # end of file
https://w.atwiki.jp/lud-p/pages/20.html
jail fulltree 8.2-Release on i386 まだ書きかけです jail fulltree 8.2-Release on i386 mainte 用 jail fulltree の構築 base バイナリの構築 jail fulltree の初期設定 jail fulltree の稼動 自動起動設定 jail fulltree の整備 portsnap で ports の更新 portsの自動メンテナンス ports メンテナンス結果のメール送信 pkg_replace のインストール portconf のインストール portaudit のインストール portaudit 脆弱性チェック結果のメール送信 sendmail の設定 freebsd-update 自動更新設定 資料 アーカイブ 関連ページ i386機にjail fulltreeを導入した時のまとめです 今後、このfulltreeを使用して minitree を作成していきます mainte jail fulltree 8.2-RELEASE mainte jail fulltree 8.1-RELEASE otsune s FreeBSD memo jailの作り方 以上のサイトを参考にさせていただいております と、wirednoize様のサーバポリシーのどっぷりな感じです mainte 用 jail fulltree の構築 HOST環境での作業 base バイナリの構築 ftp サーバよりrelease/baseファイルを取得して、jail環境を構築します base バイナリ展開用ディレクトリを作成します # mkdir /tmp/base # cd /tmp/base CHECKSUM.MD5を利用してbase全ファイル名を検出し、所得します日本のミラーサーバは数字なし[ftp]と2-9の番号つき[ftp2]~[ftp9]がありますので、適宜変更してください # fetch ftp //ftp.jp.freebsd.org/pub/FreeBSD/releases/i386/8.2-RELEASE/base/CHECKSUM.MD5 # cat CHECKSUM.MD5 | sed s/^MD5 (// | sed s/).*$// | \ sed s/^/ftp \/\/ftp.jp.freebsd.org\/pub\/FreeBSD\/releases\/i386\/8.2-RELEASE\/base\// \ | xargs -L1 fetch jail fulltree 用ディレクトリを作成しますzfs でディレクトリを切り分けます # zfs create -o mountpoint=/home/mainte82 tank0/jail/mainte82 base バイナリを展開します # setenv DESTDIR "/home/mainte82" # chmod u+x install.sh # ./install.sh # unsetenv DESTDIR ↑ jail fulltree の初期設定 設定のため、起動させます # mount -t devfs devfs /home/mainte82/dev # jail /home/mainte82 test.localdomain 192.168.100.82 JAIL環境での作業 起動時の警告を抑制するため、空の/etc/fstabファイルを作成します # touch /etc/fstab sendmailの警告を抑制するため/etc/mail/aliases.dbを生成します # newaliases rc.confの設定をします # vi /etc/rc.conf network_interface="" rpcbind_enable="NO" inet_enable="NO" syslogd_flags="-ss" sshd_enable="NO" sendmail_enable="NO" sendmail_submit_enable="NO" sendmail_outbound_enable="NO" sendmail_msp_queue_enable="NO" resolv.conf の設定をします # echo nameserver 192.168.1.251 /etc/resolv.conf root のログインシェルを変更しますjexec を使用して jail fulltree に入るので ログインシェルを無しにします # vipw root 0 0 0 0 Charlie /root /usr/sbin/nologin toor * 0 0 0 0 Bourne-again Superuser /root /usr/sbin/nologin 上記2行のみ変更 タイムゾーンを変更します # cp -p /usr/share/zoneinfo/Asia/Tokyo /etc/localtime crontab を編集します # vi /etc/crontab # SHELL=/bin/sh PATH=/etc /bin /sbin /usr/bin /usr/sbin HOME=/var/log # #minute hour mday month wday who command 1 0 * * * root newsyslog その他は削除 newsyslog を編集します # vi /etc/newsyslog.conf # logfilename [owner group] mode count size when flags [/pid_file][sig_num] /var/log/all.log 600 7 * @T00 - その他は削除 ログを設定します # echo *.* /var/log/all.log /etc/syslog.conf # touch /var/log/all.log # chmod 600 /var/log/all.log /etc/hosts.allowをすべて拒否に変更します # echo ALL ALL deny /etc/hosts.allow /etc/make.confを設定しますX等のグラフィック関係、IPV6など使用しないものを無効にしますマルチバイト関数はないとハマル事とのことなので、入れていますSUPHOST と MASTER_SITE_OVERRIDE は、CVSup サイト一覧 と ftp サイト一覧 から日本のサイトを選択しますWRKDIRPREFIX と DISTDIR の設定は、/usr/ports ディレクトリをを綺麗にしておくのに必須とのことCPUTYPE CFLAGS COPTFLAGS を効率化のために設定します今回はCPUがceleron D 2.53MhzなのでCPUTYPEはi686にしましたが、/usr/share/mk/bas.cpu.mkを見てるとpentium4でもいけるのかもしれません # vi /etc/make.conf WITHOUT_X11=yes WITHOUT_GUI=yes NO_X=true WITHOUT_IPV6=yes WITH_MBSTRING=yes SUPHOST=cvsup3.jp.freebsd.org MASTER_SITE_OVERRIDE=ftp3.jp.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR} WRKDIRPREFIX=/tmp DISTDIR=/tmp/distfiles CPUTYPE=i686 CFLAGS= -O2 -fno-strict-aliasing -pipe COPTFLAGS= -O2 -fno-strict-aliasing -pipe Jail環境での作業を終了します # exit ↑ jail fulltree の稼動 HOST環境での作業 自動起動設定 jail共通起動停止シェルスクリプトの設置jail共通起動停止シェルスクリプトから最新の common_Njailstp.file.?.?.gz をダウンロードします解凍して common_Njailstp.file にファイル名を変更後、/usr/local/etc/rc.d におきます 自動起動用スクリプトの設定 # vi /usr/local/etc/rc.d/mainte82_jail.sh #!/bin/sh #--------------------------------------- Jid="82" Secu="-1" NtwkIF="lo0" HsFQDN="mainte82.localdomain" IPAdrs="192.168.1.82" BDcast="192.168.1.82" NTmask="255.255.255.255" PsName="mainte82" ChRoot="/home/$PsName" MTdpnf="$ChRoot/dev /tmp/$PsName/tmp $ChRoot/tmp" #---------------------------------------------------------------------- BFsrtJ="/bin/mkdir -p /tmp/$PsName/tmp/distfiles /bin/chmod 1777 /tmp/$PsName/tmp /sbin/mount -t zfs tank0/ports /home/$PsName/usr/ports" AFsrtJ="" BFstpJ="jexec Jid /bin/sh /etc/rc.shutdown" AFstpJ="/bin/rm -rf /tmp/$PsName" Jstcom="/bin/sh /etc/rc" #--------------------------------------- . /usr/local/etc/rc.d/common_Njailstp.file jailstartop $1 実行権限付与 chmod u+x /usr/local/etc/rc.d/mainte82_jail.sh 起動・停止 /usr/local/etc/rc.d/mainte82_jaile.sh start /usr/local/etc/rc.d/mainte82_jaile.sh stop ↑ jail fulltree の整備 maintenance 用 jail fulltree を起動します # /usr/local/etc/rc.d/mainte82_jail.sh start # jexec 82 /bin/tcsh portsnap で ports の更新 JAIL環境での作業 portsnap.conf の確認普通は変更の必要が無いのでファイルがあるかのみ確認します通常ならインストールされています # ls /etc/portsnap.conf portsnap を起動して ports の更新をします自動メンテナンスの設定をしますので、2回目以降のコマンドは手動で更新する場合に使用します 初回 # portsnap fetch portsnap extract portsnap update 2回目以降 # portsnap fetch portsnap update ↑ portsの自動メンテナンス portsnap fetch の代わりに portsnap cron という cron 動作用のコマンドがあり、1秒から3600秒の間でランダムに時間を遅らせる機能を持っているので、それを使ったスクリプトを記述します portsnap の実行ログを保存します 後で、ログローテーションの対象にするので、ひたすら追記書きさせます portsnap を cron で流して ports の自動更新をします。 portsnap の自動更新スクリプト # mkdir /root/update # vi /root/update/ports_update_cron.sh #!/bin/sh LogFile="/var/log/ports_update.log" echo "### `date` ###" $LogFile /usr/sbin/portsnap cron $LogFile 2 1 /usr/sbin/portsnap update $LogFile 2 1 echo "### `date` ###" $LogFile portsnap の手動更新スクリプト # vi /root/update/port_update.sh #!/bin/sh /usr/sbin/portsnap fetch /usr/sbin/portsnap update 実行権の付与 # chmod u+x ports_update.sh ports_update_cron.sh crontab の設定適当な頻度で ports の自動更新が走るように設定を追記します vi /etc/crontab # portsnap ports_update 1 9 * * 1,4 root /root/update/ports_update_cron.sh /dev/null 2 1 ログローテーション設定portsnap のログローテーション設定を 追記します vi /etc/newsyslog.conf # logfilename [owner group] mode count size when flags [/pid_file][sig_num] /var/log/all.log 600 7 * @T00 - /var/log/ports_update.log 600 7 1 * ↑ ports メンテナンス結果のメール送信 ports 更新の有無を簡単に知る為に、定期的に portversion のコマンド結果をメールで送信します 今の設定ではメールを送れないので、後の「sendmail の設定」も必ず行ってください mail コマンドを使ってメールを送信するスクリプト # vi portvermail.sh #!/bin/sh #------------------------------------------ MailTO="root" MilTmp=/tmp/portversion.txt MilHed="mainte portversion info" #------------------------------------------ echo $MilHed $MilTmp echo "" $MilTmp /usr/sbin/pkg_version -v $MilTmp cat $MilTmp | /usr/bin/mail -s "$MilHed" $MailTO 実行権の付与 chmod u+x /root/update/portvermail.sh ports_update_cron.sh へ追加ports の自動更新後、上のスクリプトが動くように追加します echo /root/update/portvermail.sh /root/update/ports_update_cron.sh ↑ pkg_replace のインストール ports の更新やインストールに pkg_replace を入れます portupgrade では、依存パッケージがたくさん入ってしまいますが、pkg_replace なら一切入りません ports からインストール # cd /usr/ports/ports-mgmt/pkg_replace # make install cleanハッシュテーブルの再構築 pkg_replace をすぐ使えるようにします。 rehash ↑ portconf のインストール portをインストールする際の設定をmake install でも同じくするためのツールだそうです pkg_replace コマンドでインストールします。 # pkg_replace -vcCN ports-mgmt/portconf ↑ portaudit のインストール ports ソフトウェアの脆弱性をチェックします。これに引っかかったアプリケーションは速やかなアップデートが必要となります pkg_replace コマンドでインストールします。 # pkg_replace -vcCN ports-mgmt/portaudit 脆弱性のチェック # /usr/local/sbin/portaudit -Fda ↑ portaudit 脆弱性チェック結果のメール送信 毎日 portaudit のチェック結果をメールで報告させます jot コマンドを利用して、1秒から 1800秒の間でランダムに sleep をさせています 今の設定ではメールを送れないので、後の「sendmail の設定」も必ず行ってください mail コマンドを使ってメールを送信するスクリプトを記述します。 #vi /root/update/portauditmail.sh #!/bin/sh RanDOM=`jot -r 1 1 1800` /bin/sleep $RanDOM #------------------------------------------ MailTO="root" MilTmp="/tmp/portaudit.txt" MilHed="ports vulnerabilities report" #------------------------------------------ echo $MilHed $MilTmp echo "" $MilTmp /usr/local/sbin/portaudit -Fdav $MilTmp cat $MilTmp | /usr/bin/mail -s "$MilHed" $MailTO MailTO には自分の送りたいメールアドレスを指定します 実行権の付与 chmod u+x /root/untidy/portauditmail.sh crontab の設定適当な頻度で ports の自動更新が走るように設定を追記します vi /etc/crontab # portaudit 1 5 * * * root /root/untidy/portauditmail.sh /dev/null 2 1 ↑ sendmail の設定 結果メールを送信する為に sendmail を起動し、送信後に sendmail を止めるスクリプトを作成します 全拒否の hosts.allow # vi /root/update/host.allow_deny ALL ALL deny sendmail許可の hosts.allow # vi /root/update/hosts.allow_mail sendmail localhost allow sendmail 192.168.1.82 allow sendmail .localdomain allow ALL ALL deny sendmail 完全停止用の rc.conf cp /etc/rc.conf /root/update/rc.conf_none sendmail 起動用の rc.conf現在の /etc/rc.confを流用します # cp /etc/rc.conf /root/update/rc.conf_no # sed -i -e "/^sendmail_/d" /root/update/rc.conf_no # echo sendmail_enable="NO" /root/update/rc.conf_no メールの転送設定ローカルのroot宛にメールを出すように設定したので、普段使うアドレスへ転送する設定をします echo admin@localdomain /root/.forward メール送信シェルスクリプトの作成sendmail は rc.sendmail stop だけで止まるはずですが、まれに動きっぱなしの時があるようなので kill もしています # vi /root/update/resend.sh #!/bin/sh cp -p /root/update/rc.conf_no /etc/rc.conf cp -p /root/update/hosts.allow_mail /etc/hosts.allow sh /etc/rc.sendmail start sleep 6 sh /etc/rc.sendmail stop sleep 4 pkill sendmail cp -p /root/update/hosts.allow_deny /etc/hosts.allow cp -p /root/update/rc.conf_none /etc/rc.conf 実行権付与 # chmod u+x /root/update/resend.sh ports_update_cron.sh の変更メール送信シェルスクリプトの起動を追記します echo /root/update/resend.sh /root/update/ports_update_cron.sh portauditmail.sh の変更メール送信シェルスクリプトの起動を追記します echo /root/update/resend.sh /root/update/portauditmail.sh ↑ freebsd-update 自動更新設定 freebsd-updateがディレクトリ指定で updateできるようなのでその機能を利用します Jail環境での作業を終了します # exit HOST環境での作業 freebsd-updateスクリプトの設定freebsd-update fetch の代わりに freebsd-update cron という cron 動作用のコマンドを使用しますまた HOST は fetch のみ jail は install まで行います # vi /rootfreebsd-update_cron.sh #!/bin/sh ### HOST用 /usr/sbin/freebsd-update cron #/usr/sbin/freebsd-update install ### mainte jail用 /usr/sbin/freebsd-update -b /home/mainte82 -d /home/mainte82/var/db/freebsd-update fetch /usr/sbin/freebsd-update -b /home/mainte82 -d /home/mainte82/var/db/freebsd-update install 実行権付与 chmod u+x /root/freebsd-update_cron.sh crontab の設定適当な頻度で freebsd-update が起動するように追記します vi /etc/crontab # freebsd-update 0 6 * * 2,4,6 root /root/freebsd-update_cron.sh /var/log/freebsd-update.log 2 1 freebsd-update の結果をメール送信freebsd-update cron が実行されて何らかのアップデートがあった場合、ローカルの root 宛にメールを出してくれる機能が組み込まれているので、特別な作業はありません メールの転送設定ローカルのroot宛にメールを出してくれるので、普段使うアドレスへ転送する設定をします echo admin@localdomain /root/.forward 資料 アーカイブ mainte jail fulltree 8.2-RELEASE (2011-09-10 15 14 12) mainte jail fulltree 8.1-RELEASE (2011-09-10 15 15 28) ↑ 関連ページ FreeBSD/jail fulltree 10.0-Release FreeBSD/jail fulltree 9.0-Release ↑ 名前 コメント