Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place! |
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
 |
05-13-2017, 08:46 AM
|
#1
|
Member
Registered: Aug 2012
Posts: 789
Rep: 
|
Moving, creating and deleting log files.
I have postfix on Centos 6.
I renamed /etc/log/maillog to /etc/log/maillog.bak.
I restarted postfix thinking I would have a new /etc/log/maillog file.
Nope. Tried touching one, but still didn't get updated.
Then I realized postfix was now using maillog.bak.
How did it know? If I deleted /etc/log/maillog instead of moving it, would postfix have created a new file?
|
|
|
05-13-2017, 09:04 AM
|
#2
|
LQ Newbie
Registered: May 2017
Posts: 1
Rep: 
|
Moving, creating and deleting log files.
It is using the inode not the file name. take the copy of the file and nullify it
|
|
|
05-13-2017, 09:23 AM
|
#3
|
Member
Registered: Aug 2012
Posts: 789
Original Poster
Rep: 
|
Quote:
Originally Posted by G0kulakrishnan
It is using the inode not the file name. take the copy of the file and nullify it
|
Ah, I see!
By nullify, you mean to empty the log, do > maillog or cat /dev/null > maillog?
If I did actually delete the file, I suspect a new one would have been created. Agree? Afraid to try and break things...
|
|
|
05-13-2017, 10:45 AM
|
#4
|
LQ Veteran
Registered: Jan 2011
Location: Abingdon, VA
Distribution: Catalina
Posts: 9,374
Rep: 
|
Quote:
Originally Posted by NotionCommotion
Ah, I see!
By nullify, you mean to empty the log, do > maillog or cat /dev/null > maillog?
If I did actually delete the file, I suspect a new one would have been created. Agree? Afraid to try and break things...
|
I'm fond of
personally, it leaves permissions and such alone, I believe.
logrotate should take care of those also... something to check out.
|
|
|
05-13-2017, 11:51 AM
|
#5
|
Member
Registered: Aug 2012
Posts: 789
Original Poster
Rep: 
|
Thanks Habitual,
How do you do so using sudo?
|
|
|
05-13-2017, 12:30 PM
|
#6
|
LQ Addict
Registered: Mar 2012
Location: Hungary
Distribution: debian/ubuntu/suse ...
Posts: 24,634
|
Quote:
Originally Posted by NotionCommotion
If I did actually delete the file, I suspect a new one would have been created. Agree? Afraid to try and break things...
|
Not really. Especially the log files are a bit strange from this point of view.
If a file is opened and in use you cannot delete the file, but remove only the directory entry. The processes which opened that file will still keep it and use it (usually these are the logfiles). So you need to reboot or tell the process to drop it.
|
|
|
05-13-2017, 03:56 PM
|
#7
|
Senior Member
Registered: Dec 2011
Location: Simplicity
Distribution: Mint/MATE
Posts: 3,052
|
The maillog is written by syslog; you get its PID with
Code:
fuser /var/log/maillog
After renaming it you must inform syslog. Look how it's done by logrotate
Code:
cat `grep -l /etc/logrotate.d/*`
|
|
|
05-13-2017, 04:35 PM
|
#8
|
LQ Veteran
Registered: Jan 2011
Location: Abingdon, VA
Distribution: Catalina
Posts: 9,374
Rep: 
|
Quote:
Originally Posted by NotionCommotion
Thanks Habitual,
How do you do so using sudo?
|
Yes, there are a couple of gotchas in the shell, aren't there?
! in your "password" (another gotcha)
> is potent stuff and combined with sudo privs, Well, I'd have to trash it first hand in a VM,
same as every thing else?
Code:
sudo su -
> /path/to/file && exit;
May have to be utilized, I stay root on lots of hosts daily.
Are you asking how to
Code:
sudo > /path/to/file
If so, No Go, Eskimo, I don't know!
That ">" is a meta-character and it's a monster when it fscks up.
I'd just assume not use sudo "that way".
But that's just me. and you did Ask.
Peace.
|
|
|
05-13-2017, 06:03 PM
|
#9
|
Member
Registered: Aug 2012
Posts: 789
Original Poster
Rep: 
|
Quote:
Originally Posted by Habitual
But that's just me. and you did Ask. 
|
Yes I did!
This also works. Maybe doesn't matter, but I like the idea of not permanently switching to root unless I really want to.
Code:
sudo truncate -s0 yourfile
|
|
|
All times are GMT -5. The time now is 08:22 AM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|