タグ付けされた質問 「chroot」

chrootは、別のルートディレクトリでプロセスを実行するUNIXのようなシステムのコマンドです。

6
chroot環境でdev、proc、sysをマウントしますか?
カスタム選択パッケージでLinuxイメージを作成しようとしています。私がやろうとしているのは、XOラップトップで使用するパッケージを手作業で作成することです。必要なパッケージをすべてビルドして、 XOへの画像、時間とスペースを節約できます。 いくつかのパッケージをインストールしようとしたときに、proc、sys、devディレクトリがないために設定に失敗しました。そのため、他の場所から、ホストプロシージャを「マウント」する必要があることを学びました。 私は2つの構文を見ましたが、どちらを使用するかわかりません。 ホストマシンで: mount --bind /proc <chroot dir>/proc および別の構文(chroot環境): mount -t proc none /proc どちらを使用する必要があり、違いは何ですか?
87 linux  debian  chroot 

1
壊れたLinuxインストールを回復するためにchrootを準備する適切な方法は何ですか?
この質問は、よく聞かれる質問に関連しています。手順は頻繁に言及されるか、オフサイトにリンクされますが、明確かつ正確に記述されていないことがよくあります。有用な情報を1か所に集中させる目的で、この質問は、この手順の明確で正しい参照を提供しようとしています。 回復手順のためにchroot環境を準備する適切な手順は何ですか? では、多くの 状況で、壊れたLinuxのインストールを修復すると、インストール内から実行が最適です。しかし、システムが起動しない場合、どのように内部から修正しますか? 代替システムを起動することに成功したと仮定しましょう。そこに来たら、それを修正するために壊れたインストールにアクセスする必要があります。多くの回復 方法では、壊れたインストールで実際に起動されたかのようにプログラムを実行するためにchrootを使用することをお勧めします。 基本的な手順は何ですか? 従うべきベストプラクティスは受け入れられていますか? 基本的な準備手順を特定の回復タスクに適合させるには、どの変数を考慮する必要がありますか? これはコミュニティWikiなので、この質問を編集して改善してください。

7
chroot内でsystemdサービスを開始します
initスクリプト(またはopenrc)を使用すると、常に別のインストールルートからサービスを実行できます。 しかし、私が走ったとき、私chroot /somepath/to_root /usr/bin/systemctl start someserviceは得た: Running in chroot, ignoring request. systemdにサービスを実行させる方法はありますか? 更新: ホストシステムがinitスクリプトまたはopenrcを実行していることを忘れましたが、systemdを使用したことはありません。また、chrootを使用して、最小シェルを起動できないUnixシステムのトラブルシューティングを行いました。
38 unix  systemd  chroot 

1
/ var / wwwへの書き込み権限を持つchrootされたsftpユーザー
展開しようとしているこのセットアップについて混乱しています。皆さんの誰かが私に手を貸してくれることを願っています。 背景情報 サーバーはDebian 6.0、ext3で、Apache2 / SSLとNginxがリバースプロキシとして前面にあります。Apacheのルートディレクトリ(/ var / www)へのsftpアクセスを提供する必要があります。これは、sftpユーザーがRWX権限でそのパスにchrootされていることを確認します。 / var / wwwのデフォルトのパーミッションを変更せずに、これらすべて。 drwxr-xr-x 9 root root 4096 Nov 4 22:46 www / var / wwwの中 -rw-r----- 1 www-data www-data 177 Mar 11 2012 file1 drwxr-x--- 6 www-data www-data 4096 Sep 10 2012 dir1 drwxr-xr-x 7 www-data www-data 4096 Sep …

1
chrootされた環境外のファイルシステムへのポインターを追加する方法-OpenSSH経由でchrootされたSFTPを使用する
だから、これが真実であると確信していますが、私の質問に直接答える具体的で詳細な独立した参照を見つけていません。質問がある: chroot環境外にあるリソースへのアクセスを追加するにはどうすればよいですか? OpenSSHの新しいChrootDirectoryディレクティブを使用してchroot SFTPを設定しました。 残念ながら、私の環境では、chrootを特定のユーザーリソースが存在するメインディレクトリに直接制限することはできません。そこで、別のchroot領域を作成し、必要なリソースにリンクしています。 これを行うためにシンボリックリンクを使用してみました。例えば ln -s /path/to/resource /chroot/dir/resource しかし、「ディレクトリが見つからないことを正規化できませんでした」というエラーが発生しました だから私の解決策はバインドマウントを使うことでした: mount --bind /path/to/resource /chroot/dir/resource うまくいきました。 本当に、私はシンボリックリンクが機能しないという一般的な確認を求めていました。これを説明する優れたリファレンスへのリンクもいいでしょう。
8 sftp  openssh  chroot 

0
vsftpdでftp制限付きユーザーを作成する方法は?(ubuntuの端末による)
vsbundでubuntu 12.04をインストールしました。/ var / www / nameDirectoryなどのディレクトリのみにアクセスできるftpユーザーを作成する必要があります。私はそれは非常に基本的な機能でしたが、そうではないようです... vsftpd.confで使用しようとしました chroot_local_user=YES しかし(adduserでユーザー 'test'を作成) 'test'はまだファイルシステムを閲覧できます。「test」のルートディレクトリ(usermodを使用)を/ var / www / nameDirectoryに変更できましたが、彼はまだ/ varまたは/に戻ることができます。 それから私は試した chroot_local_user=NO chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list リストファイルを作成し、その中に「テスト」を配置します。幸運もありません。 最後に私はこのhttps://askubuntu.com/questions/575523/how-to-setup-virtual-users-for-vsftpd-with-access-to-a-specific-sub-directoryをフォローしようとしました が、うまくいきませんでした。私は何かが欠けています... 問題は、filezillaでは、ユーザー 'test'でアクセスでき、正しいディレクトリにあるが、すべてを閲覧する許可を持っていることです。 ここに私のvsftpd.confがあります listen=YES anonymous_enable=YES local_enable=YES write_enable=YES use_localtime=YES xferlog_enable=YES connect_from_port_20=YES chroot_local_user=NO chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list secure_chroot_dir=/var/run/vsftpd/empty rsa_cert_file=/etc/ssl/private/vsftpd.pem 編集:ちょうど遊ぶために、/ etc / vsftpd.confでlocal_enableをNOに設定するか、write_enableをNOに設定しようとしましたが、効果はありません(まだftp経由でアクセスできますが、ユーザー「test」で書き込むことができます)。たぶんそれは間違ったconfファイルですか?または、他のソフトウェアがftpサービスを提供してくれますか?何が起こっているのかを知るにはどうすればよいですか? 編集2:vsftpd(サービスvsftpd停止)を停止し、まだftpに接続することができます...どうすればftpアクセスを与えているかを知ることができますか?
5 ftp  chroot  vsftpd 

0
chrootで実行ファイルを階層化する
私はchrootで任意の実行ファイルを実行しようとしています。残念ながら、私はchroot内のいくつかの実行ファイルの共有ライブラリ依存関係のバージョンが異なります。別のLD_LIBRARY_PATHを使用するために、初期コマンドを含むいくつかの実行可能ファイルに対してローダーを再ルーティングすることは可能ですか? 安定剤がありますが、これは非標準的なツールのように思われ(debianはそれを出荷しません)、それで私はそれを使用することを許可されていません。
2 chroot 

0
chrootに表示されないマウントのバインド
Archシステムでdebootstrap envを使用しています。ホームディレクトリからchroot fsホームディレクトリにいくつかのディレクトリをバインドマウントします。/home/user/foo→ /stretch/home/user/foo。私は両方の場所でホストアーチシステムからコンテンツを見ることができますが、としてログインchroot環境内からuser、foodirがちょうど空になっています。 編集:私は同じセットアップが動作するように使用する必要はありませんが、何らかの理由で今は動作しません。関連する構成が変更されたことを知りません。 これはどのように可能ですか?
2 mount  chroot 

0
ブートストラップ用のLinuxデバイスファイルの作成
私は現在、Linuxシステムについてさらに深く学ぶための一環として、独立してデバイスファイルを研究しています。私の現在の目標は、Debian Linuxを介してブートストラップすることです。 cdebootstrap。にあるガイドに従った https://www.debian.org/releases/stable/i386/apds03.html 。しかし、私を混乱させるものがあります。私が他のガイドをグーグルしていたとき、彼らは現在のオペレーティングシステムから開発ツリーをバインドするように言った。基本システムの詳細については、最初からインストールしています。このガイドでは、これには3つの異なる方法があると述べています。 - install the makedev package, and create a default set of static device files using (after chrooting) # apt-get install makedev # mount none /proc -t proc # cd /dev # MAKEDEV generic - manually create only specific device files using MAKEDEV - bind mount …

1
HP TouchPadでchrootされたUbuntuでサーバーを実行するにはどうすればよいですか?
問題:私のUbuntu chroot内でサーバーが壊れているようです。どの種類のサーバーを実行しようとしても、それらはすべて応答しないように見えます(VLCサーバーはクライアントに応答せず、mkRemoteはカーソルを移動しません。Apacheはポート80へのバインドに関するエラーを表示し、起動しません。 )。 誤解しない限り、chroot内で通常起こるべきことは、すべてのポートがchrootとホスト間で共有されることです。したがって、別のマシンがポート80でホストにヒットしようとしても、chrootされたWebサーバーが表示されます。しかし、ここでは、それは起こっていることではありません。 chrootからnetstatを実行すると、すべてのプロセスが0.0.0.0:*の外部アドレスをリストします。これは、クライアントとして機能できる唯一のマシンがローカルホストであることを意味します。これは明らかに間違っており、異常な振る舞いです。プライマリマシン上のすべてのプロセスは、公開アドレス:: **の外部アドレスを一覧表示することを意図しているためです(すべてのクライアントが任意のポートから参照できることを意味します)。 編集:無視してください。どうやら外部アドレスは、IPv4接続をリッスンしているか、IPv6接続をリッスンしているかを区別するだけなので、ここでは関係ないようです。 これまでのところ、グーグルは何の価値も返さず、基本的に困惑しています。何か案は?chrootパッチ開発者のいずれかがデフォルトで有効にした設定だけなのか、それとももっと複雑な問題のように思えますか? 詳細なコンテキスト:http : //rootzwiki.com/topic/14682-webos-servers-inside-chrooted-ubuntu/

8
Linuxユーザーのルートディレクトリを変更する方法
Linuxホスト上のユーザーの場合は、自分のホームディレクトリ以外にはすべてアクセスできないようにする必要があります。 これは通常、ユーザーのルートディレクトリを変更して(そしてユーザーのホームディレクトリに設定すると)行われると聞きましたが、その方法が見つかりませんでした。 私は考えた chroot ただし、指定されたディレクトリをルートディレクトリと見なして、指定されたコマンドを実行するだけのようです。そうらしい、それっぽい chroot 私が必要なものではありません。 だから私の質問は:ユーザーのルートディレクトリを変更するコマンドは何ですか?
linux  root  chroot 

1
Debian chrootのsuが重大なエラーを引き起こす(組み込みシステム)
私は、組み込みシステム(カーネル2.6.33.2のQNAP NAS)のchrootにDebian jessieをインストールしようとしています。私はうまく走った debootstrap 基本システムをインストールする方法とchrootは正しく動作します apt-get。 新しいユーザーを追加すると問題が発生します。 su 常に印刷 su:重大なエラー - 即時中止 。これがプリントアウトです。 CHROOT:/# whoami root CHROOT:/# id uid=0(root) gid=0(root) groups=0(root),100(users) CHROOT:/# su root su: Critical error - immediate abort CHROOT:/# adduser newuser Adding user `newuser' ... Adding new group `newuser' (1000) ... Adding new user `newuser' (1000) with group …
linux  debian  chroot  su  pam 

1
“ mount -t proc…”をChroot環境のどこに置きますか?
私の無知を許してください...私はソフトウェアをテストするためのDebian Chroot環境をたくさん持っています。私達のパッケージメンテナが私達を同じようにテストしているのでそれらは必要でした。 私のテストスクリプトはValgrindを使います、しかしValgrindはエラーで失敗します: valgrind: warning (non-fatal): readlink("/proc/self/exe") failed 私は問題が何であるか知っています( /proc (マウントされていない)、そして私はそれを解決する方法を知っています( mount -t proc none proc/ )ただし、コマンドを配置する場所がわからないため、chrootするたびにコマンドが自動的に実行されます。 以下をChrootに追加するだけです。 fstab ツールを使用しようとするとValgrindエラーが発生しました。 proc<TAB> none<TAB> /proc そして proc<TAB> /proc まさに、私たちは、コマンド "mount -t proc ..."をDebian Chroot環境のどこに入れますか? これは非常に関連した質問です。 chroot環境でdev、proc、sysをマウントしますか? 。私が言うことができる最高の、人々は何をすべきかで答えて、どこでそれをするべきかについて答えません。私はそれをどこでやるべきかを考え出そうとしています(コマンドライン上で手動で)。

0
chrootセットアップを使用してSSHにパスワードなしでアクセスできますか?
パスワードを使用せずに公開鍵と秘密鍵を使用してsshサーバーにログインできました。 また、chrootをセットアップし、新しいユーザーをjailすることで、ユーザーがssh経由で接続できるが、次の非常に役立つ記事を使用してsftpにアクセスすることを回避できました。 http://www.thegeekstuff.com/2012/03/chroot-sftp-setup/ ここでの問題は、秘密キーと公開キー(sshd_configファイル構成でRequirePasswordを使用してログインしようとした)を持つユーザーでログインする場合、2つを組み合わせることができないことです。しかし、このルールをオフにすると、接続できなくなります。 私が得るエラーは次のとおりです。 Permission denied (publickey,gssapi-keyex,gssapi-with-mic). Connection closed これに関するヘルプは大歓迎です。 ありがとう!
linux  ssh  sftp  sshd  chroot 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.