Zojuist heb ik een eigen script gemaakt en het lijkt erop dat het gelukt is. Ik wil de swap neiging verlagen. Elders vond ik dit stukje. Maar het gaat mis met uitvoeren. Iemand een idee?
cat << EOF
# Verminder de swapneiging
vm.swappiness=10
# Verbeter het cachebeheer
vm.vfs_cache_pressure=50
EOF | sudo tee -a /etc/sysctl.conf > /dev/null
Dit is wat eenvoudiger:
sudo /bin/sh -c 'echo "vm.swappiness=10" >> /etc/sysctl.conf'
En waar staat de -qq voor eigenlijk in het volgende?
Dit vermindert de 'ruis' bij de terugmeldingen zodat deze output beter geschikt is voor logging. Overigens kun je zelf erachter komen wat opties doen door in te tikken in de terminal: '<commando> --help' of 'man <commando>'.
Gebruiken jullie vaak een &&? Vond het met deze wijze op internet. Tot op heden bij geen enkele regel gebruikt.
Waar het handig voor is, is als je enkele commando's achter elkaar wilt uitvoeren, waarbij je dat ene (samengestelde) commando bv op een forum plaatst zodanig dat mensen in 1 keer dit kunnen copieren + plakken. Als voorbeeld om in 1 keer je systeem bij te werken::
sudo apt-get update && sudo apt-get dist-upgrade-y
In een script gebruik ik dit (&&) echter
niet, daar heb ik de voorkeur om alles op een aparte regel te vermelden, dat bevordert de leesbaarheid van de code.
Persoonlijk vind ik het prettig om bij de klok de weekdag en datum+maand te zien. Is het mogelijk om dit in een script te verwerken dat deze instelling wordt gekozen?
Ja dat kan:
# Configuring time-applet:
gsettings set com.canonical.indicator.datetime show-date true
gsettings set com.canonical.indicator.datetime show-day true
gsettings set com.canonical.indicator.datetime show-week-numbers true
P.S.
Zoals al eerder aangegeven, hanteer ik een compleet script waarin al dit soort dingen geautomatiseerd uitgevoerd wordt, veel van bovenstaande code komt rechtstreeks uit dat script. Zie
http://ubuntuone.com/4lxaSO52EZgnfwMefyO2j5 voor het script zelf. Kijk er eens naar zou ik zeggen.
#!/bin/sh
#
# Post-install script for Ubuntu
#
# Copyright (C) 2012 Mark Baaijens <mark.baaijens@gmail.com>
#
# This is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
# Remarks:
# - based on a clean installation of Ubuntu 12.04; other version may work (not tested)
# - user with 'user' must be present
# - script should be executed as root
# - script is repeatable e.g. can be executed multiple times
#
# Changelog:
# - 2013-06-18 Removed display mounted devices on desktop
#
# Check if run as root
if [ ! -n "$(whoami | grep root)" ]
then
echo "Not running as root. Exiting"
exit 1
fi
# Check if user 'user' exists
if [ ! -n "$(cat /etc/passwd | grep user:)" ]
then
echo "User 'user' does not exist. Exiting"
exit 1
fi
# Implementation of user control, to execute several commands as another (predefined) user to
# provide user context switching.
su_command="su - user -c"
# Install proxy-client
apt-get install squid-deb-proxy-client -y
# Start avahi (auto networking discovery) for proxy-client to start without a reboot
/etc/init.d/avahi-daemon restart
#
# Packages
#
# Upgrade everything
apt-get update
apt-get dist-upgrade -y
# Package ubuntu-restricted-extras
# Unfortunately, MS forces us to accept a license agreement, but this blocks
# a unattended script installation. The strategy: cut the package in different parts
# so that the offending package ttf-mscorefonts-installer can be installed
# separately with a different mechanism bypassing the license dialog.
# See
# - http://packages.ubuntu.com/precise/ubuntu-restricted-extras
# - http://askubuntu.com/questions/16225/how-can-i-accept-the-agreement-in-a-terminal-like-for-ttf-mscorefonts-installer
#
/bin/sh -c 'echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | debconf-set-selections'
apt-get install ttf-mscorefonts-installer -y
# Install rest of the ubuntu-restricted-packages
apt-get install ubuntu-restricted-addons -y
apt-get install gstreamer0.10-plugins-bad-multiverse -y
apt-get install libavcodec-extra-53 -y
apt-get install unrar -y
# Extra packages
apt-get install chromium-browser -y
apt-get install vim -y
apt-get install gnome-paint -y
apt-get install indicator-weather -y
# Provide access to the latest (stable) GIMP version (2.8); do NOT install
add-apt-repository ppa:otto-kesselgulasch/gimp -y
# Replace shotwell by gthumb
apt-get remove shotwell -y
apt-get install gthumb -y
# Provide access to the latest (stable) Openshot version; do NOT install
add-apt-repository ppa:openshot.developers/ppa -y
# Replace empathy by pidgin
apt-get remove empathy -y
apt-get install pidgin -y
# Remove non-functional lenses
# 12.10+ apt-get remove unity-lens-shopping -y
apt-get remove unity-lens-video -y
apt-get remove unity-lens-music -y
apt-get remove unity-scope-musicstores -y
# Add partner repo (skype)
add-apt-repository "deb http://archive.canonical.com/ $(lsb_release -sc) partner"
# Provide access to the latest (stable) Libreoffice version; do the actual upgrade
add-apt-repository ppa:libreoffice/ppa -y
apt-get update
apt-get dist-upgrade --force-yes # --force-yes is used because the installer asks for another confirmation
#
# System settings
#
# Play encrypted DVD's
/usr/share/doc/libdvdread4/install-css.sh
# Provide automatic updates
if ([ $(grep -c 'apt-get dist-upgrade' /etc/crontab) -eq 0 ])
then
/bin/sh -c 'echo "59 * * * * root apt-get dist-upgrade --quiet --assume-yes 1>> /var/log/cron-update.log" >> /etc/crontab'
fi
# Disable splash screen LO (due to malfunction in Unity)
#sed -i 's/Logo=1/Logo=0/g' /etc/libreoffice/sofficerc
# Disable guest account
# TODO: current implementation removes user switcher indicator
if ([ $(grep -c 'allow-guest=false' /etc/lightdm/lightdm.conf) -eq 0 ])
then
/bin/sh -c 'echo "allow-guest=false" >> /etc/lightdm/lightdm.conf'
fi
# De-activate error-system
sed -i 's/enabled=1/enabled=0/g' /etc/default/apport
# Notification for Release Upgrades: never
sed -i 's/prompt=.*/prompt=never/g' /etc/update-manager/release-upgrades
#
# Personal settings
#
#
# Chromium-browser
#
# General Settings
# Startpage: google.nl
# Personal settings
# Use Title from system
# TODO: Home-button visible
# - startpage: google.nl
# Extensions:
# AdBlock
# FVD Video downloader
#
# Settings go to: /home/user/.config/chromium
# This map is created if Chromium is started dor the first time.
#
# For setting all this settings and loading extensions, a very crude method is chosen:
# - (on a clean machine)
# - configure Chromium as wished
# - copy complete directory with settings from /home/user/.config/chromium
# - resulted file is chromium-settings.tar.gz; within there's a subdir chromium
# - (on a new machine)
# - extract tar-file into/home/user/.config (subdir chromium should appear)
#
cd ~
wget http://ubuntuone.com/4OAm5Rs3VJITjOWYnWtQut -O chromium-settings.tar.gz
cd /home/user/.config
tar -xvf /home/user/chromium-settings.tar.gz
rm /home/user/chromium-settings.tar.gz
# Set Chromium as default browser
# Not working:
# - sudo update-alternatives --config x-www-browser
# - System Settings, Default Applications, Browser -> Chromium
$su_command "gconftool-2 --type string --set /desktop/gnome/applications/browser/exec \"/usr/bin/chromium-browser\""
$su_command "gconftool-2 --type string --set /desktop/gnome/url-handlers/http/command \"/usr/bin/chromium-browser %s\""
$su_command "gconftool-2 --type string --set /desktop/gnome/url-handlers/about/command \"/usr/bin/chromium-browser %s\""
$su_command "gconftool-2 --type string --set /desktop/gnome/url-handlers/unknown/command \"/usr/bin/chromium-browser %s\""
$su_command "gconftool-2 --type string --set /desktop/gnome/url-handlers/https/command \"/usr/bin/chromium-browser %s\""
if [ ! -e "/home/user/.local/share/applications/mimeapps.list" ]
then
mkdir -p /home/user/.local/share/applications
touch "/home/user/.local/share/applications/mimeapps.list"
/bin/sh -c 'echo "[Default Applications]" >> /home/user/.local/share/applications/mimeapps.list'
/bin/sh -c 'echo "text/html=chromium-browser.desktop" >> /home/user/.local/share/applications/mimeapps.list'
/bin/sh -c 'echo "x-scheme-handler/http=chromium-browser.desktop" >> /home/user/.local/share/applications/mimeapps.list'
/bin/sh -c 'echo "x-scheme-handler/https=chromium-browser.desktop" >> /home/user/.local/share/applications/mimeapps.list'
/bin/sh -c 'echo "x-scheme-handler/about=chromium-browser.desktop" >> /home/user/.local/share/applications/mimeapps.list'
/bin/sh -c 'echo "x-scheme-handler/unknown=chromium-browser.desktop" >> /home/user/.local/share/applications/mimeapps.list'
/bin/sh -c 'echo "x-scheme-handler/mailto=chromium-browser.desktop" >> /home/user/.local/share/applications/mimeapps.list'
fi
# Wallpaper devrijepc.nl (branding):
cd ~
wget http://ubuntuone.com/0NtqkOWPyxqb1JPB49oVkH -O warty-final-ubuntu.png
if [ -e "/usr/share/backgrounds/warty-final-ubuntu.png.org" ]
then
mv /usr/share/backgrounds/warty-final-ubuntu.png /usr/share/backgrounds/warty-final-ubuntu.png.org
fi
cp ~/warty-final-ubuntu.png /usr/share/backgrounds/warty-final-ubuntu.png
rm ~/warty-final-ubuntu.png
# TODO: Link audio files to Totem instead of Rhytmbox
# Instellingen, Details, Standaard instellingen, Muziek: Totem
#cat ~/.local/share/applications/mimeapps.list
#[Default Applications]
# Block popup update-manager
$su_command "gsettings set com.ubuntu.update-notifier auto-launch false"
# Configuring time-applet:
$su_command "gsettings set com.canonical.indicator.datetime show-date true"
$su_command "gsettings set com.canonical.indicator.datetime show-day true"
$su_command "gsettings set com.canonical.indicator.datetime show-week-numbers true"
# TODO: weer-indicator:
# eenmalig opstarten (via dash - prompt onder ubuntuknop)
# indicator-weather
# (icoon + opstarttoepassing verschijnt in de balk)
#
# configureren
# dconf-editor (gsettings): apps.indicators.weather
#
# (Algemeen) temperatuur aanzetten
# (Algemeen) Gegevensbron voor weer: Google
# (Eenheden) Windsnelheid-eenheid: Beaufort
# (Locaties) ‘s-Hertogenbosch toevoegen
# (Power settings) On battery, suspend active: 10 min
$su_command "gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 600"
# (Power settings) If power is critical low: shutdown
$su_command "gsettings set org.gnome.settings-daemon.plugins.power critical-battery-action shutdown"
# (Power settings) Do not dim display due to inactivity
$su_command "gsettings set org.gnome.settings-daemon.plugins.power idle-dim-ac false"
$su_command "gsettings set org.gnome.settings-daemon.plugins.power idle-dim-battery false"
# Touchpad: two-finger scroll
# TODO: do not execute if hardware feature is not available
#$su_command "gsettings set org.gnome.settings-daemon.peripherals.touchpad scroll-method 'two-finger-scrolling'"
# No lock after wake-up
$su_command "gsettings set org.gnome.desktop.lockdown disable-lock-screen true"
# Launcher: minimize icon size (no gsettings (dconf) available)
$su_command "gconftool-2 --type int --set /apps/compiz-1/plugins/unityshell/screen0/options/icon_size 32"
#
# Remote control by Gitso
#
cd ~
wget http://gitso.googlecode.com/files/gitso_0.6.2_all.deb
dpkg -i gitso_0.6.2_all.deb
apt-get -f install -y
rm ~/gitso_0.6.2_all.deb
#
# Favorites in launcher
# Note that under 12.10, the unwanted webapps Amazon/U1 are also removed
#
$su_command "gsettings set com.canonical.Unity.Launcher favorites \"['chromium-browser.desktop', 'nautilus-home.desktop',
'libreoffice-writer.desktop', 'ubuntu-software-center.desktop', 'gitso.desktop', 'yelp.desktop']\""
#
# Finishing up
#
# Check for incomplete language support; this happens when the installation is done
# without internet acces
apt-get install $(check-language-support -l nl)
# Clean-up
apt-get autoremove -y
rm /home/user/ubuntu-postinstall
echo ""
echo "Script is finished. Please reboot."
echo ""