Unix & Linux

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

3
フォルダー名がこのようになったのはなぜですか。スクリプトを使用してこれを修正するにはどうすればよいですか?
他の場所に答えがある場合は申し訳ありませんが、問題を検索する方法がわかりません。 Redhat Linux HPCサーバーでいくつかのシミュレーションを実行していましたが、フォルダー構造を処理して出力を保存するためのコードには不幸なバグがありました。フォルダーを作成するための私のmatlabコードは次のとおりです。 folder = [sp.saveLocation, 'run_', sp.run_number, '/']; どこsp.run_numberが整数でした。文字列に変換するのを忘れていましたが、何らかの理由でmkdir(folder);(matlabで)実行は成功しました。実際、シミュレーションは問題なく実行され、データは一致するディレクトリに保存されました。 今、フォルダ構造がクエリ/印刷されると、次の状況が発生します: タブのオートコンプリートを試みると: run_ run_^A/ run_^B/ run_^C/ run_^D/ run_^E/ run_^F/ run_^G/ run_^H/ run_^I/ 私が使うときls:run_ run_? run_? run_? run_? run_? run_? run_? run_? run_? run_?。 私はrsyncを使ってどこでもMy Macに転送する場合--progress:オプションショーrun_\#003/で整数を一致数(私は仮定)となどをsp.run_number10日の実行があるので、3桁にパッド入りrun_\#010/ ファインダーでフォルダーを表示すると、 run_ run_ run_ run_ run_ run_ run_ run_ run_ run_? この質問を見て、ls | LC_ALL=C …

2
ディスク使用の混乱:SSD上のLinuxホームパーティションに10Gがありません
Linux Mintでは、空きディスク容量は622 MBしかありませんが、ギガバイトが残っているはずです。 パーティションを見ると、約10ギガバイトが使用されていないことがわかります。私は問題をグーグルで調べましたが、解決策が見つかりませんでしたが、でディスク使用量を確認する必要があるというヒントを見つけましたdf -h。 sudo df -h /home Filesystem Size Used Avail Use% Mounted on /dev/nvme0n1p8 189G 178G 622M 100% /home 違いを:出力は、私にはどんな意味がないSizeとUsed11ギガバイトですが、それだけで示して622M利用できるよう。 SSDは古いものではないので、このような矛盾はないと思います。 私は何をすべきか?
15 linux  disk-usage  ssd 

2
Linuxデスクトップを再インストールしていますが、SSHログインを機能させるにはどうすればよいですか?
昔、私はssh-keygenを使用ssh-copy-idしてキーペアを生成し、手動でパスワードを入力せずに多くの開発VMにログインできるようにしました。また、公開キーをGitHub、GitLabなどにアップロードし、のgit@代わりにを使用してgitリポジトリに対して認証を行いましたhttps://。 Linuxデスクトップを再インストールし、これらのログインをすべて機能させるにはどうすればよいですか?バックアップと復元は~/.ssh/十分ですか?
15 ssh 

4
ヒープがセキュリティのためにゼロで初期化されている場合、なぜスタックは単に初期化されていないのですか?
Debian GNU / Linux 9システムでは、バイナリが実行されると、 スタックは初期化されていませんが、 ヒープはゼロで初期化されます。 どうして? ゼロ初期化はセキュリティを向上させると思いますが、ヒープの場合はスタックもそうではないのですか?スタックもセキュリティを必要としませんか? 私の知る限り、私の質問はDebianに固有のものではありません。 サンプルCコード: #include <stddef.h> #include <stdlib.h> #include <stdio.h> const size_t n = 8; // -------------------------------------------------------------------- // UNINTERESTING CODE // -------------------------------------------------------------------- static void print_array( const int *const p, const size_t size, const char *const name ) { printf("%s at %p: ", name, …
15 linux  security  memory 

6
難読化によるエコー
私はいくつかの変数を画面に出力する必要がありますが、最初の数文字を難読化する必要があり、端末に印刷するときに秘密値の最初の文字を難読化できるエコーコマンドがbashにあるかどうか疑問に思っていました: echo 'secretvalue' ********lue
15 bash  security 

3
コンピューターシステム(Linux)には1つのホスト名しかありませんか?
hostname は、システムのDNS名を表示し、ホスト名またはNISドメイン名を表示または設定するために使用されます。 コンピューターシステム(Linux)には1つのホスト名しかありませんか? 仮想ホスティングでは、いくつかのホスト名をWebサーバーの異なるルートディレクトリに解決できます。コンピューターシステム(Linux)がホスト名を1つしか持つことができない場合、仮想ホスティングはどのように可能ですか? ありがとう。
15 linux  hostname 

3
UDPパケットを作成するにはどうすればよいですか?
次のNetcatコマンドを実行してWiresharkでパケットを表示すると、UDPパケットが不正な形式であると表示されます。 $ echo "this is a test" | nc -u 127.0.0.1 53 同様に、$ echo "this is a test" > /dev/udp/127.0.0.1/53Wiresharkで「不正なパケット」エラーを生成するようなコマンドを使用すると。 echoコマンドは、エラーなしでNetcatサーバーに送信/配信されます。しかし、これは私に不思議に思いました:エコーまたは他のネイティブUnixツールで適切なUDPパケットを手動で構築することは可能ですか? DebianとmacOSを使用しています。
15 linux  debian  osx  netcat  udp 

8
Linuxシェルスクリプト:プログラムが存在する場合のみ実行し、存在しない場合は無視します
たとえば、適切なツールがインストールされている場合にのみ、実行中にステータスバナーを出力するLinuxシェルスクリプトをプログラミングしています(これは、システムパスで到達可能です)。 figlet 例: #!/usr/bin/env bash echo "foo" figlet "Starting" echo "moo" figlet "Working" echo "foo moo" figlet "Finished" 私は仕事に私のスクリプトのために希望のエラーのない場合であっても、figletされてインストールされていません。 何をすることができ実用的な方法?

6
Bourneシェルがディストリビューションで利用できない場合、hashbangで/ bin / shを使用するのは正しいですか?
一般に、シェルスクリプトには、スクリプトファイルの最初の行に次のコメントが含まれています#!/bin/sh。私が行った研究によれば、これは「ハッシュバン」と呼ばれ、従来のコメントです。このコメントは、このファイルがディレクトリ下のBourne Shellによって実行されることをUnixに通知します/bin。 私の質問はその点から始まります。今までこのようなコメントを見たことはありません#!/bin/bash。いつも#!/bin/shです。ただし、UbuntuディストリビューションにはBourne Shellプログラムがありません。Bourne Again Shell(bash)があります。 その点で、#!/bin/shUbuntuディストリビューションで書かれたシェルスクリプトにコメントを入れるのは正しいですか?

4
フォークボムをグローバルにエイリアスすると、その実行が妨げられますか?
グローバルに設定する場合 alias ':(){ :|:& };:'='echo fork bomb averted' それはBash fork爆弾の実行を回避するための効果的なセキュリティ戦略でしょうか、それとも実行する方法はまだありますか? 質問は次のようになります:コマンドが他の何かにエイリアスされているときにコマンドを実行する方法はありますか?
15 bash  security  alias 

7
PHPのバージョン番号のみを取得する方法は?
CentOSにインストールされているphpのバージョンのみを取得したい。 の出力 php -v PHP 7.1.16 (cli) (built: Mar 28 2018 13:19:29) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies 私はこれを試しました: php -v | grep PHP | awk '{print $2}' しかし、私が得た出力は: 7.1.16 (c) 7.1.16のみを取得するにはどうすればよいですか?
15 php  version 


7
bashでファイルを作成または切り捨て/上書きできるかどうかを確認するにはどうすればよいですか?
ユーザーは、foo.sh file.txtまたはのようなスクリプトのある時点で作成または上書きされるファイルパスを使用してスクリプトを呼び出しますfoo.sh dir/file.txt。 create-or-overwriteの動作は、>出力リダイレクト演算子の右側にファイルを置くか、引数としてファイルを渡すための要件によく似ていますtee(実際、引数として渡すことteeはまさに私がやっていることです) )。 スクリプトの内容に入る前に、ファイルを作成/上書きできるかどうかを合理的にチェックしたいのですが、実際には作成しません。このチェックは完全である必要はありません。はい、チェックとファイルが実際に書き込まれるポイントの間で状況が変わる可能性があることを理解しています-しかし、ここではベストエフォートタイプのソリューションで大丈夫ですので、早期に救済できますファイルパスが無効な場合。 ファイルを作成できなかった理由の例: ファイルにはディレクトリコンポーネントが含まれていますdir/file.txtが、ディレクトリdirは存在しません ユーザーは、指定されたディレクトリ(またはディレクトリが指定されていない場合はCWD)に書き込み権限を持っていません はい、「事前に」許可を確認することはUNIX Way™ではないことを理解しています。むしろ、操作を試し、後で許しを求める必要があります。ただし、私の特定のスクリプトでは、これによりユーザーエクスペリエンスが低下し、責任のあるコンポーネントを変更できません。

1
「memfd」を「ファイルを所有するプロセス」に説明されていると考えるのは間違っていますか?
https://dvdhrm.wordpress.com/2014/06/10/memfd_create2/ 理論的には、次のmemfd_create()ような新しいsyscallを導入せずに[ ]動作を実現できます。 int fd = open("/tmp", O_RDWR | O_TMPFILE | O_EXCL, S_IRWXU); (ここでtmpfsをより移植可能に保証するには、「/dev/shm」の代わりに「/tmp」を使用できます)。 したがって、最も重要な質問は、なぜ地獄には第三の方法が必要なのかということです。 [...] バッキングメモリは、ファイルを所有するプロセスに割り当てられ、mount-quotasの影響を受けません。 ^この文の最初の部分は信頼できないと思うのは正しいですか? memfd_create()コードは、文字通り「として実装されているカーネル内部でなければならない[A] TMPFSにリンクされていないファイル・リビング」。コードをトレースすると、LSMチェックを実装していない点が異なることを理解しています。また、ブログ投稿で説明しているように、「シール」をサポートするためにmemfdsも作成されています。ただし、me​​mfdsが原則としてtmpfileとは異なる方法で説明されることは非常に懐疑的です。 具体的には、OOM-killerがノッキングを起こすと、memfdsが保持しているメモリを考慮しないと思います。これは、RAMの最大50%(tmpfsのsize =オプションの値)になります。カーネルは内部tmpfsに異なる値を設定しないため、デフォルトサイズの50%を使用します。 したがって、一般に、大きなmemfdを保持するプロセスを期待できるが、他の重要なメモリ割り当てはOOMで強制終了されないでしょう。あれは正しいですか?

4
LinuxでのLenovo X1 Carbon Gen.6(2018)タッチパッドとトラックポイントの問題
タッチパッドを機能させるのに問題があります。ほとんどの場合、動きやクリックを検出せず、非常に散発的に「目覚め」、1秒間応答してから停止します。同じことがトラックポイントにも当てはまります。Fedora(27)、Mint、Ubuntu(17.10)を試しましたが、問題はすべてのバージョンで同じです。以降はすべてUbuntu 17.10に対応しています。 hwinfo 与える Unique ID: AH6Q.Y_f5kDtfqz2 タッチパッドはxinput:では表示されません(Mintでは表示されましたが、問題はそこにもありました)。を使用してlibinput debug-events、私は得る: (...) -event5 DEVICE_ADDED SynPS/2 Synaptics TouchPad seat0 default group9 cap:pg size 70x50 (...) (When swiping around on the touchpad, nothing happens. Then, suddenly, it will show:) -event6 DEVICE_ADDED PS/2 Generic Mouse seat0 default group11 cap:p left scroll-nat scroll-button -event5 POINTER_MOTION +7.73s …
15 ubuntu  touchpad 

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