dell v4

Kolejna część walki. Poprzednio stanęło na wielu pytaniach na które do tej pory nikt mi nie odpowiedział, mimo iż próbowałem pytać na wielu forach…
Postanowiłem więc zebrać do kupy to co samemu udało mi się zrobić i powstało coś takiego:

#!/bin/bash
#
# Bash script for Dell XPS 1330
# Saves power by disconnecting some hardware
echo -e "Bash script for Dell XPS 1330nSaves power by disconnecting some hardwaren";
echo -e "Choose option:n1. Deactivate all.n2. Activate all.n";
read odp;
if [ $odp = 1 ]; then
echo "Deactivating all."
rmmod uvcvideo hci_usb rfcomm l2cap bluetooth usbhid uhci_hcd ehci_hcd sdhci mmc_core sr_mod cdrom 2> /dev/null
hal-disable-polling --device /dev/cdrom 1> /dev/null
echo 1500 > /proc/sys/vm/dirty_writeback_centisecs
echo min_power > /sys/class/scsi_host/host0/link_power_management_policy
echo min_power > /sys/class/scsi_host/host1/link_power_management_policy
echo min_power > /sys/class/scsi_host/host2/link_power_management_policy
elif [ $odp = 2 ]; then
echo "Activating all."
for MOD in uvcvideo hci_usb rfcomm l2cap bluetooth usbhid uhci_hcd ehci_hcd sdhci mmc_core sr_mod cdrom
do
modprobe $MOD 2> /dev/null
done
hal-disable-polling --enable-polling --device /dev/cdrom 1> /dev/null
echo 30 > /proc/sys/vm/dirty_writeback_centisecs
echo max_performance > /sys/class/scsi_host/host0/link_power_management_policy
echo max_performance > /sys/class/scsi_host/host1/link_power_management_policy
echo max_performance > /sys/class/scsi_host/host2/link_power_management_policy
else
echo "Something is wrong :)"
fi
exit 0

Czy to działa? Dowiem się pewnie dzisiaj. Gdy tylko naładuję baterie odłączę kabel i pójdę na film 😉

Ps. Zapewne jakieś wprawne oko zacznie płakać nad tym kodem ale to tak naprawdę mój pierwszy raz z czymś tak długim w bashu. Więc nie bijcie a powiedzcie gdy coś jest źle/brzydko napisane 😉

  • Blah, gdzieś w /proc albo /sys masz info nt. podłączenia do sieci czy działania na baterii. Dajesz sprawdzanie w pętlę co 5 minut, do tego warunki i masz automat :>

  • Poszukam, a póki co wprowadziłem kilka zmian za namową Piotra 😉