Difference between revisions of "Linux - Admin friendly"

From Blue-IT.org Wiki

 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
= System =
 +
== Change UID and GID ==
 +
In some rare cases - e.g. when changing a disk with home directories between distributions - it might be necessary to change recursively the GID and UID's for the new system:
 +
usermod -u <NEWUID> <LOGIN>
 +
groupmod -g <NEWGID> <GROUP>
 +
find / -user <OLDUID> -exec chown <NEWUID> {} \;
 +
find / -group <OLDGID> -exec chgrp <NEWGID> {} \;
 +
 +
== Change directory and file permissions ==
 +
When you like to change certain directories recursively - e.g. when these are defect or for security issues, you can use the '''find''' command.
 +
 +
You can use this command for different issues - not only for changing the write permissions:
 +
 +
Search and change changing all directories with name '''public_html''':
 +
find . -type d -name public_html -exec chmod 0755 {} \;
 +
 +
'''Repair''' all permission settings recursively is a two step process. First recursively make '''everything''' read, write ''and'' executable. Then in a second step just alter the files:
 +
chmod -R 775 yourDirectory
 +
find yourDirectory/. -type f  -exec chmod 0664 {} \;
 +
 +
== Renaming a disk label and setting a mount point ==
 +
When automounting USB sticks or external USB drives e.g. nautilus uses the disk label for showing up the drive. This could be anoying depending on what the disk label is.
 +
 +
=== Renaming ext3 disk labels ===
 +
Use the ''e2label'' tool.
 +
DEVICE="/dev/disk/by-id/usb-somthing-part1"
 +
umount "${DEVICE}" && e2label "${DEVICE}" THE_NEW_NAME
 +
 +
=== Renaming an USB stick ===
 +
Use the ''mtools'' package. The program ''mlabel'' provides the necessary functions.
 +
  sudo mlabel -i /dev/sdbX ::"NewLabel"
 +
 +
If the error "Total number of sectors not a multiple of sectors per track! Add mtools_skip_check=1 to your .mtoolsrc file to skip this test" occurs , then do
 +
echo mtools_skip_check=1>.mtoolsrc
 +
 +
== Zenity ==
 +
=== --progress ===
 +
#!/bin/bash
 +
COMMAND="$1"
 +
SERVER="$2"
 +
 +
(
 +
echo "30" ; sleep 1
 +
echo "# Verbindung zu $SERVER wird geprüft."; ping -c2 $SERVER
 +
echo "60" ; sleep 1
 +
echo "# Programm $COMMAND wird gestartet." ; /usr/bin/ssh -ACX ${SERVER} "dbus-launch ${COMMAND}"
 +
echo "80" ; sleep 1
 +
echo "# Programm wurde gestartet."
 +
echo "100" ; sleep 1
 +
) |
 +
zenity --progress \
 +
      --title="Starten von $COMMAND auf Rechner $SERVER" \
 +
      --text="Bitte warten Sie, während das Programm $COMMAND gestartet wird ..." \
 +
      --auto-close --auto-kill \
 +
      --percentage=0
 +
 +
      if [ "$?" = -1 ] ; then
 +
        zenity --error \
 +
                --text="Der Computer $SERVER konnte über das Netzwerk \
 +
nicht erreicht werden.\n\nIst er eingeschaltet?"
 +
      fi
 +
 
=CUPS=
 
=CUPS=
 
==SuSE 10.1==
 
==SuSE 10.1==
Line 28: Line 90:
  
 
Be aware that all changes to ''lvm'' will take effekt '''emediately''' - so be careful what you do!
 
Be aware that all changes to ''lvm'' will take effekt '''emediately''' - so be careful what you do!
 +
 +
[[Category:Filesystem]]
 +
[[Category:Printing]]
 +
[[Category:Ubuntu]]

Latest revision as of 19:52, 8 January 2012

System

Change UID and GID

In some rare cases - e.g. when changing a disk with home directories between distributions - it might be necessary to change recursively the GID and UID's for the new system:

usermod -u <NEWUID> <LOGIN>
groupmod -g <NEWGID> <GROUP>
find / -user <OLDUID> -exec chown <NEWUID> {} \;
find / -group <OLDGID> -exec chgrp <NEWGID> {} \;

Change directory and file permissions

When you like to change certain directories recursively - e.g. when these are defect or for security issues, you can use the find command.

You can use this command for different issues - not only for changing the write permissions:

Search and change changing all directories with name public_html:

find . -type d -name public_html -exec chmod 0755 {} \;

Repair all permission settings recursively is a two step process. First recursively make everything read, write and executable. Then in a second step just alter the files:

chmod -R 775 yourDirectory
find yourDirectory/. -type f  -exec chmod 0664 {} \;

Renaming a disk label and setting a mount point

When automounting USB sticks or external USB drives e.g. nautilus uses the disk label for showing up the drive. This could be anoying depending on what the disk label is.

Renaming ext3 disk labels

Use the e2label tool.

DEVICE="/dev/disk/by-id/usb-somthing-part1"
umount "${DEVICE}" && e2label "${DEVICE}" THE_NEW_NAME

Renaming an USB stick

Use the mtools package. The program mlabel provides the necessary functions.

 sudo mlabel -i /dev/sdbX ::"NewLabel"

If the error "Total number of sectors not a multiple of sectors per track! Add mtools_skip_check=1 to your .mtoolsrc file to skip this test" occurs , then do

echo mtools_skip_check=1>.mtoolsrc

Zenity

--progress

#!/bin/bash
COMMAND="$1"
SERVER="$2"

(
echo "30" ; sleep 1
echo "# Verbindung zu $SERVER wird geprüft."; ping -c2 $SERVER
echo "60" ; sleep 1
echo "# Programm $COMMAND wird gestartet." ; /usr/bin/ssh -ACX ${SERVER} "dbus-launch ${COMMAND}"
echo "80" ; sleep 1
echo "# Programm wurde gestartet."
echo "100" ; sleep 1
) |
zenity --progress \
      --title="Starten von $COMMAND auf Rechner $SERVER" \
      --text="Bitte warten Sie, während das Programm $COMMAND gestartet wird ..." \
      --auto-close --auto-kill \
      --percentage=0

     if [ "$?" = -1 ] ; then
        zenity --error \
               --text="Der Computer $SERVER konnte über das Netzwerk \
			nicht erreicht werden.\n\nIst er eingeschaltet?"
     fi

CUPS

SuSE 10.1

To enable browsing via the network you have to setup a password for user root: See on you local [file:///usr/share/doc/manual/suselinux-manual_en/manual/sec.p.special.html SuSE Documentation]:

lppasswd -g sys -a CUPS-admin-name

Now you should configure your cups server via yast allowing some network clients to admin the printers.

LVM

Ubuntu Feisty

Found in Ubuntu Forums.

Search for the latest fedora system-config-lvm, e.g. via rpmfind.net and download it

 wget ftp://rpmfind.net/linux/fedora/releases/7/Everything/i386/os/Fedora/system-config-lvm-1.1.1-1.0.fc7.noarch.rpm

Install alien:

apt-get install alien

And convert the rpm into a debian package and install it.

alien -d system-config-lvm-1.1.1-1.0.fc7.noarch.rpm
dpkg -i system-config-lvm_1.1.1-2_all.deb

Ubuntu works with python2.5, so make a symlink as follows

 ln -s /usr/bin/python2.5  /usr/bin/python2

Either start directly from a terminal or create a starter in menu->administration with

gksudo system-config-lvm

Be aware that all changes to lvm will take effekt emediately - so be careful what you do!