<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>read &amp;mdash; Paul Sutton</title>
    <link>https://personaljournal.ca/paulsutton/tag:read</link>
    <description>Personal Blog</description>
    <pubDate>Tue, 05 May 2026 18:11:27 +0000</pubDate>
    <item>
      <title>Bash scripting 13 - Linux permission table</title>
      <link>https://personaljournal.ca/paulsutton/bash-scripting-13-linux-permission-table</link>
      <description>&lt;![CDATA[Bash scripting 13 - Linux permission table&#xA;&#xA;As previously mentioned, scripts need to be given permission to run.   This table should help with the process of working out what permission to set on a file or script.&#xA;&#xA;I think the usual default is 755 which gives the user read, write, execute.  Both the group and other users of the system get read and write.&#xA;&#xA;For the most part, you can set execute permission on a script with&#xA;&#xA;chmod +x scriptname.sh&#xA;&#xA;|         | READ |         |         | WRITE |         |         | EXECUTE |         |&#xA;|:-------:|:--------:|:-------:|:-------:|:---------:|:-------:|:-------:|:-----------:|:-------:|&#xA;|  USER |  GROUP | OTHER |  USER |  GROUP  | OTHER |  USER |   GROUP   | OTHER |&#xA;| 400 |  40  |  4  | 200 |   20  |  2  | 100 |    10   |  1  |&#xA;&#xA;The markdown code for the above is &#xA;&#xA;|         | READ |         |         | WRITE |         |         | EXECUTE |         |&#xA;|:-------:|:--------:|:-------:|:-------:|:---------:|:-------:|:-------:|:-----------:|:-------:|&#xA;|  USER |  GROUP | OTHER |  USER |  GROUP  | OTHER |  USER |   GROUP   | OTHER |&#xA;| 400 |  40  |  4  | 200 |   20  |  2  | 100 |    10   |  1  |&#xA;Which may be useful.  I used Tables Generator to help create this. &#xA;&#xA;Chat&#xA;&#xA;I am on the Devon and Cornwall Linux user group mailing list and also their matrix channel as zleap, it is better to ask there, that way others can answer too.&#xA;&#xA;Tags&#xA;&#xA;#Bash,#Bashscripting,#Files,#Permissions.#chmod,#Read,#Write,&#xA;Execute&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>Bash scripting 13 – Linux permission table</p>

<p>As previously mentioned, scripts need to be given permission to run.   This table should help with the process of working out what permission to set on a file or script.</p>

<p>I think the usual default is 755 which gives the user read, write, execute.  Both the group and other users of the system get read and write.</p>

<p>For the most part, you can set execute permission on a script with</p>

<pre><code>chmod +x scriptname.sh
</code></pre>

<table>
<thead>
<tr>
<th align="center"></th>
<th align="center"><strong>READ</strong></th>
<th align="center"></th>
<th align="center"></th>
<th align="center"><strong>WRITE</strong></th>
<th align="center"></th>
<th align="center"></th>
<th align="center"><strong>EXECUTE</strong></th>
<th align="center"></th>
</tr>
</thead>

<tbody>
<tr>
<td align="center"><em>USER</em></td>
<td align="center"><em>GROUP</em></td>
<td align="center"><em>OTHER</em></td>
<td align="center"><em>USER</em></td>
<td align="center"><em>GROUP</em></td>
<td align="center"><em>OTHER</em></td>
<td align="center"><em>USER</em></td>
<td align="center"><em>GROUP</em></td>
<td align="center"><em>OTHER</em></td>
</tr>

<tr>
<td align="center"><strong>400</strong></td>
<td align="center"><strong>40</strong></td>
<td align="center"><strong>4</strong></td>
<td align="center"><strong>200</strong></td>
<td align="center"><strong>20</strong></td>
<td align="center"><strong>2</strong></td>
<td align="center"><strong>100</strong></td>
<td align="center"><strong>10</strong></td>
<td align="center"><strong>1</strong></td>
</tr>
</tbody>
</table>

<p>The markdown code for the above is</p>

<pre><code>|         | **READ** |         |         | **WRITE** |         |         | **EXECUTE** |         |
|:-------:|:--------:|:-------:|:-------:|:---------:|:-------:|:-------:|:-----------:|:-------:|
|  _USER_ |  _GROUP_ | _OTHER_ |  _USER_ |  _GROUP_  | _OTHER_ |  _USER_ |   _GROUP_   | _OTHER_ |
| **400** |  **40**  |  **4**  | **200** |   **20**  |  **2**  | **100** |    **10**   |  **1**  |
</code></pre>

<p>Which may be useful.  I used <a href="https://www.tablesgenerator.com/" rel="nofollow">Tables Generator</a> to help create this.</p>

<p><strong>Chat</strong></p>

<p>I am on the <a href="https://www.dcglug.org.uk/" rel="nofollow">Devon and Cornwall Linux user group</a> mailing list and also their <a href="https://matrix.to/#/%23dcglug:matrix.org" rel="nofollow">matrix channel</a> as zleap, it is better to ask there, that way others can answer too.</p>

<p><strong>Tags</strong></p>

<p><a href="/paulsutton/tag:Bash" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Bash</span></a>,<a href="/paulsutton/tag:Bashscripting" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Bashscripting</span></a>,<a href="/paulsutton/tag:Files" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Files</span></a>,<a href="/paulsutton/tag:Permissions" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Permissions</span></a>.<a href="/paulsutton/tag:chmod" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">chmod</span></a>,<a href="/paulsutton/tag:Read" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Read</span></a>,<a href="/paulsutton/tag:Write" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Write</span></a>,
<a href="/paulsutton/tag:Execute" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Execute</span></a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/bash-scripting-13-linux-permission-table</guid>
      <pubDate>Mon, 14 Apr 2025 06:00:00 +0000</pubDate>
    </item>
  </channel>
</rss>