Du bist nicht angemeldet.

#1 20.10.2020 12:29:51

vivusorg
Mitglied

httpd bewirkt, dass HDD andreht, soll es aber nicht

Hallo,

unter Arch läuft bei mir ein Apache httpd. Das System ist auf /dev/sdb (SSD) installiert.
Es gibt eine interne HDD /dev/sda

Mit hdparm stelle ich die HDD nach einer gewissen Inaktivität aus. Das hat auch mal wunderbar funktioniert. Nun ist mir aber aufgefallen, dass es nicht mehr der Fall ist. Ich habe dann versucht herauszufinden, wer der Übeltäter ist. Es hat sich herausgestellt, dass wenn ich httpd stop, die HDD wieder nach einer gewissen Inaktivität aufhört zu drehen (wie gewollt).

httpd hat im Grunde nur eine Möglichkeit auf die hdd zuzugreifen und zwar über nextcloud. Sprich es läuft ein nextcloud server auf /dev/sdb und die daten liegen auf /dev/sda (Nur Daten, sonst nichts)

Kann mir jemand erklären, wie ich herausfinde, was httpd genau macht und ob es an nextcloud oder an etwas anderem liegt?
Ich habe es mit strace versucht
sudo strace -o /dev/stdout httpd | grep string

und mit mit cat /dev/stout angesehen, was kommt. Es kommt aber leider garnichts.

Freue mich über jegliche Tipps.

Offline

#2 20.10.2020 19:36:13

schard
Moderator

Re: httpd bewirkt, dass HDD andreht, soll es aber nicht

Weder httpd nocht Nextcloud arbeiten in der Regel mit Block Devices.
Daher ist es erst ein Mal wichtig zu wissen, welche Partitionen und Dateisysteme /dev/sda hat und wo diese eingehängt sind.
Dazu wären die Ausgaben von

$ lsblk
$ mount
$ cat /etc/fstab

interessant.
Hinzu kommt, dass Nextcloud nur eine Webanwendung ist, welche von einem Webserver geserved werden muss. Wenn das nicht httpd ist, wer dann?
Wenn es dann etwaige Anfragen an deine Nextcloud gibt, welche einen Dateizugriff erfordern, muss natürlich der zugrunde liegende Datenträger laufen.
In jedem Fall kannst du Dateizugriffe mittels lsof herausfinden und nach deinem Bedarf filtern.
Wenn dein primäres Ziel es ist, die Festplatte auszuschalten, solltest du damit natürlich auch solche Programme stoppen, welche ggf. auf die Festplatte zugreifen. Also in deinem Fall z.B. Nextcloud.
Wenn Nextcloud erreichbar sein soll und es auf eine Partition von /dev/sda zugreifen muss, dann darfst du halt nicht erwarten, dass in einem solchen Fall die Festplatte nicht anläuft.

Deine Frage liest sich ein bisschen so wie

Ich fahre viel Fahrrad um Sprit zu sparen.
Mit dem Auto fahre ich nur zur Arbeit.
Trotzdem muss ich hin und wieder tanken.
Wie finde ich heraus, welches Steuergerät für die Einspritzanlage verantwortlich ist?

Offline

#3 20.10.2020 22:04:25

frostschutz
Mitglied

Re: httpd bewirkt, dass HDD andreht, soll es aber nicht

stdout ist ein wenig speziell, lass strace doch in eine Datei z.B. unter /tmp oder /dev/shm schreiben, und nimm -t (timestamp) und -f (follow forks) mit dazu. Wenn du dann die genaue Zeit weißt wo die Platten aufdrehen, kannst du im strace schauen was zu dieser Zeit (unmittelbar davor) so in dem Programm (und seinen Unterprozessen) abgelaufen ist.

Alternativ gibts auch noch das gute alte /proc/sys/vm/block_dump, aber das produziert ewig viel Output, da laufen dir die Logs voll und jeder Zugriff aufs Log macht einen neuen block_dump event. ;-) Da muss man ein wenig Zerkonfigurieren um das sinnvoll über längere Zeit nutzen zu können.

Wenn es einen direkteren/komfortableren Weg gibt, den Wakeup-Event nachzuverfolgen, dann hab ich ihn noch nicht gefunden.

Bei mir ist es SMART, das die Platten aufweckt. Sehr ärgerlich. Braucht -n standby,q in der smartd.conf...

Offline

#4 21.10.2020 09:24:42

vivusorg
Mitglied

Re: httpd bewirkt, dass HDD andreht, soll es aber nicht

Nextcloud nutze ich nur intern, hier steht auch der Rechner dh. ich kann alle Rechner die auf nextcloud zugreifen wollen regulieren.
Die Festplatten will ich gerne ausschalten lassen, wenn niemand den Rechner an hat was zu mehr als 50% der Fall ist. Mir geht es auch nicht um die Energieeinsparung, sondern um die Lautstärke der HDD.

Den Output auf /tmp zu legen war eine gute Idee, da kommt was.. mal schaun ob was bei rum kommt... ich melde mich.

Beitrag geändert von vivusorg (23.10.2020 08:24:06)

Offline

#5 21.10.2020 09:52:19

schard
Moderator

Re: httpd bewirkt, dass HDD andreht, soll es aber nicht

Wenn die Lautstärke dein Problem ist, dann ist es vielleicht sinnvoller, die HDD gegen eine SSD zu tauschen. Wenn du mehrere PCs besitzt und einen Server 24/7 betreibst, sollte Geld für eine SSD ja nicht das Problem sein. Und ein Massenspeicher ist schneller getauscht, als ein Programm reverse-engineered.
Wenn trotz mangelnder Zugriffe auf die Webanwendung Nextcloud durch Clients, und das kannst du ja in dem Log des Webservers nachvollziehen, durch diese bedingt die Festplatten anlaufen, gibt es möglicherweise irgendwelche Cron Jobs, welche z.B. regelmäßig den Nextcloud Cache o.ä. aktualisieren.

Und du solltest dir nach obigen Angaben mal mit lsof /media angucken.

Offline

#6 21.10.2020 10:30:57

vivusorg
Mitglied

Re: httpd bewirkt, dass HDD andreht, soll es aber nicht

SSD ist dann schon etwas teuer.

sudo lsof /media
COMMAND PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
smbd    816 root  cwd    DIR    8,1     4096    2 /media

nextcloud habe ich in Maintenance true gesetzt, ändert nichts.
Stop'e ich httpd, fährt die HDD nach einer weile runter.

Crone Jobs habe ich selber kein aktiv eingerichtet.

Beitrag geändert von vivusorg (21.10.2020 17:01:09)

Offline

#7 21.10.2020 10:54:21

Dirk
Moderator

Re: httpd bewirkt, dass HDD andreht, soll es aber nicht

vivusorg schrieb:

Stop'e ich httpd, fährt die HDD nach einer weile runter.

httpd greift auf die Platte zu. Du wirst dich wohl damit abfinden müssen, oder halt eine SSD verbauen, da gibt es auch schon günstige Modelle.

Offline

#8 21.10.2020 11:04:26

vivusorg
Mitglied

Re: httpd bewirkt, dass HDD andreht, soll es aber nicht

Es war aber doch bis vor ein paar Wochen nicht der Fall. Ich weiß allerdings nicht genau seit wann - leider.

Mit
sudo strace -t -f -o /tmp/httpd.log httpd | grep string

Zum start von httpd wird mehrfach auf /media zugegriffen, anschliessend aber nicht mehr.

Ist es möglich, dass man sich von den Zugriffen auf eine HDD einen log schreiben lässt?

Beitrag geändert von vivusorg (21.10.2020 11:08:20)

Offline

#9 21.10.2020 18:06:38

Dirk
Moderator

Re: httpd bewirkt, dass HDD andreht, soll es aber nicht

vivusorg schrieb:

Es war aber doch bis vor ein paar Wochen nicht der Fall.

Der Reifen an meinem Auto war letzte Woche auch noch nicht platt.

vivusorg schrieb:

Ist es möglich, dass man sich von den Zugriffen auf eine HDD einen log schreiben lässt?

So was hier?

https://wiki.archlinux.org/index.php/Audit_framework

Vermutlich irgendwas sinngemäß wie auditctl -w /media – Aber mangels Notwendigkeit nie mit auseinandergesetzt.

Offline

Schnellantwort auf dieses Thema

Schreibe deinen Beitrag und versende ihn
Deine Antwort

Fußzeile des Forums