What is data rotation in the context of Raspberry Pi?
Data rotation means regularly moving or renaming old data files so new data can be saved without using too much space. It helps keep storage clean and organized.
Click to reveal answer
beginner
Why is cleanup important after data rotation?
Cleanup removes old or unnecessary files after rotation to free up storage space and keep the system running smoothly.
Click to reveal answer
beginner
Which Linux command is commonly used to delete old files during cleanup?
The rm command is used to delete files in Linux, including on Raspberry Pi.
Click to reveal answer
intermediate
How can you automate data rotation and cleanup on Raspberry Pi?
You can write a script (like a Bash script) that renames or moves old files and deletes very old ones, then schedule it to run regularly using cron.
Click to reveal answer
intermediate
What is a simple example of a data rotation script on Raspberry Pi?
A script that renames a log file to include the date, then creates a new empty log file for fresh data, and deletes logs older than a certain number of days.
Click to reveal answer
What does data rotation help prevent on a Raspberry Pi?
AHardware overheating
BSlower internet speed
CRunning out of storage space
DScreen flickering
✗ Incorrect
Data rotation helps prevent running out of storage space by managing old files.
Which tool schedules scripts to run automatically on Raspberry Pi?
Acron
Bnano
Cssh
Dping
✗ Incorrect
cron is used to schedule tasks automatically on Linux systems like Raspberry Pi.
What command deletes files in Linux?
Arm
Bmv
Ccp
Dls
✗ Incorrect
rm deletes files, mv moves or renames, cp copies, and ls lists files.
What is a common file renamed during data rotation?
ASystem files
BLog files
CExecutable programs
DConfiguration files
✗ Incorrect
Log files are often rotated by renaming to keep recent logs separate from old ones.
Why delete old files after rotation?
ATo change file permissions
BTo slow down the system
CTo increase file size
DTo free up disk space
✗ Incorrect
Deleting old files frees up disk space and keeps the system efficient.
Explain how you would set up a data rotation and cleanup process on a Raspberry Pi.
Think about how logs are handled and how to automate tasks on Linux.
You got /5 concepts.
Describe why data rotation and cleanup are important for Raspberry Pi projects.
Consider what happens if storage is full or cluttered.
You got /5 concepts.
Practice
(1/5)
1. What is the main purpose of data rotation and cleanup on a Raspberry Pi?
easy
A. To keep storage organized and remove old files
B. To increase the CPU speed
C. To install new software automatically
D. To change the screen resolution
Solution
Step 1: Understand data rotation and cleanup
Data rotation and cleanup help manage files by removing old or unnecessary data.
Step 2: Identify the main goal
The goal is to keep storage organized and free space by deleting old files.
Final Answer:
To keep storage organized and remove old files -> Option A
Quick Check:
Data rotation = storage cleanup [OK]
Hint: Think about storage space and file management [OK]
Common Mistakes:
Confusing data cleanup with hardware upgrades
Thinking it changes system performance directly
Assuming it installs software automatically
2. Which of the following commands correctly deletes files older than 7 days in the /var/log directory on Raspberry Pi?
easy
A. find /var/log -type d -mtime +7 -delete
B. find /var/log -type f -mtime +7 -delete
C. rm /var/log/* -mtime +7
D. delete /var/log -older 7
Solution
Step 1: Understand the find command syntax
To delete files older than 7 days, use find with -type f (files), -mtime +7 (older than 7 days), and -delete.
Step 2: Check each option
find /var/log -type f -mtime +7 -delete uses correct syntax. find /var/log -type d -mtime +7 -delete targets directories (-type d), not files. rm /var/log/* -mtime +7 uses rm incorrectly with -mtime. delete /var/log -older 7 is not a valid command.
Final Answer:
find /var/log -type f -mtime +7 -delete -> Option B
Quick Check:
find + -mtime +7 + -delete = correct [OK]
Hint: Use find with -type f and -mtime +days to delete old files [OK]
Common Mistakes:
Using -type d instead of -type f
Trying to use rm with -mtime option
Using invalid commands like delete
3. What will be the output of this script snippet on Raspberry Pi?
logfile="/var/log/syslog"
backup="/var/log/syslog-$(date +%Y%m%d)"
mv $logfile $backup
> $logfile
ls /var/log/syslog*
medium
A. Only /var/log/syslog-YYYYMMDD file listed
B. Only /var/log/syslog file listed
C. /var/log/syslog and /var/log/syslog-YYYYMMDD files listed
D. No files listed, error occurs
Solution
Step 1: Understand the script actions
The script renames syslog to syslog-YYYYMMDD (today's date), then creates a new empty syslog file.
Step 2: Predict the ls output
After these steps, both /var/log/syslog (empty) and /var/log/syslog-YYYYMMDD exist, so ls lists both.
Final Answer:
/var/log/syslog and /var/log/syslog-YYYYMMDD files listed -> Option C
Quick Check:
mv + new empty file + ls = both files [OK]
Hint: Renaming then recreating file shows both in listing [OK]
Common Mistakes:
Thinking syslog file is deleted
Assuming mv copies instead of moves
Ignoring the empty file creation with >
4. Identify the error in this Raspberry Pi log rotation script snippet:
A. The find command should use -mtime +7 to delete files older than 7 days
B. The mv command syntax is incorrect
C. The > $logfile line should be before mv command
D. The backup filename format is invalid
Solution
Step 1: Check the find command usage
The find command uses -mtime 7 which matches files exactly 7 days old, not older than 7 days.
Step 2: Correct the find command
To delete files older than 7 days, use -mtime +7 instead of -mtime 7.
Final Answer:
The find command should use -mtime +7 to delete files older than 7 days -> Option A
Quick Check:
find -mtime +7 deletes older files [OK]
Hint: Use + before days in -mtime to delete older files [OK]
Common Mistakes:
Using -mtime 7 deletes only files exactly 7 days old
Misplacing the > $logfile line
Incorrect mv command syntax
5. You want to automate log rotation on your Raspberry Pi so that every day the current log file /var/log/myapp.log is renamed with the date, a new empty log is created, and logs older than 14 days are deleted. Which script snippet correctly performs this task?
hard
A. mv /var/log/myapp.log /var/log/myapp.log-$(date +%Y%m%d)
> /var/log/myapp.log
find /var/log -type f -name 'myapp.log-*' -mtime 14 -delete
B. mv /var/log/myapp.log /var/log/myapp.log-$(date +%Y%m%d)
rm /var/log/myapp.log
find /var/log -type f -mtime +14 -delete
C. backup="/var/log/myapp.log-$(date +%Y%m%d)"
cp /var/log/myapp.log $backup
> /var/log/myapp.log
find /var/log -type f -name 'myapp.log-*' -mtime 14 -delete
D. backup="/var/log/myapp.log-$(date +%Y%m%d)"
mv /var/log/myapp.log $backup
> /var/log/myapp.log
find /var/log -type f -name 'myapp.log-*' -mtime +14 -delete
Solution
Step 1: Rename current log and create new empty log
backup="/var/log/myapp.log-$(date +%Y%m%d)"
mv /var/log/myapp.log $backup
> /var/log/myapp.log
find /var/log -type f -name 'myapp.log-*' -mtime +14 -delete correctly moves the log file to a dated backup and creates a new empty log with >.
Step 2: Delete logs older than 14 days
backup="/var/log/myapp.log-$(date +%Y%m%d)"
mv /var/log/myapp.log $backup
> /var/log/myapp.log
find /var/log -type f -name 'myapp.log-*' -mtime +14 -delete uses find with -name 'myapp.log-*' and -mtime +14 to delete backups older than 14 days, which is correct.
Final Answer:
backup="/var/log/myapp.log-$(date +%Y%m%d)"
mv /var/log/myapp.log $backup
> /var/log/myapp.log
find /var/log -type f -name 'myapp.log-*' -mtime +14 -delete -> Option D