Unix & Linux

Linux、FreeBSDおよび他のUn * xのようなオペレーティングシステムのユーザーのためのQ&A



1
「xrandr:出力用のcrtcが見つかりません」を解決するにはどうすればよいですか?
仕事に来るたびにタイプします xrandr --auto xrandr --output VGA1 --right-of LVDS1 これにより、2番目のディスプレイが機能しますが、今では xrandr: cannot find crtc for output VGA1 参考のために、xrandrの出力を示します。 Screen 0: minimum 320 x 200, current 3286 x 1080, maximum 8192 x 8192 LVDS1 connected 1366x768+1920+0 (normal left inverted right x axis y axis) 277mm x 156mm 1366x768 60.0*+ 1360x768 59.8 60.0 …
16 xrandr 

2
GRUB2およびカーネルvga =パラメーター
ドキュメントによると、vga=カーネルパラメーターの使用はGRUB2で非推奨になりました。一部の新しいカーネルが特定のアダプターでサポートしていないように見えるという事実は、私が持っているグラフィックスカードが7〜8年前のものであるため、問題ではありません。 問題は、デフォルトの80x25文字ではなく、80x50などの高解像度テキストモードを使用したいということです。どうやらすべてのグラフィックス(VBE / VESA)モードはこのグラフィックスカード(ATI Rage XL)の対象外です-利用可能なモードのリストは0を通してのみ表示され6ます。6でも80x60恐ろしいように見えるので、1(80x50)にしたいと思います。 デフォルトモードがサポートされていない場合(デフォルトはコメントアウトGRUB_TERMINAL=console)、使用可能なモードのリストを取得した後、80x50および80x60が動作するのを確認し、選択するように求められました。 カーネルコマンドラインですべての使用GRUB_GFXMODE(プリロードvbeモジュールの有無にかかわらず)を設定して、GRUB_GFXPAYLOAD_LINUX=keep失敗する場合、モードを設定するにはどうすればよいですか?このように失敗します:このマシンにあるカードのグラフィックモードが無効であるため、画面が空白のままになりますか? 私の考えはnomodesetまだカーネルに渡すことですが、ブートローダーはグラフィックモードを設定する必要があります。そして、それvga=を行うためのカーネルパラメーター以外のオプションは表示されません。 注:vbetestとvideotestGRUB2コンソール意志の空白のコマンド画面と、画面には何のビデオ入力がないと主張した後、スリープモードに切り替わります。vbeinfoそしてvideoinfo上記以外のいくつかの利用可能なモードを示したが、これは設定されるべきところのない言及はありません。また、カーネルコマンドラインでvga=1(なしでnomodeset)を渡すと、廃止されることについて非常に短い警告が表示されますが、完全に読むには長すぎdmesgます。出力はに表示されません。

5
scp中のユーザーの変更
Linuxマシン間でファイルをコピーする必要があります。ログインに使用するユーザー(myuser)がファイルにアクセスできるユーザーとは異なる問題。 sshマシンにだけ移動する場合、を使用してユーザーを切り替えるsudo su someuserことができますが、どうにかして実行できscpますか? WinSCPを使用している間に、SCP / Shellを構成することでそれを行うことができたので、純粋なシェルを介して同様の方法を実行する必要があると考えています。
16 users  scp 

1
どことどこの違いは何ですか
whereとwhichシェルコマンドの違いは何ですか?下記は用例です ~ where cc /usr/bin/cc /usr/bin/cc ~ which cc /usr/bin/cc そして ~ which which which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde' /usr/bin/which ~ which where /usr/bin/which: no where in (/usr/local/bin:/bin:/usr/bin:/home/bnikhil/bin:/bin) また ~ where which which: aliased to alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde which: shell built-in command /usr/bin/which /usr/bin/which …

1
.gitignoreを使用してetckeeperのファイルを除外できない
構成ファイルの変更にetckeeperを使用します(Debian squeezeで) 私はircdeamonも実行しているので、フォルダ内で毎分変わるいくつかのファイルがあります /etc/hybserv/ 私はもうそれらをバージョン管理したくないので、私は追加しました hybserv/* 最後まで /etc/.gitignore しかし、それらは無視されません!1時間ごとのコミットでは、1時間ごとに表示され続けます。 何が間違っていますか?
16 git  etc 

6
ブリッジを削除できません-「ブリッジbr0はまだ稼働中です。削除できません」
私はこの男と同じ問題を抱えています:起動しているブリッジインターフェイスを停止して削除します しかし、その解決策は私にはうまくいきません。 brctl delifを使用して、ブリッジからすべてのインターフェースを削除します。次に、ifconfigまたはipを使用してリンクをダウンに設定します。次に、brctl br0 "bridge br0はまだ起動しています。削除できません"を使用して、ブリッジを削除しようとします。 プラットフォームは、Raspberry Pi上のRaspbianです。 何か案は? ifconfigとifconfig -aからの同じ出力: br0 Link encap:Ethernet HWaddr 54:e6:fc:89:be:4b inet6 addr: fe80::56e6:fcff:fe89:be4b/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:36 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 B) TX bytes:6569 (6.4 KiB) eth0 …


5
Unixのようなシステムに複数のシェルがあるのはなぜですか?
私はUnixの基礎を学び始めたばかりで、なぜUNIXのようなシステムにこんなに多くのシェルがあるのか​​疑問に思っています。本「Unix環境での高度なプログラミング」から: シェルは、ユーザー入力を読み取ってコマンドを実行するコマンドラインインタープリターです。シェルへのユーザー入力は、通常、ターミナル(対話型シェル)から、またはファイル(シェルスクリプトと呼ばれます)から行われます。 そして、この本は、Bourne shell、Bourne-again shell、Cshellなどのようなシェルプログラムのリストを続けています。私の質問は、基本的に複数のシェルが必要な理由です。
16 shell 

3
バージョン4.2より前のBashでnounsetシェルオプションを使用して変数が定義されているかどうかをテストするにはどうすればよいですか?
「GNU bash、バージョン4.2」より前のBashバージョンの-v場合、testコマンドのオプションに同等の代替手段はありますか?例えば: shopt -os nounset test -v foobar && echo foo || echo bar # Output: bar foobar= test -v foobar && echo foo || echo bar # Output: foo
16 bash  test 

5
グラフィックカードのパススルー用にカーネルでIOMMUを有効にする
短い質問: intel_iommuLinuxカーネルの設定を有効にするにはどうすればよいですか?grub2ブートローダーを使用して、Debianホストを実行します。私が見たドキュメントは編集/boot/grub/menu.lstするように言っていますが、それはgrub 1.xにのみ関連しているようです、私はそのファイルを持っていないので。 このブートオプションを変更すると、次のエラーメッセージが表示されなくなる可能性があることを理解しています(そして最後に考えられるオプション)。 /var/log/kern.log vboxpci: No IOMMU domain (attach) 長い質問: ゲストOSにグラフィックカードへの直接アクセスを許可する 最近、PCI Expressデバイスを介してVirtualboxで実行されているゲストOSに渡すことができることに気付きました。かっこいい!2枚のNVIDIA Quadro FXグラフィックカード(SLIブリッジ接続があり、悲しみを引き起こさないことを願っています)があり、2番目のグラフィックカードをゲストOS専用にして、OpenGL機能を使用できるようにします。 Photoshopなど。 NVIDIAは、この「SLI Multi-OS」構成を販売しています。これは基本的に私が長年設定したかったものですが、仮想化ソフトウェア(Parallelsワークステーションエクストリーム)に大金をかけたくありません。 VirtualBoxを何年も使用して非常に満足しています。 ホストシステム Debianリポジトリからlinux-3.5.0-19を非常にハイエンドのワークステーション機器(Asus P6T7 WSスーパーコンピューターmobo w / Intel ICH10RチップセットおよびXeon W3680 CPU)で実行しており、カーネルでIOMMUサポートを有効にしたいできれば自分でコンパイルする必要はありません。 BIOS BIOS設定で、VT-xおよびVT-dサポートが有効になっています。ただし、IOMMUについて具体的に言及しているものは見当たりませんでした。 PCIデバイスの接続 これは驚くほど簡単でした!VirtualBoxの公式ドキュメントはこちらです。私がやったことは、あまり曖昧ではなかったが、開いてnvidia-settings、セカンダリグラフィックカードを選択し、バスID(私の場合は「PCI:5:0:0」)をメモすることでした。次に、ホストのコマンドラインから: VBoxManage modifyvm "Windows Guest" --pciattach 05:00.0 (最初にこれを実行したとき、VirtualBoxがPIIXチップセットをエミュレートしているためエラーが発生しました。PCIパススルーはICH9チップセットでのみ機能すると述べました。したがって、VirtualBox VM System設定で必要な新しいドライバーをインストールします。後で再起動するとすべてが正常に機能したので、ゲストをシャットダウンしてコマンドを再実行しました。 出力がなかったため、ほぼすぐにコマンドラインに戻りました。 ゲストからホストGPUを使用する ゲストをオンにする前に、virtualbox-dkmsによって、カーネルで文書化されていないことが発生する場合に備えて、最初にホストマシンを再起動しました。sudo特権なしで前のコマンドを実行したため、変更が行われたのではないかと思います。 次にゲストを起動したときに、Windows Updateがその動作を開始し、正しいNVIDIAドライバーを自動的に検出してインストールしました。これまでのところ、すべてがよさそうだ。デバイスを使用する前に、ゲストを再起動する必要がありました... 問題 ゲストにグラフィックカードドライバーがインストールされ、PCIデバイスが接続されたため、Windowsデスクトップにアクセスできません。Windowsのログイン画面が表示されます。ログイン後、画面がフリーズし、「ようこそ」と言って、横に回転するはずの青い円が表示されません。 …


5
シェルコマンドをsed式に埋め込む方法は?
次の形式のテキストファイルがあります。 keyword value keyword value ... キーワードは単一の単語であり、値は行末までその他すべてです。値(キーワードではなく)がシェル拡張されるように、シェルスクリプトからファイルを読み取りたいです。 sedを使用すると、キーワードと値の部分を簡単に一致させることができます input=' keyword value value keyword "value value" keyword `uname` ' echo "$input"|sed -e 's/^\([^[:space:]]*\)[[:space:]]\(.*\)$/k=<\1> v=<\2>/' 生産する k=<keyword> v=<value value> k=<keyword> v=<"value value"> k=<keyword> v=<`uname`> しかし、問題は、シェルコマンドをsed式の置換部分にどのように埋め込むことができるかです。この場合、私は交換が欲しい\1 `echo \2`です。
16 shell  sed 

1
zshでスクリプトを実行する-ファイルのアクセス許可
私は期待どおりに動作しないファイルの実行権限について混乱しています。おそらく私の期待が間違っているためです。とにかく: スクリプトファイルがあります。簡単にするためs、にあり~/binます。この例のために、ファイルには次の行のみが含まれています。 #!/bin/zsh echo "Test"; とても簡単です。 私はに移動し~/bin、ディレクトリ、およびchmod、ファイルのパーミッションsに400-すなわち、読み取り専用私のためだけ。実行許可なし。そのため、パスを入力してスクリプトを実行し、次のようにします。 % ./s zsh: permission denied: ./s ここまでは順調ですね。権限が間違っているため、ファイルを実行できません。500(実行されたアクセス許可が付与されている)までのアクセス許可のバンプも正常に機能します-これらのアクセス許可を使用すると、ファイルは正常に実行されます % ./s Test これはすべて予想どおりです。しかし、その後、私は(再度許可を実行する)にchmod戻って許可を与え、ファイルを400試してみるsourceと、これが起こります: % source s Test 権限はですが400、スクリプトが実行されます。 だからここに私の質問があります:なぜ./s失敗するのですか(そうするべきです)がsource s正常に実行されますか?これは、実行許可の全体的な目的に反しませんか? 400権限、sh sおよびzsh sまた仕事。 私はどこか恐ろしく間違っていることをしている、または理解していると確信しています。缶誰かのポイント私に場所を、との違いを説明し./s、source s、sh sとzsh s?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.