Узнать модель материнской платы linux

Начала на одном сервере на основе PC помирать мама, то включается с 20й попытки то на этапе биоса повиснет… в общем пора менять, но как узнать что там? онаж в стойке в куче проводов и т.п.

нибеда

dmidecode

и внимательно изучить

можно например посмотреть какой процессор

# dmidecode 2.9
SMBIOS 2.4 present.
32 structures occupying 1517 bytes.
Table at 0x000E3410.

Handle 0x0000, DMI type 4, 35 bytes
Processor Information
        Socket Designation: CPU1
        Type: Central Processor
        Family: <OUT OF SPEC>
        Manufacturer: Intel(R) Corporation
        ID: 76 06 01 00 FF FB EB BF
        Version: Intel(R) Core(TM)2 Extreme CPU X9650  @ 3.00GHz
        Voltage: 1.6 V
        External Clock: 333 MHz
        Max Speed: 4000 MHz
        Current Speed: 3000 MHz
        Status: Populated, Enabled
        Upgrade: Socket LGA775
        L1 Cache Handle: 0x0003
        L2 Cache Handle: 0x0001
        L3 Cache Handle: Not Provided
        Serial Number: Not Specified
        Asset Tag: Not Specified
        Part Number: Not Specified

Версию биоса

BIOS Information
        Vendor: Intel Corp.
        Version: BTX3810J.86A.2006.2009.1023.1057
        Release Date: 10/23/2009
        Address: 0xF0000
        Runtime Size: 64 kB
        ROM Size: 2048 kB

ну и маму

Base Board Information
        Manufacturer: Intel Corporation
        Product Name: DX48BT2
        Version: AAE26191-204
        Serial Number: BQBQ815001VQ
        Asset Tag: Base Board Asset Tag
        Features:
                Board is a hosting board
                Board is replaceable
        Location In Chassis: Base Board Chassis Location
        Chassis Handle: 0x0007
        Type: Unknown
        Contained Object Handles: 0

Также можно посмотреть какие PCI устройства (точнее то, что у нас есть на «южном мосту») у нас есть

lspci

NFS клиент windows 7

Вот прижало значит смонитровать, должно быть примерно так

 

Дальше всё примерно вот так

mount 192.168.100.5:/home/files x:

 

Django admin скрыть поле для всех кроме SuperAdmin

Продолжая сегодняшнюю серию постов о Django

К прошлому посту
Добавим вот что, надо чтоб супер админ видел все поля, а простые пользователи не могли видеть поле «автор»

Для этого сделаем простых два движения, для добавления нового и для изменения текущего

    def add_view(self, request, form_url='', extra_context=None):
        if not request.user.is_superuser:
            self.exclude=('author', )
        return super(ListAdmin, self).add_view(request, form_url='', extra_context=None)
    def change_view(self, request, object_id, extra_context=None):
        if not request.user.is_superuser:
            self.exclude=('author', )
        return super(ListAdmin, self).change_view(request, object_id, extra_context=None)

Django показывать в админке пользователю только его объекты

Ещё довольно частая задача, надо чтоб пользователю в админке показывались только его объекты.
и второй момент, есть у нас в модели поле автор

    author = models.ForeignKey(User, null = True, blank = True , verbose_name=u'Имя')

и хочу чтоб пользователю в админке это поле не показывалось, но автоматически при сохранении подставлялся request.user

Реализуется это как всё по Джанговски в пару движений

в admin.py
наследуемся от модели admin
и немногожечrо допиливаем её

class ListAdmin(admin.ModelAdmin):
    # Добавим всякие фильтра
    list_filter = ('rooms','region','street', 'pub_date')
    #Говорим, чтоб не показывать это поле
    exclude = ('author',)
    # Тут начинается магия, СуперАдмину показываем всё, а пользователю, показываем только его объекты
    def queryset(self, request):
        if request.user.is_superuser:
            return super(ListAdmin, self).queryset(request)
        else:
            return super(ListAdmin, self).queryset(request).filter(author = request.user)
    # Так решим вторую задачу, в поле author подставляем request.user
    def save_model(self, request, obj, form, change):
        if getattr(obj, 'author', None) is None:
            obj.author = request.user
        obj.save()
       
admin.site.register(Estate,ListAdmin)

Вот и всё, не забываем создать отдельную группу для пользователей, в которой указать ту часть приложений куда они могут обращаться.

Django чётность в шаблоне, разукрашиваем таблицу

Способов несколько можно через фильтра, с условиями, а можно вот так красиво

……..

{% for estate in profile.Estates %}
    <tr class="{% cycle 'white' 'gray' %}">
        <td>.........</td>