Differences

This shows you the differences between two versions of the page.

Link to this comparison view

op_user [2018-11-16 13:03]
Joakim Forsgren
op_user [2022-07-18 13:20]
Line 1: Line 1:
-====== Användare (ni skall jobba på er egen server) ====== 
-Det finns två kommandon i Ubuntu-server för att skapa användare: adduser och useradd. 
-<code> 
-less /usr/sbin/adduser 
-less /usr/sbin/useradd 
-</code> 
-Som du ser så är useradd ett binärt kommando medan adduser är ett perl-script som använder sig av useradd. 
  
-Du skall nu jobba med useradd... Det vanliga är att man använder sig av adduser när man skall skapa användare en och en och useradd när man skall skriva script. 
- 
-1. Skapa en användare med login "user1" och password "user1". Kolla att du kan logga som som denna användare. Vad fick användaren för hemkatalog?\\ 
-2. Skapa en anvädare med login "user2" och password "user2" med sin hemkatalog i /home/users/user2. Kolla att du kan logga in och att hemkatalogen är rätt (pwd).\\ 
- 
-3. När man skall lägga upp många användare så brukar man inte göra det manuellt utan skriva ett litet "script", vanligen i bash.\\ 
-Ni skall hämta alla teknikelever som går ut VT-20 från passwd filen på www2 och lägga upp dem på er server.\\ 
- 
-Gör på följande sätt: 
-  * Hämta filen som ligger på student med "scp" (ni måste göra det från er server pga brandväggen...) 
-  * Plocka ut de teknikelever som går ut VT-20 och fixa iordning filen så den funkar för den variant som ni har tänkt använda nedan. 
-  * Lägg upp alla användare - välj en av följande varianter, du får om du vill pröva båda... 
-    - med hjälp av newusers - ett kommando som finns i Ubuntu gjort för att lägga upp användare via textfiler. 
-    - med hjälp av följande lilla script, obs ni måste ändra lite eftersom era användare skall hamna i "/home/te20/*" och ha "**byt**" som lösenord. <code bash> 
-#!/bin/bash 
-# filen med användare skall se ut på följande sätt: 
-# login [TAB] comment (vanligen namn) 
-# man kör filen på följade sätt ./adduser.sh < users.txt 
-path="/home/anvandare/" 
- 
-while read userid name 
-do 
-        echo "Creating useraccount $userid" 
-        useradd -m -d "$path$userid"  -c "$name" -g 100 -s /bin/bash $userid 
-        if [ $? == 0 ]; then 
-                echo "created successfully" 
-        else 
-                echo "failed to create user account $userid" 
-                echo "failed to create user account $userid" >> add.log 
-        fi 
-        echo "${userid}:losenord" | chpasswd 
-done 
-</code>eller via php <code php> 
-<? 
-// filen med användare skall se ut på följande sätt: 
-// login [TAB] comment (vanligen namn) 
-// man kör filen på följade sätt: php adduser.php users.txt 
-$path='/home/anvandare/'; 
-$users = file($argv[1]); 
-foreach ($users as $row) { 
-        $user = explode("\t",$row); 
-        // $user[1] innehåller tyvärr en radbrytning som jag tar bort med substr 
-        exec('/usr/sbin/useradd -m -d "' . $path.$user[0].'"  -c "'.substr($user[1],0,-1).'" -g 100 -s /bin/bash '. $user[0]); 
-        exec('echo "' . $user[0].':losenord" | /usr/sbin/chpasswd'); 
-} 
-</code> 
-  * Kör 'tree -d /home' och kolla så att alla hemkataloger ligger på rätt ställe. (om kommandot inte finns installera det...) 
-  * Testa att logga in med en användare för att se att det funkar. 
-  * Ta bort alla användare med följande script: <code> 
-#!/bin/bash 
-# man kör filen på följade sätt ./deluser.sh < users.txt 
- 
-while read userid temp1 temp2 
-do 
-        echo "Deleting useraccount $userid" 
-        userdel -r $userid 
-        if [ $? == 0 ]; then 
-                echo "deleted successfully" 
-        else 
-                echo "failed to delete user account $userid" 
-                echo "failed to delete user account $userid" >> del.log 
-        fi 
-done 
-</code> 
-  * Kolla att allt är borta 
-  * Lägg upp dem igen och kolla att allt är som det ska, ropa på mig och få godkänt. 
-  * Nu skall du flytta alla te13:ors hemkataloger till "/home/elever/te13" och få det att fungera. Du får bara bara använda två kommandon. Ett för att fixa din /etc/passwd fil och ett för att flytta alla hemkataloger. Säg till igen när du är klar! 
- 
- 
-Lycka till!\\ 
-/JoakimF 
- 
-<php> 
-/* 
-<code bash> 
-#hämta fil 
-cd /root/scripts 
-scp jf@student.oedu.se:/home/pers/jf/Public/operativsystem/passwd passwd_org 
-# skapa katalog 
-mkdir -p /home/user/te12 
-# lägg in användare med newusers 
-grep '/home/user/te12' passwd_org | sed s@':x:'@':byt:'@ | newusers 
-# lägg in användare med script 
-grep '/home/user/te12' passwd_org | cut -f 1,5 -d : | tr -s : "\t" | ./add_user.sh 
-# ta bort användare med script 
-grep '/home/user/te12' passwd_org | cut -f 1,5 -d : | tr -s : "\t" | ./del_users.sh 
-# ändra i passwd 
-sed -i s@'/home/user'@'/home/elever'@ /etc/passwd 
-# flytta katalog 
-mv /home/user /home/elever 
-</code> 
-*/ 
-</php>