新しいユーザーを作成し、SSH ログイン後にコマンドを実行するにはどうすればよいでしょうか? (Ubuntu Server Trusty)

新しいユーザーを作成し、SSH ログイン後にコマンドを実行するにはどうすればよいでしょうか? (Ubuntu Server Trusty)

Ubuntu Server を自分のニーズに合わせて構成しましたが、基本的にすべてが希望どおりに動作しています。Linux は初めてですが、さまざまなガイドを使用して解釈することで多くのことを学びました。ただし、この問題は頭を悩ませています。権限などを台無しにしたくないので、助けを求めたいと思います。

最新の Webmin を使用しています。新しいユーザーを簡単に作成できます (デフォルト ユーザーでコマンド ラインも使用しました)。ssh test@ip で ssh にログインできます。ユーザーのホーム ディレクトリはありますが、ls、ifconfig などのコマンドは実行できません。相対パスなどを使用する必要があると読みましたが、私が望んでいるのは、Ubuntu のインストール時に設定されたユーザー a のように、新しいユーザーがデフォルトと同じ機能を持つようにし、デフォルトとして使用することです。また、bash をいくつかの PATH 変数で構成する必要があるとも読みましたが、その部分が理解できません。

問題なく動作するデフォルトのユーザーは「server」です。新しいユーザー「test」を作成するとします。次に何をすればよいか、手順を追って説明してもらえますか?

また、新しいユーザー「test」がユーザー「server」によって作成されたファイルにアクセスできるようにし、ユーザー「server」がユーザー「test」によって作成されたファイルにアクセスできるようにしたい場合は、ユーザー「test」をユーザー「server」のグループに追加する必要がありますか?

どうもありがとう!

答え1

新しいユーザーを作成する正しい方法は、adduserバイナリを使用することです(ユーザーパスワードからグループとホームフォルダの作成まですべてをカバーしています。むる @タカットこれを指摘していただき、コマンドのマニュアルページ):

 ubuntu@ip:/$ sudo adduser testuser
 Adding user `testuser' ...
 Adding new group `testuser' (1003) ...
 Adding new user `testuser' (1002) with group `testuser' ...
 Creating home directory `/home/testuser' ...
 Copying files from `/etc/skel' ...
 Enter new UNIX password:
 Retype new UNIX password:
 passwd: password updated successfully
 Changing the user information for testuser
 Enter the new value, or press ENTER for the default
         Full Name []: 
         Room Number []:
         Work Phone []:
         Home Phone []:
         Other []:
 Is the information correct? [Y/n] Y

これにより、 という名前のユーザーが作成されtestuser、 に独自のホーム ディレクトリが与えられます/home/testuser。新しいホーム ディレクトリのファイルは/etc/skel、デフォルトのホーム ディレクトリ ファイルを含む フォルダーからコピーされます。ユーザーのデフォルト値を設定する場合は、そのディレクトリ内のファイルを変更または追加します。新しいユーザーに ユーザーと同じ環境を持たせたい場合は、これらのファイルをホーム ディレクトリserverからホーム ディレクトリにコピーするだけです (コピーした後、それぞれの所有者が testuser になっていることを確認してください)。servertestuserchown testuser:testuser .bash_profile

.bash_profile .bashrc .inputrc .mkshrc .profile

はい、両方のユーザーが自分のファイルとフォルダーにアクセスできるようにするには、各ユーザーを他のユーザー グループに追加する必要があります。

adduser server testuser
adduser testuser server

ユーザーがアクセスできるものは、そのグループのフォルダ/ファイルの権限によって決まります(たとえば、ユーザー testuser がサーバーのホームフォルダ内のファイル test.txt を読み書きするには、少なくとも 760 の権限が必要です)。権限を表示するには、次のコマンドを実行します。

$ ls -al
drwxrwxr-x   3 server server    4096 Jun 14 10:11 test.txt

権限

関連情報