約 4,438,385 件
https://w.atwiki.jp/gogoyukki/pages/18.html
Debian系のApache管理方法 Linux | Debian系ディストリビューションのApacheは一般的なレイアウトとは少し異なっている。 /etc/apache2/apache2.conf基本設定 /etc/apache2/httpd.confオーバーライドする設定 /etc/apache2/conf.d/基本設定の中でIncludeするスニペット /etc/apache2/ports.confポートの設定 /etc/apache2/envvars環境変数の設定 /etc/apache2/mods-available/利用可能なモジュール設定 /etc/apache2/mods-enabled/利用中のモジュール設定(リンク) /etc/apache2/sites-available/利用可能なサイト設定 /etc/apache2/sites-enabled/利用中のサイト設定(リンク) /var/wwwドキュメントルート /usr/lib/cgi-bincgi-bin /var/log/apache2ログ Apacheの設定といえばhttpd.confだけど、Debianの場合0バイトの空ファイル。初めて見ると何だこりゃと思う。 基本的な設定はapache2.confの方に書いてあって、httpd.confはIncludeされるようになっている。 設定を変更したい場合は、apache2.confはいじらずにhttpd.confを書き換えることになる。 ポートに関する設定だけはports.confに書かれている。ListenとかNameVirtualHostとか。 ちなみにServerTokensやServerSignatureはconf.d/securityに書かれている。 モジュールに関する設定はmods-availableにモジュール毎の設定ファイルとして格納されていて、それらのうち実際に有効にするものがmods-enabledにシンボリックリンクとして置かれる。 そしてこのリンクによるOn/Offはa2enmod, a2dismodというコマンドで制御する。 例:mod_proxyを有効にする sudo a2enmod proxy 例:mod_proxyを無効にする sudo a2dismod proxy サイトに関する設定もモジュールと同じ方式で、sites-availableとsites-enabledで管理される。 バーチャルホストやLocationなどでファイルを分けて管理する(defaultは使わずにコピーして使うと良い)。 例:svn.example.comを有効にする sudo a2ensite svn.example.com 例:svn.example.comを無効にする sudo a2dissite svn.example.com modsもsitesもavailableの方を編集するようにする。 間違ってもenabledの方でcp hoge hoge.bakなどとしてはいけない。enabledの中に入っているものは全て読み込まれると思うべし。*1 envvarsは環境変数の設定ファイルで、apache2ctlが毎回読み込むようになっている。 また、Apacheのユーザ、グループ、PIDファイルはこのファイルで設定し、apache2.confの中で環境変数を参照するような形になっている。 Apacheの起動・停止等はapache2ctlでもいいが、/etc/init.d/apache2のほうがよい。 特に設定変更時は/etc/init.d/apache2 reloadでapache2ctl configtestしてからgracefulしてくれる。*2 1:mods-enabledは*.conf, *.loadが、sites-enabledは全てのファイルが読み込まれる 2:モジュールの組み替え等はrestartが必要なので注意。
https://w.atwiki.jp/tasha/pages/16.html
Linux ファイルシステム ファイルシステムについて マウント
https://w.atwiki.jp/linux2ch/pages/47.html
ネットワークのFAQ ネットワークのFAQ ネットワーク系のコマンド サブネットマスクとかゲートウェイとか何ですか? クラスタ用語 データベースと並列処理 SELinuxとかって何? ネットワークカードや無線LAN機器、LANやネット接続の設定について NIC の 10/100、全二重/半二重 (full-duplex/half-duplex) の設定を確認、変更したい。 無線 LAN ノートブック型PC の場合 無線LANカードを利用する USB 用無線子機を利用する デスクトップ型PC の場合 イーサネット・コンバーターを子機として利用する PCI バス用の無線 LAN ボードを追加する 起動時 eth0 が存在しないというエラーが出る ディストリビューション の PCMCIA や Card Bus 対応情報を知るには? 電波の受信レベルを GNOME に表示させることはできますか。 内蔵無線 LAN (Atheros 社製)を使いたい ネットワーク用各種ユーティリティ LANにつながっているコンピュータを調べたい 外部と接続しないのにホスト名、ドメイン名は必要なの?(ホスト名を変更したい) サービスとポートの一覧表はないですか? あるポート番号を使っているプロセスを知りたい。 DNS無しでLANのマシンの名前を逆引きしたい IP アドレスとドメイン名の変換がしたい。 名前解決ができません!!(ip直指定では接続できます) 先生!! ping コマンドが止まりません!! ネットワークの経路を調べたいんですが。 DHCP接続でIPアドレスを再取得したい 問題発生 ブラウザなどで名前解決が異常に遅いです アプリケーション個別に IPv4 でアクセスする方法 カーネルレベルで IPv6 を無効にする方法 IPv6が動いているか調べる Fedora Core VMware にインストールした時ネットワークが起動しない Vine Linux 無線LANカードが利用できないのですが。 Red Hat Linux Red Hat Linux 9 で再起動すると ADSL がしばらくの間つながらなくなってしまいます。 KNOPPIX 無線LANカードの設定はどこで行なったらよいのですか。 White Box Enterprise Linux ネットワーク・タイムサーバーと時間を同期させることはできますか。 ネットワーク系のコマンド 基本的に、ifconfig(IPアドレスなどネットワークの低水準の設定)、netstat(TCP/UDPパケットの統計表示)、route(ルーティングテーブルの設定)、top(タスクのモニタリング)、vmstat(仮想メモリの状況表示)、iostat(I/Oデバイスの状況表示)は覚えておこう。 ほかにもいろいろとあるからネットで検索してほしい。traceroute(接続経路を表示), nslookupとdig(名前解決), arp(IPアドレスとMACアドレスの対照表であるARPテーブルを表示。IPアドレスはパケットの送受信のアドレスだが、MACアドレスはそれぞれのハードウェアデバイス機器の識別番号)は覚えておいて損はない。 また、ifconfigは低レベルな設定ができるが、使いやすいもっと高レベルなツールやシステムが使われていることが多い。Red Hatならsysconfig、Debianならifupdown。ただし、最近はNetworkManagerを使うことがどちらのディストリビューションでも推奨されている。 ifconfigやnetstatは現在型遅れになりつつあり、今では新しいiproute2パッケージのipとかssコマンドを使えと言われ始めている。 また、ファイアーウォールについては基本的にiptablesを使う。ファイアーウォールでパケットフィルタリングをすることで、不正な通信をブロックできる。他にも、VPNというインターネット回線を使って仮想的な専用のネットワーク(たとえば社内の専用回線的なネットワーク)を作ることのできる技術もある。トンネリングという送信者と受信者をほかから見えないトンネルで繋ぐ技術もある。 またNFSを使うとネットワーク上のファイルシステムをローカルと同じようにマウントできる。 https //linuxjf.osdn.jp/JFdocs/NFS-HOWTO/ NFSはUNIX由来の技術だが、Windowsとmixされた環境で使う場合は、Windowsネットワークのフリーソフトウェア実装であるSambaを使うこともできる。たとえば、Windowsをプリンタサーバにして、Sambaで繋いだりできる。 また、NISを使うことで、ネットワークにつながった各コンピュータで認証情報(ログインユーザ名・パスワード)を共通化できる。UNIXの優れた点はこうしたネットワーク性にあると言われる。NFSとNISはSun Microsystemsによる技術。 ほかに、OpneLDAPを使うことで、ディレクトリと呼ばれるデータベースから、ネットワークに繋がったネットワーク機器やユーザー認証情報などに一元的にアクセスできる。 その他ネットワーク関係の技術としては、WebサーバのApache, Nginx(Apacheにはプロセス・スレッドが10,000を超すと不安定になるC10K問題があり、たくさんのスレッドを作成せずイベント駆動でやりとりするNginxが最近流行っている)や、ProFTPDやvsftpdなどのFTPサーバ、lftpなどのFTPクライアント、Windowsとファイルやプリンタを共有できるSamba、メール関係ソフトウェア(MTA・メールサーバ)のsendmail(設定ファイルの形式が超難解), qmail, postfix, eximなどがある。 また、Linuxでは仮想化システムのDockerを使うことができる。Linuxカーネル上で隔離された仮想化コンテナプロセスを起動することができる。Dockerでは、Linuxカーネルの基本的な設定を引き継ぎながら、プロセスとファイルシステムを隔離し、コンテナ上で実行できる。Docker Hubを使うことで、簡単にRailsサーバなどのコンテナイメージを導入・共有できる。また、Kubernetesを使うことで、ネットワークで繋がったクラスタ環境を一台のホストとして仮想化した上でDockerの仮想化システムを実現できる。使うのは簡単だが概念が難しい(ここまで書いていて意味が分からない人は多いかもしれない)が、実際の開発現場ではDockerは開発環境で本番環境を再現するために使う。RailsサーバとMySQLサーバのように、複数のコンテナを連携させるには、Dockerに加えてYAMLでコンテナの構成情報を記述するDocker Composeを使う。 サーバの管理にはSSHを用いてリモートから接続してコマンドを実行する。以前はtelnetやrloginだったが、これらはパスワードなども含めて平文で送受信するため、公開されたインターネットの普及した現在ではセキュアなシェルとしてSSHを用いる。できるだけパスワード認証を使わず、公開鍵暗号通信を用いること、root認証を許可しないこと、デフォルトのポートを変えることなどがSSHにおけるセキュリティ対策の基本。 サーバマシンでないならXのネットワーク透過を使うとか、GNOMEのCORBAとかD-Busとかの分散システムを使ってネットワーク上のシステムを構築することもできる。CORBAやD-Busは、インターフェース記述言語によって、ネットワーク・言語・プラットフォームの垣根を越えてコンポーネントが通信し合う「分散オブジェクト」と呼ばれる技術。MicrosoftのCOMを元にしている。このような分散システムにはほかにRPC(遠隔手続き呼び出し)やJavaのRMI/JavaBeans/EJBなどがある。 LinuxやFreeBSDなどのUNIXには、タスクがたくさんあって高負荷になってもきちんと動くという特徴がある。このため、クラスタだけではなく、中小から大企業まで、サーバーによく使われる。逆に、WindowsのようなGUIで仕事をするデスクトップOSには不向きである。UNIXはインフラとして使うサーバ、Windowsはゲームの延長線上の仕事をするマシンに使うといいだろう。 サブネットマスクとかゲートウェイとか何ですか? そもそも、インターネットはそれぞれのネットワークが家庭やISPのルータによってつながったもの。 それぞれのルータの接続情報を代表ルータが集約し、ルーティングテーブルという経路表を作り出し、その経路表を全ルータに送る。 パケットのIPアドレスがローカルの中であれば、そのコンピュータにパケットを送信する。外部のものであれば、ルータはどこに送れば宛先に近づけるかを知っているので、ネットワークの外部のルータにそのパケットを送る。 IPアドレスは、そのホストのインターネット上の住所(アドレス)で、パケットの送受信先である。このIPアドレスは、ネットワーク部とホスト部に分かれている。 たとえば、IPアドレスが192.168.0.2である時、これをビットにすると、 11000000 10101000 00000000 00000010 となる。 ネットワーク部とホスト部を識別するために、サブネットマスクを使う。サブネットマスクは、ネットワーク部を1とし、ホスト部を0にしたアドレスのこと。 よって、 11111111 11111111 11111111 00000000 であれば、サブネットマスクは255.255.255.0となる。 また、それぞれのホストのネットワークを共有してくれるアドレス(たとえばルータ)をゲートウェイと言う。 サブネットマスクだけではなく、ブロードキャストアドレスを指定することもある。ブロードキャストアドレスは、パケットをブロードキャストするためだけに存在する。これはネットワーク部と同じアドレスを持ち、ホスト部が1となるアドレスとなる。上記の例では、192.168.0.255となる。 最後に、名前解決がある。このようなビット数値によるアドレスは、機械にとっては理解しやすいが、人間にとっては理解しづらい。そのため、人間に分かりやすい名前(hogehoge.co.jpのような)をつける。ここで、hogehogeの部分をホスト名、co.jpの部分をドメインと呼び、ホスト名は自由につけられる。 名前解決をしてくれるのはDNSという仕組みを用いたネームサーバ。ルータが兼ねていることもあるが、そうでなければISPの指定するネームサーバのアドレスを指定する。ネームサーバは/etc/resolv.confに記述する。DNSを含めてあらゆる名前解決をするソフトウェアのことを「リゾルバ」と呼ぶ。 ルータを用いて家庭内ネットワークを構築する際、静的にIPアドレスを与える(たとえば192.168.0.11ならば11の部分を手動で決める)こともできるが、DHCPを用いれば動的に自動で与えることもできる。DHCPを用いる場合、ネットワーク設定にはDHCPを用いることを指定するだけでよく、管理は楽になるが、IPアドレスがたまに変化することがあり、サーバを公開する場合には向いていない。もし、DHCP環境でサーバを公開する場合、ダイナミックDNSという仕組みを使って、IPアドレスがもし変わった場合はそれを定期的にDNSサーバに通知することができる。 32ビットのIPアドレスが表せるIPv4に比べて、IPv6では128ビットのIPアドレスが表せる。IPv6では石ころにすらIPアドレスがふれるぐらい、多くのアドレスが有り余っているとされる。 クラスタ用語 Linuxはサーバやクラスタにおいてよく使われている。 クラスタについては、性能を重視するHPCクラスタと、信頼性を重視する可用性クラスタがある。Linuxで可用性クラスタをやりたいなら、Heartbeatやその後継のPacemakerが使える。 冗長化とは、サーバのデータ(特にデータベース)をコピーして、一部のデータが破損しても代わりが存在するように多重化すること。 フェイルオーバとは、サーバがダウンしても別のサーバが代わりのサーバを務めること。 ロードバランサとは、サーバの負荷を分散させるため、複数のサーバに処理を分担させる仮想的なサーバのこと。クライアントからの要求を仮想サーバに伝え、クライアントからはロードバランサがサーバであるかのように見える。LinuxではLVSなどのロードバランサ技術がある。 また、仮想サーバのリソースを管理する技術をワークロード管理と呼ぶ。主なワークロード管理ソフトウェア(ジョブスケジューラ)としてSlurmなどがある。 スループットは、単位時間あたりの処理数。これに対してレイテンシとよばれる実際の時間から応答時間を割り出す単位もある。 ネットワークは、大部分が円滑に動いていても、一番細くなっている部分が制限されていると、全体の速度が遅くなる。これをボトルネックと呼ぶ。 IBMのメインフレームのような大型コンピュータは、とても高い信頼性と性能を誇る反面、拡張性が低く、一度作ったシステムを拡張しようと思った時に巨額の追加資金がかかる。こうしたシステムを「中央集約型アーキテクチャ」と呼ぶ。 これに対して、俗に「オープン系」と呼ばれる、UNIXやC/C++/Javaのような「標準的OS・言語」を用いてクラスタを築く方法が増えている。こうしたシステムを「分散型アーキテクチャ」と呼ぶ。 最近は、クラウドと言って、ネットワーク上にコンピュータ資源が存在し、業者が管理する中でそうした「ネットワーク上のリソース」の上でシステムを築く手段も増えている。 だが、クラウドは手軽で安価な反面、物理マシンが自社内になく、管理もしづらいという欠点がある。クラウドに対してオンプレと呼ばれる、「自社内にシステムを構築し、自社で管理する」という方式もとられることが増えている。 最近のエンタープライズシステムは、Webクライアント、Webサーバ、APサーバ、DBサーバで構築されることが多い。これはWebブラウザを端末として使い、サーバを3段階構成にしたもので、LinuxであればApache, Java EE (WebならRuby on Rails), MySQLといった構成が多い。 データベースと並列処理 RDBMSにおいて、SQLを用いたリレーションにより、テーブルを自動的に作成できる。テーブルの主キーは行を一意に特定するが、別のテーブルの主キーを含む列のことを外部キーと呼ぶ。たとえば、学部と名前、名前と電話番号の2つのテーブルがあった時、名前を外部キーとして2つのテーブルを結合し、学部、名前、電話番号のテーブルを自動的に作成する。これを結合と呼ぶ。結合はデータベース操作の基本である関係演算のひとつで、ほかに選択と射影がある。 実際には、同姓同名の場合があるため、名前は外部キーにはできない。同一の項目を入れられないように制約をかけることもできる。 また、テーブルの重複要素を排除し、正しい状態でテーブルを整理することを正規化と呼ぶ。テーブルには、エンティティとリレーションシップがあり、これをE-R図で表す。たとえば、1対1、1対多(ひとつのスレッドにたくさんのコメントがつくような場合)、多対1、多対多のリレーションシップがある。 このようなSQLによるデータベースは、プログラムの中ではデータ構造として格納・構築・参照・変更される。主なデータ構造に、配列(順番に要素を格納する)、連結リスト(要素とポインタを持ち、動的に変化させやすい)、ハッシュ(マップ、辞書、連想配列)、セット(集合)、検索テーブル、行列、スタック(最後に入れたものが最初に出てくる)、キュー(最初に入れたものが最初に出てくる)、ツリー(木構造、たとえば二分探索木などは既出の単語検索の効率化のために使われる)、そしてグラフ(ひとつひとつのノードがエッジと呼ばれる繋がりを表す線で繋がる)などがある。C言語の構造体を用いるときは、データのマッピングだけではなく、効率やパフォーマンスも考える必要がある。 C++のSTLやJavaでは、こうしたデータ構造をテンプレート(ジェネリクス)とともに使う。ArrayListなどのObject型とキャストを用いたプログラミングでは、もしStringを想定しておきながらIntegerが入った場合に、コンパイルエラーにならず、実行時に失敗する。JavaではすべてのクラスがObject型を継承しているため、Object型に頼るプログラミングもできるが推奨されない。このような場合はジェネリクスを使うこと。すべてをObject型として扱う時点で、静的型付け言語を使っている意味がそもそもない。 逆に、RubyやPythonでは動的型付け言語であるため、配列にはどんな要素もミックスして入れることができるし、「アヒルのように振る舞うものはアヒルである」とするダックタイピングもできるが、これは大規模な開発では推奨されたスタイルではない。JavaScriptなどはあえて静的型付けをすることができる言語であるTypeScriptがMicrosoftによって開発されており、JavaScript開発ではTypeScriptを使うことが推奨される場合もある。JavaScriptは「自分でオブジェクトを構築してそれを量産する」というプロトタイプベースのオブジェクト指向を用いているが、TypeScriptを用いることでクラスベースのオブジェクト指向ができる。JavaScriptではthis参照を使うことで委譲もできるが、TypeScriptではクラス継承やジェネリクスやインターフェース(要素となるすべてのメンバと型を指定する)、タプル型(配列のそれぞれの要素に型を指定する。データベースなどを扱う際に有用)や型エイリアス(型の別名。stringをHogeTypeなどとできる)なども用意されている。蛇足だが、JavaScriptで書かれたモジュールは、当然ながら型宣言がない。このようなモジュールをTypeScriptで使うために、型宣言ファイルと呼ばれるものが提供されており、C/C++のヘッダファイルとよく似ている。JavaScriptではDOMを用いてHTML文書の編集はできるが、ファイル処理APIは標準では存在しない。ファイル処理のAPIはサーバーサイド向けのJavaScript環境であるNode.jsで同期・非同期のものが提供されている。 オブジェクト指向において、オブジェクトとRDBMSのマッピングを行うことをO/Rマッピングと呼ぶ。また、オブジェクトをファイルに書き出すことをシリアライズと呼ぶ。データを永続化するための常套手段なので覚えておこう。 データベースは、並列で動かした時のデータの矛盾を無くすため、排他制御やロックを行い、トランザクションが失敗すればロールバックする。同様のことをプログラミング言語でやるならば、Mutexによるロックを使う。 長い間C/C++には標準のマルチスレッドがなかった。そのため、UNIXではpthreadと呼ばれるPOSIXプラットフォーム依存のマルチスレッドを行う。Javaでは標準的にスレッドの機能があり、ThreadクラスまたはRunnableインターフェースを用いることでマルチスレッドのプログラミングができる。Javaではsynchronizedブロック・関数を用いることで、ひとつのスレッドしかアクセスできない(要するにロック)ようにできる。また、Javaではスレッドの一時停止や中断(割り込み)、待機などの機能もあり、例外などの機能とともに使う。 よくある並列処理として、単にマルチスレッドでそれぞれのスレッドが働く場合、マスター・スレーブにより主従関係を用いて複雑な処理を行う場合がある。あるいは、UNIXのパイプのように次々に順番で処理を行うパイプラインモデルがある。 最近では、Promiseやasync/awaitを用いて、非同期処理を行う仕組みもJavaScriptなどに存在する。コールバック関数を使うことでも非同期処理は実現できるため、Windows APIやC#のWindows.Formsなどではコールバック関数を多用するが、用途を考えず多用しすぎると、ネストが深くなり見通しが悪くなる(コールバック地獄)に陥ることがある。JavaScriptではPromiseなどの仕組みを使うことで、基本的には非同期で実行しながら、「この処理が終わったらこの処理をしてね」ということを、resolveとreject、thenとcatchの仕組みで実行できる。async/awaitは同期処理を書く場合と同じようにPromiseの非同期処理を書く記述のスタイル。 高速かつ効率的なアプリケーションを開発するには、ボトルネックとなっている部分を調べること、キャッシュを行うこと、並列処理を行うこと、データ構造を変えること、データを圧縮することなどが言える。言語を単にPythonからC++にすることでも高速化はするが、アルゴリズム的な部分は変わらないため、アルゴリズム的な改良も必要となる。 最近は、Kubernetesを用いることによるマイクロサービスという仕組みが流行している。ひとつのJava EEアプリケーションサーバですべての機能をもたせるのでなく、コンテナごとに機能をもたせてKubernetesを用いてオーケストレーションする。ひとつのサービスがすべてを行うわけでないため、テストなどが容易となる。 SELinuxとかって何? UNIXではrootユーザのほかに一般ユーザが存在するが、rootユーザの絶大な特権を制限する方法がない。 また、ファイルやユーザごとにパーミッションをつけることはできるが、HTTPサーバプロセスなどの「プロセス」に直接アクセスを制限するルールを持たせることができない。 SELinuxでは、rootユーザに制限をかけられるほか、プロセスごとに権限のレベルを制限することができる。 ネットワークカードや無線LAN機器、LANやネット接続の設定について NIC の 10/100、全二重/半二重 (full-duplex/half-duplex) の設定を確認、変更したい。 mii-tool や ethtool を使ってください。 [root@localhost]# ethtool eth0 現在の状態を確認。 [root@localhost]# ethtool -s eth0 duplex full 注意: この手のツールは、モジュールにオプションを渡しているだけである。 そのオプションをカーネルが認識したかどうかは不明である。 ドライバによってはツールでの変更が出来ないものもある。 また、システムの再起動時には設定がクリアされるため 恒常的に変更したいのであれば、マニュアルファイルを読むべきである。 無線 LAN 最近は(有線の)LAN 接続よりも、無線 LAN の導入に関心が集まっています。この問題が主因でクライアントのパソコンに Linux の導入をためらっている方もいるかも知れませんので、参考情報を載せておきます。(追加情報があれば、お願いします。) ノートブック型PC の場合 無線LANカードを利用する orinoco_cs などで対応しているチップを採用した無線LANカードを入手するのが無難でしょう。例えば、次の無線LANカード製品は CentOS 3/4、Debian 3.1/4.0、Fedora Core 1、MEPIS、Mandriva、Red Hat Linux 9 を始めとした多くのディストリビューションで自動認識されるようです。 Buffalo: WLI-PCM-L11, WLI-PCM-L11G, WLI-PCM-L11GP (旧製品。ただし店舗によっては在庫がある模様、また探せば中古品が入手可能) Vine Linux の場合も、上記 Buffalo (旧 Melco) のカードは使えますが、設定が多少ややこしいので詳しくは Vine Linux の該当項目を見てください。 LAN 端子を備えたノートブックであれば、もちろん後述のイーサネット・コンバーターの利用も検討できます。デスクトップと共用できるので、使い回しが効いて便利な面があります。 USB 用無線子機を利用する 最近のノートブックでは、無線LANカード(PCカード規格)専用の接続端子が標準でついていないケースが増えています。その場合は、USB 2.0 端子へ直接つなぐタイプの無線子機を検討しても良いでしょう。ただし対応可能な機種が限られるので、事前調査が必要です。 PC Card から ExpressCard へと変換するアダプターが開発されています。 http //www.expresscard.org/web/site/wirelesswan.jsp#adap デスクトップ型PC の場合 デスクトップ型PCでは、よく一般に売られているPCカード規格(PCMCIA)に対応した無線LANカードの利用は、専用の接続端子が標準でついていないためできない場合があります。 この場合の対処としては、次のような方法が考えられます。 イーサネット・コンバーターを子機として利用する この種の製品は、国内の主要メーカーから販売されているので、入手は容易です。Webブラウザから設定が可能な機種もあります。 現在発売されている製品の中に、メーカーで Linux をサポートしている製品は見当たらないようですが、OS の違いによる影響はあまり受けないので、動作する可能性が高いと考えられます。 (注1) メーカーによって、接続設定に独自の仕様があると利用できない場合があるので、導入する場合は同一メーカーのアクセスポイントを利用する方が安心できます。 (注2) イーサネット・コンバーターでは、Webブラウザからの設定が可能となっている機種があります。ただし、機種によっては、購入した直後の最初の接続設定を Windows パソコンから行うことになる場合があります。 PCI バス用の無線 LAN ボードを追加する この場合、OS が自動認識する可能性は低いと思われますので、追加設定が必要かも知れません。 起動時 eth0 が存在しないというエラーが出る pcmcia サービスが起動する前に network サービスが起動してしまい、PCMCIA のネットワークカードを見つけられないために起こることがあります。起動スクリプトの起動順を変えて対処します。 まず、普段使うランレベル(Red Hat系なら5、Debian系なら2)の rcディレクトリに移動します。例) cd /etc/rc.d/rc5.d/ 次にそれぞれの起動の順番を変更します。頭の数字の順番に起動するので、pcmcia が network よりも先に起動するように数字を変えます。(root 権限が必要) mv S10network S11network mv S24pcmcia S10pcmcia 他の起動スクリプトとの兼ね合い上、なるべく早く起動するように network の数字は10前後にしておいたほうが無難です。 これで、次回起動時より、pcmcia(10) → network(11) の順番に起動するようになります。 [追加情報] 新しいノートPCは内蔵の無線LANを装備していますが、下記の情報が入手できればLinux(FedoraCore3で確認)で利用可能です。 % lspci | grep Atheros 02 02.0 Ethernet controller Atheros Communications, Inc. AR5212 802.11abg NIC (rev 01) ディストリビューション の PCMCIA や Card Bus 対応情報を知るには? Linux PCMCIA Information Page Linux PCMCIA Supported Device List Linux PCMCIA HOWTO 日本語訳 武藤氏の 無線LAN動作状況 というページも実際的で役立ちます。 電波の受信レベルを GNOME に表示させることはできますか。 「ワイヤレス接続モニタ」という GNOME 付属のアクセサリーがあります。 デスクトップの下部に表示されるパネル上でマウスを右クリックし、 [パネルに追加] [インターネット] [ワイヤレス接続モニタ] を開くと、通知アイコンがパネルに追加されます。 内蔵無線 LAN (Atheros 社製)を使いたい Linux で Toshiba Tecra の内蔵無線LANを使う というページを参考にして、対応ドライバーを組み込み設定してください。 Atheros製無線LANチップセット用オープンソースドライバーが無料公開 ネットワーク用各種ユーティリティ LANにつながっているコンピュータを調べたい ping -b 192.168.0.255 や arp を使う。 arp - ARPテーブルの表示/設定を行う (@IT) 外部と接続しないのにホスト名、ドメイン名は必要なの?(ホスト名を変更したい) 適当なホスト名、ドメイン名をつけてやってください。example.com なんかは実際に使われないことになってるので、おすすめ。 インストール後にホスト名を変更したい場合は ITMedia のホスト名を変更したいを参照のこと。 最近のディストリビューションにはこの記事に出てくる linuxconf が収録されていない場合が多い。その場合は設定ファイルを直接編集。 サービスとポートの一覧表はないですか? /etc/services ファイルにあります。 あるポート番号を使っているプロセスを知りたい。 root で以下のコマンドを実行すれば調べられます。 lsof -i tcp ポート番号 fuser -v -n tcp ポート番号 netstat -anp | grep ポート番号 参考: 特定のポートをオープンしているプロセスを調べるには (@IT) ポートを使用しているユーザーを調べるには (@IT) DNS無しでLANのマシンの名前を逆引きしたい /etc/hosts ファイルに名前を書いておいてください。 192.168.0.2 hoge.hogehoge hoge 192.168.0.3 fuga.hogehoge fuga Windows のほうの C yenwindows yenhosts (9x系列)、%Systemroot% yensystem32 yendrivers yenetc yenhosts (NT系列) を同じ書式のファイルを用意すると、どちらからでも逆引きできるよ。 IP アドレスとドメイン名の変換がしたい。 host コマンドを使ってください。dig コマンドも使えます。 うまく行かない場合は /etc/resolv.conf ファイル や DNS の設定を確認してください。 digコマンドとは (@IT) 名前解決ができません!!(ip直指定では接続できます) /etc/resolv.conf に DNS サーバを指定していますか? nameserver 123.456.789.101 nameserver 123.456.789.102 先生!! ping コマンドが止まりません!! Ctrl+C で止めてください。あるいは -c オプションで回数を事前に指定 ($ ping -c 5 www.yahoo.co.jp など)。 ネットワークの経路を調べたいんですが。 traceroute www.yahoo.co.jp などとしてください。 traceroute - ネットワークの経路を調査する (@IT) DHCP接続でIPアドレスを再取得したい dhclient コマンドを使います。 $ su # dhclient -r でIPアドレスを解放し、つづいて再取得します。 # dhclient DHCPクライアントでIPアドレスを再取得するには (@IT) dhclient の man ページ 問題発生 ブラウザなどで名前解決が異常に遅いです アクセスの際に IPv6 で接続しようとするため、アドレス解決に時間がかかっていると考えられます。その結果、ページが表示されるまでの時間がかかり、ネットワーク環境が遅いと感じるのでしょう。 アプリケーション個別に IPv4 でアクセスする方法 Mozilla Firefox の場合 Konqueror の場合 w3m の場合は -4 オプションを付けて起動する事で IPv4 でアクセスする事ができます。 カーネルレベルで IPv6 を無効にする方法 modprobe.conf を編集する場合 /etc/modprobe.conf ファイルを変更します。/etc/modprobe.confで以下のように設定し、IPv6を無効化します。 alias net-pf-10 off alias ipv6 off ディストリビューションによっては、このファイルを新規に自分で作るので、同名ファイルがない場合があります。 /etc/modutils/aliases が存在している場合には、設定の変更はこのファイルより行います。 /etc/modutils/aliases の次の行のコメントを外します。 # alias net-pf-10 off# IPv6 変更後は次のようになります。 alias net-pf-10 off# IPv6 たとえ /etc/modules.conf と /etc/modprobe.d/aliases が存在しても、それらのファイルは変更せずそのままにしておきます。 How do I disable IPv6? (CentOS Wiki) 2007-09-22 FedoraでIPv6を無効化 (adsaria mood) 2008-05-25 UbuntuでIPv6を無効化 (同上) syscrl.conf を編集する場合 /etc/syscrl.conf ファイルを以下のように変更(または追加)してください。 net.ipv6.all.disable_ipv6=1 Ubuntu 9.04 JauntyでIPv6を無効(disable)にしたい (ほげおメモ) IPv6が動いているか調べる ifconfig コマンドでループパックデバイスを調べてください。 # ifconfig lo lo Link encap Local Loopback inet addr 127.0.0.1 Mask 255.0.0.0 inet6 addr 1/128 Scope Host ←この行があればIPV6が動作してます UP LOOPBACK RUNNING MTU 16436 Metric 1 RX packets 46 errors 0 dropped 0 overruns 0 frame 0 TX packets 46 errors 0 dropped 0 overruns 0 carrier 0 collisions 0 txqueuelen 0 RX bytes 3016 (3.0 KB) TX bytes 3016 (3.0 KB) Fedora Core VMware にインストールした時ネットワークが起動しない VMware上にインストールした時、DHCP で IPアドレスを取得する設定にしているとネットワークがリンクアップしていないため起動しません。 以下のファイルを編集します。 /etc/sysconfig/network-scripts/if-cfg[n] /etc/sysconfig/networking/devices/ifcfg-eth[n] -- ない場合は作成 [追加] check_link_down () { return 1; } Vine Linux 無線LANカードが利用できないのですが。 Vine Linux 3.0 の場合です。[アプリケーション] > [システム・ツール] > [ネットワークの管理] よりネットワークの設定を行えます。2.6 と比較して設定ツールは改善されたようですが、WEP KEY を有効にしている場合にはその設定項目が存在しないため自動接続ができず、設定が正常に完了できません。 そこで、 /etc/sysconfig/network-scripts/ifcfg-eth1 ファイルを適当なエディターで開くと、次のように(一例)記述されているでしょうから、 BOOTPROTO=dhcp ONBOOT=yes USERCTL=yes NAME="無線 LAN カード" DEVICE=eth0 ESSID=********** PEERDNS=yes さらに次の一行を追加してください。これでたいていは接続できるようになるでしょう。 KEY=s ************* Red Hat Linux Red Hat Linux 9 で再起動すると ADSL がしばらくの間つながらなくなってしまいます。 rp-pppoe パッケージのバグです。 パッケージのインストール時に起動スクリプトの設定は行われるのに終了スクリプトの設定が行われないため、シャットダウンもしくはリブート時に正常に切断がされず、プロバイダ側が異常終了と判断して五分間ぐらい接続を停止するのが原因です。 以下の方法で解決します。 # /sbin/chkconfig --del adsl # /sbin/chkconfig --add adsl このように一度スクリプトの設定を削除し、追加し直すことで終了時の設定が正常に設定し直されます。 KNOPPIX 無線LANカードの設定はどこで行なったらよいのですか。 無線LANカードをパソコンのPCカードスロットに差し込んだだけで直ぐに利用できる場合もありますが、カードの稼働ランプが点灯していなければ、無線LANの接続設定を実行する必要があります。 K アイコン(メインメニュー) > KNOPPIX > Network/Internet > ネットワークカードの設定 から接続設定を行ないます。この場合は、「DHCP のブロードキャストを使いますか?」という問いかけで「No」を選択し、ネットワークの各項目を再設定します。 出てくる入力フォームが分からない場合はWINDOWS(XP)で「ワイヤレスネットワークの表示」の「サポート」タブを確認する。 それぞれの問いかけにWINで確認した項目をそれぞれ入力する。 「IPアドレスを入力して下さい」 --- IPアドレス 「ネットワークマスクを入力して下さい」 --- サブネットマスク 「ブロードキャストアドレスを入力して下さい」 --- そのままで多分OK 「デフォルトゲートウェイを入力して下さい」 --- デフォルトゲートウェイ 「ネームサーバーを入力して下さい」 --- デフォルトゲートウェイ これで多分OK。 あとの不明な項目については「OK」で切り抜けると、自動設定が行なわれます。これで大抵は、ネットワークに接続可能となります。 White Box Enterprise Linux ネットワーク・タイムサーバーと時間を同期させることはできますか。 はい。日付と時刻の調整という設定画面で、「ネットワークタイムプロトコルを有効にする」という項目にチェックを入れます。 Red Hat Linux 9 や Fedora Core ではあらかじめ登録された中から選択するだけですが、WBEL では空欄となっているので明示的に指定する必要があります。 ntp.ring.gr.jp (Ring Server Project の NTP サーバによる国内サービス) time.nist.gov (National Institute of Standards and Technology- 米国標準技術局の運営) これらはその一例です。 ntp server http //www.asahi-net.or.jp/~mu6k-ski/ntp.html NTP The Network Time Protocol The Clock Mini-HOWTO (JF Project - 日本語訳)
https://w.atwiki.jp/cdesktop/pages/15.html
KDE とは KDE - Wikipedia KDE(ケーディーイー)は、クロスプラットフォームな統合アプリケーションを制作する国際的なフリーソフトウェア共同体。X Window System上などで動作するデスクトップ環境『KDE Software Compilation』などを提供している。このデスクトップ環境はGNOMEと双璧をなす存在であり、GPLなどのライセンスの下で提供されている。 提供されるデスクトップ環境は、Qtなどのコアテクノロジの上で、ウェブブラウジングやファイル操作、マルチメディアの再生、オフィス作業など多くの用途のための数多くのソフトウェアが含まれており、Slackware、openSUSE、Kubuntu、Mandriva Linux、PCLinuxOS、TurbolinuxなどのLinuxディストリビューションの他、PC-BSDやDesktopBSDといったFreeBSDディストリビューションが標準で採用している。 KDE は Windows, Mac OSX, Linux, FreeBSD などで動作するクロスプラットフォームなデスクトップ環境です。 Qt ツールキットによる洗練され統一感のある外観が特徴で、高機能なアプリケーションが多数付属しています。 Linux ディストリビューションの中では GNOME と双璧をなす非常に人気の高いデスクトップです。 KDE の魅力と特徴 統一感のある外観と操作性 KDE は外観が非常に上品で綺麗です。 KDE は UI 構築に Nokia 社の Qt ツールキットを使用していますが、それ以外のツールキット(GTK+)で作成されたアプリケーションも同じ外観になるため、全体として統一感のあるデスクトップになっています。これは他のデスクトップの GNOME や Unity よりも洗練されています。 操作性は Windows XP, Vista, 7 にとても良く似ています。 アプリケーションメニュー、ツールバー、通知エリア、クイックランチャーなど Windows と同じ要素が見受けられます。 特に半透明のパネルは Windows 7 と外観がほぼ同じです。街頭アンケートで KDE のスクリーンショットを見せたらほとんどの人が Windows と勘違いしたという話もあるくらいです。 また、KDE4 の半透明パネルは登場時期が Windows 7 よりも早かったために、Windows 7 が KDE をパクったと主張する人もいます。ただしその他の部分で Windows にインスパイアされているのはか確実なので不毛な議論です。 高いカスタマイズ性 KDE は他のデスクトップ環境である GNOME や Xfce を凌駕するカスタマイズ性を有しています。 KDE のシステム設定を開くと、非常に細かい事まで設定で変更できるようになっているのが分かると思います。 システム設定では、色・フォント・アイコン・ショートカット・マウス・キーボードなどを細かくカスタム可能です。 嬉しいことに、設定を様々に変更しても簡単にデフォルト値に戻すことができるようになっているので、誰でも安心してカスタマイズを楽しむことができます。 KDE をカスタマイズするユーザーのために KDE-Look.org というコミュニティがあります。 KDE に関する壁紙やその他のアイテムはここで手に入れることができます。 高機能なアプリケーションが付属しており、連携が強力 KDE 向けに開発されたアプリケーションが付属しており、統一された操作性を実現しています。 完成度も高いものが多く、GTKアプリケーションに比べて多機能なものが多いようです。 必ずではないですが、名前に「K」が付くものが多いです。 アプリケーション一覧 以下に代表的な KDE アプリケーションを挙げます。これはほんの一部です。 インターネット Konqueror (ファイルマネージャ 兼 Webブラウザ) Rekonq (Webkit系 Webブラウザ) Akregator (RSS フィードリーダー) KMail (POP3/IMAP4 対応メーラー) Choqok (Twitter等のクライアント) Kopete (Skype, Messangerクライアント) Konversion (IRC クライアント) KTorrent (BitTorrentクライアント) グラフィックス Gwenview (画像ビューワー) DegiKam (デジタルカメラ管理) Karbon (SVG 編集, InkscapeやIllustrator系のソフト) Krita (ペインティングツール, GimpやPhotoshop系のソフト) Okuler (ドキュメントビューワ) マルチメディア Amarok (音楽管理、プレイヤー) Dragon Player (動画プレイヤー) K3b (CD, DVD の作成) KAudio Creator (CD リッピング) Kaffeine (メディアプレイヤー) VLC (メディアプレーヤー) 開発 KDevelop (KDEアプリケーションのためのIDE) Kompare (差分ツール) オフィス Kontact (個人情報の管理) Calligra Suite (オフィススイート) システム Dolphin (ファイルマネージャ) KDE Partition Manager (ディスクパーティションの管理) Konsole (ターミナルエミュレータ) KInfoCenter (システム情報の取得) ユーティリティ Kate (プログラマ向けエディタ) KWrite (テキストエディタ) KNotes (デスクトップメモ) Klipper (クリップボード履歴管理) Ark (圧縮ファイルの管理) KCalc (電卓) ゲーム KMines (マインスイーパー) Kigo (ボードゲーム) KDE 付属のアプリケーションでなくとも、Qt で書かれているものは KDE との親和性は高い傾向にあります。 VLC (メディアプレイヤー) Scribus (ドキュメントレイアウトツール)
https://w.atwiki.jp/ohden/pages/337.html
環境 Ubuntu 10.10 desktop 32bit環境 Android SDK r9 Android NDK r5 Android SDK http //developer.android.com/intl/ja/sdk/ Android NDK http //developer.android.com/intl/ja/sdk/ndk/ JDKのinstall apt使ってJDKの導入。 現在の主となるAndroidのversionは2.2ですが、この子はJava5らしい。 とりあえず、Java6突っ込んどいて、何か起きたらJava5にしよう。(ノ∀`) Javaを普通に取りに言っても無いって言われるので、 $ sudo add-apt-repository "deb http //archive.canonical.com/ lucid partner" $ sudo apt-get update これで見つかる。 $ sudo apt-get install sun-java6-jdk しばらくするとライセンスの同意を聞いてくるんで『yes』選択。 Android SDKのinstall 取得して解凍して移動。 $ wget http //dl.google.com/android/android-sdk_r09-linux_x86.tgz $ tar zxvf android-sdk_r09-linux_x86.tgz $ mkdir ~/android $ mv android-sdk-linux_x86/ ~/android/android-sdk とりあえず、homeにandroidってdir作って突っ込むことにした。 作業し易いようにdir名も『android-sdk』にしといた。 んで、起動時に環境変数が設定されるように『.bashrc』を修正。 $ cd $ vi .bashrc # Android SDK ANDROID_SDK_ROOT=$HOME/android/android-sdk PATH=$ANDROID_SDK_ROOT/tools $PATH PATH=$ANDROID_SDK_ROOT/platform-tools $PATH $ source .bashrc 最後に、上手いことupdateが動かんことがあるので... $ android update sdk -u ※『-u』付けるとCUI環境で更新されるっぽぃよ。 ただ、鬼のように時間がかかるので注意。 Eclipseのinstall 取得して、任意の場所に解凍すればinstall完了。 $ wget http //ftp.jaist.ac.jp/pub/eclipse/technology/epp/downloads/release/helios/SR1/eclipse-java-helios-SR1-linux-gtk.tar.gz $ tar zxvf eclipse-java-helios-SR1-linux-gtk.tar.gz JDKが正常に入ってればeclipseが起動可能。 解凍したdir内にある『eclipse』をダブルクリックしてeclipseが立ち上がれば問題無い。 ADPのinstall これはWin版と変わらんのでそっち参照。 ※当初64bit環境で構築していたが、上手く動作せず...挫折してVMware上の32bit環境に変更した。 謎のエラー... 散々探して似た様なエラーで困ってる人が居って、lib32を入れて回避してたのでマネしてみる。 $ sudo apt-get install lib32stdc++6 lib32z1-dev ん~、ホントに直った。でも、また次のエラー。(´・ω・`) 探しても同じ症状の人が居らん...挫折。 暇できたら再調査しよう。 Android NDKのinstall 取得して解凍して移動。 $ wget http //dl.google.com/android/ndk/android-ndk-r5b-linux-x86.tar.bz2 $ tar xvfj android-ndk-r5b-linux-x86.tar.bz2 $ mv android-ndk-r5b ~/android/android-ndk こちらも、homeにandroidってdir作って突っ込むことにした。 同じく『android-ndk』にリネーム。 で、環境変数の設定。 $ cd $ vi .bashrc # Android NDK ANDROID_NDK_ROOT=$HOME/android/android-ndk PATH=$ANDROID_NDK_ROOT $PATH $ source .bashrc 環境変数有効にしたら終了。 更新日: 2011年03月30日 (水) 11時19分17秒 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/hiroyuki12/pages/123.html
# Basic Information Name global Version 6.2.2 Release 1%{?_dist_release} # COPYING などを参照して License を修正してください。 License GPLv3+ # /usr/share/doc/rpm-4.8.1/GROUPS_for_vine.txt を参照して Group を修正してください。 Group FIXME Source0 %{name}-%{version}.tar.gz BuildRoot %{_tmppath}/%{name}-%{version}-root Vendor Project Vine Distribution Vine Linux Packager FIXME Summary FIXME Summary(ja) ここに日本語で概要を記述してください。 # Dependency # 以下に依存関係を記述してください 。 %description FIXME %description -l ja ここに日本語で詳細を記述してください。 %prep %setup -q %build %configure %{__make} %{?_smp_mflags} %install %{__rm} -rf ${RPM_BUILD_ROOT} %{__make} install DESTDIR=${RPM_BUILD_ROOT} %clean %{__rm} -rf ${RPM_BUILD_ROOT} %files %defattr(-,root,root) %doc AUTHORS COPYING ChangeLog LICENSE NEWS README THANKS %{_bindir}/* %{_libdir}/* %{_datadir}/* %exclude %{_infodir}/dir %{_mandir}/* %changelog Sat May 19 2012 hiroyuki12 hiroyuki12@gamil.com 6.2.2-1 initial build for Vine Linux
https://w.atwiki.jp/linux-memo/pages/22.html
Linuxユーザー団体 有限責任中間法人 Mozilla Japan [[特定非営利活動法人エルピーアイジャパン (LPI-Japan) http //www.lpi.or.jp/]] オープンソースビジネス推進協議会 Linuxコンソーシアム 日本Linux協会 日本UNIXユーザ会 Bacula.jp blanco Framework Community 会 Cobalt Users Group Ext JS Workshop Firebird日本ユーザー会 Geeklog Japanese GentooJP Hacker s Café ITRC UAI研究会 Joomla! 日本語化プロジェクト JPBE.net(日本 BeOS ネットワーク) KNOPPIX/Math Project KNOPPIX教育利用研究会 moblin.org MODx CMS JAPAN Momonga Project mondorescue.jp Moodle研究会(仮) OmegaTプロジェクト OpenOffice?.org 日本ユーザー会 OpenPNEユーザー会 OpenSolaris? など翻訳プロジェクト OpenSolaris?ユーザ・グループ Open Street Map Japan openSUSE コミュニティ Pleiades (Eclipse プラグイン日本語化プラグイン) プロジェクト Portal Application Laboratory Plone研究会 PureBasic?日本ユーザー会 Scalix Users Community SKIPユーザグループ Smalltalk-users.jp / Squeak-ja TOMOYO Linuxプロジェクト TYPO3 UsersGroup? JAPAN Ubuntu Japanese Team Usagi Project warp project OSC 出展委員会 World Wide Web Consortium (W3C) Xandroser Community ZABBIX-JP zf-users 400 Synchronized Damien 秋田県大館市 オープンeラーニングシステム研究会 NPO法人 オープンソースソフトウェア協会(OSSAJ) オープンソース(OSS)で中小企業のIT化 仮想化友の会 小江戸らぐ コンピュータ職人の会LLP 渋谷wordpressユーザー会 しまねOSS協議会 特定非営利活動法人 地域自立ソフトウェア連携機構(MSCO) 東京エリア Debian 勉強会 日本Androidの会 日本 Apache Geronimo ユーザグループ 日本Asteriskユーザ会 日本KDEユーザ会 日本LDAPユーザ会 日本Liferayユーザグループ 日本MySQLユーザ会 (MyNA) 日本NetBSDユーザーグループ 日本phpmotionユーザー会 日本PostgreSQLユーザ会 日本Rubyの会 日本Sambaユーザ会 日本Slackware/Slaxユーザグループ 日本Unboundユーザ会 日本Zopeユーザー会 日本語プログラミング言語「なでしこ」友の会 日本セキュアOSユーザ会 日本タイル型ウィンドウマネージャ推進委員会 日本電子専門学校 Webデザイン科 日本電子専門学校 オープンソースシステム科 はなまるWeb勉強会 はりぼて友の会 ホダ塾 XOOPS Cube ディストリビューション もじら組 リンク 関係会社 オープンソースカンファレンス
https://w.atwiki.jp/ohden/pages/447.html
nfs Ubuntu 10.04 LTS nfs4 ■install どうやらカーネルスレッドに組み込まれるのと通常のデーモンとして動作するのと2種類あるみたい。 apt-get installの候補見てみたら、この3種類。 nfs-kernel-server nfs-server nfs-user-server 『nfs-kernel-server』がカーネル組み込みってのは分かるんじゃが、残り2つの差異はなんなんじゃろう? とりあえず、カーネル版を突っ込む。 $ sudo apt-get install portmap nfs-kernel-server 終わったら、 $ ps -aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDdaemon 3388 0.0 0.0 1896 572 ? Ss 14 42 0 00 portmaproot 3890 0.0 0.0 0 0 ? S 14 42 0 00 [nfsd4]root 3891 0.0 0.0 0 0 ? S 14 42 0 00 [nfsd]root 3892 0.0 0.0 0 0 ? S 14 42 0 00 [nfsd]root 3893 0.0 0.0 0 0 ? S 14 42 0 00 [nfsd]root 3894 0.0 0.0 0 0 ? S 14 42 0 00 [nfsd]root 3895 0.0 0.0 0 0 ? S 14 42 0 00 [nfsd]root 3896 0.0 0.0 0 0 ? S 14 42 0 00 [nfsd]root 3897 0.0 0.0 0 0 ? S 14 42 0 00 [nfsd]root 3898 0.0 0.0 0 0 ? S 14 42 0 00 [nfsd] や $ rpcinfo -p program vers proto port100000 2 tcp 111 portmapper100000 2 udp 111 portmapper100003 2 udp 2049 nfs100003 3 udp 2049 nfs100003 4 udp 2049 nfs100003 2 tcp 2049 nfs100003 3 tcp 2049 nfs100003 4 tcp 2049 nfs って打ってみると、nfsが起動していることが分かる。 ■サーバの設定 設定ファイルは『/etc/exports』らしい。 $ sudo vi /etc/exports e.g.)『/var/nfs/share』を192.168.1.1~192.168.1.254までのユーザに公開する設定 /var/nfs/share 192.168.1.0/255.255.255.0(rw) 行末の()内の文字はオプションで色々ある。 ro Readを許可 rw Read/Writeを許可 以下を設定する場合は、roまたはrwの後ろに『,』で区切って記述する。 root_squash root権限でのアクセスを禁止 no_root_squash root権限でのアクセスを許可 squash_uids=n-m UIDがn~mまでのユーザーがアクセスした場合、nobodyユーザーのアクセスとして処理される all_squash rootを含めた全てのユーザーがアクセスした場合、nobodyユーザーのアクセスとして処理される nobody userが何なのかは、 $ id nobody と打てば分かると思う。 で、設定を変更したら、設定の反映。exportfsするまでは設定が反映されないので注意。 $ sudo exportfs -ra exportfs /etc/exports [1] Neither subtree_check or no_subtree_check specified for export "192.168.1.0/255.255.255.0 /var/nfs/share". Assuming default behaviour ( no_subtree_check ). NOTE this default has changed since nfs-utils version 1.0.x 設定を反映させたら、設定された内容を確認する。 $ showmount -e Export list for UbuntuVM /var/nfs/share 192.168.1.0/255.255.255.0 ■クライアントの設定 クライアント側にもportmapは必要らしい。 $ sudo apt-get install portmap 実際にmountしてみる。 e.g.) nfs鯖のIP:192.168.1.100。 nfs鯖のdirは上記で設定した通り。 mount先をhome dir下のmntってdirとする。 $ sudo mount -t nfs -o rw 192.168.1.100 /var/nfs/share ~/mnt これでmountされたハズ。 試しにmountされたdir内に任意のfileを作ってみて... $ cd ~/mnt $ touch test $ cd /var/nfs/share $ ll 合計 0-rw-r----- 1 hoge hoge 0 2011-11-11 11 11 test mount元の方にちゃんとfileができてたらok。 更新日: 2012年01月06日 (金) 20時20分51秒 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/hyosida/pages/36.html
WindowsとLinuxのデュアルブート化 Dynabook R732/HのHDDを320GBの中古品に入れ替え、まずはWindows10をインストールした。次にgpartedでパーティションをリサイズした。つまり、Windows10用に/dev/sda1をNTFSで120GB、残りをだいたい90GBx2くらいにして、最後の4GBをswapにした。前半の90GBがなぜか拡張パーティション/dev/sda2の論理パーティション/dev/sda5になり、後半の90GBはプライマリパーティションの/dev/sda3、スワップは/dev/sada4になっている。 次に二つ目のパーティション/dev/sda5にLinux Mintをインストールした。GRUB2が導入され、Windows10はGRUB経由でメニュー選択から起動される。これを元に戻す方法は、Windowsのインストールディスクの修正コンソール画面からコマンドを打てばよいことまではわかっている。 で、調べたかったのは、ここにさらにpuppy linxをインストールするとどうなるか。 で、このHDDをいじるのはいやだったので、別の個所に書いた、160GBの外付けHDDにインストールしたWindows7のHDDを実験用に使ってみた。このWindows7がインストールされた外付けHDDは、内蔵させると普通に起動する。 で、このHDDにまずはLubuntuをインストールした。gpartedでリサイズしWindowsの領域を62GB(/dev/sdc1)、残りは拡張パーティション/dev/sdc2の論理パーティション32GB(/dev/sdc5)、32GB(/dev/sdc6)、22.5GB(/dev/sdc7)と刻んだ。/dev/sdc5にLubuntuをインストールした。 これでGRUB2が導入され、MBRが書き換えらえるためメニュー画面からWindowsを選択するように変わった。 さらにPuppy LinuxをFrugalインストール さて、ここでPuppy Linuxをインストールするとどうなるか、が知りたかったこと。結果的にはうまくいかなかった。 今まではWindowsだけがインストールされたHDDに複数のPuppy Linuxをインストールしたことはあり、この時は1つ目のPuppyのインストール時にGRUB4DOSというのが導入され、2つ目以降はmenu.lstを手動で書き換えた(それを促す画面が表示された)。これで特に問題なかった。 今回はそういうわけにはいかなかった。まずPuppyインストール時にこんな画面が出る。 拡大 拡大 そしてこんなことを言われる。 Grubがインストールされているならmenu.lstと言うファイルを探し (一般的にGrubがインストールされているパーティションの「/boot」 ディレクトリにあります)下の行を追加して下さい: title Puppy Linux - bionicpup64 8.0 frugal in sda1 dir bionicpup648.0frugal #root (hd0,0) -- GRUB legacy, ex (hd1,0), etc.. find --set-root uuid () 01D605E93B300550 kernel /bionicpup648.0frugal/vmlinuz pmedia=atahd psubdir=bionicpup648.0frugal initrd /bionicpup648.0frugal/initrd.gz ----- For GRUB you must set root (hdX,X) to the correct values and comment/remove uuid. root (hdX,X) is also supported by grub4dos.. それで結局PuppyとWindowsはデュアルブートできるが、Lubuntuがブートできない、という状態になってしまった。これを元に戻すのは画像の通り、 cat /mnt/sda1/sda_mbr.bak /dev/sda とやると、バックアップしておいたMBRが書き戻され、最初の(Puppyをインストールする前の、LubuntuとWindowsがデュアルブートできる)状態に戻った。 なぜかLinu Beanだとうまく行く HDDの最初のパーティション(/dev/sda1)にWindows7、2つめ(/dev/sda2)にLubuntu、そして4つ目(/dev/sda4)にLinux Beanをインストールした状態からpuppy linuxをインストールしてみた。再起動するとメニューには出てくるが上に書いたようにXubuntuは起動できないがLinux Beanは不思議なことにちゃんと起動する。 困ってしまった。どこが間違っているのか。 https //ameblo.jp/gokurakuhaze/entry-12410973310.html https //plaza.rakuten.co.jp/samurider/diary/201908130000/
https://w.atwiki.jp/fns1556/pages/97.html
SELinux 1.1 SELinuxの状態確認 [root@sv ~]# sestatus SELinux status enabled SELinuxfs mount /selinux Current mode enforcing Mode from config file enforcing Policy version 24 Policy from config file targeted 上記の様にenabledとなっていたら有効になっている。 [root@sv ~]# getenforce Enforcing 上記の場合もSELinuxが有効 1.2 SELinuxの無効化 [root@sv ~]# vim /etc/selinux/config #SELINUX=enforcing ←コメントアウト SELINUX=disabled ←追加 参考:SELinuxを無効化する 1.3 SELinux セキュリティコンテキストの確認 [root@sv ~]# ll -dZ /var/ftp/pub drwxrwxrwx. root root system_u object_r public_content_t s0 /var/ftp/pub/ 1.4 SELinux セキュリティコンテキストの変更 [root@sv ~]# chcon -t public_content_rw_t /var/ftp/pub 1.5 SELinux セキュリティコンテキストの復元 [root@sv ~]# restorecon /var/ftp/pub 1.6 seboolの確認 以下、FTP関連のbool値のみ抜粋 [root@sv ~]# getsebool -a allow_ftpd_anon_write -- off allow_ftpd_full_access -- off allow_ftpd_use_cifs -- off allow_ftpd_use_nfs -- off ftp_home_dir -- off ftpd_connect_db -- off ftpd_use_fusefs -- off ftpd_use_passive_mode -- off 参考:SELinux Booleans 1.7 seboolの設定 以下、anonymousの書き込み権限を許可(-P オプションは再起動後も有効になるが、実行に時間が掛かるっぽい・・・) [root@sv ~]# setsebool -P allow_ftpd_anon_write=1 1.8 samba用の設定 selinuxがデフォルト設定の場合はsambaでファイル共有を掛けても、selinuxによりアクセスが制限される。 共有フォルダが/home/shareの場合のselinuxのデフォルトタイプはhome_root_t [root@sv ~]# ll -dZ /home/share drwxrwxrwx. nobody nobody unconfined_u object_r home_root_t s0 /home/share chconによりselinuxのタイプをsamba_share_tに変更する。 [root@sv ~]# chcon -t samba_share_t /home/share -R drwxrwxrwx. nobody nobody unconfined_u object_r samba_share_t s0 /home/share 参考:SambaとSELinux 参考:新SELinux入門 第5回 タイプを変更してトラブルに対処する 1.9 ftp用の設定 ftpのanonymousはSELinuxにより制限を受ける。そのため、セキュリティコンテキストとブール値を変更する。 [root@sv ~]# chcon -t public_content_rw_t /var/ftp/pub [root@sv ~]# setsebool -P allow_ftpd_anon_write=1 参考:RHEL6 vsftpd anonymous access with selinux