<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.umiacs.umd.edu/umiacs/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kcanha</id>
	<title>UMIACS - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.umiacs.umd.edu/umiacs/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kcanha"/>
	<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php/Special:Contributions/Kcanha"/>
	<updated>2026-04-22T02:17:48Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.7</generator>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=FilesystemDataStorage&amp;diff=12322</id>
		<title>FilesystemDataStorage</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=FilesystemDataStorage&amp;diff=12322"/>
		<updated>2024-12-03T17:17:32Z</updated>

		<summary type="html">&lt;p&gt;Kcanha: /* UNIX Filesystem Storage Commands */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Filesystem [[Data Storage | (data) storage]] refers to all data that is stored physically at UMIACS, i.e., on hard drives either in servers in datacenters managed by [[HelpDesk | UMIACS staff]], or in UMIACS-supported workstations. The opposite of this is [[CloudDataStorage | cloud storage]] which is stored on third-party providers&#039; data hosting platforms.&lt;br /&gt;
&lt;br /&gt;
The below sections outline the different categories of filesystem storage available at UMIACS. Although technically filesystem storage by the above definition, UMIACS also hosts an [[OBJ | Object Store]] that is documented outside the scope of this page.&lt;br /&gt;
&lt;br /&gt;
==Network Home Directory Filesystem Storage==&lt;br /&gt;
We provide network home directory filesystem storage to each of our users through [[NFShomes]] home directories.&lt;br /&gt;
&lt;br /&gt;
This home directory can be accessed via either&lt;br /&gt;
&lt;br /&gt;
    /nfshomes/&amp;lt;username&amp;gt; (NFS)&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
    \\isilondata.umiacs.umd.edu\nfshomes\&amp;lt;username&amp;gt; (CIFS)&lt;br /&gt;
&lt;br /&gt;
and is backed up nightly using the Institute&#039;s [[TSM]] backup system. It also has [[Snapshots]] enabled for easy user restores.&lt;br /&gt;
&lt;br /&gt;
Users are given a 30GB, non-expandable [[Quota]]. You will need to use either platform-specific filesystem storage, directly-attached filesystem storage, or other network-attached filesystem storage for increased space.&lt;br /&gt;
&lt;br /&gt;
On user account closure, the account&#039;s NFShomes home directory goes into our [[Archives]].&lt;br /&gt;
&lt;br /&gt;
==UNIX Filesystem Storage==&lt;br /&gt;
UNIX hosts use redundant, backed-up network file shares for user directories ([[#Network Home Directory Filesystem Storage |above section]]). Research data storage ([[#Network-Attached Filesystem Storage |below section]]) is also stored on redundant, possibly-backed-up network file shares and is generally available under /fs/&lt;br /&gt;
&lt;br /&gt;
All UNIX hosts also have filesystem storage available for transitory use. These directories may be used to store temporary &#039;&#039;&#039;&#039;&#039;COPIES&#039;&#039;&#039;&#039;&#039; of data that is permanently stored elsewhere or as a staging point for output.&lt;br /&gt;
&lt;br /&gt;
These directories may not, &#039;&#039;&#039;&#039;&#039;under any circumstances&#039;&#039;&#039;&#039;&#039;, be used as permanent storage for unique, important data. They are not backed up or archived by UMIACS. UMIACS staff cannot recover damaged or deleted data from these directories and will not be responsible for data loss if they are misused. Additionally, on our [[SLURM]] compute clusters, these volumes may have an automated cleanup routine that will delete unmodified data after some number of days. You can check the page for the specific cluster you are using for more information.&lt;br /&gt;
&lt;br /&gt;
Please note that &#039;&#039;&#039;/tmp&#039;&#039;&#039; in particular is at risk for data loss or corruption as that directory is regularly used by system processes and services for temporary storage.&lt;br /&gt;
&lt;br /&gt;
These directories include:&lt;br /&gt;
&lt;br /&gt;
  - /tmp&lt;br /&gt;
  - /scratch0, /scratch1, ... (/scratch#)&lt;br /&gt;
  - any directory named in whole or in part &amp;quot;tmp&amp;quot;, &amp;quot;temp&amp;quot;, or &amp;quot;scratch&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Windows and macOS Filesystem Storage==&lt;br /&gt;
Windows and macOS hosts at UMIACS store user directories on their primary internal drives (&amp;lt;tt&amp;gt;C:\Users&amp;lt;/tt&amp;gt; for Windows, &amp;lt;tt&amp;gt;/Users&amp;lt;/tt&amp;gt; for macOS). Supported, UMIACS-managed hosts automatically back up user data on these drives nightly using the Institute&#039;s [[TSM]] backup system. If you have a supported, UMIACS-managed host that has other internal or external hard drives attached to it, or other partitions on its primary internal drive, please be aware that these drives/partitions &#039;&#039;&#039;are not&#039;&#039;&#039; backed up. Laptops and non-standard hosts are not automatically backed up and should be manually backed up by their users.&lt;br /&gt;
&lt;br /&gt;
On host decommission, user directories go into our [[Archives]].&lt;br /&gt;
&lt;br /&gt;
==Direct-Attached Filesystem Storage==&lt;br /&gt;
Direct-attached filesystem storage refers to devices like USB flash drives and USB hard drives, which are very popular for easily expanding storage capacity on a host. However, these devices are significantly more vulnerable to data loss or theft than internal or networked data storage. In general, UMIACS discourages the use of direct-attached filesystem storage when any other option is available. Please note that these devices are prone to high rates of failure and additional steps should be taken to ensure that the data is backed up and that critical or confidential data is not lost or stolen.&lt;br /&gt;
&lt;br /&gt;
Direct-attached filesystem storage is not backed up or archived by UMIACS.&lt;br /&gt;
&lt;br /&gt;
==Network-Attached Filesystem Storage==&lt;br /&gt;
Some labs have network-attached filesystem storage space dedicated for datasets, models, and project storage. These shares are typically named in the form &amp;lt;tt&amp;gt;/fs/&amp;lt;lab&amp;gt;-&amp;lt;purpose&amp;gt;&amp;lt;/tt&amp;gt; (i.e., &amp;lt;tt&amp;gt;/fs/cml-models&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;/fs/vulcan-projects&amp;lt;/tt&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
Network-attached filesystem storage may or may not be backed up and/or archived by UMIACS. Details of a specific share&#039;s retention policy should be stated along with the documentation of the share&#039;s access / usage policy. If you find documentation for a network-attached filesystem storage space in this wiki that does not state its retention policy, please [[HelpDesk | contact staff]].&lt;br /&gt;
&lt;br /&gt;
===Network-Attached Filesystem Scratch Storage===&lt;br /&gt;
One specific sub-category of network-attached filesystem storage is network-attached filesystem scratch storage. These shares are named similarly to UNIX filesystem storage, but with the lab&#039;s name included (i.e., &amp;lt;tt&amp;gt;/fs/cbcb-scratch&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;/gammascratch&amp;lt;/tt&amp;gt;), are intended for scratch/temporary storage, and are subject to the same policies as filesystem scratch/tmp directories, discussed above.&lt;br /&gt;
&lt;br /&gt;
Network-attached filesystem scratch storage is not backed up or archived by UMIACS.&lt;br /&gt;
&lt;br /&gt;
==UNIX Filesystem Storage Commands==&lt;br /&gt;
Below are a few different CLI commands that may prove useful for monitoring your filesystem storage usage and performance. For additional information, run &amp;lt;code&amp;gt;[command] --help&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;man [command]&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
df - Shows descriptive file system information&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Usage: df [OPTION]... [FILE]...&lt;br /&gt;
Show information about the file system on which each FILE resides,&lt;br /&gt;
or all file systems by default.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
For example, to check how much space is available at a directory:&lt;br /&gt;
&amp;lt;pre&amp;gt;df -h ./&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
du - Shows disk usage of specific files. Use the -d flag for better depth control.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Usage: du [OPTION]... [FILE]...&lt;br /&gt;
  or:  du [OPTION]... --files0-from=F&lt;br /&gt;
Summarize disk usage of each FILE, recursively for directories.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
For example, to check how much space each file in a directory takes up:&lt;br /&gt;
&amp;lt;pre&amp;gt;du -ah -d 1 ./&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
free - Shows current memory(RAM) usage. Use the -h flag for a human readable format.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Usage:&lt;br /&gt;
 free [options]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
quota - Shows quota information, this is useful for viewing per filesystem limits in places such as a home directory. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
quota: Usage: quota [-guqvswim] [-l | [-Q | -A]] [-F quotaformat]&lt;br /&gt;
	quota [-qvswim] [-l | [-Q | -A]] [-F quotaformat] -u username ...&lt;br /&gt;
	quota [-qvswim] [-l | [-Q | -A]] [-F quotaformat] -g groupname ...&lt;br /&gt;
	quota [-qvswugQm] [-F quotaformat] -f filesystem ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
iostat - Shows drive utilization, as well as other utilizations. Pair this with the &amp;lt;code&amp;gt;watch&amp;lt;/code&amp;gt; command for regular updates. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Usage: iostat [ options ] [ &amp;lt;interval&amp;gt; [ &amp;lt;count&amp;gt; ] ]&lt;br /&gt;
Options are:&lt;br /&gt;
[ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -t ] [ -V ] [ -x ] [ -y ] [ -z ]&lt;br /&gt;
[ -j { ID | LABEL | PATH | UUID | ... } ]&lt;br /&gt;
[ [ -T ] -g &amp;lt;group_name&amp;gt; ] [ -p [ &amp;lt;device&amp;gt; [,...] | ALL ] ]&lt;br /&gt;
[ &amp;lt;device&amp;gt; [...] | ALL ]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kcanha</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=VS_Code&amp;diff=11925</id>
		<title>VS Code</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=VS_Code&amp;diff=11925"/>
		<updated>2024-07-01T19:08:38Z</updated>

		<summary type="html">&lt;p&gt;Kcanha: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://code.visualstudio.com/ Visual Studio (VS) Code] is a multi-platform source-code editor developed by Microsoft. It can be used with a variety of programming languages and can have its base functionality extended through extensions available via its [https://marketplace.visualstudio.com/vscode marketplace]. The base editor itself is free, but some extensions may require paid subscriptions.&lt;br /&gt;
&lt;br /&gt;
==Cluster Usage==&lt;br /&gt;
It can be convenient when using our [[SLURM]] computing clusters to open a connection to a [https://code.visualstudio.com/docs/remote/vscode-server VS Code Server] session on the submission node(s) that you have access to via VS Code&#039;s [https://code.visualstudio.com/docs/remote/ssh Remote - SSH extension]. Steps to set this up can be found [https://code.visualstudio.com/docs/remote/ssh#_installation here]. Use your UMIACS username and the [https://en.wikipedia.org/wiki/Fully_qualified_domain_name fully qualified domain name (FQDN)] of the submission node you want to connect to. Password authentication does not provide an option to save your password, so for convenience, you may want to set up an [[SSH/Keys | SSH key]].&lt;br /&gt;
&lt;br /&gt;
For a list of active issues with the Remote - SSH extension, please see Microsoft&#039;s GitHub tracker [https://github.com/Microsoft/vscode-remote-release/labels/ssh here].&lt;br /&gt;
&lt;br /&gt;
===Best Practices===&lt;br /&gt;
Because of the multi-tenant nature of our submission nodes, using the Remote - SSH extension to connect to a VS Code Server running on a submission node can have adverse affects on other users simultaneously using the submission nodes if not properly managed. The following is a list of &amp;quot;best practices&amp;quot; that we ask you please follow to minimize the chance of impacting others on submission nodes. We have compiled the list through observation as well as through discussion with users.&lt;br /&gt;
&lt;br /&gt;
====Use only as a code editor====&lt;br /&gt;
VS Code can perform many common file management operations, such as moving, copying, or deleting files or directories. However, the overhead of providing progress updates / status messages through VS Code&#039;s UI can cause load spikes that result in other processes on the submission node (both system-level and other users&#039;) slowing down. This is especially the case if operating on thousands to millions of small image or video files. In extreme cases, it can seem as though the submission node is wholly unresponsive.&lt;br /&gt;
&lt;br /&gt;
The best way to combat this is to use VS Code as just a code editor as strictly as you can (meaning creating new and/or editing existing source code files only). Use standard command-line programs such as &amp;lt;code&amp;gt;mv&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;cp&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;rm&amp;lt;/code&amp;gt; in VS Code&#039;s terminal window or a separate application&#039;s terminal window for local file management instead, or use the techniques advertised [[Data_Transfer | here]] for larger data transfers between nodes.&lt;br /&gt;
&lt;br /&gt;
====Do not open large files====&lt;br /&gt;
Files that you open in VS Code&#039;s text editor on a remote machine through the Remote - SSH extension are loaded entirely into RAM on the remote machine. Because of the persistence of VS Code Server processes, opening several unique files may result in them all remaining in RAM for extended periods of time even if you no longer have tabs open for them in the Tab Bar.&lt;br /&gt;
&lt;br /&gt;
As such, please refrain from opening large files (more than a few MB) in VS Code itself on submission nodes. Either use a lighter-weight command-line based text editor such as [https://www.vim.org/ vim] or otherwise on the submission node itself, or first [[Data_Transfer | transfer]] the files that you would like to open to either a less-used remote machine or your local machine before opening them.&lt;br /&gt;
&lt;br /&gt;
If you absolutely need to open one or more large files for a very brief period of time on a submission node, please clean up your server session on that node (see below section) as soon as possible when done.&lt;br /&gt;
&lt;br /&gt;
====Clean up when done====&lt;br /&gt;
If you are done using VS Code for an extended period of time (several hours / overnight), consider manually killing your server session on the submission node when exiting. By default, VS Code Server will keep the processes used by your session active for a few hours after you disconnect, keeping the VS Code Server processes on the submission node you were using alive, despite no longer actively being used.&lt;br /&gt;
&lt;br /&gt;
This can be done by opening the [https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette Command Palette] (Ctrl+Shift+P) and searching &amp;quot;Kill VS Code Server on Host...&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
: [[File:VSCode-killremote1.png]]&lt;br /&gt;
&lt;br /&gt;
Select the submission node you were using and click on it.&lt;br /&gt;
&lt;br /&gt;
: [[File:VSCode-killremote2.png]]&lt;br /&gt;
&lt;br /&gt;
Wait a few seconds and you should get a message confirming the command went through.&lt;br /&gt;
&lt;br /&gt;
: [[File:VSCode-killremote3.png]]&lt;br /&gt;
&lt;br /&gt;
The next time you connect to the same submission node, you will have a fresh VS Code session on it.&lt;br /&gt;
&lt;br /&gt;
==Common Issues==&lt;br /&gt;
If you are having trouble ssh&#039;ing to a submission node with VS Code, check if your home directory is full, try the following troubleshooting steps before contacting staff:&lt;br /&gt;
&lt;br /&gt;
[https://wiki.umiacs.umd.edu/umiacs/index.php/Nexus#Access Remote connect to a server]&lt;br /&gt;
&lt;br /&gt;
navigate to your home directory&lt;br /&gt;
&amp;lt;pre&amp;gt;cd ~&amp;lt;/pre&amp;gt;&lt;br /&gt;
and check if it is full&lt;br /&gt;
&amp;lt;pre&amp;gt;df ./&amp;lt;/pre&amp;gt;&lt;br /&gt;
If it is full (Available 0), you will need to delete some files to be able to ssh with VS Code&lt;/div&gt;</summary>
		<author><name>Kcanha</name></author>
	</entry>
</feed>