UNIX ユーザーのための macOS (Mac OS X)
macOS (Mac OS X) を使っていて、あれ?これってどうするのかなといったちょっとした疑問についてまとめてあります。といっても UNIX ユーザーから見たの疑問なので、UNIX を使ったことがない方にはあまり役にたちません :-)
質問 |
root になるには? | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
Terminal で sudo passwd root と実行して
root のパスワードを設定する。はじめに聞いてくるパスワードは現在ログインしているユーザーのパスワードを入力。NetInfo
を使って設定する方法はこちら。 |
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
シングルユーザーモードで起動するには? | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
起動音がしたらすぐに Command + S を押す。ルートパーティションを書き込み可能にマウントし直す方法は(# はプロンプト) # mount -uw / |
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
起動時にステータスを表示したい場合は? | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
起動音がしたらすぐに Command + V を押す。 | ||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
コンソールモードにするには? | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
Aqua のログイン画面で、アカウント >console でログインする。パスワードは入力しない。コンソールモードになると、キーボードが JIS 配列では無くなるので注意が必要。何処で変えるのかわかりません。ログインして、ログアウトすれば
Aqua が起動されるが、ログインせずにそのまま Aqua に戻りたい時は Ctrl+D をタイプする。 |
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
隠しファイルやフォルダーの表示/非表示は? | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
Finderで Command + Shift + . を押す。 | ||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
隠しファイルやフォルダーを作成したい場合は? | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
ピリオドで始まるファイル名を作成すると隠しファイルや隠しフォルダーになります。それ以外は "chflags" コマンドを利用します。
# chflags hidden filename # chflags nohidden filename |
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
パスワード付きzipファイルの作成方法は? | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
"zip" コマンドに "-e" オプション(encrypt)を指定します。
# zip -e archive-name.zip filename Enter password: <パスワードを入力> Verify password: <再度パスワードを入力> ディレクトリーを指定したい場合は、"-r" オプション(recurse)を指定します。 # zip -er archive-name.zip directory Enter password: <パスワードを入力> Verify password: <再度パスワードを入力> |
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
コマンドラインから NetInfo データーベースの情報を見るには? | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
niutil コマンドを使用する。 データーベースのリストを見る (# はプロンプト) # niutil -list . / 1 users フィールドの内容を見る # niutil -read . /users/dayan home: /Users/dayan uid: 502 _shadow_passwd: name: dayan gid: 20 ... また、nidump(フィールド内の情報を見る)、niload(NetInfo データーベースに登録する)といったコマンドが用意されている。 |
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
コマンドラインからユーザー登録する方法は?(ユーザーdayan を追加) | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
|
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
ネットワークに関する情報は? | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
基本的なホストの設定は、 DHCP を利用する場合
|
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
NFS の設定は? | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
/etc/exports ファイルを作るタイプの設定方法。 | ||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
標準でインストールされている Apache httpdの自動起動を開始/停止するには | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
Apache httpd を起動/停止するには、 # sudo /usr/sbin/apachectl start # sudo /usr/sbin/apachectl stop この場合、macOSを再起動すると初期状態に戻ってしまいます。 そこで # sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist # sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist |
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
OS 立ち上げ時に起動されるプロセスを設定するには? | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
Mac OS X では、SystemStarter というプログラムが起動したいサービスのスクリプトを実行します。SystemStarter は、/System/Library/StartupItems/ にあるスクリプトを起動します。 スクリプトの追加方法: Apache の場合、/System/Library/StartupItems/Apache/Apache というシェルスクリプトを以下の形式で作成する。この Apache というディレクトリー名やファイル名はユニークなものならば何でも構わない。 #!/bin/sh ## # Start Web Server ## . /etc/rc.common if [ "${WEBSERVER:=-NO-}" = "-YES-" ]; then ConsoleMessage "Starting web server" /usr/sbin/apachectl start fi さらに、/System/Library/StartupItems/Apache/StartupParameters.plist ファイルを作成する。 { Description = "Apache web server"; Provides = ("Web Server"); Requires = ("Disks", "Resolver"); Uses = ("NFS", "Network Time"); Preference = "None"; Messages = { start = "Starting Apache web server"; stop = "Stopping Apache web server"; }; } 最後に、/etc/hostconfig に以下の行を追加します。 WEBSERVER=-YES- /etc/hostconfig に追加するシェル変数は、ユニークなものでなくてはならず、起動スクリプトで if 文に使用したものと同じでなければならない。 これらの事でわかるように、スクリプト等を作成したなら /etc/hostconfig に登録された各変数の値を -YES- や -NO- とすることで、OS 起動時にサービスを開始するかどうか決定できます。 |
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
ディスクのマウント方法は? | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
自動的にマシンに接続された全てのファイルシステムを探し、automounter が自動的に、全てのファイルシステムをマウントするようになっている。/etc/hostconfigの中のAUTODISKMOUNT変数を-NO-に変えたらどうなるのだろう? Automount をやめて /etc/fstab に記述すれば、マウントしたいものだけマウントできるようなことを何処かで見ましたが実際には試していません。 |
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
Mac OS X のバイナリーフォーマットは? | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
Mac OS X は、Mach-O (Mach Object) というバイナリーフォーマットを採用している。ELF ではなく、ELF とも互換はありません。 |
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
コンパイラにおける注意 | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
バージョン コンパイルオプション Mac OS X 特有のプリデファインドシンボルは? /usr/lib/libc.a は? シェアードライブラリーの作成 dyld 形式のダイナミックライブラリ
ヘッダファイルとフレームワーク
関数
|
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
Command Line Tools のインストール | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
開発に必要なライブラリやコマンドが含まれている Command Line Tools をインストールするには以下のコマンドをターミナルから実行します。 # xcode-select --install ポップアップ・ウィンドウが表示され、command line toolをインストールするか聞いてくるので、インストールする。 |
||||||||||||||||||||||||||||||||||||||||||||||||||
質問 |
Java | ||||||||||||||||||||||||||||||||||||||||||||||||||
答え |
ProjectBuilder の Format メニューの File Encodings から No-lossy Ascii を選択してUnicode 以外のコードを UnicodeのLarin-1にしてファイルに保存するようにする。 MRJApp.properties ファイルの file.encoding を x-sjis にする。その他、改行コードを設定する line.separator やロケールを設定する user.region, user.language、パスの設定をする file.separator なども注意する。 |