Prevent a directory in /tmp from being deleted The 2019 Stack Overflow Developer Survey Results Are InParitioning Scheme: Arch Linux server & laptopWhat are correct permissions for /tmp ? I unintentionally set it all public recursivelyWhat can go wrong if /var/tmp is on a temporary filesystem?Small RAM-based /tmpDo Links to /tmp files get deleted?Moving /tmp folder to different location. Problems with /tmp not being emptiedFolder in /tmp won't delete despite the computer being restartedis /tmp guaranteed to exist?tmp directory for development that gets cleared regularly?When are files from /tmp deleted?
Geography at the pixel level
Springs with some finite mass
What do hard-Brexiteers want with respect to the Irish border?
Is domain driven design an anti-SQL pattern?
Where does the "burst of radiance" from Holy Weapon originate?
Is it possible for the two major parties in the UK to form a coalition with each other instead of a much smaller party?
Inversion Puzzle
Should I use my personal or workplace e-mail when registering to external websites for work purpose?
In microwave frequencies, do you use a circulator when you need a (near) perfect diode?
What does "rabbited" mean/imply in this sentence?
Why is the maximum length of OpenWrt’s root password 8 characters?
What could be the right powersource for 15 seconds lifespan disposable giant chainsaw?
How come people say “Would of”?
Carnot-Caratheodory metric
Limit the amount of RAM Mathematica may access?
How to manage monthly salary
Dual Citizen. Exited the US on Italian passport recently
What is the meaning of Triage in Cybersec world?
How are circuits which use complex ICs normally simulated?
How can I create a character who can assume the widest possible range of creature sizes?
Is this food a bread or a loaf?
How long do I have to send payment?
Should I write numbers in words or as numerals when there are multiple next to each other?
How was Skylab's orbit inclination chosen?
Prevent a directory in /tmp from being deleted
The 2019 Stack Overflow Developer Survey Results Are InParitioning Scheme: Arch Linux server & laptopWhat are correct permissions for /tmp ? I unintentionally set it all public recursivelyWhat can go wrong if /var/tmp is on a temporary filesystem?Small RAM-based /tmpDo Links to /tmp files get deleted?Moving /tmp folder to different location. Problems with /tmp not being emptiedFolder in /tmp won't delete despite the computer being restartedis /tmp guaranteed to exist?tmp directory for development that gets cleared regularly?When are files from /tmp deleted?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
I often use the /tmp
directory on my Linux machine for storing temporary files (e.g. PDFs from a site that wants me to download it first etc.) and I often create a directory with my username. But at every startup it (including all files) gets deleted. Now I know I can put it in /var/tmp
, but I want all its contents to be deleted, but for the directory itself to be kept.
So:
tmp
|- me # this should stay
| |- foo1 # this should be deleted...
| |- bar1 # ...and this as well
|- other stuff...
Is there any way to do this? Maybe with permissions or with a special configuration?
tmp
New contributor
add a comment |
I often use the /tmp
directory on my Linux machine for storing temporary files (e.g. PDFs from a site that wants me to download it first etc.) and I often create a directory with my username. But at every startup it (including all files) gets deleted. Now I know I can put it in /var/tmp
, but I want all its contents to be deleted, but for the directory itself to be kept.
So:
tmp
|- me # this should stay
| |- foo1 # this should be deleted...
| |- bar1 # ...and this as well
|- other stuff...
Is there any way to do this? Maybe with permissions or with a special configuration?
tmp
New contributor
1
As a workaround, you might put some code into your shell's login files to "test & mkdir" as needed.
– Jeff Schaller♦
2 days ago
2
/tmp
is likely atmpfs
filesystem. Those files aren't really deleted; they're simply stored in RAM and lost on a reboot. That's why you get answers that boil down to "re-create it on boot or login"
– MSalters
yesterday
add a comment |
I often use the /tmp
directory on my Linux machine for storing temporary files (e.g. PDFs from a site that wants me to download it first etc.) and I often create a directory with my username. But at every startup it (including all files) gets deleted. Now I know I can put it in /var/tmp
, but I want all its contents to be deleted, but for the directory itself to be kept.
So:
tmp
|- me # this should stay
| |- foo1 # this should be deleted...
| |- bar1 # ...and this as well
|- other stuff...
Is there any way to do this? Maybe with permissions or with a special configuration?
tmp
New contributor
I often use the /tmp
directory on my Linux machine for storing temporary files (e.g. PDFs from a site that wants me to download it first etc.) and I often create a directory with my username. But at every startup it (including all files) gets deleted. Now I know I can put it in /var/tmp
, but I want all its contents to be deleted, but for the directory itself to be kept.
So:
tmp
|- me # this should stay
| |- foo1 # this should be deleted...
| |- bar1 # ...and this as well
|- other stuff...
Is there any way to do this? Maybe with permissions or with a special configuration?
tmp
tmp
New contributor
New contributor
edited 2 days ago
ctrl-alt-delor
12.4k52662
12.4k52662
New contributor
asked 2 days ago
Linux4winLinux4win
513
513
New contributor
New contributor
1
As a workaround, you might put some code into your shell's login files to "test & mkdir" as needed.
– Jeff Schaller♦
2 days ago
2
/tmp
is likely atmpfs
filesystem. Those files aren't really deleted; they're simply stored in RAM and lost on a reboot. That's why you get answers that boil down to "re-create it on boot or login"
– MSalters
yesterday
add a comment |
1
As a workaround, you might put some code into your shell's login files to "test & mkdir" as needed.
– Jeff Schaller♦
2 days ago
2
/tmp
is likely atmpfs
filesystem. Those files aren't really deleted; they're simply stored in RAM and lost on a reboot. That's why you get answers that boil down to "re-create it on boot or login"
– MSalters
yesterday
1
1
As a workaround, you might put some code into your shell's login files to "test & mkdir" as needed.
– Jeff Schaller♦
2 days ago
As a workaround, you might put some code into your shell's login files to "test & mkdir" as needed.
– Jeff Schaller♦
2 days ago
2
2
/tmp
is likely a tmpfs
filesystem. Those files aren't really deleted; they're simply stored in RAM and lost on a reboot. That's why you get answers that boil down to "re-create it on boot or login"– MSalters
yesterday
/tmp
is likely a tmpfs
filesystem. Those files aren't really deleted; they're simply stored in RAM and lost on a reboot. That's why you get answers that boil down to "re-create it on boot or login"– MSalters
yesterday
add a comment |
4 Answers
4
active
oldest
votes
I use pam-tmpdir
for this: it creates a user-private temporary directory at login. To set it up, add
session optional pam_tmpdir.so
to the appropriate PAM services; on a Debian-based system, installing the libpam-tmpdir
package will offer to do this for you, or you can add the line to /etc/pam.d/common-session
. The next time you log in, you’ll find a directory under /tmp/user
with your user id, and TMP
and TMPDIR
set appropriately.
6
Could you explain what the appropriate PAM services are and how the line can be added to them? What files should be edited?
– terdon♦
2 days ago
add a comment |
One solution would be to use a @reboot
cron job:
@reboot mkdir -p "/tmp/$USER"
Adding this to your crontab with crontab -e
would make it execute whenever the machine boots up.
Or, use
mkdir -p "/tmp/$USER"
in your shell's startup file.
In either case, you may also want to use
TMPDIR=/tmp/$USER
export TMPDIR
in your shell's startup file if you want to use that directory as the default temporary directory.
add a comment |
As pointed out in the comments, /tmp
is for files that are transient and won't be missed if they're deleted. If you're in the middle of something and the machine reboots, anything you've written there will disappear and you'll have to start over, which means those files might not have been so temporary after all.
I maintained a temporary directory in my home directory for many years starting when a gigabyte was a lot of space and found that it required periodic grooming to get rid of files that had become old and crufty. Most of the time what I had left after that process was less than a couple of weeks old, so I now clean it up with a cron job that runs once daily:
find $HOME/tmp -depth -mtime +30 -print0 | xargs -0 -r rm -rf
Anything I download or create as semi-temporary goes there and the system cleans up anything I leave behind. Anything that needs a permanent home gets one long before the cron job gets rid of it.
mkdir a a/b; touch a/b/c
. Now wait until your 30 days has expired. As you deletec
it'll updateb
, which will mean it has to wait for a further 30 days. Likewise witha
when you deleteb
. Secondly, if you create files inb
but don't toucha
for 30 days, thea
directory will get hit withrm -rf
and wipe out your recent files underb
.
– roaima
2 days ago
find "$HOME"/tmp -mtime +30 -type f -delete; find "$HOME/tmp" -depth -mmin +60 -type d -exec rmdir + 2>/dev/null
works for me
– roaima
2 days ago
add a comment |
If you're running no a system with systemd and it uses systemd-tmpfiles to manage the cleanup, then you should configure the directory using that system.
Here's a full documentation. You can likely achieve what you want by creating /etc/tmpfiles.d/something.conf
with contents like:
d /tmp/your_username 0750 your_user your_group - -
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "106"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Linux4win is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f511029%2fprevent-a-directory-in-tmp-from-being-deleted%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
4 Answers
4
active
oldest
votes
4 Answers
4
active
oldest
votes
active
oldest
votes
active
oldest
votes
I use pam-tmpdir
for this: it creates a user-private temporary directory at login. To set it up, add
session optional pam_tmpdir.so
to the appropriate PAM services; on a Debian-based system, installing the libpam-tmpdir
package will offer to do this for you, or you can add the line to /etc/pam.d/common-session
. The next time you log in, you’ll find a directory under /tmp/user
with your user id, and TMP
and TMPDIR
set appropriately.
6
Could you explain what the appropriate PAM services are and how the line can be added to them? What files should be edited?
– terdon♦
2 days ago
add a comment |
I use pam-tmpdir
for this: it creates a user-private temporary directory at login. To set it up, add
session optional pam_tmpdir.so
to the appropriate PAM services; on a Debian-based system, installing the libpam-tmpdir
package will offer to do this for you, or you can add the line to /etc/pam.d/common-session
. The next time you log in, you’ll find a directory under /tmp/user
with your user id, and TMP
and TMPDIR
set appropriately.
6
Could you explain what the appropriate PAM services are and how the line can be added to them? What files should be edited?
– terdon♦
2 days ago
add a comment |
I use pam-tmpdir
for this: it creates a user-private temporary directory at login. To set it up, add
session optional pam_tmpdir.so
to the appropriate PAM services; on a Debian-based system, installing the libpam-tmpdir
package will offer to do this for you, or you can add the line to /etc/pam.d/common-session
. The next time you log in, you’ll find a directory under /tmp/user
with your user id, and TMP
and TMPDIR
set appropriately.
I use pam-tmpdir
for this: it creates a user-private temporary directory at login. To set it up, add
session optional pam_tmpdir.so
to the appropriate PAM services; on a Debian-based system, installing the libpam-tmpdir
package will offer to do this for you, or you can add the line to /etc/pam.d/common-session
. The next time you log in, you’ll find a directory under /tmp/user
with your user id, and TMP
and TMPDIR
set appropriately.
edited 2 days ago
answered 2 days ago
Stephen KittStephen Kitt
181k25413492
181k25413492
6
Could you explain what the appropriate PAM services are and how the line can be added to them? What files should be edited?
– terdon♦
2 days ago
add a comment |
6
Could you explain what the appropriate PAM services are and how the line can be added to them? What files should be edited?
– terdon♦
2 days ago
6
6
Could you explain what the appropriate PAM services are and how the line can be added to them? What files should be edited?
– terdon♦
2 days ago
Could you explain what the appropriate PAM services are and how the line can be added to them? What files should be edited?
– terdon♦
2 days ago
add a comment |
One solution would be to use a @reboot
cron job:
@reboot mkdir -p "/tmp/$USER"
Adding this to your crontab with crontab -e
would make it execute whenever the machine boots up.
Or, use
mkdir -p "/tmp/$USER"
in your shell's startup file.
In either case, you may also want to use
TMPDIR=/tmp/$USER
export TMPDIR
in your shell's startup file if you want to use that directory as the default temporary directory.
add a comment |
One solution would be to use a @reboot
cron job:
@reboot mkdir -p "/tmp/$USER"
Adding this to your crontab with crontab -e
would make it execute whenever the machine boots up.
Or, use
mkdir -p "/tmp/$USER"
in your shell's startup file.
In either case, you may also want to use
TMPDIR=/tmp/$USER
export TMPDIR
in your shell's startup file if you want to use that directory as the default temporary directory.
add a comment |
One solution would be to use a @reboot
cron job:
@reboot mkdir -p "/tmp/$USER"
Adding this to your crontab with crontab -e
would make it execute whenever the machine boots up.
Or, use
mkdir -p "/tmp/$USER"
in your shell's startup file.
In either case, you may also want to use
TMPDIR=/tmp/$USER
export TMPDIR
in your shell's startup file if you want to use that directory as the default temporary directory.
One solution would be to use a @reboot
cron job:
@reboot mkdir -p "/tmp/$USER"
Adding this to your crontab with crontab -e
would make it execute whenever the machine boots up.
Or, use
mkdir -p "/tmp/$USER"
in your shell's startup file.
In either case, you may also want to use
TMPDIR=/tmp/$USER
export TMPDIR
in your shell's startup file if you want to use that directory as the default temporary directory.
answered 2 days ago
Kusalananda♦Kusalananda
140k17261436
140k17261436
add a comment |
add a comment |
As pointed out in the comments, /tmp
is for files that are transient and won't be missed if they're deleted. If you're in the middle of something and the machine reboots, anything you've written there will disappear and you'll have to start over, which means those files might not have been so temporary after all.
I maintained a temporary directory in my home directory for many years starting when a gigabyte was a lot of space and found that it required periodic grooming to get rid of files that had become old and crufty. Most of the time what I had left after that process was less than a couple of weeks old, so I now clean it up with a cron job that runs once daily:
find $HOME/tmp -depth -mtime +30 -print0 | xargs -0 -r rm -rf
Anything I download or create as semi-temporary goes there and the system cleans up anything I leave behind. Anything that needs a permanent home gets one long before the cron job gets rid of it.
mkdir a a/b; touch a/b/c
. Now wait until your 30 days has expired. As you deletec
it'll updateb
, which will mean it has to wait for a further 30 days. Likewise witha
when you deleteb
. Secondly, if you create files inb
but don't toucha
for 30 days, thea
directory will get hit withrm -rf
and wipe out your recent files underb
.
– roaima
2 days ago
find "$HOME"/tmp -mtime +30 -type f -delete; find "$HOME/tmp" -depth -mmin +60 -type d -exec rmdir + 2>/dev/null
works for me
– roaima
2 days ago
add a comment |
As pointed out in the comments, /tmp
is for files that are transient and won't be missed if they're deleted. If you're in the middle of something and the machine reboots, anything you've written there will disappear and you'll have to start over, which means those files might not have been so temporary after all.
I maintained a temporary directory in my home directory for many years starting when a gigabyte was a lot of space and found that it required periodic grooming to get rid of files that had become old and crufty. Most of the time what I had left after that process was less than a couple of weeks old, so I now clean it up with a cron job that runs once daily:
find $HOME/tmp -depth -mtime +30 -print0 | xargs -0 -r rm -rf
Anything I download or create as semi-temporary goes there and the system cleans up anything I leave behind. Anything that needs a permanent home gets one long before the cron job gets rid of it.
mkdir a a/b; touch a/b/c
. Now wait until your 30 days has expired. As you deletec
it'll updateb
, which will mean it has to wait for a further 30 days. Likewise witha
when you deleteb
. Secondly, if you create files inb
but don't toucha
for 30 days, thea
directory will get hit withrm -rf
and wipe out your recent files underb
.
– roaima
2 days ago
find "$HOME"/tmp -mtime +30 -type f -delete; find "$HOME/tmp" -depth -mmin +60 -type d -exec rmdir + 2>/dev/null
works for me
– roaima
2 days ago
add a comment |
As pointed out in the comments, /tmp
is for files that are transient and won't be missed if they're deleted. If you're in the middle of something and the machine reboots, anything you've written there will disappear and you'll have to start over, which means those files might not have been so temporary after all.
I maintained a temporary directory in my home directory for many years starting when a gigabyte was a lot of space and found that it required periodic grooming to get rid of files that had become old and crufty. Most of the time what I had left after that process was less than a couple of weeks old, so I now clean it up with a cron job that runs once daily:
find $HOME/tmp -depth -mtime +30 -print0 | xargs -0 -r rm -rf
Anything I download or create as semi-temporary goes there and the system cleans up anything I leave behind. Anything that needs a permanent home gets one long before the cron job gets rid of it.
As pointed out in the comments, /tmp
is for files that are transient and won't be missed if they're deleted. If you're in the middle of something and the machine reboots, anything you've written there will disappear and you'll have to start over, which means those files might not have been so temporary after all.
I maintained a temporary directory in my home directory for many years starting when a gigabyte was a lot of space and found that it required periodic grooming to get rid of files that had become old and crufty. Most of the time what I had left after that process was less than a couple of weeks old, so I now clean it up with a cron job that runs once daily:
find $HOME/tmp -depth -mtime +30 -print0 | xargs -0 -r rm -rf
Anything I download or create as semi-temporary goes there and the system cleans up anything I leave behind. Anything that needs a permanent home gets one long before the cron job gets rid of it.
answered 2 days ago
BlrflBlrfl
32414
32414
mkdir a a/b; touch a/b/c
. Now wait until your 30 days has expired. As you deletec
it'll updateb
, which will mean it has to wait for a further 30 days. Likewise witha
when you deleteb
. Secondly, if you create files inb
but don't toucha
for 30 days, thea
directory will get hit withrm -rf
and wipe out your recent files underb
.
– roaima
2 days ago
find "$HOME"/tmp -mtime +30 -type f -delete; find "$HOME/tmp" -depth -mmin +60 -type d -exec rmdir + 2>/dev/null
works for me
– roaima
2 days ago
add a comment |
mkdir a a/b; touch a/b/c
. Now wait until your 30 days has expired. As you deletec
it'll updateb
, which will mean it has to wait for a further 30 days. Likewise witha
when you deleteb
. Secondly, if you create files inb
but don't toucha
for 30 days, thea
directory will get hit withrm -rf
and wipe out your recent files underb
.
– roaima
2 days ago
find "$HOME"/tmp -mtime +30 -type f -delete; find "$HOME/tmp" -depth -mmin +60 -type d -exec rmdir + 2>/dev/null
works for me
– roaima
2 days ago
mkdir a a/b; touch a/b/c
. Now wait until your 30 days has expired. As you delete c
it'll update b
, which will mean it has to wait for a further 30 days. Likewise with a
when you delete b
. Secondly, if you create files in b
but don't touch a
for 30 days, the a
directory will get hit with rm -rf
and wipe out your recent files under b
.– roaima
2 days ago
mkdir a a/b; touch a/b/c
. Now wait until your 30 days has expired. As you delete c
it'll update b
, which will mean it has to wait for a further 30 days. Likewise with a
when you delete b
. Secondly, if you create files in b
but don't touch a
for 30 days, the a
directory will get hit with rm -rf
and wipe out your recent files under b
.– roaima
2 days ago
find "$HOME"/tmp -mtime +30 -type f -delete; find "$HOME/tmp" -depth -mmin +60 -type d -exec rmdir + 2>/dev/null
works for me– roaima
2 days ago
find "$HOME"/tmp -mtime +30 -type f -delete; find "$HOME/tmp" -depth -mmin +60 -type d -exec rmdir + 2>/dev/null
works for me– roaima
2 days ago
add a comment |
If you're running no a system with systemd and it uses systemd-tmpfiles to manage the cleanup, then you should configure the directory using that system.
Here's a full documentation. You can likely achieve what you want by creating /etc/tmpfiles.d/something.conf
with contents like:
d /tmp/your_username 0750 your_user your_group - -
add a comment |
If you're running no a system with systemd and it uses systemd-tmpfiles to manage the cleanup, then you should configure the directory using that system.
Here's a full documentation. You can likely achieve what you want by creating /etc/tmpfiles.d/something.conf
with contents like:
d /tmp/your_username 0750 your_user your_group - -
add a comment |
If you're running no a system with systemd and it uses systemd-tmpfiles to manage the cleanup, then you should configure the directory using that system.
Here's a full documentation. You can likely achieve what you want by creating /etc/tmpfiles.d/something.conf
with contents like:
d /tmp/your_username 0750 your_user your_group - -
If you're running no a system with systemd and it uses systemd-tmpfiles to manage the cleanup, then you should configure the directory using that system.
Here's a full documentation. You can likely achieve what you want by creating /etc/tmpfiles.d/something.conf
with contents like:
d /tmp/your_username 0750 your_user your_group - -
answered 2 days ago
viraptorviraptor
20217
20217
add a comment |
add a comment |
Linux4win is a new contributor. Be nice, and check out our Code of Conduct.
Linux4win is a new contributor. Be nice, and check out our Code of Conduct.
Linux4win is a new contributor. Be nice, and check out our Code of Conduct.
Linux4win is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f511029%2fprevent-a-directory-in-tmp-from-being-deleted%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
-tmp
1
As a workaround, you might put some code into your shell's login files to "test & mkdir" as needed.
– Jeff Schaller♦
2 days ago
2
/tmp
is likely atmpfs
filesystem. Those files aren't really deleted; they're simply stored in RAM and lost on a reboot. That's why you get answers that boil down to "re-create it on boot or login"– MSalters
yesterday