Browse Source

add image url

master
zeus 4 years ago
parent
commit
abb243c2e8
  1. 1
      .gitignore
  2. 131
      src-local/LabLearningObject-hybrid-tmp/0344pnfw6xd4.html
  3. 349
      src-local/LabLearningObject-hybrid-tmp/0ajszhq4ez8f.html
  4. 328
      src-local/LabLearningObject-hybrid-tmp/0hd24n8mvc5m.html
  5. 276
      src-local/LabLearningObject-hybrid-tmp/0uay73d8fdcd.html
  6. 349
      src-local/LabLearningObject-hybrid-tmp/0uidbgygmbl.html
  7. 122
      src-local/LabLearningObject-hybrid-tmp/16io1pej22v.html
  8. 349
      src-local/LabLearningObject-hybrid-tmp/17cwobmozo8.html
  9. 34
      src-local/LabLearningObject-hybrid-tmp/19c9pc.html
  10. 122
      src-local/LabLearningObject-hybrid-tmp/19k5t7bavu.html
  11. 349
      src-local/LabLearningObject-hybrid-tmp/1afnbdhzmw2.html
  12. 349
      src-local/LabLearningObject-hybrid-tmp/1phnqpkvfry.html
  13. 276
      src-local/LabLearningObject-hybrid-tmp/1q8jd9ootbii.html
  14. 34
      src-local/LabLearningObject-hybrid-tmp/1qxpjt.html
  15. 812
      src-local/LabLearningObject-hybrid-tmp/1ws0o15jjqo.html
  16. 122
      src-local/LabLearningObject-hybrid-tmp/2rhwqkk4wrm.html
  17. 437
      src-local/LabLearningObject-hybrid-tmp/2tieqo89vif.html
  18. 349
      src-local/LabLearningObject-hybrid-tmp/319kyrwive.html
  19. 131
      src-local/LabLearningObject-hybrid-tmp/32do4bivggp.html
  20. 34
      src-local/LabLearningObject-hybrid-tmp/38lhb.html
  21. 349
      src-local/LabLearningObject-hybrid-tmp/3c8uxdoe3uu.html
  22. 34
      src-local/LabLearningObject-hybrid-tmp/3evffi.html
  23. 122
      src-local/LabLearningObject-hybrid-tmp/3rzj4jh6hoa.html
  24. 122
      src-local/LabLearningObject-hybrid-tmp/3te3bmpxzfl.html
  25. 129
      src-local/LabLearningObject-hybrid-tmp/3tkemg3auu4.html
  26. 122
      src-local/LabLearningObject-hybrid-tmp/4b7t3lv3jpx.html
  27. 349
      src-local/LabLearningObject-hybrid-tmp/4btap7h39qf.html
  28. 122
      src-local/LabLearningObject-hybrid-tmp/4x5g88x91hq.html
  29. 349
      src-local/LabLearningObject-hybrid-tmp/50t9m85xl7r.html
  30. 131
      src-local/LabLearningObject-hybrid-tmp/52hxqv8oud8.html
  31. 165
      src-local/LabLearningObject-hybrid-tmp/5khqgmlerke.html
  32. 34
      src-local/LabLearningObject-hybrid-tmp/5n1fhh.html
  33. 165
      src-local/LabLearningObject-hybrid-tmp/5qvy432j0ci.html
  34. 349
      src-local/LabLearningObject-hybrid-tmp/5u9f3j9feiw.html
  35. 168
      src-local/LabLearningObject-hybrid-tmp/5w8xro98amb.html
  36. 349
      src-local/LabLearningObject-hybrid-tmp/647y9gwfod9.html
  37. 155
      src-local/LabLearningObject-hybrid-tmp/6axg9enyl7.html
  38. 34
      src-local/LabLearningObject-hybrid-tmp/6edtl.html
  39. 349
      src-local/LabLearningObject-hybrid-tmp/6glg6tyt9tb.html
  40. 719
      src-local/LabLearningObject-hybrid-tmp/6kupcd1kodm.html
  41. 34
      src-local/LabLearningObject-hybrid-tmp/6tcftt.html
  42. 349
      src-local/LabLearningObject-hybrid-tmp/6thjb5rlbdu.html
  43. 714
      src-local/LabLearningObject-hybrid-tmp/75jkqov60ls.html
  44. 349
      src-local/LabLearningObject-hybrid-tmp/7a64ccveml.html
  45. 349
      src-local/LabLearningObject-hybrid-tmp/7aot7uvycir.html
  46. 349
      src-local/LabLearningObject-hybrid-tmp/7du1hqyyq1g.html
  47. 34
      src-local/LabLearningObject-hybrid-tmp/7svezi.html
  48. 349
      src-local/LabLearningObject-hybrid-tmp/7u5mqneov0r.html
  49. 45
      src-local/LabLearningObject-hybrid-tmp/7wyz2fc6rmv.html
  50. 34
      src-local/LabLearningObject-hybrid-tmp/83hh8g.html
  51. 349
      src-local/LabLearningObject-hybrid-tmp/84g6zmr99db.html
  52. 276
      src-local/LabLearningObject-hybrid-tmp/84i403dutaw.html
  53. 129
      src-local/LabLearningObject-hybrid-tmp/87h7inxr9qg.html
  54. 349
      src-local/LabLearningObject-hybrid-tmp/8r36ab9nf5m.html
  55. 131
      src-local/LabLearningObject-hybrid-tmp/8se1t71n9p7.html
  56. 349
      src-local/LabLearningObject-hybrid-tmp/8uk8bmb5ef2.html
  57. 157
      src-local/LabLearningObject-hybrid-tmp/8yd5sr2kk7d.html
  58. 349
      src-local/LabLearningObject-hybrid-tmp/916plim6uu.html
  59. 165
      src-local/LabLearningObject-hybrid-tmp/93f5fugs1tb.html
  60. 34
      src-local/LabLearningObject-hybrid-tmp/98p2lr.html
  61. 349
      src-local/LabLearningObject-hybrid-tmp/99kzjb5x8m.html
  62. 349
      src-local/LabLearningObject-hybrid-tmp/9dddazn5zqm.html
  63. 122
      src-local/LabLearningObject-hybrid-tmp/9ev86wois4.html
  64. 349
      src-local/LabLearningObject-hybrid-tmp/9f51uydi5wd.html
  65. 349
      src-local/LabLearningObject-hybrid-tmp/9rkmk4um3bs.html
  66. 34
      src-local/LabLearningObject-hybrid-tmp/9s18a8.html
  67. 812
      src-local/LabLearningObject-hybrid-tmp/9vpwdtbji4w.html
  68. 349
      src-local/LabLearningObject-hybrid-tmp/a1pe6qafxin.html
  69. 34
      src-local/LabLearningObject-hybrid-tmp/a2l6ys.html
  70. 349
      src-local/LabLearningObject-hybrid-tmp/aev9j56uytn.html
  71. 349
      src-local/LabLearningObject-hybrid-tmp/aixf26djuxt.html
  72. 34
      src-local/LabLearningObject-hybrid-tmp/an1dho.html
  73. 165
      src-local/LabLearningObject-hybrid-tmp/asxh7xuhpqr.html
  74. 301
      src-local/LabLearningObject-hybrid-tmp/axcyus99gy.html
  75. 165
      src-local/LabLearningObject-hybrid-tmp/azh9w6ys9jn.html
  76. 349
      src-local/LabLearningObject-hybrid-tmp/b1500q27hm.html
  77. 349
      src-local/LabLearningObject-hybrid-tmp/b2r8fhdtzun.html
  78. 34
      src-local/LabLearningObject-hybrid-tmp/b9rbn.html
  79. 168
      src-local/LabLearningObject-hybrid-tmp/bbb8sb8gnb4.html
  80. 349
      src-local/LabLearningObject-hybrid-tmp/bbrbcb4x489.html
  81. 122
      src-local/LabLearningObject-hybrid-tmp/bhcyj5rlxb8.html
  82. 349
      src-local/LabLearningObject-hybrid-tmp/bjined0gi8n.html
  83. 122
      src-local/LabLearningObject-hybrid-tmp/bnaki4o9rs.html
  84. 45
      src-local/LabLearningObject-hybrid-tmp/buum6jtk4lf.html
  85. 34
      src-local/LabLearningObject-hybrid-tmp/bwmp2.html
  86. 349
      src-local/LabLearningObject-hybrid-tmp/bxc14yyqa4p.html
  87. 349
      src-local/LabLearningObject-hybrid-tmp/bz4dsqp7eo5.html
  88. 349
      src-local/LabLearningObject-hybrid-tmp/c28zy8bemxd.html
  89. 812
      src-local/LabLearningObject-hybrid-tmp/c3tmezpvv6d.html
  90. 34
      src-local/LabLearningObject-hybrid-tmp/c80kmq.html
  91. 122
      src-local/LabLearningObject-hybrid-tmp/c9g3860bb2v.html
  92. 34
      src-local/LabLearningObject-hybrid-tmp/ca447s.html
  93. 122
      src-local/LabLearningObject-hybrid-tmp/ccdyjhwixp.html
  94. 34
      src-local/LabLearningObject-hybrid-tmp/ce22he.html
  95. 129
      src-local/LabLearningObject-hybrid-tmp/cezsd2kfd2d.html
  96. 122
      src-local/LabLearningObject-hybrid-tmp/coqfzs7rkm9.html
  97. 122
      src-local/LabLearningObject-hybrid-tmp/ctnlpr63i95.html
  98. 150
      src-local/LabLearningObject-hybrid-tmp/d0otdrxner.html
  99. 131
      src-local/LabLearningObject-hybrid-tmp/d3z5tys5xxm.html
  100. 131
      src-local/LabLearningObject-hybrid-tmp/d67fjrn3bx.html

1
.gitignore

@ -4,6 +4,7 @@ src-local/instance/
src-local/hybrid/connect/
src-local/hybrid/keys.json
src-local/logs
src-local/LabLearningObject-hybrid-tmp/
vimsession
swarmlabdoc.js

131
src-local/LabLearningObject-hybrid-tmp/0344pnfw6xd4.html

@ -1,131 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Asciidoctor 2.0.12">
<meta name="description" content="Linux process management">
<meta name="keywords" content="ps aux">
<meta name="author" content="Apostolos rootApostolos@swarmlab.io">
<title>Linux process management !</title>
<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/asciidoctor.js/1.5.9/css/asciidoctor.min.css">
<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.14.0/css/all.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.3/styles/github.min.css">
</head>
<body class="article toc2 toc-right">
<div id="header">
<h1>Linux process management !</h1>
<div class="details">
<span id="author" class="author">Apostolos rootApostolos@swarmlab.io</span><br>
</div>
<div id="toc" class="toc2">
<div id="toctitle">Table of contents</div>
<ul class="sectlevel1">
<li><a href="#_process">1. process</a></li>
<li><a href="#_linux_process_management">2. Linux process management</a></li>
</ul>
</div>
</div>
<div id="content">
<div class="sect1">
<h2 id="_process">1. process</h2>
<div class="sectionbody">
<div class="paragraph">
<p>An instance of a running program is called a process.
Every time you run a shell command, a program is run and a process is created for it.</p>
</div>
<div class="paragraph">
<p>In any modern operating system there can be more than one instance of a program loaded in memory at the same time.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_linux_process_management">2. Linux process management</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Operating systems need some ways to create processes.</p>
</div>
<div class="ulist">
<ul>
<li>
<p>In a very simple system designed for running only a single application (e.g., the controller in a microwave oven), it may be possible to have all the processes that will ever be needed be present when the system comes up.</p>
</li>
<li>
<p>In general-purpose systems, however, some way is needed to create and terminate processes as needed during operation.</p>
</li>
</ul>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<div class="paragraph">
<p><strong>There are four principal events that cause a process to be created:</strong></p>
</div>
<div class="ulist">
<ul>
<li>
<p>System initialization.</p>
</li>
<li>
<p>Execution of process creation system call by a running process.</p>
</li>
<li>
<p>A user request to create a new process.</p>
</li>
<li>
<p>Initiation of a batch job.</p>
</li>
</ul>
</div>
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>Process creation in UNIX and Linux are done through <strong>fork()</strong> or <strong>clone()</strong> system calls.</p>
</div>
<div class="paragraph">
<p>There are several steps involved in process creation.</p>
</div>
<div class="ulist">
<ul>
<li>
<p>process scheduling,</p>
</li>
<li>
<p>interrupt handling,</p>
</li>
<li>
<p>signaling,</p>
</li>
<li>
<p>process prioritization,</p>
</li>
<li>
<p>process switching,</p>
</li>
<li>
<p>process state,</p>
</li>
<li>
<p>process memory</p>
</li>
</ul>
</div>
</div>
</div>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.3/highlight.min.js"></script>
<script>
if (!hljs.initHighlighting.called) {
hljs.initHighlighting.called = true
;[].slice.call(document.querySelectorAll('pre.highlight > code')).forEach(function (el) { hljs.highlightBlock(el) })
}
</script>
</body>
</html>

349
src-local/LabLearningObject-hybrid-tmp/0ajszhq4ez8f.html

@ -1,349 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Asciidoctor 2.0.12">
<meta name="description" content="Intro and Install">
<meta name="keywords" content="Linux, apt">
<meta name="author" content="Apostolos rootApostolos@swarmlab.io">
<title>An Introduction to Linux !</title>
<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/asciidoctor.js/1.5.9/css/asciidoctor.min.css">
<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.14.0/css/all.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.3/styles/github.min.css">
</head>
<body class="article toc2 toc-right">
<div id="header">
<h1>An Introduction to Linux !</h1>
<div class="details">
<span id="author" class="author">Apostolos rootApostolos@swarmlab.io</span><br>
</div>
<div id="toc" class="toc2">
<div id="toctitle">Table of contents</div>
<ul class="sectlevel1">
<li><a href="#_absolute_basics">1. Absolute basics</a>
<ul class="sectlevel2">
<li><a href="#_key_combinations">1.1. Key combinations</a></li>
<li><a href="#_ls_l">1.2. ls -l</a>
<ul class="sectlevel3">
<li><a href="#_file_types">1.2.1. File types</a></li>
<li><a href="#_access_rights">1.2.2. Access rights</a></li>
<li><a href="#_user_group_codes">1.2.3. User group codes</a></li>
<li><a href="#_exercises">1.2.4. Exercises</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<div id="content">
<div class="sect1">
<h2 id="_absolute_basics">1. Absolute basics</h2>
<div class="sectionbody">
<table class="tableblock frame-all grid-all stretch">
<caption class="title">Table 1. Absolute basics</caption>
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Command</th>
<th class="tableblock halign-left valign-top">Meaning</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">ls</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Displays a list of files in the current working directory.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">cd directory</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">change directories</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">passwd</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">change the password for the current user</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">file filename</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">display file type of file with name filename</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">cat textfile</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">throws content of textfile on the screen</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">pwd</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">display present working directory</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">exit or logout</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">leave this session</p></td>
</tr>
</tbody>
<tfoot>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">man command</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">read man pages on command</p></td>
</tr>
</tfoot>
</table>
<div class="sect2">
<h3 id="_key_combinations">1.1. Key combinations</h3>
<table class="tableblock frame-all grid-all stretch">
<caption class="title">Table 2. Key combinations</caption>
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Key or key combination</th>
<th class="tableblock halign-left valign-top">Function</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Ctrl+C</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">End a running program and return the prompt</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Ctrl+Z</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Suspend a program</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">ArrowUp and ArrowDown</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Browse history. Go to the line that you want to repeat, edit details if necessary, and press Enter to save time.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tab</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Command or filename completion; when multiple choices are possible, the system will either signal with an audio or visual bell, or, if too many choices are possible, ask you if you want to see them all.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tab Tab</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Shows file or command completion possibilities.</p></td>
</tr>
</tbody>
<tfoot>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Shift+PageUp and Shift+PageDown</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Browse terminal buffer (to see text that has "scrolled off" the screen).</p></td>
</tr>
</tfoot>
</table>
</div>
<div class="sect2">
<h3 id="_ls_l">1.2. ls -l</h3>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash"># ls -al
drwxrwxr-x 4 zeus zeus 4096 Οκτ 23 21:55 .
drwxrwxr-x 9 zeus zeus 4096 Οκτ 15 14:28 ..
drwxrwxr-x 8 zeus zeus 4096 Οκτ 23 21:55 .git
drwxrwxr-x 4 zeus zeus 4096 Οκτ 14 20:24 install
crw------- 1 root root 5, 1 Οκτ 23 21:22 console
lrwxrwxrwx 1 root root 11 Οκτ 23 21:21 core -&gt; /proc/kcore
drwxr-xr-x 4 root root 100 Οκτ 23 21:22 cpu
crw------- 1 root root 10, 59 Οκτ 23 21:21 cpu_dma_latency
crw------- 1 root root 10, 203 Οκτ 23 21:21 cuse
-rw-rw-r-- 1 zeus zeus 1517 Οκτ 23 21:55 INSTALL.md
-rw-rw-r-- 1 zeus zeus 33883 Οκτ 15 14:28 LICENSE
-rw-rw-r-- 1 zeus zeus 691 Οκτ 17 11:13 README.md</code></pre>
</div>
</div>
<div class="sect3">
<h4 id="_file_types">1.2.1. File types</h4>
<div class="paragraph">
<p>This table gives an overview of the characters determining the file type:</p>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<strong>d</strong>rwxrwxr-x 4 zeus zeus 4096 Οκτ 14 20:24 install
</td>
</tr>
</table>
</div>
<table class="tableblock frame-all grid-all stretch">
<caption class="title">Table 3. File types in a long list</caption>
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Symbol</th>
<th class="tableblock halign-left valign-top">Meaning</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Regular file</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">d</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">l</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Link</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">c</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Special file</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">s</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Socket</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">p</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Named pipe</p></td>
</tr>
</tbody>
<tfoot>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">b</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Block device</p></td>
</tr>
</tfoot>
</table>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
-<strong>rw-</strong>rw-r-- 1 zeus zeus 1517 Οκτ 23 21:55 INSTALL.md
</td>
</tr>
</table>
</div>
</div>
<div class="sect3">
<h4 id="_access_rights">1.2.2. Access rights</h4>
<table class="tableblock frame-all grid-all stretch">
<caption class="title">Table 4. Access rights</caption>
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Code</th>
<th class="tableblock halign-left valign-top">Meaning</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">0 or -</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">The access right that is supposed to be on this place is not granted.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">4 or</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">read access is granted to the user category defined in this place</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">2 or</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">write permission is granted to the user category defined in this place</p></td>
</tr>
</tbody>
<tfoot>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">1 or</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">execute permission is granted to the user category defined in this place</p></td>
</tr>
</tfoot>
</table>
</div>
<div class="sect3">
<h4 id="_user_group_codes">1.2.3. User group codes</h4>
<table class="tableblock frame-all grid-all stretch">
<caption class="title">Table 5. User group codes</caption>
<colgroup>
<col style="width: 33.3333%;">
<col style="width: 33.3333%;">
<col style="width: 33.3334%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Code</th>
<th class="tableblock halign-left valign-top">Meaning</th>
<th class="tableblock halign-left valign-top"></th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">u</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">user permissions</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">-<strong>rw-</strong>rw-r--</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">g</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">group permissions</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">-rw-<strong>rw-</strong>r--</p></td>
</tr>
</tbody>
<tfoot>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">o</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">permissions for others</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">-rw-rw-<strong>rw-</strong></p></td>
</tr>
</tfoot>
</table>
</div>
<div class="sect3">
<h4 id="_exercises">1.2.4. Exercises</h4>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">touch example
chmod 400 example
ls -l example
chmod 500 example
ls -l example
chmod 600 example
ls -l example
chmod 644 example
ls -l example
chmod 660 example
ls -l example
chmod 700 example
ls -l example
chmod 755 example
ls -l example
chmod 775 example
ls -l example
ls -l example
chmod 777 example
ls -l example</code></pre>
</div>
</div>
<div class="paragraph">
<p><br>
<br>
</p>
</div>
</div>
</div>
</div>
</div>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.3/highlight.min.js"></script>
<script>
if (!hljs.initHighlighting.called) {
hljs.initHighlighting.called = true
;[].slice.call(document.querySelectorAll('pre.highlight > code')).forEach(function (el) { hljs.highlightBlock(el) })
}
</script>
</body>
</html>

328
src-local/LabLearningObject-hybrid-tmp/0hd24n8mvc5m.html

@ -1,328 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Asciidoctor 2.0.12">
<meta name="description" content="Intro and Install">
<meta name="keywords" content="Linux, apt">
<meta name="author" content="Apostolos rootApostolos@swarmlab.io">
<title>An Introduction to Linux !</title>
<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/asciidoctor.js/1.5.9/css/asciidoctor.min.css">
<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.14.0/css/all.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.3/styles/github.min.css">
</head>
<body class="article toc2 toc-right">
<div id="header">
<h1>An Introduction to Linux !</h1>
<div class="details">
<span id="author" class="author">Apostolos rootApostolos@swarmlab.io</span><br>
</div>
<div id="toc" class="toc2">
<div id="toctitle">Table of contents</div>
<ul class="sectlevel1">
<li><a href="#_absolute_basics">1. Absolute basics</a>
<ul class="sectlevel2">
<li><a href="#_key_combinations">1.1. Key combinations</a></li>
<li><a href="#_ls_l">1.2. ls -l</a>
<ul class="sectlevel3">
<li><a href="#_file_types">1.2.1. File types</a></li>
<li><a href="#_access_rights">1.2.2. Access rights</a></li>
<li><a href="#_user_group_codes">1.2.3. User group codes</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<div id="content">
<div id="preamble">
<div class="sectionbody">
<div class="paragraph">
<p><br></p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_absolute_basics">1. Absolute basics</h2>
<div class="sectionbody">
<table class="tableblock frame-all grid-all stretch">
<caption class="title">Table 1. Absolute basics</caption>
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Command</th>
<th class="tableblock halign-left valign-top">Meaning</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">ls</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Displays a list of files in the current working directory.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">cd directory</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">change directories</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">passwd</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">change the password for the current user</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">file filename</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">display file type of file with name filename</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">cat textfile</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">throws content of textfile on the screen</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">pwd</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">display present working directory</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">exit or logout</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">leave this session</p></td>
</tr>
</tbody>
<tfoot>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">man command</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">read man pages on command</p></td>
</tr>
</tfoot>
</table>
<div class="sect2">
<h3 id="_key_combinations">1.1. Key combinations</h3>
<table class="tableblock frame-all grid-all stretch">
<caption class="title">Table 2. Key combinations</caption>
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Key or key combination</th>
<th class="tableblock halign-left valign-top">Function</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Ctrl+C</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">End a running program and return the prompt</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Ctrl+Z</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Suspend a program</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">ArrowUp and ArrowDown</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Browse history. Go to the line that you want to repeat, edit details if necessary, and press Enter to save time.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tab</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Command or filename completion; when multiple choices are possible, the system will either signal with an audio or visual bell, or, if too many choices are possible, ask you if you want to see them all.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tab Tab</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Shows file or command completion possibilities.</p></td>
</tr>
</tbody>
<tfoot>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Shift+PageUp and Shift+PageDown</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Browse terminal buffer (to see text that has "scrolled off" the screen).</p></td>
</tr>
</tfoot>
</table>
</div>
<div class="sect2">
<h3 id="_ls_l">1.2. ls -l</h3>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash"># ls -al
drwxrwxr-x 4 zeus zeus 4096 Οκτ 23 21:55 .
drwxrwxr-x 9 zeus zeus 4096 Οκτ 15 14:28 ..
drwxrwxr-x 8 zeus zeus 4096 Οκτ 23 21:55 .git
drwxrwxr-x 4 zeus zeus 4096 Οκτ 14 20:24 install
crw------- 1 root root 5, 1 Οκτ 23 21:22 console
lrwxrwxrwx 1 root root 11 Οκτ 23 21:21 core -&gt; /proc/kcore
drwxr-xr-x 4 root root 100 Οκτ 23 21:22 cpu
crw------- 1 root root 10, 59 Οκτ 23 21:21 cpu_dma_latency
crw------- 1 root root 10, 203 Οκτ 23 21:21 cuse
-rw-rw-r-- 1 zeus zeus 1517 Οκτ 23 21:55 INSTALL.md
-rw-rw-r-- 1 zeus zeus 33883 Οκτ 15 14:28 LICENSE
-rw-rw-r-- 1 zeus zeus 691 Οκτ 17 11:13 README.md</code></pre>
</div>
</div>
<div class="sect3">
<h4 id="_file_types">1.2.1. File types</h4>
<div class="paragraph">
<p>This table gives an overview of the characters determining the file type:</p>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<strong>d</strong>rwxrwxr-x 4 zeus zeus 4096 Οκτ 14 20:24 install
</td>
</tr>
</table>
</div>
<table class="tableblock frame-all grid-all stretch">
<caption class="title">Table 3. File types in a long list</caption>
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Symbol</th>
<th class="tableblock halign-left valign-top">Meaning</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Regular file</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">d</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">l</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Link</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">c</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Special file</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">s</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Socket</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">p</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Named pipe</p></td>
</tr>
</tbody>
<tfoot>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">b</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Block device</p></td>
</tr>
</tfoot>
</table>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
-<strong>rw-</strong>rw-r-- 1 zeus zeus 1517 Οκτ 23 21:55 INSTALL.md
</td>
</tr>
</table>
</div>
</div>
<div class="sect3">
<h4 id="_access_rights">1.2.2. Access rights</h4>
<table class="tableblock frame-all grid-all stretch">
<caption class="title">Table 4. Access rights</caption>
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Code</th>
<th class="tableblock halign-left valign-top">Meaning</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">0 or -</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">The access right that is supposed to be on this place is not granted.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">4 or</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">read access is granted to the user category defined in this place</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">2 or</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">write permission is granted to the user category defined in this place</p></td>
</tr>
</tbody>
<tfoot>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">1 or</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">execute permission is granted to the user category defined in this place</p></td>
</tr>
</tfoot>
</table>
</div>
<div class="sect3">
<h4 id="_user_group_codes">1.2.3. User group codes</h4>
<table class="tableblock frame-all grid-all stretch">
<caption class="title">Table 5. User group codes</caption>
<colgroup>
<col style="width: 33.3333%;">
<col style="width: 33.3333%;">
<col style="width: 33.3334%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Code</th>
<th class="tableblock halign-left valign-top">Meaning</th>
<th class="tableblock halign-left valign-top"></th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">u</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">user permissions</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">-<strong>rw-</strong>rw-r--</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">g</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">group permissions</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">-rw-<strong>rw-</strong>r--</p></td>
</tr>
</tbody>
<tfoot>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">o</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">permissions for others</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">-rw-rw-<strong>rw-</strong></p></td>
</tr>
</tfoot>
</table>
<div class="paragraph">
<p><br>
<br>
</p>
</div>
</div>
</div>
</div>
</div>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.3/highlight.min.js"></script>
<script>
if (!hljs.initHighlighting.called) {
hljs.initHighlighting.called = true
;[].slice.call(document.querySelectorAll('pre.highlight > code')).forEach(function (el) { hljs.highlightBlock(el) })
}
</script>
</body>
</html>

276
src-local/LabLearningObject-hybrid-tmp/0uay73d8fdcd.html

@ -1,276 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Asciidoctor 2.0.12">
<meta name="description" content="Linux process management">
<meta name="keywords" content="ps aux">
<meta name="author" content="Apostolos rootApostolos@swarmlab.io">
<title>Linux process management !</title>
<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/asciidoctor.js/1.5.9/css/asciidoctor.min.css">
<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.14.0/css/all.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.3/styles/github.min.css">
</head>
<body class="article toc2 toc-right">
<div id="header">
<h1>Linux process management !</h1>
<div class="details">
<span id="author" class="author">Apostolos rootApostolos@swarmlab.io</span><br>
</div>
<div id="toc" class="toc2">
<div id="toctitle">Table of contents</div>
<ul class="sectlevel1">
<li><a href="#_process">1. process</a></li>
<li><a href="#_linux_process_management">2. Linux process management</a>
<ul class="sectlevel2">
<li><a href="#_life_cycle_of_a_process">2.1. Life cycle of a process</a></li>
<li><a href="#_process_state">2.2. process state</a></li>
<li><a href="#_inter_process_communication">2.3. Inter-process communication</a>
<ul class="sectlevel3">
<li><a href="#_communication_between_processes">2.3.1. communication between processes</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<div id="content">
<div class="sect1">
<h2 id="_process">1. process</h2>
<div class="sectionbody">
<div class="paragraph">
<p>An instance of a running program is called a process.
Every time you run a shell command, a program is run and a process is created for it.</p>
</div>
<div class="paragraph">
<p>In any modern operating system there can be more than one instance of a program loaded in memory at the same time.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_linux_process_management">2. Linux process management</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Operating systems need some ways to create processes.</p>
</div>
<div class="ulist">
<ul>
<li>
<p>In a very simple system designed for running only a single application (e.g., the controller in a microwave oven), it may be possible to have all the processes that will ever be needed be present when the system comes up.</p>
</li>
<li>
<p>In general-purpose systems, however, some way is needed to create and terminate processes as needed during operation.</p>
</li>
</ul>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<div class="paragraph">
<p><strong>There are four principal events that cause a process to be created:</strong></p>
</div>
<div class="ulist">
<ul>
<li>
<p>System initialization.</p>
</li>
<li>
<p>Execution of process creation system call by a running process.</p>
</li>
<li>
<p>A user request to create a new process.</p>
</li>
<li>
<p>Initiation of a batch job.</p>
</li>
</ul>
</div>
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>Process creation in UNIX and Linux are done through <strong>fork()</strong> or <strong>clone()</strong> system calls.</p>
</div>
<div class="paragraph">
<p>There are several steps involved in process creation.</p>
</div>
<div class="ulist">
<ul>
<li>
<p>process scheduling,</p>
</li>
<li>
<p>interrupt handling,</p>
</li>
<li>
<p>signaling,</p>
</li>
<li>
<p>process prioritization,</p>
</li>
<li>
<p>process switching,</p>
</li>
<li>
<p>process state,</p>
</li>
<li>
<p>process memory</p>
</li>
</ul>
</div>
<div class="sect2">
<h3 id="_life_cycle_of_a_process">2.1. Life cycle of a process</h3>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<strong>1&#8594;</strong> creation <strong>2&#8594;</strong> execution <strong>3&#8594;</strong> termination <strong>4&#8594;</strong> removal
</td>
</tr>
</table>
</div>
</div>
<div class="sect2">
<h3 id="_process_state">2.2. process state</h3>
<div class="paragraph">
<p>An operating system kernel that allows multitasking needs processes to have certain states. Names for these states are not standardised, but they have similar functionality.</p>
</div>
<div class="openblock float-group">
<div class="content">
<div class="imageblock related thumb right">
<div class="content">
<img src="http://localhost:3080/images/Process_states.png" alt="350" width="350">
</div>
</div>
<div class="ulist">
<ul>
<li>
<p>the process is <strong>"created"</strong>.</p>
</li>
<li>
<p>After that the process scheduler assigns it the <strong>"waiting"</strong> state.</p>
</li>
<li>
<p>While the process is <strong>"waiting"</strong>, it waits for the scheduler to do a so-called context switch.</p>
</li>
<li>
<p>The context switch loads the process into the processor and changes the state to <strong>"running"</strong> while the previously <strong>"running"</strong> process is stored in a <strong>"waiting"</strong> state.</p>
</li>
<li>
<p>If a process in the <strong>"running"</strong> state needs to wait for a resource, it is assigned the <strong>"blocked"</strong> state.</p>
</li>
<li>
<p>The process state is changed back to <strong>"waiting"</strong> when the process no longer needs to wait (in a blocked state).</p>
</li>
<li>
<p>Once the process <strong>finishes execution</strong>, or is <strong>terminated</strong> by the operating system, it is no longer needed.</p>
</li>
<li>
<p>The process is <strong>removed instantly</strong> or is moved to the <strong>"terminated"</strong> state.</p>
</li>
<li>
<p>When removed, it just waits to be <strong>removed from main memory</strong>.</p>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="sect2">
<h3 id="_inter_process_communication">2.3. Inter-process communication</h3>
<div class="paragraph">
<p>When processes need to communicate with each other they must share parts of their address spaces or use other forms of inter-process communication (IPC).</p>
</div>
<div class="ulist">
<ul>
<li>
<p>For instance in a shell pipeline, the output of the first process need to pass to the second one.</p>
</li>
<li>
<p>another example is a task that can be decomposed into cooperating but partially independent processes which can run at once</p>
<div class="ulist">
<ul>
<li>
<p>(i.e., using concurrency, or true parallelism - the latter model is a particular case of concurrent execution and is feasible whenever enough CPU cores are available for all the processes that are ready to run).</p>
</li>
</ul>
</div>
</li>
</ul>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
It is even possible for two or more processes to be running on different machines that may run different operating system (OS), therefore some mechanisms for communication and synchronization (called communications protocols for distributed computing) are needed (e.g., the <strong>Message Passing Interface, often simply called MPI</strong>).
</td>
</tr>
</table>
</div>
<div class="sect3">
<h4 id="_communication_between_processes">2.3.1. communication between processes</h4>
<div class="paragraph">
<p>Processes can communicate with each other through:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Shared Memory</p>
</li>
<li>
<p>Message passing</p>
</li>
</ul>
</div>
<div class="openblock float-group">
<div class="content">
<div class="imageblock related thumb right">
<div class="content">
<img src="http://localhost:3080/images/1-76.png" alt="350" width="350">
</div>
</div>
<div class="imageblock related thumb left">
<div class="content">
<img src="http://localhost:3080/images/2-50.png" alt="350" width="350">
</div>
</div>
</div>
</div>
<div class="paragraph">
<p><sup class="footnote">[<a id="_footnoteref_1" class="footnote" href="#_footnotedef_1" title="View footnote.">1</a>]</sup></p>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="footnotes">
<hr>
<div class="footnote" id="_footnotedef_1">
<a href="#_footnoteref_1">1</a>. <a href="https://www.geeksforgeeks.org/inter-process-communication-ipc/" class="bare" target="_blank" rel="noopener">https://www.geeksforgeeks.org/inter-process-communication-ipc/</a>
</div>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.3/highlight.min.js"></script>
<script>
if (!hljs.initHighlighting.called) {
hljs.initHighlighting.called = true
;[].slice.call(document.querySelectorAll('pre.highlight > code')).forEach(function (el) { hljs.highlightBlock(el) })
}
</script>
</body>
</html>

349
src-local/LabLearningObject-hybrid-tmp/0uidbgygmbl.html

@ -1,349 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Asciidoctor 2.0.12">
<meta name="description" content="Intro and Install">
<meta name="keywords" content="Linux, apt">
<meta name="author" content="Apostolos rootApostolos@swarmlab.io">
<title>An Introduction to Linux !</title>
<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/asciidoctor.js/1.5.9/css/asciidoctor.min.css">
<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.14.0/css/all.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.3/styles/github.min.css">
</head>
<body class="article toc2 toc-right">
<div id="header">
<h1>An Introduction to Linux !</h1>
<div class="details">
<span id="author" class="author">Apostolos rootApostolos@swarmlab.io</span><br>
</div>
<div id="toc" class="toc2">
<div id="toctitle">Table of contents</div>
<ul class="sectlevel1">
<li><a href="#_absolute_basics">1. Absolute basics</a>
<ul class="sectlevel2">
<li><a href="#_key_combinations">1.1. Key combinations</a></li>
<li><a href="#_ls_l">1.2. ls -l</a>
<ul class="sectlevel3">
<li><a href="#_file_types">1.2.1. File types</a></li>
<li><a href="#_access_rights">1.2.2. Access rights</a></li>
<li><a href="#_user_group_codes">1.2.3. User group codes</a></li>
<li><a href="#_exercises">1.2.4. Exercises</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<div id="content">
<div class="sect1">
<h2 id="_absolute_basics">1. Absolute basics</h2>
<div class="sectionbody">
<table class="tableblock frame-all grid-all stretch">
<caption class="title">Table 1. Absolute basics</caption>
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Command</th>
<th class="tableblock halign-left valign-top">Meaning</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">ls</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Displays a list of files in the current working directory.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">cd directory</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">change directories</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">passwd</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">change the password for the current user</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">file filename</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">display file type of file with name filename</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">cat textfile</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">throws content of textfile on the screen</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">pwd</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">display present working directory</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">exit or logout</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">leave this session</p></td>
</tr>
</tbody>
<tfoot>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">man command</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">read man pages on command</p></td>
</tr>
</tfoot>
</table>
<div class="sect2">
<h3 id="_key_combinations">1.1. Key combinations</h3>
<table class="tableblock frame-all grid-all stretch">
<caption class="title">Table 2. Key combinations</caption>
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Key or key combination</th>
<th class="tableblock halign-left valign-top">Function</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Ctrl+C</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">End a running program and return the prompt</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Ctrl+Z</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Suspend a program</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">ArrowUp and ArrowDown</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Browse history. Go to the line that you want to repeat, edit details if necessary, and press Enter to save time.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tab</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Command or filename completion; when multiple choices are possible, the system will either signal with an audio or visual bell, or, if too many choices are possible, ask you if you want to see them all.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tab Tab</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Shows file or command completion possibilities.</p></td>
</tr>
</tbody>
<tfoot>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Shift+PageUp and Shift+PageDown</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Browse terminal buffer (to see text that has "scrolled off" the screen).</p></td>
</tr>
</tfoot>
</table>
</div>
<div class="sect2">
<h3 id="_ls_l">1.2. ls -l</h3>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash"># ls -al
drwxrwxr-x 4 zeus zeus 4096 Οκτ 23 21:55 .
drwxrwxr-x 9 zeus zeus 4096 Οκτ 15 14:28 ..
drwxrwxr-x 8 zeus zeus 4096 Οκτ 23 21:55 .git
drwxrwxr-x 4 zeus zeus 4096 Οκτ 14 20:24 install
crw------- 1 root root 5, 1 Οκτ 23 21:22 console
lrwxrwxrwx 1 root root 11 Οκτ 23 21:21 core -&gt; /proc/kcore
drwxr-xr-x 4 root root 100 Οκτ 23 21:22 cpu
crw------- 1 root root 10, 59 Οκτ 23 21:21 cpu_dma_latency
crw------- 1 root root 10, 203 Οκτ 23 21:21 cuse
-rw-rw-r-- 1 zeus zeus 1517 Οκτ 23 21:55 INSTALL.md
-rw-rw-r-- 1 zeus zeus 33883 Οκτ 15 14:28 LICENSE
-rw-rw-r-- 1 zeus zeus 691 Οκτ 17 11:13 README.md</code></pre>
</div>
</div>
<div class="sect3">
<h4 id="_file_types">1.2.1. File types</h4>
<div class="paragraph">
<p>This table gives an overview of the characters determining the file type:</p>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<strong>d</strong>rwxrwxr-x 4 zeus zeus 4096 Οκτ 14 20:24 install
</td>
</tr>
</table>
</div>
<table class="tableblock frame-all grid-all stretch">
<caption class="title">Table 3. File types in a long list</caption>
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Symbol</th>
<th class="tableblock halign-left valign-top">Meaning</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Regular file</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">d</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">l</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Link</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">c</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Special file</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">s</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Socket</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">p</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Named pipe</p></td>
</tr>
</tbody>
<tfoot>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">b</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Block device</p></td>
</tr>
</tfoot>
</table>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
-<strong>rw-</strong>rw-r-- 1 zeus zeus 1517 Οκτ 23 21:55 INSTALL.md
</td>
</tr>
</table>
</div>
</div>
<div class="sect3">
<h4 id="_access_rights"