20200327のMacに関する記事は4件です。

MacでUSBシリアル接続する

概要

NECのルーターUNIVERGE IX2105の設定を弄ることになったが、Mac端末しかない。
Macで初めてのコンソール接続にチャレンジした。

環境

  • PC:Macbook Pro 13inch(Mojave)
  • USB Type-C - USB変換:Amazonにあるようなやつ
  • USB - RS-232C変換ケーブル:サンワサプライ USB-CVRS9
  • コンソールケーブル:IX2105に同梱のもの

ドライバの入手

こちらのサイトを参考にさせていただいた。
上記変換ケーブルはATEN社のUC-232Aという製品のOEMらしく(確かにTeraTermでATENと表示されていた)、そのドライバを入れればいいらしい。

最新のドライバがMac OS X 10.13(High Sierra)しかなかったが、10.14(Mojave)でもインストールできた。

インストールはウィザード形式で特にエラーも出ず、完了後OS再起動。

ターミナルからの接続

ケーブルを接続し、ルーターの電源を入れた。
以下コマンドでデバイス名がわかるので「/dev/tty.UC-232AC」をコピーしておく。

> ls -l /dev/tty.*
crw-rw-rw-  1 root  wheel   18,   0  3 27 12:26 /dev/tty.Bluetooth-Incoming-Port
crw-rw-rw-  1 root  wheel   18,   2  3 27 12:45 /dev/tty.UC-232AC

screenコマンドでルーターに接続する。

> screen /dev/tty.UC-232AC

エンターキーを押したら繋がった!!

参考

https://ichibariki.hatenablog.com/entry/2016/11/01/203354

操作を終える場合

操作を終える場合は[control]キー + [A]キーの後に[K]キーを押すとscreenコマンドを終了するか聞かれる。

スクロールできない!

ターミナルでスクロールができない。

vim ~/.screenrc
termcapinfo xterm* ti@:te@

これでスクロールできるようになった!

参考

https://blog.onk164.net/archives/462.html

終わりに

OSがCatalinaだったらドライバはインストールできたのだろうか。他に使うアプリケーションもCatalinaで動かないためMojaveに戻してしばらく使っている。
早くどうにかしてほしい・・・

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

macにvirtualbox+alpine+docker+redmineの作業メモ

virtualboxのinstall

oracleのページからダウンロードしてinstall
ついで、extention packをダウンロード
(これはinstall後に設定から読み込む)

alpineのVM

ここからVIRTUALのやつのisoを落とす
VMを新規作成して、isoをdiskに設定して起動
# setup-alpine
でdiskにインストール
⭐️キーボード選択しない

docker

ここを参考にした
alpineにログイン
→キー入力がいまいちなのでVM直接早めてterminalからssh

うまくいかないので、Windowsでやる

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

MacでACLの設定をしてユーザ毎のアクセス権限を設定する

はじめに

当方、Macで自宅内ファイルサーバを運用しているのですが、chmodコマンドでACLの設定を行う方法がわからなかったので調べてみました。
その備忘録をまとめたいと思います。

何がしたいか

今回僕がやりたいのは、複数のユーザに個別のアクセス権を割り当てることです。
例えば、家庭内ファイルサーバでエッチな動画が入っているディレクトリのアクセス権を

  • jibun(所有者)・・・フルコントロール(rwx)
  • otouto ・・・ 読み込み(r--)
  • otosan ・・・ 書き込み(-w-)
  • okasan ・・・ アクセス不可(---)
  • その他 ・・・ アクセス不可(---)

のように、弟には閲覧を許す、お父さんは閲覧を許さないが手持ちの動画を保存することは許す、といった具合に設定したい場合にどうすればよいか。

ちなみにこれは例えなので、上記のシチュエーションは説明に一切関係ありません。

Finderで設定する方法

例えば、Macでアクセス権の設定をする場合、Finderで設定したいディレクトリやファイルを右クリックして『情報を見る』から設定を行うことができます。

スクリーンショット 2020-03-27 5.46.41.jpg

下部にある『共有とアクセス権』が該当項目です。
ここではアクセス権を設定するユーザの登録・削除、そしてユーザごとに『読み/書き』または『読み出しのみ』のどちらかの権限を設定することができます。

さて、確かにFinderを用いたGUIでの設定は簡単且つ正確ですが、サーバ内の全てのディレクトリやファイルに対して、いちいち「右クリック > 情報を見る > アクセス権の設定」とするのは非常に面倒です。
アクセス権限の設定に関しては、やはりコマンドラインで行うのが効率的でしょう。

では一度、上記画像の【shareディレクトリ】のアクセス権を確認してみます。

share
  ├ ユーザ:user1
  │    └ アクセス権:読み出しのみ
  │
  ├ ユーザ:root ※ディレクトリの所有者
  │    └ アクセス権:読み/書き
  │
  ├ グループ:admin ※ディレクトリグループ
  │    └ アクセス権:読み出しのみ
  │
  └ その他:everyone
       └ アクセス権:読み出しのみ

となっています。また、【shareディレクトリ】内のサブディレクトリ及びファイルも全て上記の設定がされています。

コマンドラインで設定する方法

次に、先程の設定をchmodコマンドを用いて行ってみたいと思います。

$ chmod -R 755 share/

これでディレクトリの所有者である【root】と、グループの【admin】、そしてそれ以外の【everyone】のアクセス権を設定できました。

しかし、まだ【user1】のアクセス権を設定できていません。Finderからであれば、簡単にユーザを追加してアクセス権を割り当てられますが、基本的にchmodコマンドは所有者以外のユーザに個別でアクセス権を設定する機能はありません。

どうすればよいか?

解決策1.ユーザをグループに所属させる

例えば、【user1】を【admin】のグループに所属させるというのも一つの手です。
しかし、その場合ではグループ内の所有者ではない複数のユーザへ個別にアクセス権を与えることは困難です。

解決策2.ACLを利用する

この記事の本題です。LinuxにはACL(Access Control Lists)と呼ばれるパーミッションをより詳細に設定できる機能があります。
ACLの機能はMacにもあるのですが、勝手がちょっと特殊なので解説します。

まず、Macでディレクトリやファイルに設定されているACLを確認したい場合は、lsコマンドに"eオプション"を付与して実行します。

例えば【shareディレクトリ】の場合は以下の結果が出力されます。

$ ls -le
drwxr-xr-x+  6 root  admin        192  3 12  2018 share/
 0: user:user1 allow list,search,readattr,readextattr,readsecurity

この2行目に書かれている内容が、ACLとして設定されている内容です。
【user1】に対して、『list』、『search』、『readattr』、『readextattr』、『readsecurity』の権限が許可されています。

権限の内容に関して、Macのmanコマンドでchmodを調べれば出てくるのですが、
とても見やすくまとめられているサイトがありますので、リンクさせていただきます。

Lion Serverアクセスコントロール個人的メモ - 別館 子子子子子子(ねこのここねこ)はてブロ部

さて、権限の種類はわかりましたが、一体どうやってディレクトリ・ファイルに対して権限を付与すればよいのでしょうか。

ACLの設定

権限を付与、剥奪する

Linuxとは違い、Macでディレクトリやファイルに対してACLの設定を行う際には、chmodコマンドを用います。

chmodコマンドのオプションとして、権限を付与したい場合は"+aオプション"、権限を剥奪したい場合は"-aオプション"です。

【user1】から【shareディレクトリ】への『list』権限を剥奪する場合
$ chmod -a "user:user1 allow list" share
【user1】へ【shareディレクトリ】への書き込み権限を付与する場合
$ chmod +a "user:user1 allow add_file, delete, add_subdirectory, delete_child, writeattr, writeextattr, file_inherit, directory_inherit" share
【user1】の【shareディレクトリ】へのアクセスを禁止する場合
$ chmod +a "user:user1 deny list, add_file, search, add_subdirectory, delete_child, readattr, writeattr, readextattr, writeextattr, readsecurity, file_inherit, directory_inherit" share


ちなみに"Rオプション"を用いることで、ACLも再帰的に設定できます。

以上

なにかミス等ありましたらご指摘お願いいたします。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

MacでACLを設定をしてユーザ毎に個別のアクセス権限を指定する方法

はじめに

当方、Macで自宅内ファイルサーバを運用しているのですが、chmodコマンドでACLの設定を行う方法がわからなかったので調べてみました。
その備忘録をまとめたいと思います。

何がしたいか

今回僕がやりたいのは、複数のユーザに個別のアクセス権を割り当てることです。
例えば、家庭内ファイルサーバでエッチな動画が入っているディレクトリのアクセス権を

  • jibun(所有者)・・・フルコントロール(rwx)
  • otouto ・・・ 読み込み(r--)
  • otosan ・・・ 書き込み(-w-)
  • okasan ・・・ アクセス不可(---)
  • その他 ・・・ アクセス不可(---)

のように、弟には閲覧を許す、お父さんは閲覧を許さないが手持ちの動画を保存することは許す、といった具合に設定したい場合にどうすればよいか。

ちなみにこれは例えなので、上記のシチュエーションは説明に一切関係ありません。

Finderで設定する方法

例えば、Macでアクセス権の設定をする場合、Finderで設定したいディレクトリやファイルを右クリックして『情報を見る』から設定を行うことができます。

スクリーンショット 2020-03-27 5.46.41.jpg

下部にある『共有とアクセス権』が該当項目です。
ここではアクセス権を設定するユーザの登録・削除、そしてユーザごとに『読み/書き』または『読み出しのみ』のどちらかの権限を設定することができます。

さて、確かにFinderを用いたGUIでの設定は簡単且つ正確ですが、サーバ内の全てのディレクトリやファイルに対して、いちいち「右クリック > 情報を見る > アクセス権の設定」とするのは非常に面倒です。
アクセス権限の設定に関しては、やはりコマンドラインで行うのが効率的でしょう。

では一度、上記画像の【shareディレクトリ】のアクセス権を確認してみます。

share
  ├ ユーザ:user1
  │    └ アクセス権:読み出しのみ
  │
  ├ ユーザ:root ※ディレクトリの所有者
  │    └ アクセス権:読み/書き
  │
  ├ グループ:admin ※ディレクトリグループ
  │    └ アクセス権:読み出しのみ
  │
  └ その他:everyone
       └ アクセス権:読み出しのみ

となっています。また、【shareディレクトリ】内のサブディレクトリ及びファイルも全て上記の設定がされています。

コマンドラインで設定する方法

次に、先程の設定をchmodコマンドを用いて行ってみたいと思います。

$ chmod -R 755 share/

これでディレクトリの所有者である【root】と、グループの【admin】、そしてそれ以外の【everyone】のアクセス権を設定できました。

しかし、まだ【user1】のアクセス権を設定できていません。Finderからであれば、簡単にユーザを追加してアクセス権を割り当てられますが、基本的にchmodコマンドは所有者以外のユーザに個別でアクセス権を設定する機能はありません。

どうすればよいか?

解決策1.ユーザをグループに所属させる

例えば、【user1】を【admin】のグループに所属させるというのも一つの手です。
しかし、その場合ではグループ内の所有者ではない複数のユーザへ個別にアクセス権を与えることは困難です。

解決策2.ACLを利用する

この記事の本題です。LinuxにはACL(Access Control Lists)と呼ばれるパーミッションをより詳細に設定できる機能があります。
ACLの機能はMacにもあるのですが、勝手がちょっと特殊なので解説します。

まず、Macでディレクトリやファイルに設定されているACLを確認したい場合は、lsコマンドに"eオプション"を付与して実行します。

例えば【shareディレクトリ】の場合は以下の結果が出力されます。

$ ls -le
drwxr-xr-x+  6 root  admin        192  3 12  2018 share/
 0: user:user1 allow list,search,readattr,readextattr,readsecurity

この2行目に書かれている内容が、ACLとして設定されている内容です。
【user1】に対して、『list』、『search』、『readattr』、『readextattr』、『readsecurity』の権限が許可されています。

権限の内容に関して、Macのmanコマンドでchmodを調べれば出てくるのですが、
とても見やすくまとめられているサイトがありますので、リンクさせていただきます。

Lion Serverアクセスコントロール個人的メモ - 別館 子子子子子子(ねこのここねこ)はてブロ部

さて、権限の種類はわかりましたが、一体どうやってディレクトリ・ファイルに対して権限を付与すればよいのでしょうか。

ACLの設定

権限を付与、剥奪する

Linuxとは違い、Macでディレクトリやファイルに対してACLの設定を行う際には、chmodコマンドを用います。

chmodコマンドのオプションとして、権限を付与したい場合は"+aオプション"、権限を剥奪したい場合は"-aオプション"です。

【user1】から【shareディレクトリ】への『list』権限を剥奪する場合
$ chmod -a "user:user1 allow list" share
【user1】へ【shareディレクトリ】への書き込み権限を付与する場合
$ chmod +a "user:user1 allow add_file, delete, add_subdirectory, delete_child, writeattr, writeextattr, file_inherit, directory_inherit" share
【user1】の【shareディレクトリ】へのアクセスを禁止する場合
$ chmod +a "user:user1 deny list, add_file, search, add_subdirectory, delete_child, readattr, writeattr, readextattr, writeextattr, readsecurity, file_inherit, directory_inherit" share


ちなみに"Rオプション"を用いることで、ACLも再帰的に設定できます。

以上

なにかミス等ありましたらご指摘お願いいたします。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む