{"id":50720,"date":"2026-03-08T14:02:33","date_gmt":"2026-03-08T14:02:33","guid":{"rendered":"https:\/\/ubuntuhandbook.org\/?p=50720"},"modified":"2026-03-08T14:02:33","modified_gmt":"2026-03-08T14:02:33","slug":"concessio-simple-app-to-help-understand-linux-file-permissions","status":"publish","type":"post","link":"https:\/\/ubuntuhandbook.org\/index.php\/2026\/03\/concessio-simple-app-to-help-understand-linux-file-permissions\/","title":{"rendered":"Concessio &#8211; Simple App to Help Understand Linux File Permissions"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-thumbnail wp-image-35489\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2021\/11\/tux-icon-250x250.webp\" alt=\"\" width=\"250\" height=\"250\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2021\/11\/tux-icon-250x250.webp 250w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2021\/11\/tux-icon-300x300.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2021\/11\/tux-icon-600x600.webp 600w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2021\/11\/tux-icon-768x768.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2021\/11\/tux-icon.webp 1200w\" sizes=\"auto, (max-width: 250px) 100vw, 250px\" \/><\/p>\n<p>For beginners who want to learn about Linux file permissions, here&#8217;s a stupid simple application that can help.<\/p>\n<p>It&#8217;s <a href=\"https:\/\/github.com\/ronniedroid\/concessio\" target=\"_blank\" rel=\"noopener\">Concessio<\/a>, a free open-source app designed for GNOME, though works in most Linux through Flatpak package.<\/p>\n<p><!--more--><\/p>\n<p>As you know, every file and folder in Linux has a specific set of permissions. It controls the <b>read<\/b>, <b>write<\/b>, and <b>execute<\/b> permissions for <b>user<\/b> (who own the file\/folder), <b>group<\/b> (group of users share access to the file\/folder), and <b>others<\/b> (all other users in system).<\/p>\n<p>Permissions can be represented by either numbers or a string of characters.<\/p>\n<ul>\n<li><b>Read<\/b> only &#8211; <code>r--<\/code> or <b>4<\/b> + 0 + 0.<\/li>\n<li><b>Write<\/b> only &#8211; <code>-w-<\/code> or 0 + <b>2<\/b> + 0.<\/li>\n<li><b>Execute<\/b> only &#8211; <code>--x<\/code> or 0 + 0 + <b>1<\/b>.<\/li>\n<li><b>Read<\/b> and <b>Write<\/b> &#8211; <code>rw-<\/code> or <b>6<\/b> (4+2+0)<\/li>\n<li><b>Read<\/b> and <b>Execute<\/b> &#8211; <code>r-x<\/code> or <b>5<\/b> (4+0+1)<\/li>\n<li><b>Write<\/b> and <b>Execute<\/b> &#8211; <code>-wx<\/code> or <b>3<\/b> (0+2+1)<\/li>\n<li><b>Read<\/b>, <b>Write<\/b>, and <b>Execute<\/b> &#8211; <code>rwx<\/code> or <b>7<\/b> (4+2+1).<\/li>\n<\/ul>\n<p>The permissions for a file\/folder can be represented by a string of 10 characters, e,g., <b>-rwxr-xr&#8211;<\/b>. The first means directory (<b>d<\/b>) or not (<b>&#8211;<\/b>), the 2 ~ 4 characters for user, 5 ~ 7 for group, and the last 3 (8 ~ 10) characters for others.<\/p>\n<p>It can also be represented by 3 numbers, e.g., 755. the first for user (owner), second for group, and the last for others. And, it can sometimes be 4 numbers due to special permissions.<\/p>\n<p><a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/terminal-filepermissions.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-50723\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/terminal-filepermissions-700x468.webp\" alt=\"\" width=\"610\" height=\"408\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/terminal-filepermissions-700x468.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/terminal-filepermissions-300x201.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/terminal-filepermissions-768x514.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/terminal-filepermissions.webp 770w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/a><\/p>\n<p>Understanding Linux file permissions is essential for all Linux administrators. But I often forgot the numerical representation.<\/p>\n<p>To make it clearer to understand, the Concessio provides a simple interface that user can either click the book, pencil, play (execute) icons to set a permissions combination and see the numeric and symbolic representations, or input the permission numbers or characters and convent to each others.<\/p>\n<p><a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/concessio-1.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-50722\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/concessio-1-700x487.webp\" alt=\"\" width=\"610\" height=\"424\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/concessio-1-700x487.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/concessio-1-300x209.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/concessio-1-768x534.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/concessio-1.webp 776w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/a><\/p>\n<p>As you see, it can also show special permissions in numeric and symbolic representations. They include:<\/p>\n<ul>\n<li><b>SUID<\/b> allows to execute file with the permission of the file owner not who run it,<\/li>\n<li><b>SGID<\/b> to execute file with the permission of the group, or ensure new files created in the directory inherit the group permissions,<\/li>\n<li>and <b>sticky bit<\/b> (affect directory only) restricts file deletion, so that only owner (or root) can remove files within that directory.<\/li>\n<\/ul>\n<p>With version 0.3.0, the app added support umask page, that can help to determine the default permissions for newly created files and directories.<\/p>\n<p><a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/umask-tab.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-50724\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/umask-tab-700x431.webp\" alt=\"\" width=\"610\" height=\"376\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/umask-tab-700x431.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/umask-tab-300x185.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/umask-tab-768x473.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/umask-tab.webp 1208w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/a><\/p>\n<p>Besides umask, symbolic, and numeric representations, Concessio also support opening a file to see its permission and provides a help page that explains the Linux file permissions with text and examples.<\/p>\n<p><a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/concessio-help.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-50725\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/concessio-help-700x487.webp\" alt=\"\" width=\"610\" height=\"424\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/concessio-help-700x487.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/concessio-help-300x209.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/concessio-help-768x534.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/03\/concessio-help.webp 776w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/a><\/p>\n<h3>Install Concessio<\/h3>\n<p>Concessio is available to install in most Linux through <a href=\"https:\/\/flathub.org\/en\/apps\/io.github.ronniedroid.concessio\" target=\"_blank\" rel=\"noopener\">Flatpak package<\/a>.<\/p>\n<p>Fedora (with 3rd repository enabled) and Linux Mint since 21 can simply search &amp; install it from either GNOME Software or Software Manager.<\/p>\n<p>While other Linux can follow the steps below one by one to get it:<\/p>\n<ul>\n<li>First, <a href=\"https:\/\/flatpak.org\/setup\/\" target=\"_blank\" rel=\"noopener\">enable Flatpak support<\/a>. For Debian or Ubuntu, simply run command in terminal:\n<pre>sudo apt install flatpak<\/pre>\n<\/li>\n<li>Then, run command to install the flatpak package:\n<pre>flatpak install https:\/\/dl.flathub.org\/repo\/appstream\/io.github.ronniedroid.concessio.flatpakref<\/pre>\n<\/li>\n<\/ul>\n<p>If the app icon is not visible after installation, either log out and back in or run the command below to start from terminal:<\/p>\n<pre>flatpak run io.github.ronniedroid.concessio<\/pre>\n<p>(Optional) At any time, you may uninstall the package by running command:<\/p>\n<pre>flatpak uninstall --delete-data io.github.ronniedroid.concessio<\/pre>","protected":false},"excerpt":{"rendered":"<p>For beginners who want to learn about Linux file permissions, here&#8217;s a stupid simple application that can help. It&#8217;s Concessio, a free open-source app designed for GNOME, though works in most Linux through Flatpak package.<\/p>\n","protected":false},"author":1,"featured_media":35489,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[52],"tags":[2301],"class_list":["post-50720","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-app-review","tag-admin"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts\/50720","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/comments?post=50720"}],"version-history":[{"count":0,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts\/50720\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/media\/35489"}],"wp:attachment":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/media?parent=50720"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/categories?post=50720"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/tags?post=50720"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}